mirror of
https://github.com/notion-enhancer/notion-enhancer.git
synced 2025-04-06 21:49:03 +00:00
#160 patch opening by notion://url on linux + tab bugfixes
This commit is contained in:
parent
6a9f9bf79a
commit
4b464ca87c
@ -18,7 +18,7 @@ module.exports = (store, __exports) => {
|
||||
|
||||
document.defaultView.addEventListener('keyup', (event) => {
|
||||
// additional hotkeys
|
||||
if (event.code === 'F5') location.reload();
|
||||
if (event.key === 'F5') location.reload();
|
||||
// open menu on hotkey toggle
|
||||
const hotkey = toKeyEvent(store().menu_toggle);
|
||||
let triggered = true;
|
||||
@ -49,7 +49,6 @@ module.exports = (store, __exports) => {
|
||||
triggered = true;
|
||||
for (let prop in close_tab_keybinding)
|
||||
if (close_tab_keybinding[prop] !== event[prop]) triggered = false;
|
||||
console.log(triggered, event);
|
||||
if (triggered) electron.ipcRenderer.sendToHost('enhancer:close-tab');
|
||||
}
|
||||
});
|
||||
|
@ -118,7 +118,7 @@ window['__start'] = async () => {
|
||||
|
||||
const $popup = document.querySelector('#popup');
|
||||
document.addEventListener('keyup', (event) => {
|
||||
if (event.code === 'F5') location.reload();
|
||||
if (event.key === 'F5') location.reload();
|
||||
// further-configuration popup
|
||||
if (
|
||||
$popup.classList.contains('visible') &&
|
||||
@ -126,12 +126,13 @@ window['__start'] = async () => {
|
||||
)
|
||||
$popup.classList.remove('visible');
|
||||
// close window on hotkey toggle
|
||||
console.log();
|
||||
const hotkey = toKeyEvent(coreStore().menu_toggle);
|
||||
let triggered = true;
|
||||
for (let prop in hotkey)
|
||||
if (hotkey[prop] !== event[prop]) triggered = false;
|
||||
if (triggered) electron.remote.getCurrentWindow().close();
|
||||
if (triggered || ((event.ctrlKey || event.metaKey) && event.key === 'w'))
|
||||
electron.remote.getCurrentWindow().close();
|
||||
console.log(event.ctrlKey, event.key);
|
||||
// focus search
|
||||
const meta =
|
||||
!(event.ctrlKey || event.metaKey) && !event.altKey && !event.shiftKey;
|
@ -108,14 +108,20 @@ module.exports = (store, __exports) => {
|
||||
document
|
||||
.querySelectorAll('.dragged-over')
|
||||
.forEach((el) => el.classList.remove('dragged-over'));
|
||||
document
|
||||
.querySelectorAll('.slideIn')
|
||||
.forEach((el) => el.classList.remove('slideIn'));
|
||||
const from = getTab(this.views.tabs[+this.$dragging]),
|
||||
to = getTab(event.target);
|
||||
if (!from[1].classList.contains('new') && from[0] !== to[0])
|
||||
to[1].parentElement.insertBefore(from[1], to[1]);
|
||||
from[1].classList.remove('slideIn');
|
||||
this.$dragging = null;
|
||||
document
|
||||
.querySelector('#tabs')
|
||||
.appendChild(document.querySelector('.tab.new'));
|
||||
});
|
||||
document.addEventListener('keyup', (event) => {
|
||||
if (!electron.remote.getCurrentWindow().isFocused()) return;
|
||||
// switch between tabs via key modifier
|
||||
const select_tab_modifier = toKeyEvent(
|
||||
store('e1692c29-475e-437b-b7ff-3eee872e1a42').select_modifier
|
||||
@ -139,8 +145,8 @@ module.exports = (store, __exports) => {
|
||||
triggered = true;
|
||||
for (let prop in close_tab_keybinding)
|
||||
if (close_tab_keybinding[prop] !== event[prop]) triggered = false;
|
||||
console.log(triggered, event);
|
||||
if (triggered) this.closeTab(this.views.current.id);
|
||||
if (triggered && document.querySelector('.tab.current .close'))
|
||||
document.querySelector('.tab.current .close').click();
|
||||
});
|
||||
}
|
||||
|
||||
@ -219,7 +225,7 @@ module.exports = (store, __exports) => {
|
||||
? idToNotionURL(store().default_page)
|
||||
: this.views.current.$el().src
|
||||
);
|
||||
this.views.html[id].getWebContents().openDevTools();
|
||||
// this.views.html[id].getWebContents().openDevTools();
|
||||
}
|
||||
});
|
||||
}
|
||||
@ -297,8 +303,8 @@ module.exports = (store, __exports) => {
|
||||
this.newTab();
|
||||
break;
|
||||
case 'enhancer:close-tab':
|
||||
if (event.target.id == this.views.current.id)
|
||||
this.closeTab(+event.target.id);
|
||||
if (document.querySelector('.tab.current .close'))
|
||||
document.querySelector('.tab.current .close').click();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
0
repo/core/systemMenu.js
Normal file
0
repo/core/systemMenu.js
Normal file
@ -33,7 +33,7 @@ module.exports = (store, __exports) => {
|
||||
// menu
|
||||
|
||||
electron.ipcMain.on('enhancer:open-menu', (event, arg) => {
|
||||
openExtensionMenu();
|
||||
openEnhancerMenu();
|
||||
});
|
||||
electron.ipcMain.on('enhancer:set-menu-theme', (event, arg) => {
|
||||
if (!enhancer_menu) return;
|
||||
@ -81,13 +81,13 @@ module.exports = (store, __exports) => {
|
||||
};
|
||||
}
|
||||
|
||||
function openExtensionMenu() {
|
||||
function openEnhancerMenu() {
|
||||
if (enhancer_menu) return enhancer_menu.show();
|
||||
const window_state = require(`${helpers.__notion.replace(
|
||||
/\\/g,
|
||||
'/'
|
||||
)}/app/node_modules/electron-window-state/index.js`)({
|
||||
file: 'menu-windowstate.json',
|
||||
file: 'enhancerMenu.windowState.json',
|
||||
path: helpers.__data,
|
||||
defaultWidth: 275,
|
||||
defaultHeight: 600,
|
||||
@ -106,7 +106,7 @@ module.exports = (store, __exports) => {
|
||||
width: window_state.width,
|
||||
height: window_state.height,
|
||||
webPreferences: {
|
||||
preload: path.resolve(`${__dirname}/menu.js`),
|
||||
preload: path.resolve(`${__dirname}/enhancerMenu.js`),
|
||||
nodeIntegration: true,
|
||||
session: electron.session.fromPartition('persist:notion'),
|
||||
},
|
||||
@ -116,6 +116,7 @@ module.exports = (store, __exports) => {
|
||||
window_state.saveState(enhancer_menu);
|
||||
enhancer_menu = null;
|
||||
});
|
||||
// enhancer_menu.webContents.openDevTools();
|
||||
}
|
||||
|
||||
// tray
|
||||
@ -165,7 +166,7 @@ module.exports = (store, __exports) => {
|
||||
type: 'normal',
|
||||
label: 'Enhancements',
|
||||
accelerator: store().menu_toggle,
|
||||
click: openExtensionMenu,
|
||||
click: openEnhancerMenu,
|
||||
},
|
||||
{
|
||||
type: 'normal',
|
||||
|
Loading…
Reference in New Issue
Block a user