From dccef7815fe4f36fd1278795279ba3bb86a6e5cb Mon Sep 17 00:00:00 2001 From: dragonwocky Date: Sun, 1 Nov 2020 12:04:04 +1100 Subject: [PATCH] fix menu hotkey + tab title emojis on macOS --- repo/core/client.js | 16 ++++++++++++++-- repo/core/enhancerMenu.js | 6 +++++- repo/core/render.js | 6 +++++- 3 files changed, 24 insertions(+), 4 deletions(-) diff --git a/repo/core/client.js b/repo/core/client.js index 28d5f73..77b1900 100644 --- a/repo/core/client.js +++ b/repo/core/client.js @@ -25,7 +25,11 @@ module.exports = (store, __exports) => { const hotkey = toKeyEvent(store().menu_toggle); let triggered = true; for (let prop in hotkey) - if (hotkey[prop] !== event[prop]) triggered = false; + if ( + hotkey[prop] !== event[prop] && + !(prop === 'key' && event[prop] === 'Dead') + ) + triggered = false; if (triggered) electron.ipcRenderer.send('enhancer:open-menu'); if (tabsEnabled) { // switch between tabs via key modifier @@ -214,6 +218,10 @@ module.exports = (store, __exports) => { if (tabsEnabled) { let tab_title = ''; + if (process.platform === 'darwin') + document + .querySelector('.notion-sidebar [style*="37px"]:empty') + .remove(); const TITLE_OBSERVER = new MutationObserver(() => __electronApi.setWindowTitle('notion.so') ); @@ -232,7 +240,11 @@ module.exports = (store, __exports) => { ), text = $container.querySelector('[placeholder="Untitled"]'); title = - (icon ? `` : '') + + (icon + ? icon.getAttribute('src') + ? `` + : `${icon.getAttribute('aria-label')} ` + : '') + (text ? text.innerText : [ diff --git a/repo/core/enhancerMenu.js b/repo/core/enhancerMenu.js index 7242f03..de09afa 100644 --- a/repo/core/enhancerMenu.js +++ b/repo/core/enhancerMenu.js @@ -131,7 +131,11 @@ window['__start'] = async () => { const hotkey = toKeyEvent(coreStore().menu_toggle); let triggered = true; for (let prop in hotkey) - if (hotkey[prop] !== event[prop]) triggered = false; + if ( + hotkey[prop] !== event[prop] && + !(prop === 'key' && event[prop] === 'Dead') + ) + triggered = false; if (triggered || ((event.ctrlKey || event.metaKey) && event.key === 'w')) electron.remote.getCurrentWindow().close(); // focus search diff --git a/repo/core/render.js b/repo/core/render.js index 92cb337..12252a1 100644 --- a/repo/core/render.js +++ b/repo/core/render.js @@ -994,7 +994,11 @@ module.exports = (store, __exports) => { const hotkey = toKeyEvent(store().menu_toggle); let triggered = true; for (let prop in hotkey) - if (hotkey[prop] !== event[prop]) triggered = false; + if ( + hotkey[prop] !== event[prop] && + !(prop === 'key' && event[prop] === 'Dead') + ) + triggered = false; if (triggered) electron.ipcRenderer.send('enhancer:open-menu'); });