mirror of
https://github.com/BoostIo/Boostnote
synced 2025-12-17 11:41:44 +00:00
Merge pull request #2327 from mikaoelitiana/fix-1155
Add osx touchbar support
This commit is contained in:
@@ -80,6 +80,7 @@ class NoteList extends React.Component {
|
|||||||
this.getViewType = this.getViewType.bind(this)
|
this.getViewType = this.getViewType.bind(this)
|
||||||
this.restoreNote = this.restoreNote.bind(this)
|
this.restoreNote = this.restoreNote.bind(this)
|
||||||
this.copyNoteLink = this.copyNoteLink.bind(this)
|
this.copyNoteLink = this.copyNoteLink.bind(this)
|
||||||
|
this.navigate = this.navigate.bind(this)
|
||||||
|
|
||||||
// TODO: not Selected noteKeys but SelectedNote(for reusing)
|
// TODO: not Selected noteKeys but SelectedNote(for reusing)
|
||||||
this.state = {
|
this.state = {
|
||||||
@@ -98,6 +99,7 @@ class NoteList extends React.Component {
|
|||||||
ee.on('list:isMarkdownNote', this.alertIfSnippetHandler)
|
ee.on('list:isMarkdownNote', this.alertIfSnippetHandler)
|
||||||
ee.on('import:file', this.importFromFileHandler)
|
ee.on('import:file', this.importFromFileHandler)
|
||||||
ee.on('list:jump', this.jumpNoteByHash)
|
ee.on('list:jump', this.jumpNoteByHash)
|
||||||
|
ee.on('list:navigate', this.navigate)
|
||||||
}
|
}
|
||||||
|
|
||||||
componentWillReceiveProps (nextProps) {
|
componentWillReceiveProps (nextProps) {
|
||||||
@@ -687,6 +689,16 @@ class NoteList extends React.Component {
|
|||||||
return copy(noteLink)
|
return copy(noteLink)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
navigate (sender, pathname) {
|
||||||
|
const { router } = this.context
|
||||||
|
router.push({
|
||||||
|
pathname,
|
||||||
|
query: {
|
||||||
|
// key: noteKey
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
save (note) {
|
save (note) {
|
||||||
const { dispatch } = this.props
|
const { dispatch } = this.props
|
||||||
dataApi
|
dataApi
|
||||||
|
|||||||
@@ -78,9 +78,11 @@ app.on('ready', function () {
|
|||||||
|
|
||||||
var template = require('./main-menu')
|
var template = require('./main-menu')
|
||||||
var menu = Menu.buildFromTemplate(template)
|
var menu = Menu.buildFromTemplate(template)
|
||||||
|
var touchBarMenu = require('./touchbar-menu')
|
||||||
switch (process.platform) {
|
switch (process.platform) {
|
||||||
case 'darwin':
|
case 'darwin':
|
||||||
Menu.setApplicationMenu(menu)
|
Menu.setApplicationMenu(menu)
|
||||||
|
mainWindow.setTouchBar(touchBarMenu)
|
||||||
break
|
break
|
||||||
case 'win32':
|
case 'win32':
|
||||||
mainWindow.setMenu(menu)
|
mainWindow.setMenu(menu)
|
||||||
|
|||||||
41
lib/touchbar-menu.js
Normal file
41
lib/touchbar-menu.js
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
const {TouchBar} = require('electron')
|
||||||
|
const {TouchBarButton, TouchBarSpacer} = TouchBar
|
||||||
|
const mainWindow = require('./main-window')
|
||||||
|
|
||||||
|
const allNotes = new TouchBarButton({
|
||||||
|
label: '📒',
|
||||||
|
click: () => {
|
||||||
|
mainWindow.webContents.send('list:navigate', '/home')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
const starredNotes = new TouchBarButton({
|
||||||
|
label: '⭐️',
|
||||||
|
click: () => {
|
||||||
|
mainWindow.webContents.send('list:navigate', '/starred')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
const trash = new TouchBarButton({
|
||||||
|
label: '🗑',
|
||||||
|
click: () => {
|
||||||
|
mainWindow.webContents.send('list:navigate', '/trashed')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
const newNote = new TouchBarButton({
|
||||||
|
label: '✎',
|
||||||
|
click: () => {
|
||||||
|
mainWindow.webContents.send('list:navigate', '/home')
|
||||||
|
mainWindow.webContents.send('top:new-note')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
module.exports = new TouchBar([
|
||||||
|
allNotes,
|
||||||
|
starredNotes,
|
||||||
|
trash,
|
||||||
|
new TouchBarSpacer({size: 'small'}),
|
||||||
|
newNote
|
||||||
|
])
|
||||||
|
|
||||||
Reference in New Issue
Block a user