diff --git a/src/main/apis/app/system/index.ts b/src/main/apis/app/system/index.ts index 8a4eb25..df48265 100644 --- a/src/main/apis/app/system/index.ts +++ b/src/main/apis/app/system/index.ts @@ -67,9 +67,7 @@ export function setDockMenu () { } export function createMenu () { - const ClipboardWatcher = process.platform === 'darwin' ? clipboardPoll : clipboardListener const submenu = buildPicBedListMenu() - const isListeningClipboard = db.get('settings.isListeningClipboard') || false const appMenu = Menu.buildFromTemplate([ { label: 'PicList', @@ -85,28 +83,6 @@ export function createMenu () { } } }, - { - label: T('START_WATCH_CLIPBOARD'), - click () { - db.set('settings.isListeningClipboard', true) - ClipboardWatcher.startListening() - ClipboardWatcher.on('change', () => { - picgo.log.info('clipboard changed') - uploadClipboardFiles() - }) - createMenu() - }, - enabled: !isListeningClipboard - }, - { - label: T('STOP_WATCH_CLIPBOARD'), - click () { - db.set('settings.isListeningClipboard', false) - ClipboardWatcher.stopListening() - createMenu() - }, - enabled: isListeningClipboard - }, { label: T('RELOAD_APP'), click () { diff --git a/src/main/utils/clipboardPoll.ts b/src/main/utils/clipboardPoll.ts index 338bedc..cb9c5db 100644 --- a/src/main/utils/clipboardPoll.ts +++ b/src/main/utils/clipboardPoll.ts @@ -12,8 +12,13 @@ class ClipboardWatcher extends EventEmitter { } startListening (watchDelay = 500) { - if (this.timer) { - clearInterval(this.timer) + this.stopListening() + console.log('timer', this.timer) + + const image = clipboard.readImage() + if (!image.isEmpty()) { + const dataUrl = image.toDataURL() + this.lastImage = nativeImage.createFromDataURL(dataUrl) } this.timer = setInterval(() => { @@ -35,10 +40,12 @@ class ClipboardWatcher extends EventEmitter { this.lastImage = currentImage this.emit('change', currentImage) }, watchDelay) + console.log('start timer', this.timer) } stopListening () { if (this.timer) { + console.log('stop timer') clearInterval(this.timer) this.timer = null }