don't scroll to last style on editing a new one

This commit is contained in:
tophf 2020-11-13 21:13:36 +03:00
parent b19fd0dabf
commit 1ec8e6a41a

View File

@ -1,13 +1,33 @@
/* /* global
global messageBox getStyleWithNoCode $
filterAndAppend showFiltersStats $$
checkUpdate handleUpdateInstalled $create
objectDiff animateElement
API
checkUpdate
CHROME
configDialog configDialog
sorter msg prefs API $ $$ $create template setupLivePrefs debounce
t tWordBreak formatDate filterAndAppend
getOwnTab getActiveTab openURL animateElement sessionStore debounce formatDate
scrollElementIntoView CHROME VIVALDI router getOwnTab
getStyleWithNoCode
handleUpdateInstalled
messageBox
msg
objectDiff
openURL
prefs
router
scrollElementIntoView
sessionStore
setupLivePrefs
showFiltersStats
sorter
t
template
tWordBreak
VIVALDI
*/ */
'use strict'; 'use strict';
@ -366,42 +386,29 @@ Object.assign(handleEvent, {
} }
}, },
name(event) { name(event, entry) {
if (newUI.enabled) handleEvent.edit(event); if (newUI.enabled) handleEvent.edit(event, entry);
}, },
edit(event) { async edit(event, entry) {
if (event.altKey) { if (event.altKey) {
return; return;
} }
event.preventDefault(); event.preventDefault();
event.stopPropagation(); event.stopPropagation();
const left = event.button === 0; const key = `${event.shiftKey ? 's' : ''}${event.ctrlKey ? 'c' : ''}${'LMR'[event.button]}`;
const middle = event.button === 1;
const shift = event.shiftKey;
const ctrl = event.ctrlKey;
const openWindow = left && shift && !ctrl;
const openBackgroundTab = (middle && !shift) || (left && ctrl && !shift);
const openForegroundTab = (middle && shift) || (left && ctrl && shift);
const entry = event.target.closest('.entry');
const url = $('[href]', entry).href; const url = $('[href]', entry).href;
if (openWindow || openBackgroundTab || openForegroundTab) { const ownTab = await getOwnTab();
if (chrome.windows && openWindow) { if (key === 'L') {
sessionStore['manageStylesHistory' + ownTab.id] = url;
location.href = url;
} else if (chrome.windows && key === 'sL') {
API.openEditor({id: entry.styleId}); API.openEditor({id: entry.styleId});
} else { } else {
getOwnTab().then(({index}) => {
openURL({ openURL({
url, url,
index: index + 1, index: ownTab.index + 1,
active: openForegroundTab active: key === 'sM' || key === 'scL',
});
});
}
} else {
onVisibilityChange();
getActiveTab().then(tab => {
sessionStore['manageStylesHistory' + tab.id] = url;
location.href = url;
}); });
} }
}, },