From 6bf0a5cb5034a7e684dcc3500e841785237ce2dd Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 19:32:43 +0200 Subject: Adding upstream version 1:115.7.0. Signed-off-by: Daniel Baumann --- .../extension/configurations/Toolbars.sys.mjs | 54 ++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 browser/tools/mozscreenshots/mozscreenshots/extension/configurations/Toolbars.sys.mjs (limited to 'browser/tools/mozscreenshots/mozscreenshots/extension/configurations/Toolbars.sys.mjs') diff --git a/browser/tools/mozscreenshots/mozscreenshots/extension/configurations/Toolbars.sys.mjs b/browser/tools/mozscreenshots/mozscreenshots/extension/configurations/Toolbars.sys.mjs new file mode 100644 index 0000000000..06b1159a5e --- /dev/null +++ b/browser/tools/mozscreenshots/mozscreenshots/extension/configurations/Toolbars.sys.mjs @@ -0,0 +1,54 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this file, + * You can obtain one at http://mozilla.org/MPL/2.0/. */ + +export var Toolbars = { + init(libDir) {}, + + configurations: { + onlyNavBar: { + selectors: ["#navigator-toolbox"], + async applyConfig() { + let browserWindow = + Services.wm.getMostRecentWindow("navigator:browser"); + let personalToolbar = + browserWindow.document.getElementById("PersonalToolbar"); + browserWindow.setToolbarVisibility(personalToolbar, false); + toggleMenubarIfNecessary(false); + }, + }, + + allToolbars: { + selectors: ["#navigator-toolbox"], + async applyConfig() { + // Boookmarks and menubar + let browserWindow = + Services.wm.getMostRecentWindow("navigator:browser"); + let personalToolbar = + browserWindow.document.getElementById("PersonalToolbar"); + browserWindow.setToolbarVisibility(personalToolbar, true); + toggleMenubarIfNecessary(true); + }, + + async verifyConfig() { + let browserWindow = + Services.wm.getMostRecentWindow("navigator:browser"); + if (browserWindow.fullScreen) { + return "The bookmark toolbar and menubar are not shown in fullscreen."; + } + return undefined; + }, + }, + }, +}; + +// helpers + +function toggleMenubarIfNecessary(visible) { + let browserWindow = Services.wm.getMostRecentWindow("navigator:browser"); + // The menubar is not shown on OS X or while in fullScreen + if (Services.appinfo.OS != "Darwin" /* && !browserWindow.fullScreen*/) { + let menubar = browserWindow.document.getElementById("toolbar-menubar"); + browserWindow.setToolbarVisibility(menubar, visible); + } +} -- cgit v1.2.3