/* 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/. */ @namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); @namespace html url("http://www.w3.org/1999/xhtml"); @namespace svg url("http://www.w3.org/2000/svg"); #main-window:not([chromehidden~="toolbar"]) { %ifdef XP_MACOSX min-width: 335px; %else min-width: 300px; %endif } #main-window[customize-entered] { min-width: -moz-fit-content; } searchbar { -moz-binding: url("chrome://browser/content/search/search.xml#searchbar"); } .browserStack > browser[remote="true"] { -moz-binding: url("chrome://global/content/bindings/remote-browser.xml#remote-browser"); } toolbar[customizable="true"] { -moz-binding: url("chrome://browser/content/customizableui/toolbar.xml#toolbar"); } %ifdef XP_MACOSX #toolbar-menubar { -moz-binding: url("chrome://browser/content/customizableui/toolbar.xml#toolbar-menubar-stub"); } toolbar[customizable="true"]:not([nowindowdrag="true"]) { -moz-binding: url("chrome://browser/content/customizableui/toolbar.xml#toolbar-drag"); } %endif #toolbar-menubar[autohide="true"] { -moz-binding: url("chrome://browser/content/customizableui/toolbar.xml#toolbar-menubar-autohide"); } #addon-bar { -moz-binding: url("chrome://browser/content/customizableui/toolbar.xml#addonbar-delegating"); visibility: visible; margin: 0; height: 0 !important; overflow: hidden; padding: 0; border: 0 none; } #addonbar-closebutton { visibility: visible; height: 0 !important; } #status-bar { height: 0 !important; -moz-binding: none; padding: 0; margin: 0; } panelmultiview { -moz-binding: url("chrome://browser/content/customizableui/panelUI.xml#panelmultiview"); } panelview { -moz-binding: url("chrome://browser/content/customizableui/panelUI.xml#panelview"); -moz-box-orient: vertical; } .panel-mainview { transition: transform 150ms; } panelview:not([mainview]):not([current]) { display: none; } tabbrowser { -moz-binding: url("chrome://browser/content/tabbrowser.xml#tabbrowser"); } .tabbrowser-tabs { -moz-binding: url("chrome://browser/content/tabbrowser.xml#tabbrowser-tabs"); } #tabbrowser-tabs:not([overflow="true"]) ~ #alltabs-button, #tabbrowser-tabs:not([overflow="true"]) + #new-tab-button, #tabbrowser-tabs[overflow="true"] > .tabbrowser-arrowscrollbox > .tabs-newtab-button, #TabsToolbar[currentset]:not([currentset*="tabbrowser-tabs,new-tab-button"]) > #tabbrowser-tabs > .tabbrowser-arrowscrollbox > .tabs-newtab-button, #TabsToolbar[customizing="true"] > #tabbrowser-tabs > .tabbrowser-arrowscrollbox > .tabs-newtab-button { visibility: collapse; } #tabbrowser-tabs:not([overflow="true"])[using-closing-tabs-spacer] ~ #alltabs-button { visibility: hidden; /* temporary space to keep a tab's close button under the cursor */ } .tabbrowser-tab { -moz-binding: url("chrome://browser/content/tabbrowser.xml#tabbrowser-tab"); } .tabbrowser-tab:not([pinned]) { -moz-box-flex: 100; max-width: 210px; min-width: 100px; width: 0; transition: min-width 200ms ease-out, max-width 230ms ease-out; } .tabbrowser-tab:not([pinned]):not([fadein]) { max-width: 0.1px; min-width: 0.1px; visibility: hidden; } .tab-close-button, .tab-background { /* Explicitly set the visibility to override the value (collapsed) * we inherit from #TabsToolbar[collapsed] upon opening a browser window. */ visibility: visible; } .tab-close-button[fadein], .tab-background[fadein] { /* This transition is only wanted for opening tabs. */ transition: visibility 0ms 25ms; } .tab-close-button:not([fadein]), .tab-background:not([fadein]) { visibility: hidden; } .tab-label:not([fadein]), .tab-throbber:not([fadein]), .tab-icon-image:not([fadein]) { display: none; } .tabbrowser-tabs[positionpinnedtabs] > .tabbrowser-tab[pinned] { position: fixed !important; display: block; /* position:fixed already does this (bug 579776), but let's be explicit */ } .tabbrowser-tabs[movingtab] > .tabbrowser-tab[selected] { position: relative; z-index: 2; pointer-events: none; /* avoid blocking dragover events on scroll buttons */ } .tabbrowser-tabs[movingtab] > .tabbrowser-tab[fadein]:not([selected]) { transition: transform 200ms ease-out; } #alltabs-popup { -moz-binding: url("chrome://browser/content/tabbrowser.xml#tabbrowser-alltabs-popup"); } toolbar[printpreview="true"] { -moz-binding: url("chrome://global/content/printPreviewBindings.xml#printpreviewtoolbar"); } toolbar[overflowable] > .customization-target { overflow: hidden; } toolbar:not([overflowing]) > .overflow-button, toolbar[customizing] > .overflow-button { display: none; } %ifdef CAN_DRAW_IN_TITLEBAR #main-window:not([chromemargin]) > #titlebar, #main-window[inFullscreen] > #titlebar, #main-window[inFullscreen] .titlebar-placeholder, #main-window:not([tabsintitlebar]) .titlebar-placeholder { display: none; } #titlebar { -moz-binding: url("chrome://global/content/bindings/general.xml#windowdragbox"); } #titlebar-spacer { pointer-events: none; } #main-window[tabsintitlebar] #titlebar-buttonbox { position: relative; } #titlebar-buttonbox { -moz-appearance: -moz-window-button-box; } %ifdef XP_MACOSX #titlebar-fullscreen-button { -moz-appearance: -moz-mac-fullscreen-button; } /* Because these buttons don't move, they should always be aligned the same, * left and right were deprecated, so we have to do work to get it to mean that: */ #titlebar-buttonbox-container:-moz-locale-dir(ltr) { -moz-box-align: start; } #titlebar-buttonbox-container:-moz-locale-dir(rtl) { -moz-box-align: end; } /* Fullscreen and caption buttons don't move with RTL on OS X so override the automatic ordering. */ #titlebar-secondary-buttonbox:-moz-locale-dir(ltr), #titlebar-buttonbox-container:-moz-locale-dir(rtl), .titlebar-placeholder[type="fullscreen-button"]:-moz-locale-dir(ltr), .titlebar-placeholder[type="caption-buttons"]:-moz-locale-dir(rtl) { -moz-box-ordinal-group: 1000; } #titlebar-secondary-buttonbox:-moz-locale-dir(rtl), #titlebar-buttonbox-container:-moz-locale-dir(ltr), .titlebar-placeholder[type="caption-buttons"]:-moz-locale-dir(ltr), .titlebar-placeholder[type="fullscreen-button"]:-moz-locale-dir(rtl) { -moz-box-ordinal-group: 0; } %else /* On non-OSX, these should be start-aligned */ #titlebar-buttonbox-container { -moz-box-align: start; } %endif %if !defined(MOZ_WIDGET_GTK) && !defined(MOZ_WIDGET_QT) #TabsToolbar > .private-browsing-indicator { -moz-box-ordinal-group: 1000; } %endif %ifdef XP_WIN #main-window[sizemode="maximized"] #titlebar-buttonbox { -moz-appearance: -moz-window-button-box-maximized; } %endif %endif /* Rules to help integrate SDK widgets */ toolbaritem[sdkstylewidget="true"] > toolbarbutton, toolbarpaletteitem > toolbaritem[sdkstylewidget="true"] > iframe, toolbarpaletteitem > toolbaritem[sdkstylewidget="true"] > .toolbarbutton-text { display: none; } toolbarpaletteitem:-moz-any([place="palette"], [place="panel"]) > toolbaritem[sdkstylewidget="true"] > toolbarbutton { display: -moz-box; } toolbarpaletteitem > toolbaritem[sdkstylewidget="true"][cui-areatype="toolbar"] > .toolbarbutton-text { display: -moz-box; } toolbarpaletteitem[removable="false"] { opacity: 0.5; cursor: default; } #bookmarks-toolbar-placeholder, toolbarpaletteitem > #personal-bookmarks > #PlacesToolbar, #personal-bookmarks[cui-areatype="menu-panel"] > #PlacesToolbar, #personal-bookmarks[cui-areatype="toolbar"][overflowedItem=true] > #PlacesToolbar { display: none; } #PlacesToolbarDropIndicatorHolder { position: absolute; top: 25%; } toolbarpaletteitem > #personal-bookmarks > #bookmarks-toolbar-placeholder, #personal-bookmarks[cui-areatype="menu-panel"] > #bookmarks-toolbar-placeholder, #personal-bookmarks[cui-areatype="toolbar"][overflowedItem=true] > #bookmarks-toolbar-placeholder { display: -moz-box; } #nav-bar-customization-target > #personal-bookmarks, toolbar:not(#TabsToolbar) > #wrapper-personal-bookmarks, toolbar:not(#TabsToolbar) > #personal-bookmarks { -moz-box-flex: 1; } #zoom-controls[cui-areatype="toolbar"]:not([overflowedItem=true]) > #zoom-reset-button > .toolbarbutton-text { display: -moz-box; } #urlbar-reload-button:not([displaystop]) + #urlbar-stop-button, #urlbar-reload-button[displaystop] { visibility: collapse; } #PanelUI-feeds > .feed-toolbarbutton:-moz-locale-dir(rtl) { direction: rtl; } #panelMenu_bookmarksMenu > .bookmark-item { max-width: none; } #urlbar-container { min-width: 50ch; } #search-container { min-width: 25ch; } /* Apply crisp rendering for favicons at exactly 2dppx resolution */ @media (resolution: 2dppx) { .searchbar-engine-image, .searchbar-engine-menuitem > .menu-iconic-left > .menu-iconic-icon { image-rendering: -moz-crisp-edges; } } #urlbar, .searchbar-textbox { /* Setting a width and min-width to let the location & search bars maintain a constant width in case they haven't be resized manually. (bug 965772) */ width: 1px; min-width: 1px; } #main-window:-moz-lwtheme { background-repeat: no-repeat; background-position: top right; } %ifdef XP_MACOSX #main-window[inFullscreen="true"] { padding-top: 0; /* override drawintitlebar="true" */ } %endif #browser-bottombox[lwthemefooter="true"] { background-repeat: no-repeat; background-position: bottom left; } .menuitem-tooltip { -moz-binding: url("chrome://browser/content/urlbarBindings.xml#menuitem-tooltip"); } .menuitem-iconic-tooltip, .menuitem-tooltip[type="checkbox"], .menuitem-tooltip[type="radio"] { -moz-binding: url("chrome://browser/content/urlbarBindings.xml#menuitem-iconic-tooltip"); } /* Hide menu elements intended for keyboard access support */ #main-menubar[openedwithkey=false] .show-only-for-keyboard { display: none; } /* ::::: location bar ::::: */ #urlbar { -moz-binding: url(chrome://browser/content/urlbarBindings.xml#urlbar); } .ac-url-text:-moz-locale-dir(rtl), .ac-title:-moz-locale-dir(rtl) > description { direction: ltr !important; } /* For results that are actions, their description text is shown instead of the URL - this needs to follow the locale's direction, unlike URLs. */ panel:not([noactions]) > richlistbox > richlistitem[type~="action"]:-moz-locale-dir(rtl) > .ac-url-box { direction: rtl; } panel[noactions] > richlistbox > richlistitem[type~="action"] > .ac-url-box > .ac-url > .ac-action-text, panel[noactions] > richlistbox > richlistitem[type~="action"] > .ac-url-box > .ac-action-icon { visibility: collapse; } panel[noactions] > richlistbox > richlistitem[type~="action"] > .ac-url-box > .ac-url > .ac-url-text { visibility: visible; } #urlbar:not([actiontype]) > #urlbar-display-box, #urlbar:not([actiontype="switchtab"]) > #urlbar-display-box > .urlbar-display-switchtab { display: none; } #PopupAutoComplete { -moz-binding: url("chrome://browser/content/urlbarBindings.xml#browser-autocomplete-result-popup"); } #PopupAutoCompleteRichResult { -moz-binding: url("chrome://browser/content/urlbarBindings.xml#urlbar-rich-result-popup"); } #urlbar[pageproxystate="invalid"] > #urlbar-icons > .urlbar-icon, #urlbar[pageproxystate="invalid"][focused="true"] > #urlbar-go-button ~ toolbarbutton, #urlbar[pageproxystate="valid"] > #urlbar-go-button, #urlbar:not([focused="true"]) > #urlbar-go-button { visibility: collapse; } #urlbar[pageproxystate="invalid"] > #identity-box > #identity-icon-labels { visibility: collapse; } #urlbar[pageproxystate="invalid"] > #identity-box { pointer-events: none; } #identity-icon-labels { max-width: 18em; } @media (max-width: 700px) { #urlbar-container { min-width: 45ch; } #identity-icon-labels { max-width: 70px; } } @media (max-width: 600px) { #urlbar-container { min-width: 40ch; } #identity-icon-labels { max-width: 60px; } } @media (max-width: 500px) { #urlbar-container { min-width: 35ch; } #identity-icon-labels { max-width: 50px; } } @media (max-width: 400px) { #urlbar-container { min-width: 28ch; } #identity-icon-labels { max-width: 40px; } } #identity-icon-country-label { direction: ltr; } #identity-box.verifiedIdentity > #identity-icon-labels > #identity-icon-label { -moz-margin-end: 0.25em !important; } #main-window[customizing] :-moz-any(#urlbar, .searchbar-textbox) > .autocomplete-textbox-container > .textbox-input-box { visibility: hidden; } /* ::::: Unified Back-/Forward Button ::::: */ #back-button > .toolbarbutton-menu-dropmarker, #forward-button > .toolbarbutton-menu-dropmarker { display: none; } .unified-nav-current { font-weight: bold; } toolbarbutton.bookmark-item { max-width: 13em; } /* Apply crisp rendering for favicons at exactly 2dppx resolution */ @media (resolution: 2dppx) { .alltabs-popup > .menuitem-iconic > .menu-iconic-left > .menu-iconic-icon, .menuitem-with-favicon > .menu-iconic-left > .menu-iconic-icon { image-rendering: -moz-crisp-edges; } .bookmark-item > .toolbarbutton-icon, .bookmark-item > .menu-iconic-left > .menu-iconic-icon, #personal-bookmarks[cui-areatype="toolbar"] > #bookmarks-toolbar-placeholder > .toolbarbutton-icon { image-rendering: -moz-crisp-edges; } } #editBMPanel_tagsSelector { /* override default listbox width from xul.css */ width: auto; } /* The star doesn't make sense as text */ toolbar[mode="text"] #bookmarks-menu-button > .toolbarbutton-menubutton-button > .toolbarbutton-icon { display: -moz-box !important; } toolbar[mode="text"] #bookmarks-menu-button > .toolbarbutton-menubutton-button > .toolbarbutton-text, toolbar[mode="full"] #bookmarks-menu-button.bookmark-item > .toolbarbutton-menubutton-button > .toolbarbutton-text { display: none; } menupopup[emptyplacesresult="true"] > .hide-if-empty-places-result { display: none; } menuitem.spell-suggestion { font-weight: bold; } /* apply Fitts' law to the notification bar's close button */ window[sizemode="maximized"] #content .notification-inner { border-right: 0px !important; } /* Hide extension toolbars that neglected to set the proper class */ window[chromehidden~="location"][chromehidden~="toolbar"] toolbar:not(.chromeclass-menubar), window[chromehidden~="toolbar"] toolbar:not(.toolbar-primary):not(.chromeclass-menubar) { display: none; } #navigator-toolbox , #mainPopupSet { min-width: 1px; } %ifdef MOZ_SERVICES_SYNC /* Sync notification UI */ #sync-notifications { -moz-binding: url("chrome://browser/content/sync/notification.xml#notificationbox"); overflow-y: visible !important; } #sync-notifications notification { -moz-binding: url("chrome://browser/content/sync/notification.xml#notification"); } %endif /* History Swipe Animation */ #historySwipeAnimationContainer { overflow: hidden; } #historySwipeAnimationPreviousPage, #historySwipeAnimationCurrentPage, #historySwipeAnimationNextPage { background: none top left no-repeat white; } #historySwipeAnimationPreviousPage { background-image: -moz-element(#historySwipeAnimationPreviousPageSnapshot); } #historySwipeAnimationCurrentPage { background-image: -moz-element(#historySwipeAnimationCurrentPageSnapshot); } #historySwipeAnimationNextPage { background-image: -moz-element(#historySwipeAnimationNextPageSnapshot); } /* Identity UI */ #identity-popup-content-box:not(.chromeUI) > #identity-popup-brandName, #identity-popup-content-box:not(.chromeUI) > #identity-popup-chromeLabel, #identity-popup-content-box.chromeUI > .identity-popup-label:not(#identity-popup-brandName):not(#identity-popup-chromeLabel), #identity-popup-content-box.chromeUI > .identity-popup-description, #identity-popup.chromeUI > #identity-popup-button-container, #identity-popup-content-box.unknownIdentity > #identity-popup-connectedToLabel , #identity-popup-content-box.unknownIdentity > #identity-popup-runByLabel , #identity-popup-content-box.unknownIdentity > #identity-popup-content-host , #identity-popup-content-box.unknownIdentity > #identity-popup-content-owner , #identity-popup-content-box.verifiedIdentity > #identity-popup-connectedToLabel2 , #identity-popup-content-box.verifiedDomain > #identity-popup-connectedToLabel2 , #identity-popup-content-box.verifiedDomain > #identity-popup-runByLabel { display: none; } /* Full Screen UI */ #fullscr-toggler { height: 1px; background: black; } #full-screen-warning-container { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 2147483647 !important; } #full-screen-warning-container[fade-warning-out] { transition-property: opacity !important; transition-duration: 500ms !important; opacity: 0.0; } /* When the modal fullscreen approval UI is showing, don't allow interaction with the page, but when we're just showing the warning upon entering fullscreen on an already approved page, do allow interaction with the page. */ #full-screen-warning-container:not([obscure-browser]) { pointer-events: none; } #full-screen-warning-message { /* We must specify a max-width, otherwise word-wrap:break-word doesn't work in descendant and