mirror of
https://github.com/zen-browser/components.git
synced 2025-07-07 21:59:59 +02:00
Make splitview change on hover only work when pref true.
This commit is contained in:
parent
1dd4160831
commit
0d4bca3ef5
1 changed files with 18 additions and 18 deletions
|
@ -5,6 +5,14 @@ var gZenViewSplitter = new class {
|
|||
this._tabBrowserPanel = null;
|
||||
this.__modifierElement = null;
|
||||
this.__hasSetMenuListener = false;
|
||||
this.canChangeTabOnHover = null;
|
||||
|
||||
XPCOMUtils.defineLazyPreferenceGetter(
|
||||
this,
|
||||
"canChangeTabOnHover",
|
||||
"zen.splitView.change-on-hover",
|
||||
false
|
||||
);
|
||||
|
||||
window.addEventListener('TabClose', this.handleTabClose.bind(this));
|
||||
this.initializeContextMenu();
|
||||
|
@ -24,17 +32,6 @@ var gZenViewSplitter = new class {
|
|||
sibling.insertAdjacentElement('afterend', document.createXULElement('menuseparator'));
|
||||
}
|
||||
|
||||
get canChangeTabOnHover() {
|
||||
delete this.canChangeTabOnHover;
|
||||
XPCOMUtils.defineLazyPreferenceGetter(
|
||||
this,
|
||||
"canChangeTabOnHover",
|
||||
"zen.splitView.change-on-hover",
|
||||
false
|
||||
);
|
||||
return this.canChangeTabOnHover;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {Event} event - The event that triggered the tab close.
|
||||
* @description Handles the tab close event.7
|
||||
|
@ -302,8 +299,8 @@ var gZenViewSplitter = new class {
|
|||
for (const tab of this._data[this.currentView].tabs) {
|
||||
const container = tab.linkedBrowser.closest('.browserSidebarContainer');
|
||||
this.resetContainerStyle(container);
|
||||
container.removeEventListener('click', this.handleTabClick);
|
||||
container.removeEventListener('mouseover', this.handleTabClick);
|
||||
container.removeEventListener('click', this.handleTabEvent);
|
||||
container.removeEventListener('mouseover', this.handleTabEvent);
|
||||
}
|
||||
this.tabBrowserPanel.removeAttribute('zen-split-view');
|
||||
this.tabBrowserPanel.style.gridTemplateAreas = '';
|
||||
|
@ -479,18 +476,21 @@ var gZenViewSplitter = new class {
|
|||
container.setAttribute('zen-split-active', 'true');
|
||||
}
|
||||
container.setAttribute('zen-split-anim', 'true');
|
||||
container.addEventListener('click', this.handleTabClick);
|
||||
container.addEventListener('mouseover', this.handleTabClick);
|
||||
container.addEventListener('click', this.handleTabEvent);
|
||||
container.addEventListener('mouseover', this.handleTabEvent);
|
||||
|
||||
container.style.gridArea = `tab${index + 1}`;
|
||||
}
|
||||
|
||||
/**
|
||||
* Handles the tab click event.
|
||||
* Handles tab events.
|
||||
*
|
||||
* @param {Event} event - The click event.
|
||||
* @param {Event} event - The event.
|
||||
*/
|
||||
handleTabClick = (event) => {
|
||||
handleTabEvent = (event) => {
|
||||
if (event.type === 'mouseover' && !this.canChangeTabOnHover) {
|
||||
return;
|
||||
}
|
||||
const container = event.currentTarget;
|
||||
const tab = window.gBrowser.tabs.find((t) => t.linkedBrowser.closest('.browserSidebarContainer') === container);
|
||||
if (tab) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue