Skip to content

Commit 32e6394

Browse files
committed
search filter is now insensitive case, fix minor bugs
1 parent 09735b7 commit 32e6394

7 files changed

Lines changed: 15 additions & 18 deletions

File tree

browser/components/CodeEditor.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ export default class CodeEditor extends React.Component {
8080

8181
session.setUseSoftTabs(this.state.indentType === 'space')
8282
session.setTabSize(!isNaN(this.state.indentSize) ? parseInt(this.state.indentSize, 10) : 4)
83-
session.setOption('useWorker', true)
83+
session.setOption('useWorker', false)
8484
session.setUseWrapMode(true)
8585
session.setValue(this.props.article.content)
8686

browser/finder/index.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -176,11 +176,11 @@ function buildFilter (key) {
176176
}
177177

178178
function isContaining (target, needle) {
179-
return target.match(new RegExp(_.escapeRegExp(needle)))
179+
return target.match(new RegExp(_.escapeRegExp(needle), 'i'))
180180
}
181181

182182
function startsWith (target, needle) {
183-
return target.match(new RegExp('^' + _.escapeRegExp(needle)))
183+
return target.match(new RegExp('^' + _.escapeRegExp(needle), 'i'))
184184
}
185185

186186
function remap (state) {
@@ -199,10 +199,10 @@ function remap (state) {
199199
let targetFolders
200200
if (folders != null) {
201201
let exactTargetFolders = folders.filter(folder => {
202-
return _.find(folderExactFilters, filter => isContaining(folder.name, filter.value))
202+
return _.find(folderExactFilters, filter => filter.value.toLowerCase() === folder.name.toLowerCase())
203203
})
204204
let fuzzyTargetFolders = folders.filter(folder => {
205-
return _.find(folderFilters, filter => startsWith(folder.name, filter.value))
205+
return _.find(folderFilters, filter => startsWith(folder.name.replace(/_/g, ''), filter.value.replace(/_/g, '')))
206206
})
207207
targetFolders = status.targetFolders = exactTargetFolders.concat(fuzzyTargetFolders)
208208

browser/main/HomePage/ArticleDetail/index.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import DeleteArticleModal from '../../modal/DeleteArticleModal'
1818
import ArticleEditor from './ArticleEditor'
1919
const electron = require('electron')
2020
const ipc = electron.ipcRenderer
21-
let count = 0
21+
2222
// const remote = electron.remote
2323
// const { Menu, MenuItem } = remote
2424
// const othersMenu = new Menu()
@@ -154,7 +154,7 @@ export default class ArticleDetail extends React.Component {
154154

155155
componentDidUpdate (prevProps, prevState) {
156156
if (this.props.activeArticle == null || prevProps.activeArticle == null || this.props.activeArticle.key !== prevProps.activeArticle.key) {
157-
this.refs.editor.resetCursorPosition()
157+
if (this.refs.editor) this.refs.editor.resetCursorPosition()
158158
}
159159
}
160160

browser/main/HomePage/index.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -128,11 +128,11 @@ function buildFilter (key) {
128128
}
129129

130130
function isContaining (target, needle) {
131-
return target.match(new RegExp(_.escapeRegExp(needle)))
131+
return target.match(new RegExp(_.escapeRegExp(needle), 'i'))
132132
}
133133

134134
function startsWith (target, needle) {
135-
return target.match(new RegExp('^' + _.escapeRegExp(needle)))
135+
return target.match(new RegExp('^' + _.escapeRegExp(needle), 'i'))
136136
}
137137

138138
function remap (state) {
@@ -170,10 +170,10 @@ function remap (state) {
170170
let targetFolders
171171
if (folders != null) {
172172
let exactTargetFolders = folders.filter(folder => {
173-
return _.findWhere(folderExactFilters, {value: folder.name})
173+
return _.find(folderExactFilters, filter => filter.value.toLowerCase() === folder.name.toLowerCase())
174174
})
175175
let fuzzyTargetFolders = folders.filter(folder => {
176-
return _.find(folderFilters, filter => startsWith(folder.name, filter.value))
176+
return _.find(folderFilters, filter => startsWith(folder.name.replace(/_/g, ''), filter.value.replace(/_/g, '')))
177177
})
178178
targetFolders = status.targetFolders = exactTargetFolders.concat(fuzzyTargetFolders)
179179

browser/main/modal/CreateNewFolder.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@ export default class CreateNewFolder extends React.Component {
3333
name,
3434
color
3535
}
36-
console.log(input)
3736
try {
3837
store.dispatch(createFolder(input))
3938
} catch (e) {

browser/main/modal/Preference/FolderSettingTab.js

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,6 @@ export default class FolderSettingTab extends React.Component {
2020

2121
handleSaveButtonClick (e) {
2222
this.setState({alert: null}, () => {
23-
if (this.state.name.trim().length === 0) return false
24-
2523
let { dispatch } = this.props
2624

2725
try {

browser/main/reducer.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -70,11 +70,11 @@ function folders (state = initialFolders, action) {
7070
updatedAt: new Date()
7171
})
7272

73-
if (newFolder.name == null && newFolder.name.length === 0) throw new Error('Folder name is required')
73+
if (newFolder.name == null || newFolder.name.length === 0) throw new Error('Folder name is required')
7474
if (newFolder.name.match(/\//)) throw new Error('`/` is not available for folder name')
7575

76-
let conflictFolder = _.findWhere(state, {name: newFolder.name})
77-
if (conflictFolder != null) throw new Error(`${newFolder.name} already exists!`)
76+
let conflictFolder = _.find(state, folder => folder.name.toLowerCase() === newFolder.name.toLowerCase())
77+
if (conflictFolder != null) throw new Error(`${conflictFolder.name} already exists!`)
7878
state.push(newFolder)
7979

8080
dataStore.setFolders(state)
@@ -96,7 +96,7 @@ function folders (state = initialFolders, action) {
9696
// Name conflict check
9797
if (targetFolder.name !== folder.name) {
9898
let conflictFolder = _.find(state, _folder => {
99-
return folder.name === _folder.name && folder.key !== _folder.key
99+
return folder.name.toLowerCase() === _folder.name.toLowerCase() && folder.key !== _folder.key
100100
})
101101
if (conflictFolder != null) throw new Error('Name conflicted')
102102
}

0 commit comments

Comments
 (0)