Move web panel to tabbox wrapper when not pinned.

This commit is contained in:
brahim 2024-10-10 11:46:24 +02:00
parent f2921d75b4
commit 1077ce8705

View file

@ -12,6 +12,7 @@ class ZenBrowserManagerSidebar extends ZenDOMOperatedFeature {
forwardButton = null; forwardButton = null;
backButton = null; backButton = null;
progressListener = null; progressListener = null;
tabBox;
DEFAULT_MOBILE_USER_AGENT = 'Mozilla/5.0 (Android 12; Mobile; rv:129.0) Gecko/20100101 Firefox/131.0'; DEFAULT_MOBILE_USER_AGENT = 'Mozilla/5.0 (Android 12; Mobile; rv:129.0) Gecko/20100101 Firefox/131.0';
MAX_SIDEBAR_PANELS = 9; // +1 for the add panel button MAX_SIDEBAR_PANELS = 9; // +1 for the add panel button
@ -21,6 +22,7 @@ class ZenBrowserManagerSidebar extends ZenDOMOperatedFeature {
ChromeUtils.defineLazyGetter(this, 'sidebar', () => document.getElementById('zen-sidebar-web-panel')); ChromeUtils.defineLazyGetter(this, 'sidebar', () => document.getElementById('zen-sidebar-web-panel'));
ChromeUtils.defineLazyGetter(this, 'forwardButton', () => document.getElementById('zen-sidebar-web-panel-forward')); ChromeUtils.defineLazyGetter(this, 'forwardButton', () => document.getElementById('zen-sidebar-web-panel-forward'));
ChromeUtils.defineLazyGetter(this, 'backButton', () => document.getElementById('zen-sidebar-web-panel-back')); ChromeUtils.defineLazyGetter(this, 'backButton', () => document.getElementById('zen-sidebar-web-panel-back'));
ChromeUtils.defineLazyGetter(this, 'tabBox', () => document.getElementById('tabbrowser-tabbox'));
this.onlySafeWidthAndHeight(); this.onlySafeWidthAndHeight();
@ -268,6 +270,9 @@ class ZenBrowserManagerSidebar extends ZenDOMOperatedFeature {
open() { open() {
let sidebar = document.getElementById('zen-sidebar-web-panel'); let sidebar = document.getElementById('zen-sidebar-web-panel');
if (!this.sidebar.hasAttribute('pinned')) {
this.moveToTabBoxWrapper();
}
sidebar.removeAttribute('hidden'); sidebar.removeAttribute('hidden');
this.update(); this.update();
} }
@ -577,12 +582,22 @@ class ZenBrowserManagerSidebar extends ZenDOMOperatedFeature {
this._updateSidebarButton(); this._updateSidebarButton();
} }
moveToTabBoxWrapper() {
this.tabBox.before(this.sidebarWrapper);
this.sidebarWrapper.style.order = '';
}
moveToTabBox() {
this.tabBox.prepend(this.sidebarWrapper);
}
togglePinned(elem) { togglePinned(elem) {
let sidebar = document.getElementById('zen-sidebar-web-panel'); if (this.sidebar.hasAttribute('pinned')) {
if (sidebar.hasAttribute('pinned')) {
this._removePinnedFromElements(); this._removePinnedFromElements();
this.moveToTabBoxWrapper();
} else { } else {
this._setPinnedToElements(); this._setPinnedToElements();
this.moveToTabBox();
} }
this.update(); this.update();
} }