Files
tubestation/waterfox/browser/components/preferences/content/preferences-theme.xhtml
Alex Kontos 732b2a4624 refactor: about:preferences
* feat: Waterfox custom CSS on non-default themes by default
* feat: Table of Contents to preferences
* feat: DoOH checkbox to privacy preferences
* feat panel and menu transparency options
* feat: Look & Feel about:preferences item
2025-11-06 14:13:29 +00:00

486 lines
19 KiB
HTML

<!-- Theme panel -->
<script>
/* eslint-env mozilla/browser-window */
/* globals register_module _gThemePane gotoPref */
Services.scriptloader.loadSubScript("chrome://browser/content/overlays/theme.js", this);
// Register the pane
register_module("paneTheme", _gThemePane);
// This ensure that we actually render the Theme page when refreshing on
// about:preferences#theme. It is needed because the regular gotoPref in
// preferences.js cannot function properly as we do not register_module
// until this file is loaded, which has not been done when preferences.js
// is init'd.
if (location.href.includes("#theme")) {
setTimeout(() => {
gotoPref("paneTheme");
}, 0);
}
</script>
<html:template id="template-paneTheme">
<hbox id="firefoxThemeCategory" class="subcategory" hidden="true" data-category="paneTheme">
<!-- Theme -->
<html:h1 data-l10n-id="theme-header" />
</hbox>
<groupbox id="themeGroup" data-category="paneTheme" hidden="true">
<hbox>
<vbox id="waterfoxUserChromeCustomizations">
<!-- <checkbox id="enableWaterfoxTheme" preference="userChrome.theme.enable" data-l10n-id="enable-waterfox-theme" /> -->
<hbox>
<menulist id="enableWaterfoxTheme" preference="browser.theme.enableWaterfoxCustomizations">
<menupopup>
<menuitem data-l10n-id="enable-waterfox-theme-0" value="0" />
<menuitem data-l10n-id="enable-waterfox-theme-1" value="1" />
<menuitem data-l10n-id="enable-waterfox-theme-2" value="2" />
</menupopup>
</menulist>
</hbox>
</vbox>
<vbox id="waterfoxUserChromePresetsWrapper" style="height: 0; z-index: 1;">
<vbox id="waterfoxUserChromePresets">
<html:h2 style="-moz-box-flex: 1;" class="presets-header" data-l10n-id="preset-title" />
<button id="waterfoxDefaults" is="highlightable-button"
class="themepage-button check-theme-page-controlled" data-l10n-id="waterfox-defaults" />
<button id="leptonStyle" is="highlightable-button"
class="themepage-button check-theme-page-controlled" data-l10n-id="lepton-style" />
<button id="protonStyle" is="highlightable-button"
class="themepage-button check-theme-page-controlled" data-l10n-id="proton-style" />
</vbox>
</vbox>
</hbox>
</groupbox>
<groupbox id="themeGroup" data-category="paneTheme" hidden="true">
<label>
<!-- Appearance -->
<html:h2 data-l10n-id="appearance-header" />
</label>
<hbox>
<menulist id="accentColor">
<menupopup>
<menuitem data-l10n-id="enable-default-accent-color" value="0" />
<menuitem data-l10n-id="enable-cyan-accent-color" value="1" />
<menuitem data-l10n-id="enable-system-accent-color" value="2" />
</menupopup>
</menulist>
</hbox>
<checkbox id="enablePanelTransparency" preference="userChrome.theme.transparent.panel"
data-l10n-id="enable-panel-transparency" />
<checkbox id="enableMenuTransparency" preference="userChrome.theme.transparent.menu"
data-l10n-id="enable-menu-transparency" />
</groupbox>
<groupbox id="themeIconGroup" data-category="paneTheme" hidden="true">
<!-- Icons -->
<label>
<html:h2 data-l10n-id="icons-header" />
</label>
<checkbox id="hideAllIcons" preference="userChrome.icon.disabled" data-l10n-id="hide-all-icons" />
<checkbox id="hideTabIcons" preference="userChrome.hidden.tab_icon" data-l10n-id="hide-tab-icons" />
<!-- <checkbox id="showMenuIcons" preference="userChrome.icon.menu.full" data-l10n-id="show-menu-icons" /> This does not do what one would expect, i.e. show/remove all icons -->
#ifdef XP_MACOSX
<hbox>
<checkbox id="showMacMenuIcons" preference="userChrome.icon.global_menu.mac"
data-l10n-id="show-mac-menu-icons" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="showMacMenuIconsImage" class="info-popup" />
</div>
</hbox>
#endif
</groupbox>
<groupbox id="themeFontGroup" data-category="paneTheme" hidden="true">
<label>
<html:h2 data-l10n-id="font-header" />
</label>
<hbox>
<checkbox id="monospaceFont" preference="userContent.page.monospace"
data-l10n-id="monospace-font" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="monospaceFontImage" class="info-popup" />
</div>
</hbox>
<hbox>
<checkbox id="monospaceFontTheme" preference="userChrome.theme.monospace"
data-l10n-id="monospace-font-theme" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="monospaceFontThemeImage" class="info-popup" />
</div>
</hbox>
</groupbox>
<groupbox id="themeAnimationGroup" data-category="paneTheme" hidden="true">
<label>
<!-- Animation-->
<html:h2 data-l10n-id="animation-header" />
</label>
<!-- Panels -->
<checkbox id="disablePanelAnimate" preference="userChrome.decoration.disable_panel_animate"
data-l10n-id="disable-panel-animate" />
<!-- Sidebar -->
<checkbox id="disableSidebarAnimate" preference="userChrome.decoration.disable_sidebar_animate"
data-l10n-id="disable-sidebar-animate" />
</groupbox>
<hbox id="firefoxInterfaceComponentCategory" class="subcategory" hidden="true" data-category="paneTheme">
<!-- Interface Components -->
<html:h1 data-l10n-id="interface-component-header"/>
</hbox>
<groupbox id="tabbarComponentGroup" data-category="paneTheme" hidden="true">
<!-- Tab Bar -->
<label>
<html:h2 data-l10n-id="tab-bar-header" />
</label>
<hbox>
<checkbox id="tabContextLine" preference="userChrome.tab.photon_like_contextline"
data-l10n-id="tab-context-line" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="contextLineImage" class="info-popup" />
</div>
</hbox>
<hbox>
<checkbox id="dragSpace" preference="userChrome.padding.drag_space" data-l10n-id="drag-space" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="dragSpaceImage" class="info-popup" />
</div>
</hbox>
<hbox>
<checkbox id="closeButtonHover" preference="userChrome.tab.close_button_at_hover"
data-l10n-id="close-button-hover" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="closeButtonHoverImage" class="info-popup" />
</div>
</hbox>
</groupbox>
<groupbox id="navbarComponentGroup" data-category="paneTheme" hidden="true">
<!-- Nav Bar -->
<label>
<html:h2 data-l10n-id="nav-bar-header" />
</label>
<checkbox id="compactNavBarPopup" preference="userChrome.padding.urlView_expanding"
data-l10n-id="compact-navbar-popup" />
<!-- Full Screen -->
<!-- <label>
<html:h2 data-l10n-id="full-screen-header" />
</label> -->
</groupbox>
<groupbox id="pannelComponentGroup" data-category="paneTheme" hidden="true">
<!-- Panels -->
<label>
<html:h2 data-l10n-id="panels-header" />
</label>
<checkbox id="compactContextMenu" preference="userChrome.padding.menu_compact"
data-l10n-id="compact-context-menu" />
<checkbox id="compactBookmarkMenu" preference="userChrome.padding.bookmark_menu.compact"
data-l10n-id="compact-bookmark-menu" />
<checkbox id="compactPanelHeader" preference="userChrome.padding.panel_header"
data-l10n-id="compact-panel-header" />
<hbox>
<checkbox id="removePanelStrip" preference="userChrome.panel.remove_strip"
data-l10n-id="remove-panel-strip" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="removePanelStripImage" class="info-popup" />
</div>
</hbox>
<hbox>
<checkbox id="fullPanelStrip" preference="userChrome.panel.full_width_separator"
data-l10n-id="full-panel-strip" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="fullPanelStripImage" class="info-popup" />
</div>
</hbox>
</groupbox>
<hbox id="firefoxRoundingCategory" class="subcategory" hidden="true" data-category="paneTheme">
<!-- Rounding -->
<html:h1 data-l10n-id="rounding-header"/>
</hbox>
<groupbox id="roundingTabbarGroup" data-category="paneTheme" hidden="true">
<hbox>
<checkbox id="squareTabCorners" preference="userChrome.tab.squareTabCorners"
data-l10n-id="square-tab-edges" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="squareTabEdgesImage" class="info-popup" />
</div>
</hbox>
</groupbox>
<groupbox id="roundingNavbarGroup" data-category="paneTheme" hidden="true">
<label>
<html:h2 data-l10n-id="nav-bar-header" />
</label>
<hbox>
<checkbox id="squareButtonEdges" preference="userChrome.rounding.square_button"
data-l10n-id="square-button-edges" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="squareButtonEdgesImage" class="info-popup" />
</div>
</hbox>
</groupbox>
<groupbox id="roundingPannelGroup" data-category="paneTheme" hidden="true">
<label>
<html:h2 data-l10n-id="panels-header" />
</label>
<hbox>
<checkbox id="squareMenuPanel" preference="userChrome.rounding.square_panel"
data-l10n-id="square-menu-panel" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="squareMenuPanelImage" class="info-popup" />
</div>
</hbox>
<checkbox id="squarePanelItem" preference="userChrome.rounding.square_panelitem"
data-l10n-id="square-panel-item" />
<!-- MacOS uses native context menus, so we cannot modify them with userChrome. Moz listed allowing this as a WONTFIX. -->
#ifndef XP_MACOSX
<hbox>
<checkbox id="squareMenuPopup" preference="userChrome.rounding.square_menupopup"
data-l10n-id="square-menu-popup" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="squareMenuPopupImage" class="info-popup" />
</div>
</hbox>
<checkbox id="squareMenuItem" preference="userChrome.rounding.square_menuitem"
data-l10n-id="square-menu-item" />
#endif
<hbox>
<checkbox id="squareField" preference="userChrome.rounding.square_field"
data-l10n-id="square-field" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="squareFieldImage" class="info-popup" />
</div>
</hbox>
<checkbox id="squareCheckbox" preference="userChrome.rounding.square_checklabel"
data-l10n-id="square-checkbox" />
</groupbox>
<hbox id="firefoxAutohideCategory" class="subcategory" hidden="true" data-category="paneTheme">
<!-- Auto Hide & Hidden -->
<html:h1 data-l10n-id="autohide-hidden-header"/>
</hbox>
<groupbox id="autohideTabbarGroup" data-category="paneTheme" hidden="true">
<label>
<html:h2 data-l10n-id="tab-bar-header" />
</label>
<hbox>
<checkbox id="autoHideTabs" preference="userChrome.autohide.tab" data-l10n-id="auto-hide-tabs" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="autoHideTabsImage" class="info-popup" />
</div>
</hbox>
<vbox class="indent">
<hbox>
<checkbox id="autoBlurTabs" preference="userChrome.autohide.tab.blur"
data-l10n-id="auto-blur-tabs" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="autoBlurTabsImage" class="info-popup" />
</div>
</hbox>
</vbox>
<checkbox id="autoHideTabBar" preference="userChrome.autohide.tabbar" data-l10n-id="auto-hide-tabbar" />
</groupbox>
<groupbox id="autohideNavbarGroup" data-category="paneTheme" hidden="true">
<label>
<html:h2 data-l10n-id="nav-bar-header" />
</label>
<hbox>
<checkbox id="autoHideBack" preference="userChrome.autohide.back_button"
data-l10n-id="auto-hide-back" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="autoHideBackImage" class="info-popup" />
</div>
</hbox>
<hbox>
<checkbox id="autoHideForward" preference="userChrome.autohide.forward_button"
data-l10n-id="auto-hide-forward" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="autoHideForwardImage" class="info-popup" />
</div>
</hbox>
<checkbox id="autoHidePageAction" preference="userChrome.autohide.page_action"
data-l10n-id="auto-hide-pageaction" />
<hbox>
<checkbox id="hideNavBarIconBox" preference="userChrome.hidden.urlbar_iconbox"
data-l10n-id="hide-urlbar-iconbox" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="hideNavBarIconBoxImage" class="info-popup" />
</div>
</hbox>
</groupbox>
<groupbox id="autohideBookmarkbarGroup" data-category="paneTheme" hidden="true">
<label>
<html:h2 data-l10n-id="bookmark-header" />
</label>
<checkbox id="autoHideBookmarkBar" preference="userChrome.autohide.bookmarkbar"
data-l10n-id="auto-hide-bookmarkbar" />
<hbox>
<checkbox id="hideBookmbarkBarIcon" preference="userChrome.hidden.bookmarkbar_icon"
data-l10n-id="hide-bookmarkbar-icon" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="hideBookmbarkBarIconImage" class="info-popup" />
</div>
</hbox>
<hbox>
<checkbox id="hideBookmarkBarLabel" preference="userChrome.hidden.bookmarkbar_label"
data-l10n-id="hide-bookmarkbar-label" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="hideBookmarkBarLabelImage" class="info-popup" />
</div>
</hbox>
</groupbox>
<groupbox id="autohidePannelGroup" data-category="paneTheme" hidden="true">
<label>
<html:h2 data-l10n-id="panels-header" />
</label>
<hbox>
<checkbox id="hideDisabledMenuItems" preference="userChrome.hidden.disabled_menu"
data-l10n-id="hide-disabled-menuitems" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="hideDisabledMenuItemsImage" class="info-popup" />
</div>
</hbox>
</groupbox>
<groupbox id="autohideSidebarGroup" data-category="paneTheme" hidden="true">
<label>
<html:h2 data-l10n-id="sidebar-header" />
</label>
<hbox>
<checkbox id="autoHideSidebar" preference="userChrome.autohide.sidebar"
data-l10n-id="auto-hide-sidebar" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="autoHideSidebarImage" class="info-popup" />
</div>
</hbox>
<hbox>
<checkbox id="hideSidebarHeader" preference="userChrome.hidden.sidebar_header"
data-l10n-id="hide-sidebar-header" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="hideSidebarHeaderImage" class="info-popup" />
</div>
</hbox>
</groupbox>
<hbox id="firefoxCenterCategory" class="subcategory" hidden="true" data-category="paneTheme">
<!-- Center -->
<html:h1 data-l10n-id="center-header"/>
</hbox>
<groupbox id="centerTabbarGroup" data-category="paneTheme" hidden="true">
<label>
<html:h2 data-l10n-id="tab-bar-header" />
</label>
<hbox>
<checkbox id="centerTabContent" preference="userChrome.centered.tab"
data-l10n-id="center-tab-content" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="centerTabContentImage" class="info-popup" />
</div>
</hbox>
<vbox class="indent">
<hbox>
<checkbox id="centerTabLabel" preference="userChrome.centered.tab.label"
data-l10n-id="center-tab-label" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="centerTabLabelImage" class="info-popup" />
</div>
</hbox>
</vbox>
</groupbox>
<groupbox id="centerNavbarGroup" data-category="paneTheme" hidden="true">
<label>
<html:h2 data-l10n-id="nav-bar-header" />
</label>
<hbox>
<checkbox id="centerNavBarText" preference="userChrome.centered.urlbar"
data-l10n-id="center-navbar-text" />
<div class="popup-container">
<img class="preferences-info-button" />
<img id="centerNavBarTextImage" class="info-popup" />
</div>
</hbox>
</groupbox>
</html:template>