mirror of
https://github.com/zen-browser/desktop.git
synced 2025-10-03 08:28:38 +00:00
Fixed opening customizable toolbar while having multiple windows (closes https://github.com/zen-browser/desktop/issues/3819)
This commit is contained in:
@@ -117,6 +117,8 @@ var gZenUIManager = {
|
||||
|
||||
var gZenVerticalTabsManager = {
|
||||
init() {
|
||||
this._multiWindowFeature = new ZenMultiWindowFeature();
|
||||
|
||||
ChromeUtils.defineLazyGetter(this, 'isWindowsStyledButtons', () => {
|
||||
return !(window.AppConstants.platform === 'macosx' || window.matchMedia('(-moz-gtk-csd-reversed-placement)').matches
|
||||
|| Services.prefs.getBoolPref('zen.view.experimental-force-window-controls-left'));
|
||||
@@ -138,7 +140,7 @@ var gZenVerticalTabsManager = {
|
||||
this.initRightSideOrderContextMenu();
|
||||
|
||||
window.addEventListener('customizationstarting', this._preCustomize.bind(this));
|
||||
window.addEventListener('aftercustomization', updateEvent);
|
||||
window.addEventListener('aftercustomization', this._postCustomize.bind(this));
|
||||
|
||||
window.addEventListener('DOMContentLoaded', updateEvent, { once: true });
|
||||
|
||||
@@ -209,12 +211,22 @@ var gZenVerticalTabsManager = {
|
||||
return this.__actualWindowButtons;
|
||||
},
|
||||
|
||||
_preCustomize() {
|
||||
this._updateEvent({ forceMultipleToolbar: true });
|
||||
async _preCustomize() {
|
||||
await this._multiWindowFeature.foreachWindowAsActive(async (browser) => {
|
||||
browser.gZenVerticalTabsManager._updateEvent({ forceMultipleToolbar: true, dontRebuildAreas: true });
|
||||
});
|
||||
this.rebuildAreas();
|
||||
this.navigatorToolbox.setAttribute('zen-sidebar-expanded', 'true');
|
||||
document.documentElement.setAttribute('zen-sidebar-expanded', 'true'); // force expanded sidebar
|
||||
},
|
||||
|
||||
_postCustomize() {
|
||||
// No need to use `await` here, because the customization is already done
|
||||
this._multiWindowFeature.foreachWindowAsActive(async (browser) => {
|
||||
browser.gZenVerticalTabsManager._updateEvent({ dontRebuildAreas: true });
|
||||
});
|
||||
},
|
||||
|
||||
initializePreferences(updateEvent) {
|
||||
XPCOMUtils.defineLazyPreferenceGetter(
|
||||
this,
|
||||
@@ -261,7 +273,7 @@ var gZenVerticalTabsManager = {
|
||||
);
|
||||
},
|
||||
|
||||
_updateEvent({ forceMultipleToolbar = false } = {}) {
|
||||
_updateEvent({ forceMultipleToolbar = false, dontRebuildAreas = false } = {}) {
|
||||
if (this._isUpdating) {
|
||||
return;
|
||||
}
|
||||
@@ -314,16 +326,8 @@ var gZenVerticalTabsManager = {
|
||||
!isCompactMode
|
||||
) {
|
||||
this.navigatorToolbox.prepend(topButtons);
|
||||
// browser.prepend(this.navigatorToolbox);
|
||||
} else {
|
||||
// customizationTarget.prepend(topButtons);
|
||||
// tabboxWrapper.prepend(this.navigatorToolbox);
|
||||
}
|
||||
|
||||
//if (!isVerticalTabs) {
|
||||
// document.getElementById("urlbar-container").after(document.getElementById('navigator-toolbox'));
|
||||
//}
|
||||
|
||||
let windowButtons = this.actualWindowButtons;
|
||||
let doNotChangeWindowButtons = !isCompactMode && isRightSide && this.isWindowsStyledButtons;
|
||||
const navBar = document.getElementById('nav-bar');
|
||||
@@ -365,7 +369,9 @@ var gZenVerticalTabsManager = {
|
||||
document.documentElement.removeAttribute("zen-single-toolbar");
|
||||
navBar.appendChild(document.getElementById('PanelUI-button'));
|
||||
this._toolbarOriginalParent.prepend(navBar);
|
||||
this.rebuildAreas();
|
||||
if (!dontRebuildAreas) {
|
||||
this.rebuildAreas();
|
||||
}
|
||||
}
|
||||
|
||||
if (isCompactMode) {
|
||||
|
Reference in New Issue
Block a user