summaryrefslogtreecommitdiff
path: root/browser/themes/linux
diff options
context:
space:
mode:
Diffstat (limited to 'browser/themes/linux')
-rw-r--r--browser/themes/linux/Geolocation-16.pngbin0 -> 606 bytes
-rw-r--r--browser/themes/linux/Geolocation-64.pngbin0 -> 8056 bytes
-rw-r--r--browser/themes/linux/Go-arrow.pngbin0 -> 573 bytes
-rw-r--r--browser/themes/linux/Info.pngbin0 -> 767 bytes
-rw-r--r--browser/themes/linux/KUI-close.pngbin0 -> 393 bytes
-rw-r--r--browser/themes/linux/Privacy-16.pngbin0 -> 822 bytes
-rw-r--r--browser/themes/linux/Privacy-32.pngbin0 -> 2085 bytes
-rw-r--r--browser/themes/linux/Privacy-48.pngbin0 -> 3422 bytes
-rw-r--r--browser/themes/linux/Privacy-64.pngbin0 -> 4828 bytes
-rw-r--r--browser/themes/linux/Secure.pngbin0 -> 865 bytes
-rw-r--r--browser/themes/linux/Security-broken.pngbin0 -> 928 bytes
-rw-r--r--browser/themes/linux/Toolbar-small.pngbin0 -> 5429 bytes
-rw-r--r--browser/themes/linux/Toolbar.pngbin0 -> 8925 bytes
-rw-r--r--browser/themes/linux/aboutCertError.css73
-rw-r--r--browser/themes/linux/aboutCertError_sectionCollapsed-rtl.pngbin0 -> 791 bytes
-rw-r--r--browser/themes/linux/aboutCertError_sectionCollapsed.pngbin0 -> 776 bytes
-rw-r--r--browser/themes/linux/aboutCertError_sectionExpanded.pngbin0 -> 767 bytes
-rw-r--r--browser/themes/linux/aboutPrivateBrowsing.css47
-rw-r--r--browser/themes/linux/aboutSessionRestore-window-icon.pngbin0 -> 405 bytes
-rw-r--r--browser/themes/linux/aboutSessionRestore.css90
-rw-r--r--browser/themes/linux/actionicon-tab.pngbin0 -> 236 bytes
-rw-r--r--browser/themes/linux/autocomplete.css210
-rw-r--r--browser/themes/linux/browser.css2185
-rw-r--r--browser/themes/linux/click-to-play-warning-stripes.pngbin0 -> 1563 bytes
-rw-r--r--browser/themes/linux/communicator/communicator.css6
-rw-r--r--browser/themes/linux/communicator/jar.mn7
-rw-r--r--browser/themes/linux/communicator/moz.build6
-rw-r--r--browser/themes/linux/downloads/allDownloadsViewOverlay.css125
-rw-r--r--browser/themes/linux/downloads/buttons.pngbin0 -> 5091 bytes
-rw-r--r--browser/themes/linux/downloads/contentAreaDownloadsView.css11
-rw-r--r--browser/themes/linux/downloads/download-glow-small.pngbin0 -> 556 bytes
-rw-r--r--browser/themes/linux/downloads/download-glow.pngbin0 -> 723 bytes
-rw-r--r--browser/themes/linux/downloads/download-notification-finish.pngbin0 -> 3626 bytes
-rw-r--r--browser/themes/linux/downloads/download-notification-start.pngbin0 -> 3166 bytes
-rw-r--r--browser/themes/linux/downloads/download-summary.pngbin0 -> 691 bytes
-rw-r--r--browser/themes/linux/downloads/downloads.css376
-rw-r--r--browser/themes/linux/engineManager.css16
-rw-r--r--browser/themes/linux/feeds/feedIcon.pngbin0 -> 1794 bytes
-rw-r--r--browser/themes/linux/feeds/feedIcon16.pngbin0 -> 799 bytes
-rw-r--r--browser/themes/linux/feeds/subscribe-ui.css29
-rw-r--r--browser/themes/linux/feeds/subscribe.css163
-rw-r--r--browser/themes/linux/identity-icons-generic.pngbin0 -> 965 bytes
-rw-r--r--browser/themes/linux/identity-icons-https-ev.pngbin0 -> 708 bytes
-rw-r--r--browser/themes/linux/identity-icons-https-mixed-active.pngbin0 -> 984 bytes
-rw-r--r--browser/themes/linux/identity-icons-https.pngbin0 -> 672 bytes
-rw-r--r--browser/themes/linux/identity.pngbin0 -> 9690 bytes
-rw-r--r--browser/themes/linux/imagedocument.pngbin0 -> 2185 bytes
-rw-r--r--browser/themes/linux/jar.mn124
-rw-r--r--browser/themes/linux/mixed-content-blocked-16.pngbin0 -> 346 bytes
-rw-r--r--browser/themes/linux/mixed-content-blocked-64.pngbin0 -> 2063 bytes
-rw-r--r--browser/themes/linux/monitor.pngbin0 -> 6217 bytes
-rw-r--r--browser/themes/linux/monitor_16-10.pngbin0 -> 6787 bytes
-rw-r--r--browser/themes/linux/moz.build8
-rw-r--r--browser/themes/linux/newtab/newTab.css31
-rw-r--r--browser/themes/linux/page-livemarks.pngbin0 -> 799 bytes
-rw-r--r--browser/themes/linux/pageInfo.css276
-rw-r--r--browser/themes/linux/pageInfo.pngbin0 -> 8849 bytes
-rw-r--r--browser/themes/linux/permissions/aboutPermissions.css149
-rw-r--r--browser/themes/linux/places/bookmarksMenu.pngbin0 -> 461 bytes
-rw-r--r--browser/themes/linux/places/bookmarksToolbar.pngbin0 -> 508 bytes
-rw-r--r--browser/themes/linux/places/calendar.pngbin0 -> 670 bytes
-rw-r--r--browser/themes/linux/places/downloads.pngbin0 -> 599 bytes
-rw-r--r--browser/themes/linux/places/editBookmarkOverlay.css71
-rw-r--r--browser/themes/linux/places/livemark-item.pngbin0 -> 863 bytes
-rw-r--r--browser/themes/linux/places/organizer.css107
-rw-r--r--browser/themes/linux/places/organizer.xml21
-rw-r--r--browser/themes/linux/places/pageStarred.pngbin0 -> 767 bytes
-rw-r--r--browser/themes/linux/places/places.css221
-rw-r--r--browser/themes/linux/places/query.pngbin0 -> 678 bytes
-rw-r--r--browser/themes/linux/places/star-icons.pngbin0 -> 1106 bytes
-rw-r--r--browser/themes/linux/places/starPage.pngbin0 -> 723 bytes
-rw-r--r--browser/themes/linux/places/starred48.pngbin0 -> 2658 bytes
-rw-r--r--browser/themes/linux/places/tag.pngbin0 -> 877 bytes
-rw-r--r--browser/themes/linux/places/toolbarDropMarker.pngbin0 -> 583 bytes
-rw-r--r--browser/themes/linux/places/unsortedBookmarks.pngbin0 -> 748 bytes
-rw-r--r--browser/themes/linux/places/unstarred48.pngbin0 -> 2255 bytes
-rw-r--r--browser/themes/linux/pointerLock-16.pngbin0 -> 249 bytes
-rw-r--r--browser/themes/linux/pointerLock-64.pngbin0 -> 1119 bytes
-rw-r--r--browser/themes/linux/preferences/Options-sync.pngbin0 -> 3585 bytes
-rw-r--r--browser/themes/linux/preferences/Options.pngbin0 -> 12680 bytes
-rw-r--r--browser/themes/linux/preferences/alwaysAsk.pngbin0 -> 575 bytes
-rw-r--r--browser/themes/linux/preferences/applications.css66
-rw-r--r--browser/themes/linux/preferences/mail.pngbin0 -> 548 bytes
-rw-r--r--browser/themes/linux/preferences/preferences.css156
-rw-r--r--browser/themes/linux/privatebrowsing-mask.pngbin0 -> 1355 bytes
-rw-r--r--browser/themes/linux/sanitizeDialog.css107
-rw-r--r--browser/themes/linux/searchbar.css72
-rw-r--r--browser/themes/linux/setDesktopBackground.css18
-rw-r--r--browser/themes/linux/slowStartup-16.pngbin0 -> 478 bytes
-rw-r--r--browser/themes/linux/statusbar/overlay.css114
-rw-r--r--browser/themes/linux/statusbar/prefs.css8
-rw-r--r--browser/themes/linux/sync-16-throbber.pngbin0 -> 10365 bytes
-rw-r--r--browser/themes/linux/sync-24-throbber.pngbin0 -> 15774 bytes
-rw-r--r--browser/themes/linux/tabbrowser/alltabs.pngbin0 -> 192 bytes
-rw-r--r--browser/themes/linux/tabbrowser/connecting.pngbin0 -> 8540 bytes
-rw-r--r--browser/themes/linux/tabbrowser/loading.pngbin0 -> 12184 bytes
-rw-r--r--browser/themes/linux/tabbrowser/tab-overflow-border.pngbin0 -> 193 bytes
-rw-r--r--browser/themes/linux/tabbrowser/tab.pngbin0 -> 353 bytes
-rw-r--r--browser/themes/linux/tabbrowser/tabDragIndicator.pngbin0 -> 450 bytes
-rw-r--r--browser/themes/linux/urlbar-arrow.pngbin0 -> 305 bytes
-rw-r--r--browser/themes/linux/web-notifications-icon.svg15
-rw-r--r--browser/themes/linux/web-notifications-tray.svg23
102 files changed, 4931 insertions, 0 deletions
diff --git a/browser/themes/linux/Geolocation-16.png b/browser/themes/linux/Geolocation-16.png
new file mode 100644
index 000000000..082b17781
--- /dev/null
+++ b/browser/themes/linux/Geolocation-16.png
Binary files differ
diff --git a/browser/themes/linux/Geolocation-64.png b/browser/themes/linux/Geolocation-64.png
new file mode 100644
index 000000000..6e09ab9c3
--- /dev/null
+++ b/browser/themes/linux/Geolocation-64.png
Binary files differ
diff --git a/browser/themes/linux/Go-arrow.png b/browser/themes/linux/Go-arrow.png
new file mode 100644
index 000000000..259c8a4f0
--- /dev/null
+++ b/browser/themes/linux/Go-arrow.png
Binary files differ
diff --git a/browser/themes/linux/Info.png b/browser/themes/linux/Info.png
new file mode 100644
index 000000000..d14479852
--- /dev/null
+++ b/browser/themes/linux/Info.png
Binary files differ
diff --git a/browser/themes/linux/KUI-close.png b/browser/themes/linux/KUI-close.png
new file mode 100644
index 000000000..08eeb8183
--- /dev/null
+++ b/browser/themes/linux/KUI-close.png
Binary files differ
diff --git a/browser/themes/linux/Privacy-16.png b/browser/themes/linux/Privacy-16.png
new file mode 100644
index 000000000..013cdc4b9
--- /dev/null
+++ b/browser/themes/linux/Privacy-16.png
Binary files differ
diff --git a/browser/themes/linux/Privacy-32.png b/browser/themes/linux/Privacy-32.png
new file mode 100644
index 000000000..f56dd2d33
--- /dev/null
+++ b/browser/themes/linux/Privacy-32.png
Binary files differ
diff --git a/browser/themes/linux/Privacy-48.png b/browser/themes/linux/Privacy-48.png
new file mode 100644
index 000000000..8dd024395
--- /dev/null
+++ b/browser/themes/linux/Privacy-48.png
Binary files differ
diff --git a/browser/themes/linux/Privacy-64.png b/browser/themes/linux/Privacy-64.png
new file mode 100644
index 000000000..106afb46c
--- /dev/null
+++ b/browser/themes/linux/Privacy-64.png
Binary files differ
diff --git a/browser/themes/linux/Secure.png b/browser/themes/linux/Secure.png
new file mode 100644
index 000000000..5ee25e9b9
--- /dev/null
+++ b/browser/themes/linux/Secure.png
Binary files differ
diff --git a/browser/themes/linux/Security-broken.png b/browser/themes/linux/Security-broken.png
new file mode 100644
index 000000000..1ec110be4
--- /dev/null
+++ b/browser/themes/linux/Security-broken.png
Binary files differ
diff --git a/browser/themes/linux/Toolbar-small.png b/browser/themes/linux/Toolbar-small.png
new file mode 100644
index 000000000..bcc8f63dc
--- /dev/null
+++ b/browser/themes/linux/Toolbar-small.png
Binary files differ
diff --git a/browser/themes/linux/Toolbar.png b/browser/themes/linux/Toolbar.png
new file mode 100644
index 000000000..2851657ec
--- /dev/null
+++ b/browser/themes/linux/Toolbar.png
Binary files differ
diff --git a/browser/themes/linux/aboutCertError.css b/browser/themes/linux/aboutCertError.css
new file mode 100644
index 000000000..100bb3d3b
--- /dev/null
+++ b/browser/themes/linux/aboutCertError.css
@@ -0,0 +1,73 @@
+/* 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/. */
+
+
+html {
+ background: #833;
+}
+
+body {
+ margin: 0;
+ padding: 0 1em;
+ color: -moz-FieldText;
+ font: message-box;
+}
+
+h1 {
+ margin: 0 0 .6em 0;
+ border-bottom: 1px solid ThreeDLightShadow;
+ font-size: 160%;
+}
+
+h2 {
+ font-size: 130%;
+}
+
+#errorPageContainer {
+ position: relative;
+ min-width: 13em;
+ max-width: 52em;
+ margin: 4em auto;
+ border: 2px solid #DD0D09;
+ border-radius: 10px;
+ box-shadow: 0px 0px 8px red;
+ padding: 3em;
+ padding-inline-start: 30px;
+ background: url("chrome://global/skin/icons/sslWarning.png") left 0 no-repeat -moz-Field;
+ background-origin: content-box;
+}
+
+#errorPageContainer:-moz-dir(rtl) {
+ background-position: right 0;
+}
+
+#errorTitle {
+ margin-inline-start: 80px;
+}
+
+#errorLongContent {
+ margin-inline-start: 80px;
+}
+
+.expander > button {
+ padding-inline-start: 20px;
+ margin-inline-start: -20px;
+ background: url("chrome://browser/skin/aboutCertError_sectionExpanded.png") left center no-repeat;
+ border: none;
+ font: inherit;
+ color: inherit;
+ cursor: pointer;
+}
+
+.expander > button:-moz-dir(rtl) {
+ background-position: right center;
+}
+
+.expander[collapsed] > button {
+ background-image: url("chrome://browser/skin/aboutCertError_sectionCollapsed.png");
+}
+
+.expander[collapsed] > button:-moz-dir(rtl) {
+ background-image: url("chrome://browser/skin/aboutCertError_sectionCollapsed-rtl.png");
+}
diff --git a/browser/themes/linux/aboutCertError_sectionCollapsed-rtl.png b/browser/themes/linux/aboutCertError_sectionCollapsed-rtl.png
new file mode 100644
index 000000000..84ba18c0a
--- /dev/null
+++ b/browser/themes/linux/aboutCertError_sectionCollapsed-rtl.png
Binary files differ
diff --git a/browser/themes/linux/aboutCertError_sectionCollapsed.png b/browser/themes/linux/aboutCertError_sectionCollapsed.png
new file mode 100644
index 000000000..c9805f654
--- /dev/null
+++ b/browser/themes/linux/aboutCertError_sectionCollapsed.png
Binary files differ
diff --git a/browser/themes/linux/aboutCertError_sectionExpanded.png b/browser/themes/linux/aboutCertError_sectionExpanded.png
new file mode 100644
index 000000000..128cef90a
--- /dev/null
+++ b/browser/themes/linux/aboutCertError_sectionExpanded.png
Binary files differ
diff --git a/browser/themes/linux/aboutPrivateBrowsing.css b/browser/themes/linux/aboutPrivateBrowsing.css
new file mode 100644
index 000000000..a6fd54920
--- /dev/null
+++ b/browser/themes/linux/aboutPrivateBrowsing.css
@@ -0,0 +1,47 @@
+%if 0
+/* 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/. */
+%endif
+
+body.private > #errorPageContainer {
+ background-image: url("chrome://browser/skin/Privacy-48.png");
+}
+
+body.normal > #errorPageContainer {
+ background-image: url("moz-icon://stock/gtk-dialog-question?size=dialog");
+}
+
+#clearRecentHistoryDesc {
+ margin-top: 2em;
+}
+
+#clearRecentHistoryDesc > p {
+ font-size: 110%; /* to match the value set in chrome://global/skin/netError.css */
+}
+
+#startPrivateBrowsingDesc > button {
+ margin-inline-start: 0;
+}
+
+#footerDesc > p {
+ font-size: 110%; /* to match the value set in chrome://global/skin/netError.css */
+}
+
+#moreInfo {
+ font-size: 110%; /* to match the value set in chrome://global/skin/netError.css */
+ padding-inline-start: 25px;
+ background: url("moz-icon://stock/gtk-dialog-info?size=menu") no-repeat top left;
+}
+
+#moreInfo:-moz-dir(rtl) {
+ background-position: top right;
+}
+
+#moreInfoText {
+ margin-bottom: 0;
+}
+
+#moreInfoLinkContainer {
+ margin-top: 0.5em;
+}
diff --git a/browser/themes/linux/aboutSessionRestore-window-icon.png b/browser/themes/linux/aboutSessionRestore-window-icon.png
new file mode 100644
index 000000000..a99832372
--- /dev/null
+++ b/browser/themes/linux/aboutSessionRestore-window-icon.png
Binary files differ
diff --git a/browser/themes/linux/aboutSessionRestore.css b/browser/themes/linux/aboutSessionRestore.css
new file mode 100644
index 000000000..a58c104ce
--- /dev/null
+++ b/browser/themes/linux/aboutSessionRestore.css
@@ -0,0 +1,90 @@
+%if 0
+/* 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/. */
+%endif
+
+html {
+ background: #f8ffd0;
+ height: 100%;
+}
+
+body {
+ height: 100%;
+ text-align: center;
+}
+
+#errorPageContainer {
+ background-image: url("moz-icon://stock/gtk-dialog-warning?size=dialog");
+ display: -moz-box;
+ width: -moz-available;
+ max-width: 85%;
+ height: 75%;
+ max-height: 85%;
+ -moz-box-orient: vertical;
+ text-align: start;
+ border: 2px solid #efc;
+ box-shadow: 0px 0px 8px #aaa;
+}
+
+#errorShortDesc > p {
+ margin-top: 0.4em;
+ margin-bottom: 0;
+}
+
+#errorLongContent, #errorTrailerDesc {
+ display: -moz-box;
+ -moz-box-flex: 1;
+ -moz-box-orient: vertical;
+}
+
+#tabList {
+ margin-top: 2.5em;
+ width: 100%;
+ min-height: 12em;
+}
+
+treechildren::-moz-tree-image(icon),
+treechildren::-moz-tree-image(noicon) {
+ padding-right: 2px;
+ margin: 0px 2px;
+ width: 16px;
+ height: 16px;
+}
+
+treechildren::-moz-tree-image(noicon) {
+ list-style-image: url("chrome://mozapps/skin/places/defaultFavicon.png");
+}
+treechildren::-moz-tree-image(container, noicon) {
+ list-style-image: url("chrome://browser/skin/aboutSessionRestore-window-icon.png");
+}
+treechildren::-moz-tree-image(checked) {
+ list-style-image: url("chrome://global/skin/checkbox/cbox-check.gif");
+}
+treechildren::-moz-tree-image(partial) {
+ list-style-image: url("chrome://global/skin/checkbox/cbox-check-dis.gif");
+}
+
+/* undo odd row highlighting from tree.css */
+treechildren::-moz-tree-row(odd) {
+ background-color: transparent;
+}
+treechildren::-moz-tree-row(odd, selected, focus) {
+ background-color: Highlight;
+}
+
+/* highlight "windows" instead */
+treechildren::-moz-tree-row(alternate) {
+ background-color: -moz-oddtreerow;
+}
+treechildren::-moz-tree-row(alternate, selected) {
+ background-color: Highlight;
+}
+
+#buttons {
+ margin-inline-start: 80px; /* same as #errorLongContent in netError.css */
+}
+#buttons > button {
+ margin-top: 2em;
+ margin-inline-start: 5px;
+}
diff --git a/browser/themes/linux/actionicon-tab.png b/browser/themes/linux/actionicon-tab.png
new file mode 100644
index 000000000..433c25e1a
--- /dev/null
+++ b/browser/themes/linux/actionicon-tab.png
Binary files differ
diff --git a/browser/themes/linux/autocomplete.css b/browser/themes/linux/autocomplete.css
new file mode 100644
index 000000000..e23e6b001
--- /dev/null
+++ b/browser/themes/linux/autocomplete.css
@@ -0,0 +1,210 @@
+/* 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/. */
+
+/* ===== autocomplete.css =================================================
+ == Styles used by the autocomplete widget.
+ ======================================================================= */
+
+@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
+@namespace html url("http://www.w3.org/1999/xhtml");
+
+/* ::::: autocomplete ::::: */
+
+/* .padded is used by autocomplete widgets that don't have an icon. Gross. -dwh */
+textbox:not(.padded) {
+ cursor: default;
+ padding: 0;
+}
+
+textbox[enablehistory="true"] {
+ -moz-appearance: none;
+ border: 0;
+ background-color: transparent;
+}
+
+textbox[nomatch="true"][highlightnonmatches="true"] {
+ color: red;
+}
+
+.private-autocomplete-textbox-container {
+ -moz-box-align: center;
+}
+
+textbox[enablehistory="true"] > .autocomplete-textbox-container {
+ -moz-appearance: menulist-textfield;
+}
+
+textbox:not(.padded) .textbox-input-box {
+ margin: 0 3px;
+}
+
+.textbox-input-box {
+ -moz-box-align: center;
+}
+
+/* ::::: autocomplete popups ::::: */
+
+panel[type="private-autocomplete"],
+panel[type="private-autocomplete-richlistbox"],
+.private-autocomplete-history-popup {
+ border-width: 1px;
+ -moz-border-top-colors: ThreeDDarkShadow;
+ -moz-border-right-colors: ThreeDDarkShadow;
+ -moz-border-bottom-colors: ThreeDDarkShadow;
+ -moz-border-left-colors: ThreeDDarkShadow;
+ padding: 0;
+ background-color: -moz-Field;
+}
+
+.private-autocomplete-history-popup {
+ max-height: 180px;
+}
+
+/* ::::: tree ::::: */
+
+.private-autocomplete-tree {
+ -moz-appearance: none !important;
+ border: none !important;
+ background-color: transparent !important;
+ color: MenuText;
+}
+
+.private-autocomplete-treecol {
+ -moz-appearance: none !important;
+ margin: 0 !important;
+ border: none !important;
+ padding: 0 !important;
+}
+
+/* GTK calculates space for a sort arrow */
+.private-autocomplete-treecol > .treecol-sortdirection {
+ -moz-appearance: none !important;
+}
+
+.private-autocomplete-treebody::-moz-tree-cell-text {
+ padding-inline-start: 8px;
+}
+
+treechildren.private-autocomplete-treebody::-moz-tree-row(selected) {
+ background-color: Highlight;
+}
+
+treechildren.private-autocomplete-treebody::-moz-tree-cell-text(selected) {
+ color: HighlightText !important;
+}
+
+.private-autocomplete-treebody::-moz-tree-image(treecolAutoCompleteValue) {
+ max-width: 16px;
+ height: 16px;
+}
+
+/* ::::: richlistbox autocomplete ::::: */
+
+.private-autocomplete-richlistbox {
+ -moz-appearance: none;
+ margin: 1px;
+ background-color: transparent;
+}
+
+.private-autocomplete-richlistitem[selected="true"] {
+ background-color: Highlight;
+ color: HighlightText;
+}
+
+.private-autocomplete-richlistitem {
+ padding: 6px 2px;
+ color: MenuText;
+}
+
+.ac-url-box {
+ /* When setting a vertical margin here, half of that needs to be added
+ .ac-title-box's translateY for when .ac-url-box is hidden (see below). */
+ margin-top: 1px;
+}
+
+.private-autocomplete-richlistitem[actiontype="keyword"] .ac-url-box,
+.private-autocomplete-richlistitem[actiontype="searchengine"] .ac-url-box,
+.private-autocomplete-richlistitem[actiontype="visiturl"] .ac-url-box,
+.private-autocomplete-richlistitem[type~="autofill"] .ac-url-box {
+ visibility: hidden;
+}
+
+.private-autocomplete-richlistitem[actiontype="keyword"] .ac-title-box,
+.private-autocomplete-richlistitem[actiontype="searchengine"] .ac-title-box,
+.private-autocomplete-richlistitem[actiontype="visiturl"] .ac-title-box,
+.private-autocomplete-richlistitem[type~="autofill"] .ac-title-box {
+ /* Center the title by moving it down by half of .ac-url-box's height,
+ including vertical margins (if any). */
+ transform: translateY(.5em);
+}
+
+.ac-site-icon {
+ width: 16px;
+ height: 16px;
+ margin-bottom: -2px;
+ margin-inline-start: 3px;
+ margin-inline-end: 6px;
+}
+
+.ac-type-icon {
+ width: 16px;
+ height: 16px;
+ margin-inline-start: 6px;
+ margin-inline-end: 4px;
+}
+
+.ac-extra > .ac-result-type-tag {
+ margin: 0 4px;
+}
+
+.ac-extra > .ac-comment {
+ padding-right: 4px;
+}
+
+.ac-ellipsis-after {
+ margin: 0 !important;
+ padding: 0;
+ min-width: 1em;
+}
+
+.ac-normal-text {
+ margin: 0 !important;
+ padding: 0;
+}
+
+.ac-normal-text > html|span {
+ margin: 0 !important;
+ padding: 0;
+}
+
+html|span.ac-emphasize-text {
+ box-shadow: inset 0 0 1px 1px rgba(0,0,0,0.1);
+ background-color: rgba(0,0,0,0.05);
+ border-radius: 2px;
+ text-shadow: 0 0 currentColor; /*faux bold effect*/
+}
+
+.ac-url-text > html|span.ac-emphasize-text,
+.ac-action-text > html|span.ac-emphasize-text {
+ box-shadow: none;
+}
+
+.ac-normal-text[selected="true"] > html|span.ac-emphasize-text {
+ box-shadow: inset 0 0 1px 1px rgba(255,255,255,0.3);
+ background-color: rgba(255,255,255,0.2);
+}
+
+.ac-title, .ac-url {
+ overflow: hidden;
+}
+
+/* ::::: textboxes inside toolbarpaletteitems ::::: */
+
+toolbarpaletteitem > toolbaritem > textbox > hbox > hbox > html|*.textbox-input {
+ visibility: hidden;
+}
+
+toolbarpaletteitem > toolbaritem > * > textbox > hbox > hbox > html|*.textbox-input {
+ visibility: hidden;
+}
diff --git a/browser/themes/linux/browser.css b/browser/themes/linux/browser.css
new file mode 100644
index 000000000..f8ae0dccf
--- /dev/null
+++ b/browser/themes/linux/browser.css
@@ -0,0 +1,2185 @@
+%if 0
+/* 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/. */
+%endif
+
+@import url("chrome://global/skin/");
+
+@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
+@namespace html url("http://www.w3.org/1999/xhtml");
+
+%include ../shared/browser.inc
+%filter substitution
+%define toolbarHighlight rgba(255,255,255,.3)
+%define selectedTabHighlight rgba(255,255,255,.8) 1px, rgba(255,255,255,.5) 3px
+%define forwardTransitionLength 150ms
+%define conditionalForwardWithUrlbar window:not([chromehidden~=toolbar]) :-moz-any(#nav-bar[currentset*="unified-back-forward-button,urlbar-container"][mode=icons], #nav-bar:not([currentset])[mode=icons]) > #unified-back-forward-button
+%define conditionalForwardWithUrlbar_small window:not([chromehidden~=toolbar]) :-moz-any(#nav-bar[currentset*="unified-back-forward-button,urlbar-container"][mode=icons][iconsize=small],#nav-bar:not([currentset])[mode=icons][iconsize=small]) > #unified-back-forward-button
+
+#menubar-items {
+ -moz-box-orient: vertical; /* for flex hack */
+}
+
+#main-menubar {
+ -moz-box-flex: 1; /* make menu items expand to fill toolbar height */
+}
+
+#navigator-toolbox {
+ -moz-appearance: none;
+ background-color: transparent;
+ border-top: none;
+}
+
+#main-window:not([disablechrome]) #navigator-toolbox[tabsontop=true] {
+ border-bottom: 1px solid ThreeDShadow;
+}
+
+#navigator-toolbox[tabsontop=true] > toolbar:not(:-moz-lwtheme):not(#toolbar-menubar):not(#TabsToolbar),
+#navigator-toolbox[tabsontop=false] > toolbar:not(:-moz-lwtheme):not(#toolbar-menubar) {
+ -moz-appearance: none;
+ border-style: none;
+ background-color: -moz-Dialog;
+}
+
+#navigator-toolbox > toolbar:not(#toolbar-menubar):not(#TabsToolbar) {
+ padding-top: 1px;
+ padding-bottom: 1px;
+}
+
+#nav-bar:not(:-moz-lwtheme),
+#nav-bar[collapsed=true] + toolbar:not(:-moz-lwtheme),
+#nav-bar[collapsed=true] + #customToolbars + #PersonalToolbar:not(:-moz-lwtheme),
+#nav-bar[tabsontop=true],
+#nav-bar[tabsontop=true][collapsed=true]:not([customizing]) + toolbar,
+#nav-bar[tabsontop=true][collapsed=true]:not([customizing]) + #customToolbars + #PersonalToolbar {
+ background-image: linear-gradient(@toolbarHighlight@, rgba(255,255,255,0));
+}
+
+#nav-bar[tabsontop=true]:-moz-lwtheme,
+#nav-bar[tabsontop=true][collapsed=true]:not([customizing]):-moz-lwtheme + toolbar,
+#nav-bar[tabsontop=true][collapsed=true]:not([customizing]):-moz-lwtheme + #customToolbars + #PersonalToolbar {
+ background-image: linear-gradient(rgba(255,255,255,.8), rgba(255,255,255,0));
+}
+
+#nav-bar[tabsontop=true]:-moz-lwtheme-brighttext,
+#nav-bar[tabsontop=true][collapsed=true]:not([customizing]):-moz-lwtheme-brighttext + toolbar,
+#nav-bar[tabsontop=true][collapsed=true]:not([customizing]):-moz-lwtheme-brighttext + #customToolbars + #PersonalToolbar {
+ background-image: linear-gradient(rgba(32,32,32,.8), rgba(32,32,32,0));
+}
+
+#personal-bookmarks {
+ min-height: 29px;
+}
+
+#browser-bottombox {
+ /* opaque for layers optimization */
+ background-color: -moz-Dialog;
+}
+
+#urlbar:-moz-lwtheme:not([focused="true"]),
+.searchbar-textbox:-moz-lwtheme:not([focused="true"]) {
+ opacity: .85;
+}
+
+/* Places toolbar */
+toolbarbutton.bookmark-item {
+ margin: 0;
+ padding: 2px 3px;
+}
+
+toolbarbutton.bookmark-item:hover:active,
+toolbarbutton.bookmark-item[open="true"] {
+ padding-top: 3px;
+ padding-bottom: 1px;
+ padding-inline-start: 4px;
+ padding-inline-end: 2px;
+}
+
+.bookmark-item > .toolbarbutton-icon {
+ width: 16px;
+ height: 16px;
+}
+
+/* Prevent [mode="icons"] from hiding the label */
+.bookmark-item > .toolbarbutton-text {
+ display: -moz-box !important;
+}
+
+.bookmark-item > .toolbarbutton-menu-dropmarker {
+ display: none;
+}
+
+/* Dropmarker for folder bookmarks */
+.bookmark-item[container] > .toolbarbutton-menu-dropmarker {
+ display: -moz-box !important;
+}
+
+#wrapper-personal-bookmarks[place="palette"] > .toolbarpaletteitem-box {
+ background: url("chrome://browser/skin/places/bookmarksToolbar.png") no-repeat center;
+}
+
+.bookmarks-toolbar-customize {
+ max-width: 15em !important;
+ list-style-image: url("chrome://browser/skin/places/bookmarksToolbar.png") !important;
+}
+
+/* Bookmark menus */
+menu.bookmark-item,
+menuitem.bookmark-item {
+ min-width: 0;
+ max-width: 32em;
+}
+
+.bookmark-item > .menu-iconic-left {
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+.bookmark-item > .menu-iconic-left > .menu-iconic-icon {
+ padding-inline-start: 0px;
+}
+
+/* Bookmark drag and drop styles */
+.bookmark-item[dragover-into="true"] {
+ background: Highlight !important;
+ color: HighlightText !important;
+}
+
+/* rules for menupopup drop indicators */
+.menupopup-drop-indicator-bar {
+ position: relative;
+ /* these two margins must together compensate the indicator's height */
+ margin-top: -1px;
+ margin-bottom: -1px;
+}
+
+.menupopup-drop-indicator {
+ list-style-image: none;
+ height: 2px;
+ margin-inline-end: -4em;
+ background-color: Highlight;
+}
+
+/* Bookmarks toolbar */
+#PlacesToolbarDropIndicator {
+ list-style-image: url(chrome://browser/skin/places/toolbarDropMarker.png);
+}
+
+/* Bookmark items */
+.bookmark-item {
+ list-style-image: url("chrome://mozapps/skin/places/defaultFavicon.png");
+}
+
+.bookmark-item[container] {
+ list-style-image: url("moz-icon://stock/gtk-directory?size=menu");
+}
+
+.bookmark-item[container][livemark] {
+ list-style-image: url("chrome://browser/skin/feeds/feedIcon16.png");
+}
+
+.bookmark-item[container][livemark] .bookmark-item {
+ list-style-image: url("chrome://browser/skin/places/livemark-item.png");
+ -moz-image-region: rect(0px, 16px, 16px, 0px);
+}
+
+.bookmark-item[container][livemark] .bookmark-item[visited] {
+ -moz-image-region: rect(0px, 32px, 16px, 16px);
+}
+
+.bookmark-item[container][query] {
+ list-style-image: url("chrome://browser/skin/places/query.png");
+}
+
+.bookmark-item[query][tagContainer] {
+ list-style-image: url("chrome://browser/skin/places/tag.png");
+}
+
+.bookmark-item[query][dayContainer] {
+ list-style-image: url("chrome://browser/skin/places/calendar.png");
+}
+
+.bookmark-item[query][hostContainer] {
+ list-style-image: url("moz-icon://stock/gtk-directory?size=menu");
+}
+
+.bookmark-item[query][hostContainer][open] {
+ list-style-image: url("moz-icon://stock/gtk-directory?size=menu");
+}
+
+.bookmark-item[cutting] > .toolbarbutton-icon,
+.bookmark-item[cutting] > .menu-iconic-left > .menu-iconic-icon {
+ opacity: 0.5;
+}
+
+.bookmark-item[cutting] > .toolbarbutton-text,
+.bookmark-item[cutting] > .menu-iconic-left > .menu-iconic-text {
+ opacity: 0.7;
+}
+
+/* Stock icons for the menu bar items */
+menuitem:not([type]):not(.menuitem-tooltip):not(.menuitem-iconic-tooltip) {
+ -moz-binding: url("chrome://global/content/bindings/menu.xml#menuitem-iconic");
+}
+
+#appmenu_newNavigator,
+#placesContext_open\:newwindow,
+#menu_newNavigator,
+#context-openlink,
+#context-openframe {
+ list-style-image: url("chrome://browser/skin/Toolbar-small.png");
+ -moz-image-region: rect(0px 80px 16px 64px);
+}
+
+#appmenu_newTab,
+#appmenu_newTab_popup,
+#placesContext_open\:newtab,
+#placesContext_openContainer\:tabs,
+#menu_newNavigatorTab,
+#context-openlinkintab,
+#context-openframeintab {
+ list-style-image: url("chrome://browser/skin/Toolbar-small.png");
+ -moz-image-region: rect(0px 64px 16px 48px);
+}
+
+#appmenu_openFile,
+#menu_openFile {
+ list-style-image: url("moz-icon://stock/gtk-open?size=menu");
+}
+
+#menu_close {
+ list-style-image: url("moz-icon://stock/gtk-close?size=menu");
+}
+
+#context-media-play {
+ list-style-image: url("moz-icon://stock/gtk-media-play?size=menu");
+}
+
+#context-media-pause {
+ list-style-image: url("moz-icon://stock/gtk-media-pause?size=menu");
+}
+
+#appmenu_savePage,
+#menu_savePage,
+#context-savelink,
+#context-saveimage,
+#context-savevideo,
+#context-saveaudio,
+#context-savepage,
+#context-saveframe {
+ list-style-image: url("moz-icon://stock/gtk-save-as?size=menu");
+}
+
+#appmenu_printPreview,
+#menu_printPreview {
+ list-style-image: url("moz-icon://stock/gtk-print-preview?size=menu");
+}
+
+#appmenu_print,
+#appmenu_print_popup,
+#menu_print,
+#context-printframe {
+ list-style-image: url("moz-icon://stock/gtk-print?size=menu");
+}
+
+#appmenu-quit,
+#menu_FileQuitItem {
+ list-style-image: url("moz-icon://stock/gtk-quit?size=menu");
+}
+
+#menu_undo,
+#context-undo {
+ list-style-image: url("moz-icon://stock/gtk-undo?size=menu");
+}
+
+#menu_undo[disabled],
+#context-undo[disabled] {
+ list-style-image: url("moz-icon://stock/gtk-undo?size=menu&state=disabled");
+}
+
+#menu_redo {
+ list-style-image: url("moz-icon://stock/gtk-redo?size=menu");
+}
+
+#menu_redo[disabled] {
+ list-style-image: url("moz-icon://stock/gtk-redo?size=menu&state=disabled");
+}
+
+#menu_cut,
+#placesContext_cut,
+#context-cut {
+ list-style-image: url("moz-icon://stock/gtk-cut?size=menu");
+}
+
+#menu_cut[disabled],
+#placesContext_cut[disabled],
+#context-cut[disabled] {
+ list-style-image: url("moz-icon://stock/gtk-cut?size=menu&state=disabled");
+}
+
+#menu_copy,
+#placesContext_copy,
+#context-copy,
+#context-copyimage,
+#context-copyvideourl,
+#context-copyaudiourl,
+#context-copylink,
+#context-copyemail {
+ list-style-image: url("moz-icon://stock/gtk-copy?size=menu");
+}
+
+#menu_copy[disabled],
+#placesContext_copy[disabled],
+#context-copy[disabled] {
+ list-style-image: url("moz-icon://stock/gtk-copy?size=menu&state=disabled");
+}
+
+#menu_paste,
+#placesContext_paste,
+#context-paste {
+ list-style-image: url("moz-icon://stock/gtk-paste?size=menu");
+}
+
+#menu_paste[disabled],
+#placesContext_paste[disabled],
+#context-paste[disabled] {
+ list-style-image: url("moz-icon://stock/gtk-paste?size=menu&state=disabled");
+}
+
+#menu_delete,
+#placesContext_delete,
+#placesContext_delete_history,
+#context-delete {
+ list-style-image: url("moz-icon://stock/gtk-delete?size=menu");
+}
+
+#menu_delete[disabled],
+#placesContext_delete[disabled],
+#placesContext_delete_history[disabled],
+#context-delete[disabled] {
+ list-style-image: url("moz-icon://stock/gtk-delete?size=menu&state=disabled");
+}
+
+#menu_selectAll,
+#context-selectall {
+ list-style-image: url("moz-icon://stock/gtk-select-all?size=menu");
+}
+
+#appmenu_find,
+#menu_find {
+ list-style-image: url("moz-icon://stock/gtk-find?size=menu");
+}
+
+#menu_find[disabled] {
+ list-style-image: url("moz-icon://stock/gtk-find?size=menu&state=disabled");
+}
+
+#appmenu_customize,
+#appmenu_preferences,
+#menu_preferences {
+ list-style-image: url("moz-icon://stock/gtk-preferences?size=menu");
+}
+
+#menu_stop,
+#context-stop {
+ list-style-image: url("moz-icon://stock/gtk-stop?size=menu");
+}
+
+#menu_stop[disabled],
+#context-stop[disabled] {
+ list-style-image: url("moz-icon://stock/gtk-stop?size=menu&state=disabled");
+}
+
+#menu_reload,
+#placesContext_reload,
+#context-reload,
+#context-reloadframe {
+ list-style-image: url("moz-icon://stock/gtk-refresh?size=menu");
+}
+
+#menu_reload[disabled],
+#context-reload[disabled] {
+ list-style-image: url("moz-icon://stock/gtk-refresh?size=menu&state=disabled");
+}
+
+#menu_zoomEnlarge {
+ list-style-image: url("moz-icon://stock/gtk-zoom-in?size=menu");
+}
+
+#menu_zoomReduce {
+ list-style-image: url("moz-icon://stock/gtk-zoom-out?size=menu");
+}
+
+#menu_zoomReset {
+ list-style-image: url("moz-icon://stock/gtk-zoom-100?size=menu");
+}
+
+#historyMenuBack,
+#context-back {
+ list-style-image: url("moz-icon://stock/gtk-go-back-ltr?size=menu");
+}
+
+#historyMenuBack[disabled],
+#context-back[disabled] {
+ list-style-image: url("moz-icon://stock/gtk-go-back-ltr?size=menu&state=disabled");
+}
+
+#historyMenuBack:-moz-locale-dir(rtl),
+#context-back:-moz-locale-dir(rtl) {
+ list-style-image: url("moz-icon://stock/gtk-go-back-rtl?size=menu");
+}
+
+#historyMenuBack[disabled]:-moz-locale-dir(rtl),
+#context-back[disabled]:-moz-locale-dir(rtl) {
+ list-style-image: url("moz-icon://stock/gtk-go-back-rtl?size=menu&state=disabled");
+}
+
+#historyMenuForward,
+#context-forward {
+ list-style-image: url("moz-icon://stock/gtk-go-forward-ltr?size=menu");
+}
+
+#historyMenuForward[disabled],
+#context-forward[disabled] {
+ list-style-image: url("moz-icon://stock/gtk-go-forward-ltr?size=menu&state=disabled");
+}
+
+#historyMenuForward:-moz-locale-dir(rtl),
+#context-forward:-moz-locale-dir(rtl) {
+ list-style-image: url("moz-icon://stock/gtk-go-forward-rtl?size=menu");
+}
+
+#historyMenuForward[disabled]:-moz-locale-dir(rtl),
+#context-forward[disabled]:-moz-locale-dir(rtl) {
+ list-style-image: url("moz-icon://stock/gtk-go-forward-rtl?size=menu&state=disabled");
+}
+
+#historyMenuHome {
+ list-style-image: url("moz-icon://stock/gtk-home?size=menu");
+}
+
+#appmenu_history,
+#appmenu_showAllHistory,
+#menu_showAllHistory,
+#HMB_showAllHistory {
+ list-style-image: url("chrome://browser/skin/Toolbar-small.png");
+ -moz-image-region: rect(0px 32px 16px 16px);
+}
+
+#appmenu_bookmarks,
+#appmenu_showAllBookmarks,
+#bookmarksShowAll,
+#BMB_bookmarksShowAll {
+ list-style-image: url("chrome://browser/skin/Toolbar-small.png");
+ -moz-image-region: rect(0px 48px 16px 32px);
+}
+
+#appmenu_subscribeToPage:not([disabled]),
+#appmenu_subscribeToPageMenu,
+#subscribeToPageMenuitem:not([disabled]),
+#subscribeToPageMenupopup,
+#BMB_subscribeToPageMenuitem:not([disabled]),
+#BMB_subscribeToPageMenupopup {
+ list-style-image: url("chrome://browser/skin/page-livemarks.png");
+}
+
+#appmenu_bookmarksToolbar,
+#bookmarksToolbarFolderMenu,
+#BMB_bookmarksToolbar {
+ list-style-image: url("chrome://browser/skin/places/bookmarksToolbar.png");
+}
+
+#appmenu_bookmarkThisPage,
+#menu_bookmarkThisPage,
+#BMB_bookmarkThisPage {
+ list-style-image: url("chrome://browser/skin/places/starPage.png");
+}
+
+#appmenu_unsortedBookmarks,
+#menu_unsortedBookmarks,
+#BMB_unsortedBookmarks {
+ list-style-image: url("chrome://browser/skin/places/unsortedBookmarks.png");
+}
+
+#appmenu_downloads,
+#menu_openDownloads {
+ list-style-image: url("chrome://browser/skin/Toolbar-small.png");
+ -moz-image-region: rect(0px 16px 16px 0px);
+}
+
+#appmenu_addons,
+#menu_openAddons {
+ list-style-image: url("chrome://mozapps/skin/extensions/extensionGeneric-16.png");
+}
+
+#menu_pageInfo,
+#context-viewinfo,
+#context-viewframeinfo {
+ list-style-image: url("moz-icon://stock/gtk-info?size=menu");
+}
+
+#appmenu_privateBrowsing,
+#appmenu_newPrivateWindow,
+#placesContext_open\:newprivatewindow,
+#privateBrowsingItem {
+ list-style-image: url("chrome://browser/skin/Privacy-16.png");
+}
+
+#placesContext_show\:info {
+ list-style-image: url("moz-icon://stock/gtk-properties?size=menu");
+}
+
+#appmenu_sanitizeHistory,
+#sanitizeItem,
+#HMB_sanitizeItem {
+ list-style-image: url("moz-icon://stock/gtk-clear?size=menu");
+}
+
+#appmenu_help,
+#appmenu_openHelp,
+#menu_openHelp {
+ list-style-image: url("moz-icon://stock/gtk-help?size=menu");
+}
+
+#appmenu_about,
+#aboutName {
+ list-style-image: url("moz-icon://stock/gtk-about?size=menu");
+}
+
+#javascriptConsole {
+ list-style-image: url("chrome://global/skin/console/console.png");
+}
+
+/* Primary toolbar buttons */
+.toolbarbutton-1:not([type="menu-button"]) {
+ -moz-box-orient: vertical;
+ min-width: 0;
+ list-style-image: url("chrome://browser/skin/Toolbar.png");
+}
+
+.toolbarbutton-1 > .toolbarbutton-icon {
+ margin-inline-end: 0;
+}
+
+toolbar[mode="full"] .toolbarbutton-1:not([type="menu-button"]),
+toolbar[mode="full"] .toolbarbutton-1 > .toolbarbutton-menubutton-button {
+ min-width: 57px;
+}
+
+.toolbarbutton-1:not([type="menu-button"]),
+.toolbarbutton-1 > .toolbarbutton-menubutton-button {
+ padding: 5px;
+}
+
+.toolbarbutton-1[checked="true"] {
+ padding: 5px !important;
+}
+
+/* 24px primary toolbar buttons */
+#back-button {
+ list-style-image: url("moz-icon://stock/gtk-go-back-ltr?size=toolbar");
+}
+#back-button[disabled="true"] {
+ list-style-image: url("moz-icon://stock/gtk-go-back-ltr?size=toolbar&state=disabled");
+}
+
+#back-button:-moz-locale-dir(rtl) {
+ list-style-image: url("moz-icon://stock/gtk-go-back-rtl?size=toolbar");
+}
+#back-button[disabled="true"]:-moz-locale-dir(rtl) {
+ list-style-image: url("moz-icon://stock/gtk-go-back-rtl?size=toolbar&state=disabled");
+}
+
+#forward-button/*,
+ @conditionalForwardWithUrlbar@ > #forward-button */{
+ list-style-image: url("moz-icon://stock/gtk-go-forward-ltr?size=toolbar");
+}
+#forward-button:-moz-locale-dir(rtl)/*,
+@conditionalForwardWithUrlbar@ > #forward-button:-moz-locale-dir(rtl) */{
+ list-style-image: url("moz-icon://stock/gtk-go-forward-rtl?size=toolbar");
+}
+
+#forward-button[disabled] {
+ list-style-image: url("moz-icon://stock/gtk-go-forward-ltr?size=toolbar&state=disabled");
+}
+#forward-button[disabled]:-moz-locale-dir(rtl) {
+ list-style-image: url("moz-icon://stock/gtk-go-forward-rtl?size=toolbar&state=disabled");
+}
+
+/*@conditionalForwardWithUrlbar@:not([switchingtabs]) > #forward-button {
+ transition: @forwardTransitionLength@ ease-out;
+}
+
+@conditionalForwardWithUrlbar@ > #forward-button[disabled] {
+ transform: scale(0);
+ opacity: 0;
+ pointer-events: none;
+}*/
+
+#reload-button {
+ list-style-image: url("moz-icon://stock/gtk-refresh?size=toolbar");
+}
+#reload-button[disabled="true"] {
+ list-style-image: url("moz-icon://stock/gtk-refresh?size=toolbar&state=disabled");
+}
+
+#stop-button {
+ list-style-image: url("moz-icon://stock/gtk-stop?size=toolbar");
+}
+#stop-button[disabled="true"] {
+ list-style-image: url("moz-icon://stock/gtk-stop?size=toolbar&state=disabled");
+}
+
+#home-button {
+ list-style-image: url("moz-icon://stock/gtk-home?size=toolbar");
+}
+#home-button[disabled="true"] {
+ list-style-image: url("moz-icon://stock/gtk-home?size=toolbar&state=disabled");
+}
+
+#downloads-button {
+ -moz-image-region: rect(0px 24px 24px 0px);
+}
+
+#history-button,
+#history-menu-button {
+ -moz-image-region: rect(0px 48px 24px 24px);
+}
+
+#history-menu-button.toolbarbutton-1 {
+ -moz-box-orient: horizontal;
+}
+
+#bookmarks-button,
+#bookmarks-menu-button {
+ -moz-image-region: rect(0px 72px 24px 48px);
+}
+
+#bookmarks-menu-button.bookmark-item {
+ list-style-image: url("chrome://browser/skin/Toolbar-small.png");
+}
+
+#bookmarks-menu-button.toolbarbutton-1 {
+ -moz-box-orient: horizontal;
+}
+
+#print-button {
+ list-style-image: url("moz-icon://stock/gtk-print?size=toolbar");
+}
+#print-button[disabled="true"] {
+ list-style-image: url("moz-icon://stock/gtk-print?size=toolbar&state=disabled");
+}
+
+#new-tab-button {
+ -moz-image-region: rect(0px 96px 24px 72px);
+}
+
+#new-window-button {
+ -moz-image-region: rect(0px 120px 24px 96px);
+}
+
+#cut-button {
+ list-style-image: url("moz-icon://stock/gtk-cut?size=toolbar");
+}
+#cut-button[disabled="true"] {
+ list-style-image: url("moz-icon://stock/gtk-cut?size=toolbar&state=disabled");
+}
+
+#copy-button {
+ list-style-image: url("moz-icon://stock/gtk-copy?size=toolbar");
+}
+#copy-button[disabled="true"] {
+ list-style-image: url("moz-icon://stock/gtk-copy?size=toolbar&state=disabled");
+}
+
+#paste-button {
+ list-style-image: url("moz-icon://stock/gtk-paste?size=toolbar");
+}
+#paste-button[disabled="true"] {
+ list-style-image: url("moz-icon://stock/gtk-paste?size=toolbar&state=disabled");
+}
+
+#fullscreen-button {
+ list-style-image: url("moz-icon://stock/gtk-fullscreen?size=toolbar");
+}
+
+#zoom-out-button {
+ list-style-image: url("moz-icon://stock/gtk-zoom-out?size=toolbar");
+}
+
+#zoom-in-button {
+ list-style-image: url("moz-icon://stock/gtk-zoom-in?size=toolbar");
+}
+
+#sync-button {
+ -moz-image-region: rect(0px 144px 24px 120px);
+}
+#sync-button[status="active"] {
+ list-style-image: url("chrome://browser/skin/sync-24-throbber.png");
+ -moz-image-region: rect(0px 24px 24px 0px);
+}
+
+#feed-button {
+ -moz-image-region: rect(0px 168px 24px 144px);
+}
+
+#feed-button[disabled] > .toolbarbutton-icon {
+ opacity: .4;
+}
+
+/* 16px primary toolbar buttons */
+toolbar[iconsize="small"] .toolbarbutton-1:not([type="menu-button"]) {
+ -moz-box-orient: vertical;
+ min-width: 0;
+ list-style-image: url("chrome://browser/skin/Toolbar-small.png");
+}
+
+toolbar[iconsize="small"] .toolbarbutton-1[type="menu-button"] {
+ border: 0 !important;
+}
+
+toolbar[iconsize="small"] #back-button {
+ list-style-image: url("moz-icon://stock/gtk-go-back-ltr?size=menu");
+}
+.unified-nav-back[_moz-menuactive] {
+ list-style-image: url("moz-icon://stock/gtk-go-back-ltr?size=menu") !important;
+}
+toolbar[iconsize="small"] #back-button[disabled="true"] {
+ list-style-image: url("moz-icon://stock/gtk-go-back-ltr?size=menu&state=disabled");
+}
+
+toolbar[iconsize="small"] #back-button:-moz-locale-dir(rtl) {
+ list-style-image: url("moz-icon://stock/gtk-go-back-rtl?size=menu");
+}
+.unified-nav-back[_moz-menuactive]:-moz-locale-dir(rtl) {
+ list-style-image: url("moz-icon://stock/gtk-go-back-rtl?size=menu") !important;
+}
+toolbar[iconsize="small"] #back-button[disabled="true"]:-moz-locale-dir(rtl) {
+ list-style-image: url("moz-icon://stock/gtk-go-back-rtl?size=menu&state=disabled");
+}
+
+toolbar[iconsize=small] #forward-button,
+@conditionalForwardWithUrlbar_small@ > #forward-button {
+ list-style-image: url("moz-icon://stock/gtk-go-forward-ltr?size=menu");
+}
+.unified-nav-forward[_moz-menuactive] {
+ list-style-image: url("moz-icon://stock/gtk-go-forward-ltr?size=menu") !important;
+}
+toolbar[iconsize=small] #forward-button[disabled] {
+ list-style-image: url("moz-icon://stock/gtk-go-forward-ltr?size=menu&state=disabled");
+}
+
+toolbar[iconsize=small] #forward-button:-moz-locale-dir(rtl),
+@conditionalForwardWithUrlbar_small@ > #forward-button:-moz-locale-dir(rtl) {
+ list-style-image: url("moz-icon://stock/gtk-go-forward-rtl?size=menu");
+}
+.unified-nav-forward[_moz-menuactive]:-moz-locale-dir(rtl) {
+ list-style-image: url("moz-icon://stock/gtk-go-forward-rtl?size=menu") !important;
+}
+toolbar[iconsize=small] #forward-button[disabled]:-moz-locale-dir(rtl) {
+ list-style-image: url("moz-icon://stock/gtk-go-forward-rtl?size=menu&state=disabled");
+}
+
+toolbar[iconsize="small"] #stop-button {
+ list-style-image: url("moz-icon://stock/gtk-stop?size=menu");
+}
+toolbar[iconsize="small"] #stop-button[disabled="true"] {
+ list-style-image: url("moz-icon://stock/gtk-stop?size=menu&state=disabled");
+}
+
+toolbar[iconsize="small"] #reload-button {
+ list-style-image: url("moz-icon://stock/gtk-refresh?size=menu");
+}
+toolbar[iconsize="small"] #reload-button[disabled="true"] {
+ list-style-image: url("moz-icon://stock/gtk-refresh?size=menu&state=disabled");
+}
+
+toolbar[iconsize="small"] #home-button,
+#home-button.bookmark-item {
+ list-style-image: url("moz-icon://stock/gtk-home?size=menu");
+}
+toolbar[iconsize="small"] #home-button[disabled="true"],
+#home-button.bookmark-item[disabled="true"] {
+ list-style-image: url("moz-icon://stock/gtk-home?size=menu&state=disabled");
+}
+
+toolbar[iconsize="small"] #downloads-button {
+ -moz-image-region: rect(0px 16px 16px 0px);
+}
+
+toolbar[iconsize="small"] #history-button,
+toolbar[iconsize="small"] #history-menu-button {
+ -moz-image-region: rect(0px 32px 16px 16px);
+}
+
+toolbar[iconsize="small"] #bookmarks-button,
+toolbar[iconsize="small"] #bookmarks-menu-button,
+#bookmarks-menu-button.bookmark-item {
+ -moz-image-region: rect(0px 48px 16px 32px);
+}
+
+toolbar[iconsize="small"] #print-button {
+ list-style-image: url("moz-icon://stock/gtk-print?size=menu");
+}
+toolbar[iconsize="small"] #print-button[disabled="true"] {
+ list-style-image: url("moz-icon://stock/gtk-print?size=menu&state=disabled");
+}
+
+toolbar[iconsize="small"] #new-tab-button {
+ -moz-image-region: rect(0px 64px 16px 48px);
+}
+
+toolbar[iconsize="small"] #new-window-button {
+ -moz-image-region: rect(0px 80px 16px 64px);
+}
+
+toolbar[iconsize="small"] #cut-button {
+ list-style-image: url("moz-icon://stock/gtk-cut?size=menu");
+}
+toolbar[iconsize="small"] #cut-button[disabled="true"] {
+ list-style-image: url("moz-icon://stock/gtk-cut?size=menu&state=disabled");
+}
+
+toolbar[iconsize="small"] #copy-button {
+ list-style-image: url("moz-icon://stock/gtk-copy?size=menu");
+}
+toolbar[iconsize="small"] #copy-button[disabled="true"] {
+ list-style-image: url("moz-icon://stock/gtk-copy?size=menu&state=disabled");
+}
+
+toolbar[iconsize="small"] #paste-button {
+ list-style-image: url("moz-icon://stock/gtk-paste?size=menu");
+}
+toolbar[iconsize="small"] #paste-button[disabled="true"] {
+ list-style-image: url("moz-icon://stock/gtk-paste?size=menu&state=disabled");
+}
+
+toolbar[iconsize="small"] #fullscreen-button {
+ list-style-image: url("moz-icon://stock/gtk-fullscreen?size=menu");
+}
+
+toolbar[iconsize="small"] #zoom-out-button {
+ list-style-image: url("moz-icon://stock/gtk-zoom-out?size=menu");
+}
+
+toolbar[iconsize="small"] #zoom-in-button {
+ list-style-image: url("moz-icon://stock/gtk-zoom-in?size=menu");
+}
+
+toolbar[iconsize="small"] #sync-button {
+ -moz-image-region: rect(0px 96px 16px 80px);
+}
+toolbar[iconsize="small"] #sync-button[status="active"] {
+ list-style-image: url("chrome://browser/skin/sync-16-throbber.png");
+ -moz-image-region: rect(0px 16px 16px 0px);
+}
+
+toolbar[iconsize="small"] #feed-button {
+ -moz-image-region: rect(0px 112px 16px 96px);
+}
+
+/* Fullscreen window controls */
+#window-controls {
+ -moz-box-align: start;
+ margin-inline-start: 10px;
+}
+
+#minimize-button {
+ list-style-image: url("chrome://global/skin/icons/Minimize.gif");
+}
+#restore-button {
+ list-style-image: url("chrome://global/skin/icons/Restore.gif");
+}
+#close-button {
+ list-style-image: url("chrome://global/skin/icons/Close.gif");
+}
+
+/* Location bar */
+#urlbar {
+ width: 7em;
+ -moz-appearance: textfield;
+ padding: 0;
+}
+
+.urlbar-textbox-container {
+ -moz-appearance: none;
+ -moz-box-align: stretch;
+}
+
+.urlbar-input-box {
+ margin-inline-start: 0;
+ min-width: 4em;
+}
+
+.urlbar-history-dropmarker {
+ -moz-appearance: toolbarbutton-dropdown;
+}
+
+#urlbar-container {
+ -moz-box-orient: horizontal;
+ -moz-box-align: stretch;
+}
+
+#urlbar-icons {
+ -moz-box-align: center;
+}
+
+.urlbar-icon {
+ cursor: pointer;
+ padding: 0 3px;
+}
+
+#urlbar-search-splitter {
+ -moz-appearance: none;
+ width: 8px;
+ margin-inline-start: -4px;
+}
+
+#urlbar-search-splitter + #urlbar-container > #urlbar ,
+#urlbar-search-splitter + #search-container > #searchbar > .searchbar-textbox {
+ margin-inline-start: 0;
+}
+
+#urlbar-display-box {
+ margin-top: -1px;
+ margin-bottom: -1px;
+ border-inline-end: 1px solid #AAA;
+ margin-inline-end: 3px;
+}
+
+#urlbar-display {
+ margin-top: 0;
+ margin-bottom: 0;
+ margin-inline-start: 0;
+ color: GrayText;
+}
+
+/* Favicon */
+#page-proxy-favicon {
+ width: 16px;
+ height: 16px;
+ margin-top: 2px;
+ margin-bottom: 2px;
+ margin-inline-start: 4px;
+ margin-inline-end: 3px;
+ list-style-image: url(chrome://browser/skin/identity-icons-generic.png);
+ -moz-image-region: rect(0, 16px, 16px, 0);
+}
+
+/* Since we already have a padlock, always use the generic icon until the favicon loads
+.verifiedDomain > #page-proxy-favicon[pageproxystate="valid"] {
+ list-style-image: url(chrome://browser/skin/identity-icons-https.png);
+}
+
+.verifiedIdentity > #page-proxy-favicon[pageproxystate="valid"] {
+ list-style-image: url(chrome://browser/skin/identity-icons-https-ev.png);
+}
+
+.mixedActiveContent > #page-proxy-favicon[pageproxystate="valid"] {
+ list-style-image: url(chrome://browser/skin/identity-icons-https-mixed-active.png);
+}
+*/
+
+#identity-box:hover > #page-proxy-favicon {
+ -moz-image-region: rect(0, 32px, 16px, 16px);
+}
+
+#identity-box:hover:active > #page-proxy-favicon,
+#identity-box[open=true] > #page-proxy-favicon {
+ -moz-image-region: rect(0, 48px, 16px, 32px);
+}
+
+#page-proxy-favicon[pageproxystate="invalid"] {
+ opacity: 0.3;
+}
+
+/* Identity indicator */
+#identity-box {
+ padding: 1px;
+ margin: -1px;
+ margin-inline-end: 0;
+ font-size: .9em;
+}
+
+#identity-box:-moz-locale-dir(ltr) {
+ border-top-left-radius: 2.5px;
+ border-bottom-left-radius: 2.5px;
+}
+
+#identity-box:-moz-locale-dir(rtl) {
+ border-top-right-radius: 2.5px;
+ border-bottom-right-radius: 2.5px;
+}
+
+#identity-box:-moz-focusring {
+ outline: 1px dotted #000;
+ outline-offset: -3px;
+}
+
+#identity-icon-labels {
+ padding-inline-start: 2px;
+ padding-inline-end: 5px;
+}
+
+#urlbar[pageproxystate="valid"] > #identity-box.verifiedIdentity {
+ color: rgb(95,127,67);
+ margin-inline-end: 4px;
+ background-image: linear-gradient(rgba(226,246,208,1),
+ rgba(203,235,177,1));
+ background-position: right;
+ background-repeat: no-repeat;
+}
+
+#urlbar[pageproxystate="valid"] > #identity-box.verifiedDomain {
+ color: rgb(51,87,137);
+ margin-inline-end: 4px;
+ background-image: linear-gradient(rgba(220,231,245,1),
+ rgba(207,221,242,1));
+ background-position: right;
+ background-repeat: no-repeat;
+}
+
+#urlbar[pageproxystate="valid"] > #identity-box.mixedContent {
+ color: rgb(79,79,0);
+ margin-inline-end: 4px;
+ background-image: linear-gradient(rgba(245,245,220,1),
+ rgba(242,242,207,1));
+ background-position: right;
+ background-repeat: no-repeat;
+}
+
+#identity-box.verifiedIdentity:-moz-locale-dir(rtl) {
+ background-position: left;
+}
+
+/* Address bar shading for SSL */
+
+#urlbar[https_color="all"][security_level="broken"],
+#urlbar[https_color="all"][security_level="low"] {
+ box-shadow: inset 0 0 4px rgb(168,0,0);
+}
+
+#urlbar[https_color="all"][security_level="mixed"],
+#urlbar[https_color="secure-mixed"][security_level="mixed"] {
+ box-shadow: inset 0 0 4px rgb(168,79,0);
+}
+
+#urlbar[https_color="all"][security_level="high"],
+#urlbar[https_color="secure-mixed"][security_level="high"],
+#urlbar[https_color="secure-only"][security_level="high"] {
+ box-shadow: inset 0 0 4px rgb(0,79,168);
+}
+
+#urlbar[https_color="all"][security_level="ev"],
+#urlbar[https_color="secure-mixed"][security_level="ev"],
+#urlbar[https_color="secure-only"][security_level="ev"] {
+ box-shadow: inset 0 0 4px rgb(0,168,0);
+}
+
+#urlbar[https_color="all"]:-moz-lwtheme-darktext,
+#urlbar[https_color="secure-mixed"]:-moz-lwtheme-darktext,
+#urlbar[https_color="secure-only"]:-moz-lwtheme-darktext {
+ box-shadow: inset 0 0 2px;
+}
+
+/* Identity popup icons */
+#identity-popup-icon {
+ height: 64px;
+ width: 64px;
+ padding: 0;
+ list-style-image: url("chrome://browser/skin/identity.png");
+ -moz-image-region: rect(0px, 64px, 64px, 0px);
+}
+
+#identity-popup.verifiedDomain > #identity-popup-container > #identity-popup-icon {
+ -moz-image-region: rect(64px, 64px, 128px, 0px);
+}
+
+#identity-popup.verifiedIdentity > #identity-popup-container > #identity-popup-icon {
+ -moz-image-region: rect(128px, 64px, 192px, 0px);
+}
+
+/* Identity popup body text */
+.identity-popup-description {
+ white-space: pre-wrap;
+ padding-inline-start: 15px;
+ margin: 2px 0 4px;
+}
+
+.identity-popup-label {
+ white-space: pre-wrap;
+ padding-inline-start: 15px;
+ margin: 0;
+}
+
+#identity-popup-content-host ,
+#identity-popup-content-owner {
+ font-weight: bold;
+ max-width: 300px;
+}
+
+#identity-popup-content-host ,
+#identity-popup-content-box.verifiedIdentity > #identity-popup-content-owner {
+ font-size: 140%;
+}
+
+#identity-popup-content-owner {
+ margin-bottom: 0 !important;
+}
+
+#identity-popup-content-verifier {
+ margin: 4px 0 2px;
+}
+
+#identity-popup-content-box.verifiedIdentity > #identity-popup-encryption ,
+#identity-popup-content-box.verifiedDomain > #identity-popup-encryption {
+ margin-top: 10px;
+ margin-inline-start: -18px;
+}
+
+#identity-popup-content-box.verifiedIdentity > #identity-popup-encryption > vbox > #identity-popup-encryption-icon ,
+#identity-popup-content-box.verifiedDomain > #identity-popup-encryption > vbox > #identity-popup-encryption-icon {
+ list-style-image: url("chrome://browser/skin/Secure.png");
+}
+
+/* Identity popup bounding box */
+#identity-popup-container {
+ min-width: 280px;
+}
+
+/* Notification popup */
+#notification-popup {
+ min-width: 280px;
+}
+
+.popup-notification-icon {
+ width: 64px;
+ height: 64px;
+ margin-inline-end: 10px;
+}
+
+.popup-notification-icon[popupid="geolocation"] {
+ list-style-image: url(chrome://browser/skin/Geolocation-64.png);
+}
+
+.popup-notification-icon[popupid="push"] {
+ list-style-image: url(chrome://browser/skin/Push-64.png);
+}
+
+.popup-notification-icon[popupid="xpinstall-disabled"],
+.popup-notification-icon[popupid="addon-progress"],
+.popup-notification-icon[popupid="addon-install-cancelled"],
+.popup-notification-icon[popupid="addon-install-blocked"],
+.popup-notification-icon[popupid="addon-install-origin-blocked"],
+.popup-notification-icon[popupid="addon-install-failed"],
+.popup-notification-icon[popupid="addon-install-complete"] {
+ list-style-image: url(chrome://mozapps/skin/extensions/extensionGeneric.png);
+ width: 32px;
+ height: 32px;
+}
+
+.popup-notification-icon[popupid="click-to-play-plugins"] {
+ list-style-image: url(chrome://mozapps/skin/plugins/pluginBlocked-64.png);
+}
+
+.popup-notification-icon[popupid="web-notifications"] {
+ list-style-image: url(chrome://browser/skin/notification-64.png);
+}
+
+.addon-progress-description {
+ width: 350px;
+ max-width: 350px;
+}
+
+.popup-progress-label,
+.popup-progress-meter {
+ margin-inline-start: 0;
+ margin-inline-end: 0;
+}
+
+.popup-progress-cancel {
+ -moz-appearance: none;
+ background: transparent;
+ border: none;
+ padding: 0;
+ margin: 0;
+ margin-inline-start: 5px;
+ min-height: 0;
+ min-width: 0;
+ list-style-image: url("moz-icon://stock/gtk-cancel?size=menu");
+}
+
+.popup-notification-icon[popupid="indexedDB-permissions-prompt"],
+.popup-notification-icon[popupid="indexedDB-quota-prompt"],
+.popup-notification-icon[popupid*="offline-app-requested"],
+.popup-notification-icon[popupid="offline-app-usage"] {
+ list-style-image: url(chrome://global/skin/icons/question-64.png);
+}
+
+.popup-notification-icon[popupid="password"] {
+ list-style-image: url(chrome://mozapps/skin/passwordmgr/key-64.png);
+}
+
+.popup-notification-icon[popupid="mixed-content-blocked"] {
+ list-style-image: url(chrome://browser/skin/mixed-content-blocked-64.png);
+}
+
+.popup-notification-icon[popupid="pointerLock"] {
+ list-style-image: url(chrome://browser/skin/pointerLock-64.png);
+}
+
+/* Notification icon box */
+#notification-popup-box {
+ position: relative;
+ background-color: #fff;
+ background-clip: padding-box;
+ padding-left: 4px;
+ border-radius: 2.5px 0 0 2.5px;
+ border-width: 0 8px 0 0;
+ border-style: solid;
+ border-image: url("chrome://browser/skin/urlbar-arrow.png") 0 8 0 0 fill;
+ margin-inline-end: -8px;
+ margin-top: -1px;
+ margin-bottom: -1px;
+}
+
+#notification-popup-box:not([hidden]) + #identity-box {
+ padding-inline-start: 10px;
+ border-radius: 0;
+}
+
+#notification-popup-box:-moz-locale-dir(rtl),
+.notification-anchor-icon:-moz-locale-dir(rtl) {
+ transform: scaleX(-1);
+}
+
+.notification-anchor-icon {
+ width: 16px;
+ height: 16px;
+ margin: 0 2px;
+}
+
+.notification-anchor-icon:-moz-focusring {
+ outline: 1px dotted -moz-DialogText;
+}
+
+.default-notification-icon,
+#default-notification-icon {
+ list-style-image: url(chrome://global/skin/icons/information-16.png);
+}
+
+.geo-notification-icon,
+#geo-notification-icon {
+ list-style-image: url(chrome://browser/skin/Geolocation-16.png);
+}
+
+#addons-notification-icon {
+ list-style-image: url(chrome://mozapps/skin/extensions/extensionGeneric-16.png);
+}
+
+.indexedDB-notification-icon,
+#indexedDB-notification-icon {
+ list-style-image: url(chrome://global/skin/icons/question-16.png);
+}
+
+#password-notification-icon {
+ list-style-image: url(chrome://mozapps/skin/passwordmgr/key-16.png);
+}
+
+#plugins-notification-icon {
+ list-style-image: url(chrome://browser/skin/notification-pluginNormal.png);
+}
+
+#alert-plugins-notification-icon {
+ list-style-image: url(chrome://browser/skin/notification-pluginAlert.png);
+}
+
+#blocked-plugins-notification-icon {
+ list-style-image: url(chrome://browser/skin/notification-pluginBlocked.png);
+}
+
+#plugins-notification-icon,
+#alert-plugins-notification-icon,
+#blocked-plugins-notification-icon {
+ -moz-image-region: rect(0, 16px, 16px, 0);
+}
+
+#plugins-notification-icon:hover,
+#alert-plugins-notification-icon:hover,
+#blocked-plugins-notification-icon:hover {
+ -moz-image-region: rect(0, 32px, 16px, 16px);
+}
+
+#plugins-notification-icon:active,
+#alert-plugins-notification-icon:active,
+#blocked-plugins-notification-icon:active {
+ -moz-image-region: rect(0, 48px, 16px, 32px);
+}
+
+#notification-popup-box[hidden] {
+ /* Override display:none to make the pluginBlockedNotification animation work
+ when showing the notification repeatedly. */
+ display: -moz-box;
+ visibility: collapse;
+}
+
+#blocked-plugins-notification-icon[showing] {
+ animation: pluginBlockedNotification 500ms ease 0s 5 alternate both;
+}
+
+@keyframes pluginBlockedNotification {
+ from {
+ opacity: 0;
+ }
+ to {
+ opacity: 1;
+ }
+}
+
+.mixed-content-blocked-notification-icon,
+#mixed-content-blocked-notification-icon {
+ list-style-image: url(chrome://browser/skin/mixed-content-blocked-16.png);
+}
+
+.web-notifications-notification-icon,
+#web-notifications-notification-icon {
+ list-style-image: url(chrome://browser/skin/web-notifications-tray.svg);
+ -moz-image-region: rect(0, 16px, 16px, 0);
+}
+
+.web-notifications-notification-icon:hover,
+#web-notifications-notification-icon:hover {
+ -moz-image-region: rect(0, 32px, 16px, 16px);
+}
+
+.web-notifications-notification-icon:hover:active,
+#web-notifications-notification-icon:hover:active {
+ -moz-image-region: rect(0, 48px, 16px, 32px);
+}
+
+#pointerLock-notification-icon {
+ list-style-image: url(chrome://browser/skin/pointerLock-16.png);
+}
+#pointerLock-cancel {
+ margin: 0px;
+}
+
+/* Pale Moon: Feed icon */
+#ub-feed-button,
+#ub-feed-button > .button-box,
+#ub-feed-button:hover:active > .button-box {
+ padding: 0px;
+ margin: 0px;
+ border: 0px;
+ background-color: transparent !important;
+}
+
+#ub-feed-button {
+ -moz-appearance: none;
+ min-width: 0px;
+ margin-right: 1px !important;
+ list-style-image: url("chrome://browser/skin/page-livemarks.png");
+}
+
+
+#treecolAutoCompleteImage {
+ max-width : 36px;
+}
+
+.ac-result-type-bookmark,
+.autocomplete-treebody::-moz-tree-image(bookmark, treecolAutoCompleteImage) {
+ list-style-image: url("chrome://browser/skin/places/star-icons.png");
+ -moz-image-region: rect(0px 32px 16px 16px);
+ width: 16px;
+ height: 16px;
+}
+
+.ac-result-type-keyword,
+.autocomplete-treebody::-moz-tree-image(keyword, treecolAutoCompleteImage) {
+ list-style-image: url(moz-icon://stock/gtk-find?size=menu);
+ width: 16px;
+ height: 16px;
+}
+
+.ac-result-type-tag,
+.autocomplete-treebody::-moz-tree-image(tag, treecolAutoCompleteImage) {
+ list-style-image: url("chrome://browser/skin/places/tag.png");
+ width: 16px;
+ height: 16px;
+}
+
+.ac-comment {
+ font-size: 1.05em;
+}
+
+.ac-extra > .ac-comment {
+ font-size: inherit;
+}
+
+.ac-url-text,
+.ac-action-text {
+ color: -moz-nativehyperlinktext;
+ font-size: 0.9em;
+}
+
+richlistitem[type~="action"][actiontype="switchtab"] > .ac-url-box > .ac-action-icon {
+ list-style-image: url("chrome://browser/skin/actionicon-tab.png");
+ padding: 0 3px;
+}
+
+.autocomplete-treebody::-moz-tree-cell-text(treecolAutoCompleteComment) {
+ color: GrayText;
+}
+
+.ac-comment[selected="true"],
+.ac-url-text[selected="true"],
+.ac-action-text[selected="true"] {
+ color: inherit !important;
+}
+
+.autocomplete-treebody::-moz-tree-cell-text(suggesthint, treecolAutoCompleteComment),
+.autocomplete-treebody::-moz-tree-cell-text(suggestfirst, treecolAutoCompleteComment) {
+ color: GrayText;
+ font-size: smaller;
+}
+
+.autocomplete-treebody::-moz-tree-cell(suggesthint) {
+ border-top: 1px solid GrayText;
+}
+
+/* Combined go/reload/stop button in location bar */
+
+#go-button {
+ padding-top: 2px;
+ padding-bottom: 2px;
+}
+
+#urlbar > toolbarbutton {
+ -moz-appearance: none;
+ padding: 0;
+ border: none;
+ cursor: pointer;
+ width: 22px;
+}
+
+#go-button,
+#urlbar-go-button {
+ list-style-image: url("chrome://browser/skin/Go-arrow.png");
+}
+
+#go-button:-moz-locale-dir(rtl) > .toolbarbutton-icon,
+#urlbar-go-button:-moz-locale-dir(rtl) > .toolbarbutton-icon {
+ transform: scaleX(-1);
+}
+
+#urlbar-reload-button {
+ list-style-image: url("moz-icon://stock/gtk-refresh?size=menu");
+}
+
+#urlbar-stop-button {
+ list-style-image: url("moz-icon://stock/gtk-stop?size=menu");
+}
+
+/* Popup blocker button */
+#page-report-button {
+ list-style-image: url("chrome://browser/skin/Info.png");
+}
+
+/* Star button */
+#star-button {
+ list-style-image: url("chrome://browser/skin/places/starPage.png");
+}
+
+#star-button[starred="true"] {
+ list-style-image: url("chrome://browser/skin/places/pageStarred.png");
+}
+
+/* bookmarks menu-button */
+
+#bookmarks-menu-button[disabled] > .toolbarbutton-icon,
+#bookmarks-menu-button[disabled] > .toolbarbutton-menu-dropmarker,
+#bookmarks-menu-button[disabled] > .toolbarbutton-menubutton-dropmarker,
+#bookmarks-menu-button[disabled] > .toolbarbutton-menubutton-button > .toolbarbutton-icon,
+#bookmarks-menu-button > .toolbarbutton-menubutton-button[disabled] > .toolbarbutton-icon {
+ opacity: .4;
+}
+
+/* history menu-button */
+
+#history-menu-button[disabled] > .toolbarbutton-icon,
+#history-menu-button[disabled] > .toolbarbutton-menu-dropmarker,
+#history-menu-button[disabled] > .toolbarbutton-menubutton-dropmarker,
+#history-menu-button[disabled] > .toolbarbutton-menubutton-button > .toolbarbutton-icon,
+#history-menu-button > .toolbarbutton-menubutton-button[disabled] > .toolbarbutton-icon {
+ opacity: .4;
+}
+
+/* Bookmarking panel */
+#editBookmarkPanelStarIcon {
+ list-style-image: url("chrome://browser/skin/places/starred48.png");
+ width: 48px;
+ height: 48px;
+}
+
+#editBookmarkPanelStarIcon[unstarred] {
+ list-style-image: url("chrome://browser/skin/places/unstarred48.png");
+}
+
+#editBookmarkPanelTitle {
+ font-size: 130%;
+}
+
+#editBookmarkPanelHeader,
+#editBookmarkPanelContent {
+ margin-bottom: .5em;
+}
+
+/* Implements editBookmarkPanel resizing on folderTree un-collapse. */
+#editBMPanel_folderTree {
+ min-width: 27em;
+}
+
+/* Content area */
+#sidebar {
+ background-color: Window;
+}
+
+/* Throbber */
+#navigator-throbber {
+ width: 16px;
+ min-height: 16px;
+ margin: 0 3px;
+}
+
+#navigator-throbber[busy="true"] {
+ list-style-image: url("chrome://global/skin/icons/loading_16.png");
+}
+
+#navigator-throbber,
+#wrapper-navigator-throbber > #navigator-throbber {
+ list-style-image: url("chrome://global/skin/icons/notloading_16.png");
+}
+
+/* Tabstrip */
+
+#TabsToolbar {
+ min-height: 0;
+ padding: 0;
+}
+
+#TabsToolbar[tabsontop=true]:not(:-moz-lwtheme) {
+ -moz-appearance: menubar;
+ color: -moz-menubartext;
+ box-shadow: 0 -1px 0 rgba(0,0,0,.1) inset;
+}
+
+#TabsToolbar[tabsontop=true]:not(:-moz-lwtheme):-moz-system-metric(menubar-drag) {
+ -moz-binding: url("chrome://global/content/bindings/toolbar.xml#toolbar-drag");
+}
+
+#TabsToolbar[tabsontop=false] {
+ background-image: linear-gradient(to top, rgba(0,0,0,.3) 1px, rgba(0,0,0,.05) 1px, transparent 50%);
+}
+
+/* When the tab bar is collapsed, show a 1px border in its place. */
+#TabsToolbar[tabsontop="false"][collapsed="true"]:not([customizing="true"]) {
+ visibility: visible;
+ height: 1px;
+ border-bottom-width: 1px;
+ /* !important here to override border-style: none on the toolbar */
+ border-bottom-style: solid !important;
+ border-bottom-color: ThreeDShadow;
+ overflow: hidden;
+}
+
+.tabbrowser-tab,
+.tabs-newtab-button {
+ position: static;
+ -moz-appearance: none;
+ background: linear-gradient(hsla(0,0%,100%,.2), hsla(0,0%,45%,.2) 2px, hsla(0,0%,32%,.2) 80%);
+ background-origin: border-box;
+ background-position: 1px 2px;
+ background-size: 100% calc(100% - 2px);
+ background-repeat: no-repeat;
+ color: inherit;
+ margin: 0;
+ padding: 0;
+ border-width: 4px 5px 3px 6px;
+ border-style: solid;
+ border-image: url(tabbrowser/tab.png) 4 5 3 6 fill repeat stretch;
+ border-radius: 10px 8px 0 0;
+ min-height: 25px; /* reserve space for the sometimes hidden close button */
+}
+
+.tabbrowser-tab:hover,
+.tabs-newtab-button:hover {
+ background-image: linear-gradient(hsla(0,0%,100%,.6), hsla(0,0%,100%,.2) 4px, hsla(0,0%,75%,.2) 80%);
+}
+
+.tabbrowser-tab[selected="true"] {
+ background-image: linear-gradient(@selectedTabHighlight@, @toolbarHighlight@ 32%),
+ linear-gradient(-moz-dialog, -moz-dialog);
+}
+
+.tabbrowser-tab[selected="true"]:not(:-moz-lwtheme) {
+ color: -moz-dialogtext;
+}
+
+#main-window[tabsontop=false]:not([disablechrome]) .tabbrowser-tab[selected=true]:not(:-moz-lwtheme) {
+ background-image: linear-gradient(to top, rgba(0,0,0,.3) 1px, transparent 1px),
+ linear-gradient(@selectedTabHighlight@, @toolbarHighlight@ 32%),
+ linear-gradient(-moz-dialog, -moz-dialog);
+}
+
+
+.tabbrowser-tab:-moz-lwtheme:not([selected="true"]) {
+ opacity: 0.9;
+}
+
+.tabbrowser-tab[selected="true"]:-moz-lwtheme {
+ background-image: linear-gradient(rgba(255,255,255,.6), rgba(255,255,255,.8) 50%);
+}
+
+.tabbrowser-tab[selected="true"]:-moz-lwtheme-brighttext {
+ background-image: linear-gradient(rgba(128,128,128,.9), rgba(32,32,32,.9) 50%, rgba(32,32,32,.9) 80%, rgba(32,32,32,.8) 100%);
+}
+
+.tabbrowser-tab:-moz-lwtheme-brighttext:not([selected="true"]),
+.tabs-newtab-button:-moz-lwtheme-brighttext {
+ background-image: linear-gradient(hsla(0,0%,25%,.4), hsla(0,0%,15%,.6) 80%);
+}
+
+.tabbrowser-tab:-moz-lwtheme-brighttext:not([selected="true"]):hover,
+.tabs-newtab-button:-moz-lwtheme-brighttext:hover {
+ background-image: linear-gradient(hsla(0,0%,60%,.4), hsla(0,0%,10%,.8) 80%);
+}
+
+.tabbrowser-tab:-moz-lwtheme-darktext:not([selected="true"]),
+.tabs-newtab-button:-moz-lwtheme-darktext {
+ background-image: linear-gradient(hsla(0,0%,75%,.4), hsla(0,0%,85%,.6) 80%);
+}
+
+.tabbrowser-tab:-moz-lwtheme-darktext:not([selected="true"]):hover,
+.tabs-newtab-button:-moz-lwtheme-darktext:hover {
+ background-image: linear-gradient(hsla(0,0%,60%,.4), hsla(0,0%,90%,.8) 80%);
+}
+
+.tabbrowser-tab[pinned][titlechanged]:not([selected="true"]) {
+ background-image: radial-gradient(circle farthest-corner at 50% 3px, rgba(233,242,252,1) 3%, rgba(172,206,255,.75) 40%, rgba(87,151,201,.5) 80%, rgba(87,151,201,0));
+}
+.tabbrowser-tab[pinned][titlechanged]:not([selected="true"]):hover {
+ background-image: linear-gradient(hsla(0,0%,100%,.8), hsla(0,0%,100%,.6) 2px, hsla(0,0%,75%,.2) 80%),
+ radial-gradient(circle farthest-corner at 50% 3px, rgba(233,242,252,1) 3%, rgba(172,206,255,.75) 40%, rgba(87,151,201,.5) 80%, rgba(87,151,201,0));
+}
+
+#tabbrowser-tabs[positionpinnedtabs] > .tabbrowser-tab > .tab-stack > .tab-content[pinned] {
+ min-height: 18px; /* corresponds to the max. height of non-textual tab contents, i.e. the tab close button */
+}
+
+.tabbrowser-tab:focus > .tab-stack {
+ outline: 1px dotted;
+}
+
+.tab-throbber,
+.tab-icon-image {
+ width: 16px;
+ height: 16px;
+ margin-inline-end: 3px;
+ list-style-image: url("chrome://mozapps/skin/places/defaultFavicon.png");
+}
+
+.tab-throbber {
+ list-style-image: url("chrome://browser/skin/tabbrowser/connecting.png");
+}
+
+.tab-throbber[progress] {
+ list-style-image: url("chrome://browser/skin/tabbrowser/loading.png");
+}
+
+.tab-throbber[pinned],
+.tab-icon-image[pinned],
+.tabs-newtab-button > .toolbarbutton-icon {
+ margin-inline-start: 2px;
+ margin-inline-end: 2px;
+}
+
+#context_reloadTab {
+ list-style-image: url("moz-icon://stock/gtk-refresh?size=menu");
+}
+
+#context_closeOtherTabs {
+ list-style-image: url("moz-icon://stock/gtk-clear?size=menu");
+}
+
+#context_closeOtherTabs[disabled] {
+ list-style-image: url("moz-icon://stock/gtk-clear?size=menu&state=disabled");
+}
+
+#context_undoCloseTab {
+ list-style-image: url("moz-icon://stock/gtk-undelete?size=menu");
+}
+
+#context_closeTab {
+ list-style-image: url("moz-icon://stock/gtk-close?size=menu");
+}
+
+/* Tab drag and drop */
+.tab-drop-indicator {
+ list-style-image: url(chrome://browser/skin/tabbrowser/tabDragIndicator.png);
+ margin-bottom: -11px;
+}
+
+/* In-tab close button */
+.tab-close-button > .toolbarbutton-icon {
+ /* XXX Buttons have padding in widget/ that we don't want here but can't override with good CSS, so we must
+ use evil CSS to give the impression of smaller content */
+ margin: -4px;
+}
+
+.tab-close-button {
+ padding: 0;
+ margin-top: -1px;
+ margin-bottom: -1px;
+ margin-inline-end: -1px;
+}
+
+/* Tab sound indicator */
+.tab-icon-sound {
+ margin-inline-start: 4px;
+ width: 16px;
+ height: 16px;
+ padding: 0;
+}
+
+.allTabs-endimage[soundplaying],
+.tab-icon-sound[soundplaying] {
+ list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio");
+}
+
+.allTabs-endimage[muted],
+.tab-icon-sound[muted] {
+ list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-muted");
+}
+
+.allTabs-endimage[blocked],
+.tab-icon-sound[blocked] {
+ list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-blocked");
+}
+
+#TabsToolbar:-moz-lwtheme-brighttext .tab-icon-sound[soundplaying],
+#TabsToolbar:-moz-lwtheme-brighttext .tab-icon-sound[blocked],
+#TabsToolbar:-moz-lwtheme-brighttext .tab-icon-sound[muted] {
+ filter: invert(1);
+}
+
+.tab-icon-sound[soundplaying-scheduledremoval]:not([muted]):not(:hover),
+.tab-icon-overlay[soundplaying-scheduledremoval]:not([muted]):not(:hover) {
+ transition: opacity .3s linear var(--soundplaying-removal-delay);
+ opacity: 0;
+}
+
+/* Tab icon overlay */
+.tab-icon-overlay {
+ width: 16px;
+ height: 16px;
+ margin-top: -8px;
+ margin-inline-start: -15px;
+ margin-inline-end: -1px;
+ position: relative;
+}
+
+.tab-icon-overlay[soundplaying],
+.tab-icon-overlay[muted]:not([crashed]),
+.tab-icon-overlay[blocked]:not([crashed]) {
+ border-radius: 10px;
+}
+
+.tab-icon-overlay[soundplaying]:hover,
+.tab-icon-overlay[muted]:not([crashed]):hover,
+.tab-icon-overlay[blocked]:not([crashed]):hover {
+ background-color: white;
+}
+
+.tab-icon-overlay[soundplaying] {
+ list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-small.svg#tab-audio");
+}
+
+.tab-icon-overlay[muted] {
+ list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-small.svg#tab-audio-muted");
+}
+
+.tab-icon-overlay[blocked] {
+ list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-small.svg#tab-audio-blocked");
+}
+
+#TabsToolbar:-moz-lwtheme-brighttext .tab-icon-overlay[soundplaying]:not([selected]):not(:hover),
+.tab-icon-overlay[soundplaying][selected]:-moz-lwtheme-brighttext:not(:hover) {
+ list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-small.svg#tab-audio-white");
+}
+
+#TabsToolbar:-moz-lwtheme-brighttext .tab-icon-overlay[muted]:not([crashed]):not([selected]):not(:hover),
+.tab-icon-overlay[muted][selected]:-moz-lwtheme-brighttext:not(:hover) {
+ list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-small.svg#tab-audio-white-muted");
+}
+
+#TabsToolbar:-moz-lwtheme-brighttext .tab-icon-overlay[blocked]:not([crashed]):not([selected]):not(:hover),
+.tab-icon-overlay[blocked][selected]:-moz-lwtheme-brighttext:not(:hover) {
+ list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-small.svg#tab-audio-white-blocked");
+}
+
+/* Tabstrip new tab button */
+.tabs-newtab-button,
+#TabsToolbar > #new-tab-button ,
+#TabsToolbar > #wrapper-new-tab-button > #new-tab-button {
+ list-style-image: url("moz-icon://stock/gtk-add?size=menu");
+ -moz-image-region: auto;
+}
+
+/* Tabstrip close button */
+.tabs-closebutton > .toolbarbutton-icon {
+ /* XXX Buttons have padding in widget/ that we don't want here but can't override with good CSS, so we must
+ use evil CSS to give the impression of smaller content */
+ margin: -2px;
+}
+
+/* Tabbrowser arrowscrollbox arrows */
+.tabbrowser-arrowscrollbox > .scrollbutton-up,
+.tabbrowser-arrowscrollbox > .scrollbutton-down {
+ -moz-appearance: none;
+ margin: 0;
+}
+
+.tabbrowser-arrowscrollbox > .scrollbutton-up {
+ border-inline-start: 0;
+ border-inline-end: 2px solid transparent;
+}
+
+.tabbrowser-arrowscrollbox > .scrollbutton-down {
+ border-inline-start: 2px solid transparent;
+ border-inline-end: 0;
+ transition: 1s box-shadow ease-out;
+ border-radius: 4px;
+}
+
+.tabbrowser-arrowscrollbox > .scrollbutton-down[notifybgtab] {
+ box-shadow: 0 0 5px 5px Highlight inset;
+ transition: none;
+}
+
+.tabbrowser-arrowscrollbox > .scrollbutton-up:not([disabled]):-moz-locale-dir(ltr),
+.tabbrowser-arrowscrollbox > .scrollbutton-down:not([disabled]):-moz-locale-dir(rtl) {
+ border-width: 0 2px 0 0;
+ border-style: solid;
+ border-image: url("chrome://browser/skin/tabbrowser/tab-overflow-border.png") 0 2 0 2 fill;
+}
+
+.tabbrowser-arrowscrollbox > .scrollbutton-down:not([disabled]):-moz-locale-dir(ltr),
+.tabbrowser-arrowscrollbox > .scrollbutton-up:not([disabled]):-moz-locale-dir(rtl) {
+ border-width: 0 0 0 2px;
+ border-style: solid;
+ border-image: url("chrome://browser/skin/tabbrowser/tab-overflow-border.png") 0 2 0 2 fill;
+}
+
+#TabsToolbar .toolbarbutton-1 > .toolbarbutton-icon,
+#TabsToolbar .toolbarbutton-1 > .toolbarbutton-menu-dropmarker,
+#TabsToolbar .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-icon {
+ margin-top: -2px;
+ margin-bottom: -2px;
+}
+
+#alltabs-button > .toolbarbutton-icon {
+ list-style-image: url("chrome://browser/skin/tabbrowser/alltabs.png");
+ margin: 2px 0 1px;
+}
+
+#alltabs-button[type="menu"] > .toolbarbutton-menu-dropmarker {
+ margin-bottom: -2px;
+}
+
+#alltabs-button[type="menu"] > .toolbarbutton-icon {
+ display: none;
+}
+
+/* All tabs menupopup */
+.alltabs-item > .menu-iconic-left > .menu-iconic-icon {
+ list-style-image: url("chrome://mozapps/skin/places/defaultFavicon.png");
+}
+
+.alltabs-item[selected="true"] {
+ font-weight: bold;
+}
+
+.alltabs-item[busy] > .menu-iconic-left > .menu-iconic-icon {
+ list-style-image: url("chrome://global/skin/icons/loading_16.png");
+}
+
+.alltabs-item[tabIsVisible] {
+ /* box-shadow instead of background-color to work around native styling */
+ box-shadow: inset -5px 0 ThreeDShadow;
+}
+
+/* Sidebar */
+#sidebar-header > .tabs-closebutton {
+ margin-bottom: 0px !important;
+ padding: 0px 2px 0px 2px !important;
+}
+
+#sidebar-throbber[loading="true"] {
+ list-style-image: url("chrome://global/skin/icons/loading_16.png");
+ margin-inline-end: 4px;
+}
+
+toolbarbutton.chevron {
+ list-style-image: url("chrome://global/skin/toolbar/chevron.gif") !important;
+}
+
+toolbarbutton.chevron:-moz-locale-dir(rtl) > .toolbarbutton-icon {
+ transform: scaleX(-1);
+}
+
+toolbarbutton.chevron > .toolbarbutton-text,
+toolbarbutton.chevron > .toolbarbutton-menu-dropmarker {
+ display: none;
+}
+
+toolbarbutton.chevron > .toolbarbutton-icon {
+ margin: 0;
+}
+
+toolbar[mode="text"] toolbarbutton.chevron > .toolbarbutton-icon {
+ display: -moz-box; /* display chevron icon in text mode */
+}
+
+/* ::::: Keyboard UI Panel ::::: */
+
+.KUI-panel-closebutton {
+ list-style-image: url(KUI-close.png);
+}
+
+.KUI-panel-closebutton > .toolbarbutton-icon {
+ margin: 0;
+}
+
+/* ::::: Ctrl-Tab and All Tabs Panels ::::: */
+
+.ctrlTab-preview,
+.allTabs-preview {
+ -moz-appearance: toolbarbutton;
+}
+
+.tabPreview-canvas {
+ box-shadow: 0 0 5px ThreeDShadow;
+}
+
+.ctrlTab-preview:focus .tabPreview-canvas,
+.ctrlTab-preview:hover .tabPreview-canvas,
+.allTabs-preview:focus .tabPreview-canvas,
+.allTabs-preview:hover .tabPreview-canvas {
+ box-shadow: none;
+}
+
+.ctrlTab-favicon[src],
+.allTabs-favicon[src] {
+ background-color: white;
+ width: 20px;
+ height: 20px;
+ padding: 2px;
+}
+
+/* Ctrl-Tab */
+
+#ctrlTab-panel {
+ padding: 10px;
+}
+
+.ctrlTab-preview:not(#ctrlTab-showAll) .tabPreview-canvas {
+ margin-bottom: 2px;
+}
+
+#ctrlTab-showAll {
+ -moz-appearance: button;
+ color: ButtonText;
+ padding: 0 3px;
+ margin-top: 10px;
+}
+
+/* All Tabs */
+
+#allTabs-panel {
+ padding-bottom: 10px;
+}
+
+#allTabs-meta {
+ padding: 5px;
+}
+
+#allTabs-filter {
+ margin-inline-start: 36px;
+ margin-inline-end: 0;
+}
+
+.allTabs-preview-label {
+ transform: translate(0, 2px);
+}
+
+/* Application button menu */
+
+.splitmenu-menuitem {
+ margin-inline-end: 1px;
+}
+
+#appmenu-toolbar-button:not(:hover):not([open]):not(:-moz-lwtheme) {
+ color: inherit;
+}
+
+#appmenu-toolbar-button > .toolbarbutton-text,
+#appmenu-toolbar-button > .toolbarbutton-menu-dropmarker {
+ margin-top: -2px !important;
+ margin-bottom: -2px !important;
+}
+#appmenuSecondaryPane {
+ border-inline-start: 1px solid ThreeDShadow;
+}
+#appmenuSecondaryPane-spacer {
+ min-height: 1em;
+}
+#appmenu-cut,
+#appmenu-editmenu-cut {
+ list-style-image: url("moz-icon://stock/gtk-cut?size=menu");
+}
+#appmenu-copy,
+#appmenu-editmenu-copy {
+ list-style-image: url("moz-icon://stock/gtk-copy?size=menu");
+}
+#appmenu-paste,
+#appmenu-editmenu-paste {
+ list-style-image: url("moz-icon://stock/gtk-paste?size=menu");
+}
+#wrapper-appmenu-toolbar-button,
+.appmenu-edit-button[disabled="true"] {
+ opacity: .3;
+}
+
+/* Add-on bar */
+
+#addon-bar {
+ box-shadow: 0 1px 0 rgba(0,0,0,.15) inset;
+ padding: 0;
+ min-height: 20px;
+}
+
+#status-bar {
+ min-height: 0;
+ -moz-appearance: none;
+ background-color: transparent;
+ border: none;
+}
+
+#addon-bar[customizing] > #status-bar {
+ opacity: .5;
+ background-image: repeating-linear-gradient(135deg,
+ rgba(255,255,255,.3), rgba(255,255,255,.3) 5px,
+ rgba(0,0,0,.3) 5px, rgba(0,0,0,.3) 10px);
+}
+
+#status-bar > statusbarpanel {
+ border-width: 0;
+ -moz-appearance: none;
+}
+
+#addonbar-closebutton > .toolbarbutton-icon {
+ margin-top: -2px;
+ margin-bottom: -2px;
+}
+
+/* Status panel */
+
+.statuspanel-label {
+ margin: 0;
+ padding: 2px 4px;
+ background: linear-gradient(#fff, #ddd);
+ border: 1px none #ccc;
+ border-top-style: solid;
+ color: #333;
+ text-shadow: none;
+}
+
+.statuspanel-label:-moz-locale-dir(ltr):not([mirror]),
+.statuspanel-label:-moz-locale-dir(rtl)[mirror] {
+ border-right-style: solid;
+ border-top-right-radius: .3em;
+ margin-right: 1em;
+}
+
+.statuspanel-label:-moz-locale-dir(rtl):not([mirror]),
+.statuspanel-label:-moz-locale-dir(ltr)[mirror] {
+ border-left-style: solid;
+ border-top-left-radius: .3em;
+ margin-left: 1em;
+}
+
+#full-screen-warning-message {
+ background-color: hsl(0,0%,15%);
+ color: white;
+ border-radius: 8px;
+ margin-top: 30px;
+ padding: 30px 50px;
+ box-shadow: 0 0 2px white;
+}
+
+.full-screen-description {
+ font-size: 150%;
+}
+
+#full-screen-domain-text {
+ font-size: 300%;
+}
+
+%ifdef MOZ_DEVTOOLS
+%include ../../../platform/devtools/client/themes/responsivedesign.inc.css
+%include ../../../platform/devtools/client/themes/commandline.inc.css
+%endif
+%include ../shared/plugin-doorhanger.inc.css
+
+%ifdef MOZ_DEVTOOLS
+.gcli-panel {
+ padding: 0;
+}
+
+.gclitoolbar-input-node > .textbox-input-box > html|*.textbox-input::-moz-selection {
+ color: hsl(210,11%,16%);
+}
+
+/* Error counter */
+
+#developer-toolbar-toolbox-button[error-count]:before {
+ color: #FDF3DE;
+ min-width: 16px;
+ text-shadow: none;
+ background-image: linear-gradient(#B4211B, #8A1915);
+ border-radius: 1px;
+ margin-inline-end: 2px;
+}
+%endif
+
+.toolbarbutton-badge-stack {
+ margin: 5px 3px;
+ position: relative;
+}
+
+toolbar[iconsize="small"] .toolbarbutton-badge-stack {
+ margin: 0;
+}
+
+.toolbarbutton-badge[badge]:not([badge=""]):-moz-locale-dir(rtl)::after {
+ left: 2px;
+ right: auto;
+}
+
+#main-window[privatebrowsingmode=temporary] #TabsToolbar::before {
+ display: -moz-box;
+ content: "";
+ background: url("chrome://browser/skin/privatebrowsing-mask.png") center no-repeat;
+ width: 40px;
+}
diff --git a/browser/themes/linux/click-to-play-warning-stripes.png b/browser/themes/linux/click-to-play-warning-stripes.png
new file mode 100644
index 000000000..29f15f7b8
--- /dev/null
+++ b/browser/themes/linux/click-to-play-warning-stripes.png
Binary files differ
diff --git a/browser/themes/linux/communicator/communicator.css b/browser/themes/linux/communicator/communicator.css
new file mode 100644
index 000000000..0b57574fd
--- /dev/null
+++ b/browser/themes/linux/communicator/communicator.css
@@ -0,0 +1,6 @@
+/* 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/. */
+
+@import url("chrome://global/skin/");
+
diff --git a/browser/themes/linux/communicator/jar.mn b/browser/themes/linux/communicator/jar.mn
new file mode 100644
index 000000000..00444fed1
--- /dev/null
+++ b/browser/themes/linux/communicator/jar.mn
@@ -0,0 +1,7 @@
+# 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/.
+
+classic.jar:
+% skin communicator classic/1.0 %skin/classic/communicator/
+ skin/classic/communicator/communicator.css
diff --git a/browser/themes/linux/communicator/moz.build b/browser/themes/linux/communicator/moz.build
new file mode 100644
index 000000000..ecb79e730
--- /dev/null
+++ b/browser/themes/linux/communicator/moz.build
@@ -0,0 +1,6 @@
+# -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
+# 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/.
+
+JAR_MANIFESTS += ['jar.mn'] \ No newline at end of file
diff --git a/browser/themes/linux/downloads/allDownloadsViewOverlay.css b/browser/themes/linux/downloads/allDownloadsViewOverlay.css
new file mode 100644
index 000000000..b41788472
--- /dev/null
+++ b/browser/themes/linux/downloads/allDownloadsViewOverlay.css
@@ -0,0 +1,125 @@
+/* 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/. */
+
+#downloadsRichListBox {
+ /** The default listbox appearance comes with an unwanted margin. **/
+ -moz-appearance: none;
+ margin: 0;
+}
+
+#downloadsRichListBox > richlistitem.download {
+ height: 5em;
+ padding: 5px 8px;
+}
+
+.downloadTypeIcon {
+ margin-inline-end: 8px;
+ /* Prevent flickering when changing states. */
+ min-height: 32px;
+ min-width: 32px;
+}
+
+.blockedIcon {
+ list-style-image: url("chrome://global/skin/icons/Error.png");
+}
+
+.downloadTarget {
+ margin-bottom: 3px;
+ cursor: inherit;
+}
+
+.downloadDetails {
+ opacity: 0.7;
+ font-size: 95%;
+ cursor: inherit;
+}
+
+.downloadButton {
+ -moz-appearance: none;
+ background: transparent;
+ min-width: 0;
+ min-height: 0;
+ margin: 3px;
+ border: none;
+ padding: 5px;
+ list-style-image: url("chrome://browser/skin/downloads/buttons.png");
+}
+
+/*** Button icons ***/
+
+.downloadButton.downloadCancel {
+ -moz-image-region: rect(0px, 16px, 16px, 0px);
+}
+richlistitem.download:hover > .downloadButton.downloadCancel {
+ -moz-image-region: rect(0px, 32px, 16px, 16px);
+}
+richlistitem.download:hover > .downloadButton.downloadCancel:hover {
+ -moz-image-region: rect(0px, 48px, 16px, 32px);
+}
+richlistitem.download:hover > .downloadButton.downloadCancel:active {
+ -moz-image-region: rect(0px, 64px, 16px, 48px);
+}
+richlistitem.download[selected] > .downloadButton.downloadCancel {
+ -moz-image-region: rect(0px, 80px, 16px, 64px);
+}
+richlistitem.download:hover[selected] > .downloadButton.downloadCancel {
+ -moz-image-region: rect(0px, 96px, 16px, 80px);
+}
+richlistitem.download:hover[selected] > .downloadButton.downloadCancel:hover {
+ -moz-image-region: rect(0px, 112px, 16px, 96px);
+}
+richlistitem.download:hover[selected] > .downloadButton.downloadCancel:active {
+ -moz-image-region: rect(0px, 128px, 16px, 112px);
+}
+
+.downloadButton.downloadShow {
+ -moz-image-region: rect(16px, 16px, 32px, 0px);
+}
+richlistitem.download:hover > .downloadButton.downloadShow {
+ -moz-image-region: rect(16px, 32px, 32px, 16px);
+}
+richlistitem.download:hover > .downloadButton.downloadShow:hover {
+ -moz-image-region: rect(16px, 48px, 32px, 32px);
+}
+richlistitem.download:hover > .downloadButton.downloadShow:active {
+ -moz-image-region: rect(16px, 64px, 32px, 48px);
+}
+richlistitem.download[selected] > .downloadButton.downloadShow {
+ -moz-image-region: rect(16px, 80px, 32px, 64px);
+}
+richlistitem.download:hover[selected] > .downloadButton.downloadShow {
+ -moz-image-region: rect(16px, 96px, 32px, 80px);
+}
+richlistitem.download:hover[selected] > .downloadButton.downloadShow:hover {
+ -moz-image-region: rect(16px, 112px, 32px, 96px);
+}
+richlistitem.download:hover[selected] > .downloadButton.downloadShow:active {
+ -moz-image-region: rect(16px, 128px, 32px, 112px);
+}
+
+.downloadButton.downloadRetry {
+ -moz-image-region: rect(32px, 16px, 48px, 0px);
+}
+richlistitem.download:hover > .downloadButton.downloadRetry {
+ -moz-image-region: rect(32px, 32px, 48px, 16px);
+}
+richlistitem.download:hover > .downloadButton.downloadRetry:hover {
+ -moz-image-region: rect(32px, 48px, 48px, 32px);
+}
+richlistitem.download:hover > .downloadButton.downloadRetry:active {
+ -moz-image-region: rect(32px, 64px, 48px, 48px);
+}
+richlistitem.download[selected] > .downloadButton.downloadRetry {
+ -moz-image-region: rect(32px, 80px, 48px, 64px);
+}
+richlistitem.download:hover[selected] > .downloadButton.downloadRetry {
+ -moz-image-region: rect(32px, 96px, 48px, 80px);
+}
+richlistitem.download:hover[selected] > .downloadButton.downloadRetry:hover {
+ -moz-image-region: rect(32px, 112px, 48px, 96px);
+}
+richlistitem.download:hover[selected] > .downloadButton.downloadRetry:active {
+ -moz-image-region: rect(32px, 128px, 48px, 112px);
+}
+
diff --git a/browser/themes/linux/downloads/buttons.png b/browser/themes/linux/downloads/buttons.png
new file mode 100644
index 000000000..071f7f754
--- /dev/null
+++ b/browser/themes/linux/downloads/buttons.png
Binary files differ
diff --git a/browser/themes/linux/downloads/contentAreaDownloadsView.css b/browser/themes/linux/downloads/contentAreaDownloadsView.css
new file mode 100644
index 000000000..56917d715
--- /dev/null
+++ b/browser/themes/linux/downloads/contentAreaDownloadsView.css
@@ -0,0 +1,11 @@
+/* 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/. */
+
+@import url("chrome://global/skin/inContentUI.css");
+
+#downloadsListEmptyDescription {
+ margin: 1em;
+ text-align: center;
+ color: GrayText;
+}
diff --git a/browser/themes/linux/downloads/download-glow-small.png b/browser/themes/linux/downloads/download-glow-small.png
new file mode 100644
index 000000000..0dbf602c7
--- /dev/null
+++ b/browser/themes/linux/downloads/download-glow-small.png
Binary files differ
diff --git a/browser/themes/linux/downloads/download-glow.png b/browser/themes/linux/downloads/download-glow.png
new file mode 100644
index 000000000..7514317fe
--- /dev/null
+++ b/browser/themes/linux/downloads/download-glow.png
Binary files differ
diff --git a/browser/themes/linux/downloads/download-notification-finish.png b/browser/themes/linux/downloads/download-notification-finish.png
new file mode 100644
index 000000000..7bcc7f569
--- /dev/null
+++ b/browser/themes/linux/downloads/download-notification-finish.png
Binary files differ
diff --git a/browser/themes/linux/downloads/download-notification-start.png b/browser/themes/linux/downloads/download-notification-start.png
new file mode 100644
index 000000000..bd548b183
--- /dev/null
+++ b/browser/themes/linux/downloads/download-notification-start.png
Binary files differ
diff --git a/browser/themes/linux/downloads/download-summary.png b/browser/themes/linux/downloads/download-summary.png
new file mode 100644
index 000000000..c5d47545d
--- /dev/null
+++ b/browser/themes/linux/downloads/download-summary.png
Binary files differ
diff --git a/browser/themes/linux/downloads/downloads.css b/browser/themes/linux/downloads/downloads.css
new file mode 100644
index 000000000..368abd677
--- /dev/null
+++ b/browser/themes/linux/downloads/downloads.css
@@ -0,0 +1,376 @@
+/* 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/. */
+
+/*** Panel and outer controls ***/
+
+#downloadsPanel > .panel-arrowcontainer > .panel-arrowcontent {
+ padding: 0;
+}
+
+#downloadsListBox {
+ background: transparent;
+ padding: 4px;
+ color: inherit;
+}
+
+#downloadsPanel:not([hasdownloads]) > #downloadsListBox {
+ display: none;
+}
+
+#downloadsPanel[hasdownloads] > #emptyDownloads {
+ display: none;
+}
+
+#emptyDownloads {
+ padding: 10px 20px;
+ max-width: 40ch;
+}
+
+#downloadsHistory {
+ background: transparent;
+ color: -moz-nativehyperlinktext;
+ cursor: pointer;
+}
+
+#downloadsFooter {
+ border-top: 1px solid ThreeDShadow;
+ background-image: linear-gradient(hsla(0,0%,0%,.15), hsla(0,0%,0%,.08) 6px);
+}
+
+#downloadsHistory > .button-box {
+ margin: 1em;
+}
+
+#downloadsPanel[keyfocus] > #downloadsFooter > #downloadsHistory:focus > .button-box {
+ outline: 1px -moz-dialogtext dotted;
+}
+
+/*** Downloads Summary and List items ***/
+
+#downloadsSummary,
+richlistitem[type="download"] {
+ height: 6em;
+ padding-inline-end: 0;
+ color: inherit;
+}
+
+#downloadsSummary {
+ padding: 8px 38px 8px 12px;
+ cursor: pointer;
+ -moz-user-focus: normal;
+}
+
+#downloadsPanel[keyfocus] > #downloadsFooter > #downloadsSummary:focus {
+ outline: 1px -moz-dialogtext dotted;
+ outline-offset: -5px;
+}
+
+#downloadsSummary > .downloadTypeIcon {
+ list-style-image: url("chrome://browser/skin/downloads/download-summary.png");
+}
+
+#downloadsSummaryDescription {
+ color: -moz-nativehyperlinktext;
+}
+
+richlistitem[type="download"] {
+ margin: 0;
+ border-top: 1px solid hsla(0,0%,100%,.2);
+ border-bottom: 1px solid hsla(0,0%,0%,.15);
+ background: transparent;
+ padding: 8px;
+}
+
+richlistitem[type="download"]:first-child {
+ border-top: 1px solid transparent;
+}
+
+richlistitem[type="download"]:last-child {
+ border-bottom: 1px solid transparent;
+}
+
+#downloadsPanel[keyfocus] > #downloadsListBox:focus > richlistitem[type="download"][selected] {
+ outline: 1px -moz-dialogtext dotted;
+ outline-offset: -1px;
+}
+
+.downloadTypeIcon {
+ margin-inline-end: 8px;
+ /* Prevent flickering when changing states. */
+ min-height: 32px;
+ min-width: 32px;
+}
+
+.blockedIcon {
+ list-style-image: url("chrome://global/skin/icons/Error.png");
+}
+
+/* We hold .downloadDisplayName, .downloadProgress and .downloadDetails
+ inside of a vbox with class .downloadContainer. We set the font-size of
+ the entire container to 90% because:
+
+ 1) This is the size that we want .downloadDetails to be
+ 2) The container's width is set by localizers by &downloadDetails.width;,
+ which is a ch unit. Since this is the value that should control the
+ panel width, we apply it to the outer container to constrain
+ .downloadDisplayName and .downloadProgress.
+
+ Finally, since we want .downloadDisplayName's font-size to be at 100% of
+ the font-size of .downloadContainer's parent, we use calc to go from the
+ smaller font-size back to the original font-size.
+ */
+#downloadsSummaryDetails,
+.downloadContainer {
+ font-size: 90%;
+}
+
+#downloadsSummaryDescription,
+.downloadDisplayName {
+ margin-bottom: 7px;
+ cursor: inherit;
+}
+
+.downloadDisplayName {
+ font-size: calc(100%/0.9);
+}
+
+#downloadsSummaryDetails,
+.downloadDetails {
+ margin-top: 1px;
+ opacity: 0.6;
+ cursor: inherit;
+}
+
+.downloadButton {
+ -moz-appearance: none;
+ min-width: 0;
+ min-height: 0;
+ margin: 3px;
+ border: none;
+ background: transparent;
+ padding: 5px;
+ list-style-image: url("chrome://browser/skin/downloads/buttons.png");
+}
+
+.downloadButton > .button-box {
+ padding: 0;
+}
+
+.downloadButton:focus > .button-box {
+ outline: 1px -moz-dialogtext dotted;
+}
+
+/*** Highlighted list items ***/
+
+#downloadsPanel:not([keyfocus]) > #downloadsListBox > richlistitem[type="download"][state="1"][exists]:hover {
+ border-radius: 3px;
+ border-top: 1px solid hsla(0,0%,100%,.3);
+ border-bottom: 1px solid hsla(0,0%,0%,.2);
+ background-color: Highlight;
+ background-image: linear-gradient(hsla(0,0%,100%,.1), hsla(0,0%,100%,0));
+ color: HighlightText;
+ cursor: pointer;
+}
+
+/*** Button icons ***/
+
+.downloadButton.downloadCancel {
+ -moz-image-region: rect(0px, 16px, 16px, 0px);
+}
+richlistitem[type="download"]:hover > stack > .downloadButton.downloadCancel {
+ -moz-image-region: rect(0px, 32px, 16px, 16px);
+}
+richlistitem[type="download"]:hover > stack > .downloadButton.downloadCancel:hover {
+ -moz-image-region: rect(0px, 48px, 16px, 32px);
+}
+richlistitem[type="download"]:hover > stack > .downloadButton.downloadCancel:active {
+ -moz-image-region: rect(0px, 64px, 16px, 48px);
+}
+
+.downloadButton.downloadShow {
+ -moz-image-region: rect(16px, 16px, 32px, 0px);
+}
+#downloadsPanel:not([keyfocus]) > #downloadsListBox > richlistitem[type="download"][state="1"]:hover > stack > .downloadButton.downloadShow {
+ -moz-image-region: rect(16px, 96px, 32px, 80px);
+}
+#downloadsPanel:not([keyfocus]) > #downloadsListBox > richlistitem[type="download"][state="1"]:hover > stack > .downloadButton.downloadShow:hover {
+ -moz-image-region: rect(16px, 112px, 32px, 96px);
+}
+#downloadsPanel:not([keyfocus]) > #downloadsListBox > richlistitem[type="download"][state="1"]:hover > stack > .downloadButton.downloadShow:active {
+ -moz-image-region: rect(16px, 128px, 32px, 112px);
+}
+
+.downloadButton.downloadRetry {
+ -moz-image-region: rect(32px, 16px, 48px, 0px);
+}
+richlistitem[type="download"]:hover > stack > .downloadButton.downloadRetry {
+ -moz-image-region: rect(32px, 32px, 48px, 16px);
+}
+richlistitem[type="download"]:hover > stack > .downloadButton.downloadRetry:hover {
+ -moz-image-region: rect(32px, 48px, 48px, 32px);
+}
+richlistitem[type="download"]:hover > stack > .downloadButton.downloadRetry:active {
+ -moz-image-region: rect(32px, 64px, 48px, 48px);
+}
+
+/*** Status and progress indicator ***/
+
+#downloads-indicator-anchor {
+ /* Makes the outermost stack element positioned, so that its contents are
+ rendered over the main browser window in the Z order. This is required by
+ the animated event notification. */
+ position: relative;
+}
+
+toolbar[iconsize="small"] > #downloads-indicator > #downloads-indicator-anchor {
+ min-width: 16px;
+ min-height: 16px;
+}
+
+toolbar[iconsize="large"] > #downloads-indicator > #downloads-indicator-anchor {
+ min-width: 24px;
+ min-height: 24px;
+}
+
+/*** Main indicator icon ***/
+
+toolbar[iconsize="small"] > #downloads-indicator > #downloads-indicator-anchor > #downloads-indicator-icon {
+ background: -moz-image-rect(url("chrome://browser/skin/Toolbar-small.png"),
+ 0, 16, 16, 0) center no-repeat;
+}
+
+toolbar[iconsize="large"] > #downloads-indicator > #downloads-indicator-anchor > #downloads-indicator-icon {
+ background: -moz-image-rect(url("chrome://browser/skin/Toolbar.png"),
+ 0, 24, 24, 0) center no-repeat;
+}
+
+toolbar[iconsize="small"] > #downloads-indicator[attention] > #downloads-indicator-anchor > #downloads-indicator-icon {
+ background-image: url("chrome://browser/skin/downloads/download-glow-small.png");
+}
+
+toolbar[iconsize="large"] > #downloads-indicator[attention] > #downloads-indicator-anchor > #downloads-indicator-icon {
+ background-image: url("chrome://browser/skin/downloads/download-glow.png");
+}
+
+/* In the next few rules, we use :not([counter]) as a shortcut that is
+ equivalent to -moz-any([progress], [paused]). */
+
+#downloads-indicator:not([counter]) > #downloads-indicator-anchor > #downloads-indicator-progress-area > #downloads-indicator-counter {
+ background: -moz-image-rect(url("chrome://browser/skin/Toolbar-small.png"),
+ 0, 16, 16, 0) center no-repeat;
+ background-size: 12px;
+}
+
+#downloads-indicator:not([counter])[attention] > #downloads-indicator-anchor > #downloads-indicator-progress-area > #downloads-indicator-counter {
+ background-image: url("chrome://browser/skin/downloads/download-glow.png");
+}
+
+/*** Download notifications ***/
+
+#downloads-indicator-notification {
+ opacity: 0;
+ background-size: 16px;
+ background-position: center;
+ background-repeat: no-repeat;
+}
+
+@keyframes downloadsIndicatorNotificationStartRight {
+ from { opacity: 0; transform: translate(-128px, 128px) scale(8); }
+ 20% { opacity: .85; animation-timing-function: ease-out; }
+ to { opacity: 0; transform: translate(0) scale(1); }
+}
+
+@keyframes downloadsIndicatorNotificationStartLeft {
+ from { opacity: 0; transform: translate(128px, 128px) scale(8); }
+ 20% { opacity: .85; animation-timing-function: ease-out; }
+ to { opacity: 0; transform: translate(0) scale(1); }
+}
+
+#downloads-indicator[notification="start"] > #downloads-indicator-anchor > #downloads-indicator-notification {
+ background-image: url("chrome://browser/skin/downloads/download-notification-start.png");
+ animation-name: downloadsIndicatorNotificationStartRight;
+ animation-duration: 1s;
+}
+
+#downloads-indicator[notification="start"]:-moz-locale-dir(rtl) > #downloads-indicator-anchor > #downloads-indicator-notification {
+ animation-name: downloadsIndicatorNotificationStartLeft;
+}
+
+@keyframes downloadsIndicatorNotificationFinish {
+ from { opacity: 0; transform: scale(1); }
+ 20% { opacity: .65; animation-timing-function: ease-in; }
+ to { opacity: 0; transform: scale(8); }
+}
+
+#downloads-indicator[notification="finish"] > #downloads-indicator-anchor > #downloads-indicator-notification {
+ background-image: url("chrome://browser/skin/downloads/download-notification-finish.png");
+ animation-name: downloadsIndicatorNotificationFinish;
+ animation-duration: 1s;
+}
+
+/*** Progress bar and text ***/
+
+#downloads-indicator-counter {
+ height: 10px;
+ margin: 0;
+ color: hsl(0,0%,30%);
+ text-shadow: 0 1px 0 hsla(0,0%,100%,.5);
+ font-size: 10px;
+ line-height: 10px;
+ text-align: center;
+}
+
+toolbar[brighttext] #downloads-indicator-counter {
+ color: white;
+ text-shadow: 0 0 1px rgba(0,0,0,.7),
+ 0 1px 1.5px rgba(0,0,0,.5);
+}
+
+#downloads-indicator-progress {
+ width: 16px;
+ height: 6px;
+ min-width: 0;
+ min-height: 0;
+ margin-top: 1px;
+ margin-bottom: 2px;
+ border-radius: 2px;
+ box-shadow: 0 1px 0 hsla(0,0%,100%,.4);
+}
+
+#downloads-indicator-progress > .progress-bar {
+ -moz-appearance: none;
+ min-width: 0;
+ min-height: 0;
+ /* The background-clip: border-box; and background-image: none; are there to expand the background-color behind the border */
+ background-clip: padding-box, border-box;
+ background-color: rgb(255, 135, 94);
+ background-image: linear-gradient(transparent 1px, rgba(255, 255, 255, 0.4) 1px, rgba(255, 255, 255, 0.4) 2px, transparent 2px), none;
+ border: 1px solid;
+ border-color: rgba(0,43,86,.6) rgba(0,43,86,.4) rgba(0,43,86,.4);
+ border-radius: 2px 0 0 2px;
+}
+
+#downloads-indicator-progress > .progress-remainder {
+ -moz-appearance: none;
+ min-width: 0;
+ min-height: 0;
+ background-image: linear-gradient(#505050, #575757);
+ border: 1px solid;
+ border-color: hsla(0,0%,0%,.6) hsla(0,0%,0%,.4) hsla(0,0%,0%,.4);
+ border-inline-start: none;
+ border-radius: 0 2px 2px 0;
+}
+
+#downloads-indicator[paused] > #downloads-indicator-anchor > #downloads-indicator-progress-area > #downloads-indicator-progress > .progress-bar {
+ background-color: rgb(220, 230, 81);
+}
+
+#downloads-indicator[paused] > #downloads-indicator-anchor > #downloads-indicator-progress-area > #downloads-indicator-progress > .progress-remainder {
+ background-image: linear-gradient(#4b5000, #515700);
+}
+
+toolbar[mode="full"] > #downloads-indicator > .toolbarbutton-text {
+ margin: 0;
+ text-align: center;
+}
diff --git a/browser/themes/linux/engineManager.css b/browser/themes/linux/engineManager.css
new file mode 100644
index 000000000..c6d42cce2
--- /dev/null
+++ b/browser/themes/linux/engineManager.css
@@ -0,0 +1,16 @@
+%if 0
+/* 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/. */
+%endif
+
+#engineList treechildren::-moz-tree-image(engineName) {
+ margin-inline-end: 4px;
+ margin-inline-start: 1px;
+ width: 16px;
+ height: 16px;
+}
+
+#engineList treechildren::-moz-tree-row {
+ height: 20px;
+}
diff --git a/browser/themes/linux/feeds/feedIcon.png b/browser/themes/linux/feeds/feedIcon.png
new file mode 100644
index 000000000..a788fffb0
--- /dev/null
+++ b/browser/themes/linux/feeds/feedIcon.png
Binary files differ
diff --git a/browser/themes/linux/feeds/feedIcon16.png b/browser/themes/linux/feeds/feedIcon16.png
new file mode 100644
index 000000000..f8536a4e1
--- /dev/null
+++ b/browser/themes/linux/feeds/feedIcon16.png
Binary files differ
diff --git a/browser/themes/linux/feeds/subscribe-ui.css b/browser/themes/linux/feeds/subscribe-ui.css
new file mode 100644
index 000000000..51eb7a117
--- /dev/null
+++ b/browser/themes/linux/feeds/subscribe-ui.css
@@ -0,0 +1,29 @@
+/* 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/. */
+
+.alwaysUse {
+ padding: 5px;
+}
+
+.handlersMenuPopup > menuitem {
+ padding-inline-start: 23px;
+}
+
+.handlersMenuPopup > menuitem.menuitem-iconic {
+ padding-inline-start: 2px;
+}
+
+.handlersMenuPopup > .menuitem-iconic > .menu-iconic-left {
+ display: -moz-box;
+ min-width: 16px;
+ padding-inline-end: 2px;
+}
+
+.chooseApplicationMenuItem {
+ list-style-image: url("moz-icon://dummy.exe?size=16");
+}
+
+#feedHeader[dir="rtl"] .handlersMenuList > menupopup {
+ direction: rtl;
+}
diff --git a/browser/themes/linux/feeds/subscribe.css b/browser/themes/linux/feeds/subscribe.css
new file mode 100644
index 000000000..ac5de5865
--- /dev/null
+++ b/browser/themes/linux/feeds/subscribe.css
@@ -0,0 +1,163 @@
+/* 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/. */
+
+html {
+ background: -moz-Dialog;
+ font: 3mm tahoma,arial,helvetica,sans-serif;
+}
+
+#feedBody {
+ border: 1px solid THreeDShadow;
+ padding: 3em;
+ padding-inline-start: 30px;
+ margin: 2em auto;
+ background: -moz-Field;
+}
+
+#feedHeaderContainer {
+ border: 1px solid ThreeDShadow;
+ border-radius: 10px;
+ margin: -4em auto 0 auto;
+ background-color: InfoBackground;
+}
+
+#feedHeader {
+ margin-top: 4.9em;
+ margin-bottom: 1em;
+ margin-inline-start: 1.4em;
+ margin-inline-end: 1em;
+ padding-inline-start: 2.9em;
+ font-size: 110%;
+ color: InfoText;
+}
+
+.feedBackground {
+ background: url("chrome://browser/skin/feeds/feedIcon.png") 0% 10% no-repeat InfoBackground;
+}
+
+.videoPodcastBackground {
+ background: url("chrome://browser/skin/feeds/videoFeedIcon.png") 0% 10% no-repeat InfoBackground;
+}
+
+.audioPodcastBackground {
+ background: url("chrome://browser/skin/feeds/audioFeedIcon.png") 0% 10% no-repeat InfoBackground;
+}
+
+#feedHeader[dir="rtl"] {
+ background-position: 100% 10%;
+}
+
+#feedIntroText {
+ display: none;
+}
+
+#feedHeader[firstrun="true"] #feedIntroText {
+ padding-top: 0.1em;
+ padding-inline-start: 0.6em;
+ display: block;
+}
+
+#feedHeader[firstrun="true"] > #feedSubscribeLine {
+ padding-inline-start: 1.8em;
+}
+
+#feedSubscribeLine {
+ padding-top: 0.2em;
+}
+
+img {
+ max-width: 100%;
+}
+
+/* Don't print subscription UI */
+@media print {
+ #feedHeaderContainer {
+ display: none;
+ }
+}
+
+body {
+ margin: 0;
+ padding: 0 3em;
+ color: -moz-fieldText;
+ font: message-box;
+}
+
+h1 {
+ font-size: 160%;
+ border-bottom: 2px solid ThreeDLightShadow;
+ margin: 0 0 .2em 0;
+}
+
+h2 {
+ color: ThreeDDarkShadow;
+ font-size: 110%;
+ font-weight: normal;
+ margin: 0 0 .6em 0;
+}
+
+#feedTitleLink {
+ float: right;
+ margin-inline-start: .6em;
+ margin-inline-end: 0;
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+a[href] img {
+ border: none;
+}
+
+#feedTitleContainer {
+ margin-inline-start: 0;
+ margin-inline-end: .6em;
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+#feedTitleImage {
+ margin-inline-start: .6em;
+ margin-inline-end: 0;
+ margin-top: 0;
+ margin-bottom: 0;
+ max-width: 300px;
+ max-height: 150px;
+}
+
+.feedEntryContent {
+ font-size: 110%;
+}
+
+.link {
+ color: #0000FF;
+ text-decoration: underline;
+ cursor: pointer;
+}
+
+.link:hover:active {
+ color: #FF0000;
+}
+
+.lastUpdated {
+ font-size: 85%;
+ font-weight: normal;
+}
+
+.type-icon {
+ vertical-align: bottom;
+ height: 16px;
+ width: 16px;
+}
+
+.enclosures {
+ border: 1px solid THreeDShadow;
+ padding: 1em;
+ margin: 1em auto;
+ background: -moz-Dialog;
+}
+
+.enclosure {
+ vertical-align: middle;
+ margin-left: 2px;
+}
diff --git a/browser/themes/linux/identity-icons-generic.png b/browser/themes/linux/identity-icons-generic.png
new file mode 100644
index 000000000..a39e493c1
--- /dev/null
+++ b/browser/themes/linux/identity-icons-generic.png
Binary files differ
diff --git a/browser/themes/linux/identity-icons-https-ev.png b/browser/themes/linux/identity-icons-https-ev.png
new file mode 100644
index 000000000..d49be13cb
--- /dev/null
+++ b/browser/themes/linux/identity-icons-https-ev.png
Binary files differ
diff --git a/browser/themes/linux/identity-icons-https-mixed-active.png b/browser/themes/linux/identity-icons-https-mixed-active.png
new file mode 100644
index 000000000..3c77bc84d
--- /dev/null
+++ b/browser/themes/linux/identity-icons-https-mixed-active.png
Binary files differ
diff --git a/browser/themes/linux/identity-icons-https.png b/browser/themes/linux/identity-icons-https.png
new file mode 100644
index 000000000..ffd669426
--- /dev/null
+++ b/browser/themes/linux/identity-icons-https.png
Binary files differ
diff --git a/browser/themes/linux/identity.png b/browser/themes/linux/identity.png
new file mode 100644
index 000000000..f3f790e9e
--- /dev/null
+++ b/browser/themes/linux/identity.png
Binary files differ
diff --git a/browser/themes/linux/imagedocument.png b/browser/themes/linux/imagedocument.png
new file mode 100644
index 000000000..ff4f21f9a
--- /dev/null
+++ b/browser/themes/linux/imagedocument.png
Binary files differ
diff --git a/browser/themes/linux/jar.mn b/browser/themes/linux/jar.mn
new file mode 100644
index 000000000..0370ea1c5
--- /dev/null
+++ b/browser/themes/linux/jar.mn
@@ -0,0 +1,124 @@
+# 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/.
+
+classic.jar:
+% skin browser classic/1.0 %skin/classic/browser/
+% override chrome://global/skin/icons/warning-16.png moz-icon://stock/gtk-dialog-warning?size=menu
+ skin/classic/browser/sanitizeDialog.css
+* skin/classic/browser/aboutPrivateBrowsing.css
+* skin/classic/browser/aboutSessionRestore.css
+ skin/classic/browser/aboutSessionRestore-window-icon.png
+ skin/classic/browser/aboutCertError.css
+ skin/classic/browser/aboutCertError_sectionCollapsed.png
+ skin/classic/browser/aboutCertError_sectionCollapsed-rtl.png
+ skin/classic/browser/aboutCertError_sectionExpanded.png
+* skin/classic/browser/autocomplete.css
+ skin/classic/browser/actionicon-tab.png
+* skin/classic/browser/browser.css
+ skin/classic/browser/click-to-play-warning-stripes.png
+* skin/classic/browser/engineManager.css
+ skin/classic/browser/Geolocation-16.png
+ skin/classic/browser/Geolocation-64.png
+ skin/classic/browser/Go-arrow.png
+ skin/classic/browser/identity.png
+ skin/classic/browser/imagedocument.png
+ skin/classic/browser/identity-icons-generic.png
+ skin/classic/browser/identity-icons-https.png
+ skin/classic/browser/identity-icons-https-ev.png
+ skin/classic/browser/identity-icons-https-mixed-active.png
+ skin/classic/browser/Info.png
+ skin/classic/browser/KUI-close.png
+ skin/classic/browser/mixed-content-blocked-16.png
+ skin/classic/browser/mixed-content-blocked-64.png
+ skin/classic/browser/monitor.png
+ skin/classic/browser/monitor_16-10.png
+* skin/classic/browser/pageInfo.css
+ skin/classic/browser/pageInfo.png
+ skin/classic/browser/page-livemarks.png
+ skin/classic/browser/pointerLock-16.png
+ skin/classic/browser/pointerLock-64.png
+ skin/classic/browser/Privacy-16.png
+ skin/classic/browser/Privacy-48.png
+ skin/classic/browser/privatebrowsing-mask.png
+ skin/classic/browser/searchbar.css
+ skin/classic/browser/Secure.png
+ skin/classic/browser/Security-broken.png
+ skin/classic/browser/setDesktopBackground.css
+ skin/classic/browser/slowStartup-16.png
+ skin/classic/browser/Toolbar.png
+ skin/classic/browser/Toolbar-small.png
+ skin/classic/browser/urlbar-arrow.png
+ skin/classic/browser/web-notifications-icon.svg
+ skin/classic/browser/web-notifications-tray.svg
+ skin/classic/browser/downloads/buttons.png (downloads/buttons.png)
+ skin/classic/browser/downloads/download-glow.png (downloads/download-glow.png)
+ skin/classic/browser/downloads/download-glow-small.png (downloads/download-glow-small.png)
+ skin/classic/browser/downloads/download-notification-finish.png (downloads/download-notification-finish.png)
+ skin/classic/browser/downloads/download-notification-start.png (downloads/download-notification-start.png)
+ skin/classic/browser/downloads/download-summary.png (downloads/download-summary.png)
+ skin/classic/browser/downloads/downloads.css (downloads/downloads.css)
+ skin/classic/browser/downloads/allDownloadsViewOverlay.css (downloads/allDownloadsViewOverlay.css)
+ skin/classic/browser/downloads/contentAreaDownloadsView.css (downloads/contentAreaDownloadsView.css)
+ skin/classic/browser/feeds/feedIcon.png (feeds/feedIcon.png)
+ skin/classic/browser/feeds/feedIcon16.png (feeds/feedIcon16.png)
+ skin/classic/browser/feeds/videoFeedIcon.png (feeds/feedIcon.png)
+ skin/classic/browser/feeds/videoFeedIcon16.png (feeds/feedIcon16.png)
+ skin/classic/browser/feeds/audioFeedIcon.png (feeds/feedIcon.png)
+ skin/classic/browser/feeds/audioFeedIcon16.png (feeds/feedIcon16.png)
+ skin/classic/browser/feeds/subscribe.css (feeds/subscribe.css)
+ skin/classic/browser/feeds/subscribe-ui.css (feeds/subscribe-ui.css)
+* skin/classic/browser/newtab/newTab.css (newtab/newTab.css)
+ skin/classic/browser/newtab/controls.png (../shared/newtab/controls.png)
+ skin/classic/browser/newtab/noise.png (../shared/newtab/noise.png)
+ skin/classic/browser/newtab/pinned.png (../shared/newtab/pinned.png)
+ skin/classic/browser/places/bookmarksMenu.png (places/bookmarksMenu.png)
+ skin/classic/browser/places/bookmarksToolbar.png (places/bookmarksToolbar.png)
+ skin/classic/browser/places/calendar.png (places/calendar.png)
+* skin/classic/browser/places/editBookmarkOverlay.css (places/editBookmarkOverlay.css)
+ skin/classic/browser/places/livemark-item.png (places/livemark-item.png)
+ skin/classic/browser/places/pageStarred.png (places/pageStarred.png)
+ skin/classic/browser/places/star-icons.png (places/star-icons.png)
+ skin/classic/browser/places/starred48.png (places/starred48.png)
+ skin/classic/browser/places/unstarred48.png (places/unstarred48.png)
+ skin/classic/browser/places/places.css (places/places.css)
+ skin/classic/browser/places/organizer.css (places/organizer.css)
+ skin/classic/browser/places/organizer.xml (places/organizer.xml)
+ skin/classic/browser/places/query.png (places/query.png)
+ skin/classic/browser/places/starPage.png (places/starPage.png)
+ skin/classic/browser/places/tag.png (places/tag.png)
+ skin/classic/browser/places/toolbarDropMarker.png (places/toolbarDropMarker.png)
+ skin/classic/browser/places/unsortedBookmarks.png (places/unsortedBookmarks.png)
+ skin/classic/browser/places/downloads.png (places/downloads.png)
+ skin/classic/browser/permissions/aboutPermissions.css (permissions/aboutPermissions.css)
+ skin/classic/browser/preferences/alwaysAsk.png (preferences/alwaysAsk.png)
+ skin/classic/browser/preferences/mail.png (preferences/mail.png)
+ skin/classic/browser/preferences/Options.png (preferences/Options.png)
+#ifdef MOZ_SERVICES_SYNC
+ skin/classic/browser/preferences/Options-sync.png (preferences/Options-sync.png)
+#endif
+* skin/classic/browser/preferences/preferences.css (preferences/preferences.css)
+ skin/classic/browser/preferences/applications.css (preferences/applications.css)
+ skin/classic/browser/statusbar/dynamic.css (../shared/statusbar/dynamic.css)
+* skin/classic/browser/statusbar/overlay.css (statusbar/overlay.css)
+* skin/classic/browser/statusbar/prefs.css (statusbar/prefs.css)
+ skin/classic/browser/statusbar/pulse.png (../shared/statusbar/pulse.png)
+ skin/classic/browser/statusbar/pms16.png (../shared/statusbar/pms16.png)
+ skin/classic/browser/statusbar/pms24.png (../shared/statusbar/pms24.png)
+ skin/classic/browser/statusbar/throbber-idle.png (../shared/statusbar/throbber-idle.png)
+ skin/classic/browser/statusbar/throbberStatic.png (../shared/statusbar/throbberStatic.png)
+ skin/classic/browser/tabbrowser/alltabs.png (tabbrowser/alltabs.png)
+ skin/classic/browser/tabbrowser/connecting.png (tabbrowser/connecting.png)
+ skin/classic/browser/tabbrowser/loading.png (tabbrowser/loading.png)
+ skin/classic/browser/tabbrowser/tab.png (tabbrowser/tab.png)
+ skin/classic/browser/tabbrowser/tab-overflow-border.png (tabbrowser/tab-overflow-border.png)
+ skin/classic/browser/tabbrowser/tabDragIndicator.png (tabbrowser/tabDragIndicator.png)
+ skin/classic/browser/tabbrowser/tab-audio.svg (../shared/tabbrowser/tab-audio.svg)
+ skin/classic/browser/tabbrowser/tab-audio-small.svg (../shared/tabbrowser/tab-audio-small.svg)
+#ifdef MOZ_SERVICES_SYNC
+ skin/classic/browser/sync-16-throbber.png
+ skin/classic/browser/sync-24-throbber.png
+#endif
+ skin/classic/browser/notification-pluginNormal.png (../shared/plugins/notification-pluginNormal.png)
+ skin/classic/browser/notification-pluginAlert.png (../shared/plugins/notification-pluginAlert.png)
+ skin/classic/browser/notification-pluginBlocked.png (../shared/plugins/notification-pluginBlocked.png)
diff --git a/browser/themes/linux/mixed-content-blocked-16.png b/browser/themes/linux/mixed-content-blocked-16.png
new file mode 100644
index 000000000..7cf33ec4c
--- /dev/null
+++ b/browser/themes/linux/mixed-content-blocked-16.png
Binary files differ
diff --git a/browser/themes/linux/mixed-content-blocked-64.png b/browser/themes/linux/mixed-content-blocked-64.png
new file mode 100644
index 000000000..cac441514
--- /dev/null
+++ b/browser/themes/linux/mixed-content-blocked-64.png
Binary files differ
diff --git a/browser/themes/linux/monitor.png b/browser/themes/linux/monitor.png
new file mode 100644
index 000000000..35e7b2056
--- /dev/null
+++ b/browser/themes/linux/monitor.png
Binary files differ
diff --git a/browser/themes/linux/monitor_16-10.png b/browser/themes/linux/monitor_16-10.png
new file mode 100644
index 000000000..41950340e
--- /dev/null
+++ b/browser/themes/linux/monitor_16-10.png
Binary files differ
diff --git a/browser/themes/linux/moz.build b/browser/themes/linux/moz.build
new file mode 100644
index 000000000..de5036627
--- /dev/null
+++ b/browser/themes/linux/moz.build
@@ -0,0 +1,8 @@
+# -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
+# 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/.
+
+DIRS += ['communicator']
+
+JAR_MANIFESTS += ['jar.mn'] \ No newline at end of file
diff --git a/browser/themes/linux/newtab/newTab.css b/browser/themes/linux/newtab/newTab.css
new file mode 100644
index 000000000..40ca4ae4c
--- /dev/null
+++ b/browser/themes/linux/newtab/newTab.css
@@ -0,0 +1,31 @@
+/* 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/. */
+
+%include ../../shared/newtab/newTab.css.inc
+
+.newtab-undo-button {
+ -moz-appearance: none;
+ color: rgb(78,114,204);
+ cursor: pointer;
+ padding: 0;
+ margin: 0 4px;
+ border: 0;
+ background: transparent;
+ text-decoration: none;
+ min-width: 0;
+}
+
+#newtab-undo-close-button {
+ background-image: -moz-image-rect(url("chrome://global/skin/icons/close.svg"), 0, 16, 16, 0);
+ background-position: center center;
+ background-repeat: no-repeat;
+}
+
+#newtab-undo-close-button:hover {
+ background-image: -moz-image-rect(url("chrome://global/skin/icons/close.svg"), 0, 32, 16, 16);
+}
+
+#newtab-undo-close-button:hover:active {
+ background-image: -moz-image-rect(url("chrome://global/skin/icons/close.svg"), 0, 48, 16, 32);
+}
diff --git a/browser/themes/linux/page-livemarks.png b/browser/themes/linux/page-livemarks.png
new file mode 100644
index 000000000..f8536a4e1
--- /dev/null
+++ b/browser/themes/linux/page-livemarks.png
Binary files differ
diff --git a/browser/themes/linux/pageInfo.css b/browser/themes/linux/pageInfo.css
new file mode 100644
index 000000000..805c2fa45
--- /dev/null
+++ b/browser/themes/linux/pageInfo.css
@@ -0,0 +1,276 @@
+%if 0
+/* 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/. */
+%endif
+
+@import url("chrome://global/skin/");
+
+/* View buttons */
+#viewGroup > radio {
+ list-style-image: url("chrome://browser/skin/pageInfo.png");
+ -moz-box-orient: vertical;
+ -moz-box-align: center;
+ -moz-appearance: none;
+ min-width: 4.5em;
+ margin: 0;
+ padding: 3px;
+ color: -moz-FieldText;
+}
+
+#viewGroup > radio[selected="true"] {
+ background-color: Highlight;
+ color: HighlightText;
+}
+
+#topBar {
+ -moz-appearance: listbox;
+ margin: 8px 8px 0;
+}
+
+#generalTab {
+ -moz-image-region: rect(0px, 32px, 32px, 0px)
+}
+
+#mediaTab {
+ -moz-image-region: rect(0px, 64px, 32px, 32px)
+}
+
+#feedTab {
+ -moz-image-region: rect(0px, 96px, 32px, 64px)
+}
+
+#permTab {
+ -moz-image-region: rect(0px, 128px, 32px, 96px)
+}
+
+#securityTab {
+ -moz-image-region: rect(0px, 160px, 32px, 128px)
+}
+
+#mainDeck {
+ padding-left: 2px;
+ padding-right: 2px;
+}
+
+deck {
+ padding: 10px 10px 10px 10px;
+}
+
+/* Misc */
+tree {
+ margin: .5em;
+}
+
+.gridSeparator {
+ width: .5em;
+}
+
+textbox {
+ background: transparent !important;
+ border: none;
+ padding: 0px;
+ margin-top: 1px;
+ -moz-appearance: none;
+}
+
+textbox.header {
+ margin-inline-start: 0;
+}
+
+.iframe {
+ margin: .5em;
+ background: white;
+ overflow: auto;
+}
+
+.fixedsize {
+ height: 8.5em;
+}
+
+textbox[disabled] {
+ font-style: italic;
+}
+
+/* General Tab */
+#generalPanel > #titletext {
+ margin-inline-start: 5px;
+}
+
+groupbox.collapsable caption .caption-icon {
+ width: 9px;
+ height: 9px;
+ background-repeat: no-repeat;
+ background-position: center;
+ margin-inline-start: 1px;
+ margin-inline-end: 3px;
+ background-image: url("chrome://global/skin/tree/twisty-open.png");
+}
+
+groupbox.collapsable[closed="true"] {
+ border: none;
+}
+
+groupbox.collapsable[closed="true"] caption .caption-icon {
+ background-image: url("chrome://global/skin/tree/twisty-clsd.png");
+}
+
+groupbox tree {
+ margin: 0;
+ border: none;
+}
+
+groupbox.treebox .groupbox-body {
+ margin-inline-start: 5px;
+ margin-inline-end: 1px;
+ padding-top: 0;
+}
+
+#securityBox description {
+ margin-inline-start: 10px;
+}
+
+#general-security-identity {
+ white-space: pre-wrap;
+ line-height: 2em;
+}
+
+/* Media Tab */
+#imagetree {
+ min-height: 10em;
+ margin-top: 2px;
+ margin-bottom: 0;
+}
+
+#mediaSplitter {
+ -moz-appearance: none;
+ height: .8em;
+}
+
+#mediaGrid {
+ min-height: 9em;
+}
+
+#mediaLabelColumn {
+ min-width: 10em;
+}
+
+#thepreviewimage {
+ margin: 1em;
+}
+
+treechildren::-moz-tree-cell-text(broken) {
+ font-style: italic;
+ color: graytext;
+}
+
+#mediaPreviewBox .inset {
+ -moz-appearance: listbox;
+ margin-bottom: 0;
+}
+
+/* Feeds Tab */
+#feedPanel {
+ margin-left: 2px;
+ margin-right: 2px;
+}
+
+#feedtree {
+ margin-bottom: 0px;
+}
+
+#feedListbox richlistitem {
+ padding-top: 6px;
+ padding-bottom: 6px;
+ padding-inline-start: 7px;
+ padding-inline-end: 7px;
+ min-height: 25px;
+ border-bottom: 1px dotted #C0C0C0;
+ color: -moz-FieldText;
+}
+
+#feedListbox richlistitem[selected="true"] {
+ background-color: -moz-Dialog;
+ color: -moz-DialogText;
+}
+
+#feedListbox {
+ margin-bottom: 0;
+ border: 2px solid;
+ -moz-border-top-colors: ThreeDShadow ThreeDDarkShadow;
+ -moz-border-right-colors: ThreeDHighlight ThreeDLightShadow;
+ -moz-border-bottom-colors: ThreeDHighlight ThreeDLightShadow;
+ -moz-border-left-colors: ThreeDShadow ThreeDDarkShadow;
+}
+
+.feedTitle {
+ font-weight: bold;
+}
+
+/* Permissions Tab */
+#permPanel {
+ margin-left: 6px;
+ margin-right: 6px;
+}
+
+#permList {
+ -moz-appearance: listbox;
+ margin-top: .5em;
+ overflow: auto;
+ border: 2px solid;
+ -moz-border-top-colors: ThreeDShadow ThreeDDarkShadow;
+ -moz-border-right-colors: ThreeDHighlight ThreeDLightShadow;
+ -moz-border-bottom-colors: ThreeDHighlight ThreeDLightShadow;
+ -moz-border-left-colors: ThreeDShadow ThreeDDarkShadow;
+ background-color: -moz-field;
+ color: -moz-FieldText;
+}
+
+.permission {
+ padding-top: 6px;
+ padding-bottom: 6px;
+ padding-inline-start: 7px;
+ padding-inline-end: 7px;
+ min-height: 25px;
+ border-bottom: 1px dotted #C0C0C0;
+}
+
+.permissionLabel {
+ font-weight: bold;
+}
+
+.permission:hover {
+ background-color: -moz-dialog;
+ color: -moz-DialogText;
+}
+
+/* Security Tab */
+#securityPanel .caption-icon {
+ display: none;
+}
+
+#securityPanel .header {
+ font-size: 120%;
+}
+
+#securityPanel .fieldLabel {
+ margin: 2px 10px 3px 10px;
+}
+
+#securityPanel .fieldValue {
+ font-weight: bold;
+ margin: 2px 10px 0px 10px;
+}
+
+/* Icons for context menus */
+menuitem:not([type]) {
+ -moz-binding: url("chrome://global/content/bindings/menu.xml#menuitem-iconic");
+}
+
+#menu_selectall {
+ list-style-image: url("moz-icon://stock/gtk-select-all?size=menu");
+}
+
+#menu_copy {
+ list-style-image: url("moz-icon://stock/gtk-copy?size=menu");
+}
diff --git a/browser/themes/linux/pageInfo.png b/browser/themes/linux/pageInfo.png
new file mode 100644
index 000000000..2cbb15df9
--- /dev/null
+++ b/browser/themes/linux/pageInfo.png
Binary files differ
diff --git a/browser/themes/linux/permissions/aboutPermissions.css b/browser/themes/linux/permissions/aboutPermissions.css
new file mode 100644
index 000000000..17634e8fa
--- /dev/null
+++ b/browser/themes/linux/permissions/aboutPermissions.css
@@ -0,0 +1,149 @@
+/* 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/. */
+
+@import url("chrome://global/skin/inContentUI.css");
+
+/* header */
+
+#permissions-pagetitle {
+ font-size: 200%;
+ font-weight: bold;
+ padding-bottom: 0.5em;
+}
+
+/* content box */
+#permissions-content {
+ height: 100%;
+}
+
+/* sites box */
+
+#sites-box {
+ padding: 10px;
+ width: 25em;
+}
+
+#sites-filter {
+ margin: 0;
+}
+
+#sites-list {
+ margin: 5px 0 0 0;
+}
+
+.site {
+ padding: 4px;
+ border-bottom: 1px solid ThreeDLightShadow;
+}
+
+.site-favicon {
+ height: 16px;
+ width: 16px;
+ margin-inline-end: 4px;
+ list-style-image: url("chrome://mozapps/skin/places/defaultFavicon.png");
+}
+
+#all-sites-item > .site-container > .site-favicon {
+ list-style-image: none;
+}
+
+/* permissions box */
+
+#permissions-box {
+ padding-top: 10px;
+ overflow-y: auto;
+}
+
+#site-description {
+ font-size: 125%;
+ margin-inline-start: 6px; /* to match button margin */
+}
+
+#site-label {
+ font-weight: bold;
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+#defaults-description {
+ font-size: 125%;
+ font-weight: bold;
+ margin-inline-start: 6px;
+}
+
+.pref-item {
+ margin-bottom: 10px;
+}
+
+.pref-icon {
+ width: 36px;
+ height: 36px;
+ margin-inline-end: 10px;
+}
+
+.pref-icon[type="password"] {
+ list-style-image: url(chrome://mozapps/skin/passwordmgr/key-64.png);
+}
+.pref-icon[type="image"] {
+ list-style-image: url(chrome://global/skin/icons/question-64.png);
+}
+.pref-icon[type="popup"] {
+ list-style-image: url(chrome://global/skin/icons/question-64.png);
+}
+.pref-icon[type="cookie"] {
+ list-style-image: url(chrome://global/skin/icons/question-64.png);
+}
+.pref-icon[type="desktop-notification"] {
+ list-style-image: url(chrome://browser/skin/web-notifications-icon.svg);
+}
+.pref-icon[type="install"] {
+ list-style-image: url(chrome://mozapps/skin/extensions/extensionGeneric.png);
+}
+.pref-icon[type="geo"] {
+ list-style-image: url(chrome://browser/skin/Geolocation-64.png);
+}
+.pref-icon[type="plugins"] {
+ list-style-image: url(chrome://mozapps/skin/plugins/pluginGeneric.png);
+}
+
+.pref-title {
+ font-size: 125%;
+ margin-bottom: 0;
+ font-weight: bold;
+ margin-right: 0;
+ padding-right: 0;
+}
+
+.pref-default {
+ margin-left: 0.5em;
+ padding-left: 0;
+}
+
+.pref-set-default {
+ visibility: collapse;
+}
+
+.pref-menulist {
+ margin-left: 6px;
+ margin-right: 6px;
+}
+
+.plugins-label {
+ margin-right: 0;
+ padding-right: 0;
+}
+
+.plugins-vulnerable {
+ margin-left: 0;
+ padding-left: 0;
+ margin-right: 0;
+ padding-right: 0;
+}
+
+.plugins-default {
+ margin-left: 0.5em;
+ padding-left: 0;
+ margin-right: 1em;
+ padding-right: 0;
+}
diff --git a/browser/themes/linux/places/bookmarksMenu.png b/browser/themes/linux/places/bookmarksMenu.png
new file mode 100644
index 000000000..80dd2168d
--- /dev/null
+++ b/browser/themes/linux/places/bookmarksMenu.png
Binary files differ
diff --git a/browser/themes/linux/places/bookmarksToolbar.png b/browser/themes/linux/places/bookmarksToolbar.png
new file mode 100644
index 000000000..09502fe83
--- /dev/null
+++ b/browser/themes/linux/places/bookmarksToolbar.png
Binary files differ
diff --git a/browser/themes/linux/places/calendar.png b/browser/themes/linux/places/calendar.png
new file mode 100644
index 000000000..f7128685c
--- /dev/null
+++ b/browser/themes/linux/places/calendar.png
Binary files differ
diff --git a/browser/themes/linux/places/downloads.png b/browser/themes/linux/places/downloads.png
new file mode 100644
index 000000000..d641714aa
--- /dev/null
+++ b/browser/themes/linux/places/downloads.png
Binary files differ
diff --git a/browser/themes/linux/places/editBookmarkOverlay.css b/browser/themes/linux/places/editBookmarkOverlay.css
new file mode 100644
index 000000000..dba6ba655
--- /dev/null
+++ b/browser/themes/linux/places/editBookmarkOverlay.css
@@ -0,0 +1,71 @@
+%if 0
+/* 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/. */
+%endif
+/**** folder menulist ****/
+.folder-icon > .menulist-label-box > .menulist-icon {
+ width: 16px;
+ height: 16px;
+}
+
+.folder-icon > .menu-iconic-left {
+ display: -moz-box;
+}
+
+.folder-icon {
+ list-style-image: url("moz-icon://stock/gtk-directory?size=menu") !important;
+}
+
+
+/**** expanders ****/
+
+.expander-up,
+.expander-down {
+ min-width: 0;
+ padding: 2px 0;
+ padding-inline-start: 2px;
+}
+
+.expander-up > .button-box {
+ -moz-appearance: button-arrow-up;
+}
+
+.expander-down > .button-box {
+ -moz-appearance: button-arrow-down;
+}
+
+#editBookmarkPanelContent {
+ min-width: 23em;
+}
+
+#editBMPanel_folderTree {
+ margin-top: 2px;
+ margin-bottom: 2px;
+}
+
+/* Hide the value column of the tag autocomplete popup
+ * leaving only the comment column visible. This is
+ * so that only the tag being edited is shown in the
+ * popup.
+ */
+#editBMPanel_tagsField #treecolAutoCompleteValue {
+ visibility: collapse;
+}
+
+
+/* Bookmark panel dropdown menu items */
+#editBMPanel_folderMenuList[selectedIndex="0"],
+#editBMPanel_toolbarFolderItem {
+ list-style-image: url("chrome://browser/skin/places/bookmarksToolbar.png") !important;
+}
+
+#editBMPanel_folderMenuList[selectedIndex="1"],
+#editBMPanel_bmRootItem {
+ list-style-image: url("chrome://browser/skin/places/bookmarksMenu.png") !important;
+}
+
+#editBMPanel_folderMenuList[selectedIndex="2"],
+#editBMPanel_unfiledRootItem {
+ list-style-image: url("chrome://browser/skin/places/unsortedBookmarks.png") !important;
+}
diff --git a/browser/themes/linux/places/livemark-item.png b/browser/themes/linux/places/livemark-item.png
new file mode 100644
index 000000000..9184b9518
--- /dev/null
+++ b/browser/themes/linux/places/livemark-item.png
Binary files differ
diff --git a/browser/themes/linux/places/organizer.css b/browser/themes/linux/places/organizer.css
new file mode 100644
index 000000000..16ead7212
--- /dev/null
+++ b/browser/themes/linux/places/organizer.css
@@ -0,0 +1,107 @@
+/* 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/. */
+
+
+/* Toolbar */
+#placesToolbar {
+ border: none;
+}
+
+/* back button */
+
+#back-button {
+ list-style-image: url("moz-icon://stock/gtk-go-back-ltr?size=toolbar");
+}
+#back-button[disabled="true"] {
+ list-style-image: url("moz-icon://stock/gtk-go-back-ltr?size=toolbar&state=disabled");
+}
+
+#back-button:-moz-locale-dir(rtl) {
+ list-style-image: url("moz-icon://stock/gtk-go-back-rtl?size=toolbar");
+}
+#back-button[disabled="true"]:-moz-locale-dir(rtl) {
+ list-style-image: url("moz-icon://stock/gtk-go-back-rtl?size=toolbar&state=disabled");
+}
+
+/* forward button */
+
+#forward-button {
+ list-style-image: url("moz-icon://stock/gtk-go-forward-ltr?size=toolbar");
+}
+#forward-button[disabled="true"] {
+ list-style-image: url("moz-icon://stock/gtk-go-forward-ltr?size=toolbar&state=disabled");
+}
+
+#forward-button:-moz-locale-dir(rtl) {
+ list-style-image: url("moz-icon://stock/gtk-go-forward-rtl?size=toolbar");
+}
+#forward-button[disabled="true"]:-moz-locale-dir(rtl) {
+ list-style-image: url("moz-icon://stock/gtk-go-forward-rtl?size=toolbar&state=disabled");
+}
+
+/* Menu */
+#placesMenu {
+ -moz-appearance: none;
+ border: none;
+}
+
+#placesMenu > menu {
+ padding-inline-start: 4px;
+ -moz-binding: url("chrome://browser/skin/places/organizer.xml#toolbarbutton-dropdown");
+ -moz-appearance: toolbarbutton;
+ color: -moz-DialogText;
+}
+
+#placesMenu > menu:hover:not(:active):not([open="true"]) {
+ color: -moz-buttonhovertext;
+}
+
+#placesMenu > menu > .menubar-right {
+ -moz-appearance: toolbarbutton-dropdown;
+ width: 12px;
+ height: 12px;
+}
+
+/* Root View */
+#placesView {
+ background-color: Window;
+}
+
+/* Info box */
+#detailsDeck {
+ padding: 5px;
+}
+
+#infoBoxExpanderLabel {
+ padding-inline-start: 2px;
+}
+
+#searchModifiers {
+ padding-right: 3px;
+}
+
+#saveSearch {
+ list-style-image: url("moz-icon://stock/gtk-save?size=menu");
+}
+
+/**** menuitem stock icons ****/
+#orgClose {
+ list-style-image: url("moz-icon://stock/gtk-close?size=menu");
+}
+
+#fileImport {
+ list-style-image: url("moz-icon://stock/gtk-revert-to-saved?size=menu");
+}
+
+#fileExport {
+ list-style-image: url("moz-icon://stock/gtk-save-as?size=menu");
+}
+
+/**
+ * Downloads pane
+ */
+
+#clearDownloadsButton > .toolbarbutton-icon {
+ display: none;
+}
diff --git a/browser/themes/linux/places/organizer.xml b/browser/themes/linux/places/organizer.xml
new file mode 100644
index 000000000..8331ebb11
--- /dev/null
+++ b/browser/themes/linux/places/organizer.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0"?>
+
+<!-- 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/. -->
+
+<bindings id="organizerBindings"
+ xmlns="http://www.mozilla.org/xbl"
+ xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
+ xmlns:xbl="http://www.mozilla.org/xbl">
+
+ <binding id="toolbarbutton-dropdown"
+ extends="chrome://global/content/bindings/menu.xml#menu-base">
+ <content>
+ <xul:image class="menubar-left" xbl:inherits="src=image"/>
+ <xul:label class="menubar-text" xbl:inherits="value=label,accesskey,crop" crop="right"/>
+ <xul:hbox class="menubar-right"/>
+ <children includes="menupopup"/>
+ </content>
+ </binding>
+</bindings>
diff --git a/browser/themes/linux/places/pageStarred.png b/browser/themes/linux/places/pageStarred.png
new file mode 100644
index 000000000..61a9f90e0
--- /dev/null
+++ b/browser/themes/linux/places/pageStarred.png
Binary files differ
diff --git a/browser/themes/linux/places/places.css b/browser/themes/linux/places/places.css
new file mode 100644
index 000000000..d2b806bc4
--- /dev/null
+++ b/browser/themes/linux/places/places.css
@@ -0,0 +1,221 @@
+/* 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/. */
+
+/* Sidebars */
+.sidebar-placesTree {
+ margin: 0;
+}
+
+.sidebar-placesTreechildren::-moz-tree-cell(leaf) ,
+.sidebar-placesTreechildren::-moz-tree-image(leaf) {
+ cursor: pointer;
+}
+
+.sidebar-placesTreechildren::-moz-tree-cell-text(leaf, hover) {
+ cursor: pointer;
+ text-decoration: underline;
+}
+
+.sidebar-placesTreechildren::-moz-tree-cell(separator) {
+ cursor: default;
+}
+
+/* Trees */
+treechildren::-moz-tree-image(title) {
+ padding-right: 2px;
+ margin: 0px 2px;
+ width: 16px;
+ height: 16px;
+ list-style-image: url("chrome://mozapps/skin/places/defaultFavicon.png");
+}
+
+treechildren::-moz-tree-image(title, livemarkItem) {
+ list-style-image: url("chrome://browser/skin/places/livemark-item.png");
+ -moz-image-region: rect(0px, 16px, 16px, 0px);
+}
+
+treechildren::-moz-tree-image(title, livemarkItem, visited) {
+ -moz-image-region: rect(0px, 32px, 16px, 16px);
+}
+
+treechildren::-moz-tree-image(title, separator) {
+ list-style-image: none;
+ width: 0;
+ height: 0;
+}
+
+treechildren::-moz-tree-image(title, container) {
+ list-style-image: url("moz-icon://stock/gtk-directory?size=menu");
+}
+
+treechildren::-moz-tree-image(title, container, livemark) {
+ list-style-image: url("chrome://browser/skin/feeds/feedIcon16.png");
+ -moz-image-region: auto;
+}
+
+treechildren::-moz-tree-image(container, OrganizerQuery_AllBookmarks) {
+ list-style-image: url("chrome://browser/skin/Toolbar-small.png");
+ -moz-image-region: rect(0px 48px 16px 32px);
+}
+
+treechildren::-moz-tree-image(container, OrganizerQuery_BookmarksToolbar) {
+ list-style-image: url("chrome://browser/skin/places/bookmarksToolbar.png");
+ -moz-image-region: auto;
+}
+
+treechildren::-moz-tree-image(container, OrganizerQuery_BookmarksMenu) {
+ list-style-image: url("chrome://browser/skin/places/bookmarksMenu.png");
+ -moz-image-region: auto;
+}
+
+treechildren::-moz-tree-image(container, OrganizerQuery_UnfiledBookmarks) {
+ list-style-image: url("chrome://browser/skin/places/unsortedBookmarks.png");
+ -moz-image-region: auto;
+}
+
+/* query-nodes should be styled even if they're not expandable */
+treechildren::-moz-tree-image(title, query) {
+ list-style-image: url("chrome://browser/skin/places/query.png");
+}
+
+treechildren::-moz-tree-image(query, OrganizerQuery_Downloads) {
+ list-style-image: url("chrome://browser/skin/places/downloads.png");
+ -moz-image-region: auto;
+}
+
+treechildren::-moz-tree-image(title, query, tagContainer),
+treechildren::-moz-tree-image(query, OrganizerQuery_Tags) {
+ list-style-image: url("chrome://browser/skin/places/tag.png");
+}
+
+/* calendar icon for folders grouping items by date */
+treechildren::-moz-tree-image(title, query, dayContainer) {
+ list-style-image: url("chrome://browser/skin/places/calendar.png");
+}
+
+treechildren::-moz-tree-image(title, query, hostContainer) {
+ list-style-image: url("moz-icon://stock/gtk-directory?size=menu");
+}
+
+treechildren::-moz-tree-image(title, query, hostContainer, open) {
+ list-style-image: url("moz-icon://stock/gtk-directory?size=menu");
+}
+
+treechildren::-moz-tree-image(title, query, OrganizerQuery_History) {
+ list-style-image: url("chrome://browser/skin/Toolbar-small.png");
+ -moz-image-region: rect(0px 32px 16px 16px);
+}
+
+/* We want some queries to look like ordinary folders. This must come
+ after the (title, query) selector, or it would get overridden. */
+treechildren::-moz-tree-image(title, query, folder) {
+ list-style-image: url("moz-icon://stock/gtk-directory?size=menu");
+}
+
+treechildren::-moz-tree-image(cutting) {
+ opacity: 0.5;
+}
+
+treechildren::-moz-tree-cell-text(cutting) {
+ opacity: 0.7;
+}
+
+/**** menuitem stock icons ****/
+menuitem:not([type]) {
+ -moz-binding: url("chrome://global/content/bindings/menu.xml#menuitem-iconic");
+}
+
+menuitem[command="cmd_cut"],
+menuitem[cmd="cmd_cut"] {
+ list-style-image: url("moz-icon://stock/gtk-cut?size=menu");
+}
+
+menuitem[command="cmd_cut"][disabled],
+menuitem[cmd="cmd_cut"][disabled] {
+ list-style-image: url("moz-icon://stock/gtk-cut?size=menu&state=disabled");
+}
+
+menuitem[command="cmd_copy"],
+menuitem[cmd="cmd_copy"] {
+ list-style-image: url("moz-icon://stock/gtk-copy?size=menu");
+}
+
+menuitem[command="cmd_copy"][disabled],
+menuitem[cmd="cmd_copy"][disabled] {
+ list-style-image: url("moz-icon://stock/gtk-copy?size=menu&state=disabled");
+}
+
+menuitem[command="cmd_paste"],
+menuitem[cmd="cmd_paste"] {
+ list-style-image: url("moz-icon://stock/gtk-paste?size=menu");
+}
+
+menuitem[command="cmd_paste"][disabled],
+menuitem[cmd="cmd_paste"][disabled] {
+ list-style-image: url("moz-icon://stock/gtk-paste?size=menu&state=disabled");
+}
+
+menuitem[command="cmd_delete"],
+menuitem[cmd="cmd_delete"] {
+ list-style-image: url("moz-icon://stock/gtk-delete?size=menu");
+}
+
+menuitem[command="cmd_delete"][disabled],
+menuitem[cmd="cmd_delete"][disabled] {
+ list-style-image: url("moz-icon://stock/gtk-delete?size=menu&state=disabled");
+}
+
+menuitem[command="cmd_undo"],
+menuitem[cmd="cmd_undo"] {
+ list-style-image: url("moz-icon://stock/gtk-undo?size=menu");
+}
+
+menuitem[command="cmd_undo"][disabled],
+menuitem[cmd="cmd_undo"][disabled] {
+ list-style-image: url("moz-icon://stock/gtk-undo?size=menu&state=disabled");
+}
+
+menuitem[command="cmd_redo"] {
+ list-style-image: url("moz-icon://stock/gtk-redo?size=menu");
+}
+
+menuitem[command="cmd_redo"][disabled] {
+ list-style-image: url("moz-icon://stock/gtk-redo?size=menu&state=disabled");
+}
+
+menuitem[command="cmd_selectAll"],
+menuitem[cmd="cmd_selectAll"] {
+ list-style-image: url("moz-icon://stock/gtk-select-all?size=menu");
+}
+
+menuitem[command="cmd_selectAll"][disabled],
+menuitem[cmd="cmd_selectAll"][disabled] {
+ list-style-image: url("moz-icon://stock/gtk-select-all?size=menu&state=disabled");
+}
+
+#placesContext_open\:newwindow,
+menuitem[command="placesCmd_open:window"] {
+ list-style-image: url("chrome://browser/skin/Toolbar-small.png");
+ -moz-image-region: rect(0px 80px 16px 64px);
+}
+
+#placesContext_open\:newprivatewindow,
+menuitem[command="placesCmd_open:privatewindow"] {
+ list-style-image: url("chrome://browser/skin/Privacy-16.png");
+}
+
+#placesContext_open\:newtab,
+menuitem[command="placesCmd_open:tab"] {
+ list-style-image: url("chrome://browser/skin/Toolbar-small.png");
+ -moz-image-region: rect(0px 64px 16px 48px);
+}
+
+#placesContext_show\:info,
+menuitem[command="placesCmd_show:info"] {
+ list-style-image: url("moz-icon://stock/gtk-properties?size=menu");
+}
+
+#placesContext_reload {
+ list-style-image: url("moz-icon://stock/gtk-refresh?size=menu");
+}
diff --git a/browser/themes/linux/places/query.png b/browser/themes/linux/places/query.png
new file mode 100644
index 000000000..2420dee0e
--- /dev/null
+++ b/browser/themes/linux/places/query.png
Binary files differ
diff --git a/browser/themes/linux/places/star-icons.png b/browser/themes/linux/places/star-icons.png
new file mode 100644
index 000000000..2f50c6ab9
--- /dev/null
+++ b/browser/themes/linux/places/star-icons.png
Binary files differ
diff --git a/browser/themes/linux/places/starPage.png b/browser/themes/linux/places/starPage.png
new file mode 100644
index 000000000..3193a3535
--- /dev/null
+++ b/browser/themes/linux/places/starPage.png
Binary files differ
diff --git a/browser/themes/linux/places/starred48.png b/browser/themes/linux/places/starred48.png
new file mode 100644
index 000000000..deefaec97
--- /dev/null
+++ b/browser/themes/linux/places/starred48.png
Binary files differ
diff --git a/browser/themes/linux/places/tag.png b/browser/themes/linux/places/tag.png
new file mode 100644
index 000000000..27176cc6d
--- /dev/null
+++ b/browser/themes/linux/places/tag.png
Binary files differ
diff --git a/browser/themes/linux/places/toolbarDropMarker.png b/browser/themes/linux/places/toolbarDropMarker.png
new file mode 100644
index 000000000..ed3200f6c
--- /dev/null
+++ b/browser/themes/linux/places/toolbarDropMarker.png
Binary files differ
diff --git a/browser/themes/linux/places/unsortedBookmarks.png b/browser/themes/linux/places/unsortedBookmarks.png
new file mode 100644
index 000000000..4dcf76138
--- /dev/null
+++ b/browser/themes/linux/places/unsortedBookmarks.png
Binary files differ
diff --git a/browser/themes/linux/places/unstarred48.png b/browser/themes/linux/places/unstarred48.png
new file mode 100644
index 000000000..15448636e
--- /dev/null
+++ b/browser/themes/linux/places/unstarred48.png
Binary files differ
diff --git a/browser/themes/linux/pointerLock-16.png b/browser/themes/linux/pointerLock-16.png
new file mode 100644
index 000000000..862cd11c6
--- /dev/null
+++ b/browser/themes/linux/pointerLock-16.png
Binary files differ
diff --git a/browser/themes/linux/pointerLock-64.png b/browser/themes/linux/pointerLock-64.png
new file mode 100644
index 000000000..a35ce040c
--- /dev/null
+++ b/browser/themes/linux/pointerLock-64.png
Binary files differ
diff --git a/browser/themes/linux/preferences/Options-sync.png b/browser/themes/linux/preferences/Options-sync.png
new file mode 100644
index 000000000..89901fb69
--- /dev/null
+++ b/browser/themes/linux/preferences/Options-sync.png
Binary files differ
diff --git a/browser/themes/linux/preferences/Options.png b/browser/themes/linux/preferences/Options.png
new file mode 100644
index 000000000..82bebd2a4
--- /dev/null
+++ b/browser/themes/linux/preferences/Options.png
Binary files differ
diff --git a/browser/themes/linux/preferences/alwaysAsk.png b/browser/themes/linux/preferences/alwaysAsk.png
new file mode 100644
index 000000000..45256d4e7
--- /dev/null
+++ b/browser/themes/linux/preferences/alwaysAsk.png
Binary files differ
diff --git a/browser/themes/linux/preferences/applications.css b/browser/themes/linux/preferences/applications.css
new file mode 100644
index 000000000..8b63dfdab
--- /dev/null
+++ b/browser/themes/linux/preferences/applications.css
@@ -0,0 +1,66 @@
+/* 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/. */
+
+/**
+ * Line up the actions menu with action labels above and below it.
+ * Equalize the distance from the left side of the action box to the left side
+ * of the icon for both the menu and the non-menu versions of the action box.
+ * Also make sure the labels are the same distance away from the icons.
+ */
+.actionsMenu {
+ margin-top: -1px;
+ margin-bottom: -1px;
+ margin-inline-start: -1px;
+ margin-inline-end: 0;
+}
+
+.typeIcon,
+.actionIcon {
+ margin-inline-start: 3px;
+ margin-inline-end: 3px;
+}
+
+richlistitem label {
+ margin-inline-start: 1px;
+ margin-top: 2px;
+}
+
+richlistitem {
+ min-height: 25px;
+}
+
+richlistitem[appHandlerIcon="ask"],
+menuitem[appHandlerIcon="ask"] {
+ list-style-image: url("chrome://browser/skin/preferences/alwaysAsk.png");
+}
+
+richlistitem[appHandlerIcon="save"],
+menuitem[appHandlerIcon="save"] {
+ list-style-image: url("moz-icon://stock/gtk-save?size=menu");
+}
+
+richlistitem[appHandlerIcon="feed"],
+menuitem[appHandlerIcon="feed"] {
+ list-style-image: url("chrome://browser/skin/page-livemarks.png");
+}
+
+richlistitem[appHandlerIcon="plugin"],
+menuitem[appHandlerIcon="plugin"] {
+ list-style-image: url("chrome://mozapps/skin/plugins/pluginGeneric-16.png");
+}
+
+.actionsMenu .menulist-icon {
+ margin-inline-end: 1px;
+ height: 16px;
+ width: 16px;
+}
+
+.actionsMenu > menupopup > menuitem > .menu-iconic-left {
+ padding-inline-start: 0;
+ padding-inline-end: 4px !important;
+}
+
+.actionsMenu > menupopup > menuitem {
+ padding-inline-start: 3px;
+}
diff --git a/browser/themes/linux/preferences/mail.png b/browser/themes/linux/preferences/mail.png
new file mode 100644
index 000000000..66d2bc9e0
--- /dev/null
+++ b/browser/themes/linux/preferences/mail.png
Binary files differ
diff --git a/browser/themes/linux/preferences/preferences.css b/browser/themes/linux/preferences/preferences.css
new file mode 100644
index 000000000..52f865872
--- /dev/null
+++ b/browser/themes/linux/preferences/preferences.css
@@ -0,0 +1,156 @@
+%if 0
+/*
+# -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
+# 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/.
+*/
+%endif
+
+/* Global Styles */
+#BrowserPreferences radio[pane] {
+ list-style-image: url("chrome://browser/skin/preferences/Options.png");
+}
+
+radio[pane=paneMain] {
+ -moz-image-region: rect(0px, 32px, 32px, 0px)
+}
+
+radio[pane=paneTabs] {
+ -moz-image-region: rect(0px, 64px, 32px, 32px)
+}
+
+radio[pane=paneContent] {
+ -moz-image-region: rect(0px, 96px, 32px, 64px)
+}
+
+radio[pane=paneApplications] {
+ -moz-image-region: rect(0px, 128px, 32px, 96px)
+}
+
+radio[pane=panePrivacy] {
+ -moz-image-region: rect(0px, 160px, 32px, 128px)
+}
+
+radio[pane=paneSecurity] {
+ -moz-image-region: rect(0px, 192px, 32px, 160px)
+}
+
+radio[pane=paneAdvanced] {
+ -moz-image-region: rect(0px, 224px, 32px, 192px)
+}
+
+%ifdef MOZ_SERVICES_SYNC
+radio[pane=paneSync] {
+ list-style-image: url("chrome://browser/skin/preferences/Options-sync.png") !important;
+}
+%endif
+
+/* Applications Pane */
+#BrowserPreferences[animated="true"] #handlersView {
+ height: 25em;
+}
+
+#BrowserPreferences[animated="false"] #handlersView {
+ -moz-box-flex: 1;
+}
+
+/* Privacy Pane */
+
+/* styles for the link elements copied from .text-link in global.css */
+.inline-link {
+ color: -moz-nativehyperlinktext;
+ text-decoration: none;
+}
+
+.inline-link:hover {
+ text-decoration: underline;
+}
+
+/* Modeless Window Dialogs */
+.windowDialog,
+.windowDialog prefpane {
+ padding: 0px;
+}
+
+#browserHomePage:-moz-locale-dir(rtl) input {
+ unicode-bidi: plaintext;
+ direction: rtl;
+}
+
+.contentPane {
+ margin: 9px 8px 5px 8px;
+}
+
+.actionButtons {
+ margin: 0px 3px 6px 3px !important;
+}
+
+/* Cookies Manager */
+#cookiesChildren::-moz-tree-image(domainCol) {
+ width: 16px;
+ height: 16px;
+ margin: 0px 2px;
+ list-style-image: url("chrome://mozapps/skin/places/defaultFavicon.png");
+}
+
+#paneApplications {
+ margin-left: 4px;
+ margin-right: 4px;
+ padding-left: 0;
+ padding-right: 0;
+}
+
+#linksOpenInBox {
+ margin-top: 5px;
+}
+
+#paneAdvanced {
+ padding-bottom: 10px;
+}
+#advancedPrefs {
+ margin-left: 0;
+ margin-right: 0;
+}
+
+#cookiesChildren::-moz-tree-image(domainCol, container) {
+ list-style-image: url("moz-icon://stock/gtk-directory?size=menu");
+}
+
+#cookieInfoBox {
+ border: 1px solid ThreeDShadow;
+ border-radius: 0px;
+ margin: 4px;
+ padding: 0px;
+}
+
+/* bottom-most box containing a groupbox in a prefpane. Prevents the bottom
+ of the groupbox from being cutoff */
+.bottomBox {
+ padding-bottom: 4px;
+}
+
+/**
+ * Clear Private Data
+ */
+#SanitizeDialogPane > groupbox {
+ margin-top: 0;
+}
+
+%ifdef MOZ_SERVICES_SYNC
+/* Sync Pane */
+
+#syncDesc {
+ padding: 0 8em;
+}
+
+#accountCaptionImage {
+ list-style-image: url("chrome://mozapps/skin/profile/profileicon.png");
+}
+
+#syncAddDeviceLabel {
+ margin-top: 1em;
+ margin-bottom: 1em;
+}
+
+%endif
diff --git a/browser/themes/linux/privatebrowsing-mask.png b/browser/themes/linux/privatebrowsing-mask.png
new file mode 100644
index 000000000..9eaf3aec7
--- /dev/null
+++ b/browser/themes/linux/privatebrowsing-mask.png
Binary files differ
diff --git a/browser/themes/linux/sanitizeDialog.css b/browser/themes/linux/sanitizeDialog.css
new file mode 100644
index 000000000..28d4e7eb3
--- /dev/null
+++ b/browser/themes/linux/sanitizeDialog.css
@@ -0,0 +1,107 @@
+/* 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/. */
+
+#sanitizeDurationChoice {
+ margin-inline-end: 0;
+}
+
+/* Align the duration label with the warning box and item list */
+#sanitizeDurationLabel {
+ margin-inline-start: 3px;
+}
+
+
+/* Hide the duration dropdown suffix label if it's empty. Otherwise it
+ takes up a little space, causing the end of the dropdown to not be aligned
+ with the warning box. */
+#sanitizeDurationSuffixLabel[value=""] {
+ display: none;
+}
+
+
+/* Places tree */
+#placesTreechildren::-moz-tree-row(selected),
+#placesTreechildren::-moz-tree-row(grippyRow) {
+ background: #999;
+}
+
+#placesTreechildren::-moz-tree-cell-text(selected) {
+ color: #111;
+}
+
+
+/* Sanitize everything warning box */
+#sanitizeEverythingWarningBox {
+ background-color: Window;
+ border: 1px solid ThreeDDarkShadow;
+ border-radius: 5px;
+ padding: 16px;
+}
+
+#sanitizeEverythingWarningIcon {
+ list-style-image: url("moz-icon://stock/gtk-dialog-warning?size=dialog");
+ padding: 0;
+ margin: 0;
+}
+
+#sanitizeEverythingWarningDescBox {
+ padding: 0 16px;
+ margin: 0;
+}
+
+
+/* Progressive disclosure button */
+#detailsExpanderWrapper {
+ padding: 0;
+ margin-top: 6px;
+ margin-bottom: 6px;
+ margin-inline-start: -6px;
+ margin-inline-end: 0;
+}
+
+.expander-up,
+.expander-down {
+ min-width: 0;
+ padding: 2px 0;
+ padding-inline-start: 2px;
+}
+
+.expander-up {
+ list-style-image: url("chrome://global/skin/arrow/arrow-up.gif");
+}
+
+.expander-down {
+ list-style-image: url("chrome://global/skin/arrow/arrow-dn.gif");
+}
+
+.expander-down:hover:active {
+ list-style-image: url("chrome://global/skin/arrow/arrow-dn-hov.gif");
+}
+
+.expander-up:hover:active {
+ list-style-image: url("chrome://global/skin/arrow/arrow-up-hov.gif");
+}
+
+
+/* Make the item list the same width as the warning box */
+#itemList {
+ margin-inline-start: 0;
+ margin-inline-end: 0;
+}
+
+/* Without this a useless scrollbar appears in the listbox when its rows
+ attribute is set to the total number of listitems, as it is currently. See
+ bug 489958 comment 14 and bug 491788. */
+#itemList > listitem {
+ padding: 1px 0;
+}
+
+
+/* Align the last dialog button with the end of the warning box */
+.prefWindow-dlgbuttons {
+ margin-inline-end: 0;
+}
+.dialog-button[dlgtype="accept"] {
+ margin-inline-end: 0;
+}
diff --git a/browser/themes/linux/searchbar.css b/browser/themes/linux/searchbar.css
new file mode 100644
index 000000000..0352e27a7
--- /dev/null
+++ b/browser/themes/linux/searchbar.css
@@ -0,0 +1,72 @@
+/* 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/. */
+
+.searchbar-textbox {
+ min-height: 22px;
+ width: 6em;
+ min-width: 6em;
+ background-color: -moz-field;
+}
+
+.autocomplete-textbox-container {
+ -moz-box-align: stretch;
+}
+
+.textbox-input-box {
+ margin: 0;
+}
+
+.searchbar-engine-menuitem[selected="true"] > .menu-iconic-text {
+ font-weight: bold;
+}
+
+/* Engine button */
+.searchbar-engine-image {
+ height: 16px;
+ width: 16px;
+ list-style-image: url("chrome://mozapps/skin/places/defaultFavicon.png");
+ margin-inline-start: 2px;
+}
+
+.searchbar-engine-button {
+ -moz-appearance: none;
+ min-width: 0;
+ margin: 0;
+ border: 0;
+ -moz-box-align: center;
+ background-color: transparent;
+}
+
+.searchbar-engine-button > .button-box {
+ -moz-appearance: none;
+ padding: 2px 0;
+ padding-inline-end: 2px;
+ border: 0;
+}
+
+.searchbar-dropmarker-image {
+ -moz-appearance: toolbarbutton-dropdown !important;
+ width: 12px;
+ height: 12px;
+}
+
+/* Search go button */
+.search-go-container {
+ -moz-box-align: center;
+}
+
+.search-go-button {
+ padding: 1px;
+ list-style-image: url(moz-icon://stock/gtk-find?size=menu);
+ cursor: pointer;
+}
+
+menuitem[cmd="cmd_clearhistory"] {
+ list-style-image: url("moz-icon://stock/gtk-clear?size=menu");
+}
+
+menuitem[cmd="cmd_clearhistory"][disabled] {
+ list-style-image: url("moz-icon://stock/gtk-clear?size=menu&state=disabled");
+}
+
diff --git a/browser/themes/linux/setDesktopBackground.css b/browser/themes/linux/setDesktopBackground.css
new file mode 100644
index 000000000..585284c7b
--- /dev/null
+++ b/browser/themes/linux/setDesktopBackground.css
@@ -0,0 +1,18 @@
+/* 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");
+
+html|canvas#screen {
+ margin: 12px 11px 32px;
+}
+
+#monitor {
+ list-style-image: url("chrome://browser/skin/monitor.png");
+}
+
+#monitor[aspectratio="16:10"] {
+ list-style-image: url("chrome://browser/skin/monitor_16-10.png");
+}
diff --git a/browser/themes/linux/slowStartup-16.png b/browser/themes/linux/slowStartup-16.png
new file mode 100644
index 000000000..834dc0f1c
--- /dev/null
+++ b/browser/themes/linux/slowStartup-16.png
Binary files differ
diff --git a/browser/themes/linux/statusbar/overlay.css b/browser/themes/linux/statusbar/overlay.css
new file mode 100644
index 000000000..d326bac3f
--- /dev/null
+++ b/browser/themes/linux/statusbar/overlay.css
@@ -0,0 +1,114 @@
+/* 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");
+
+%include ../../shared/statusbar/overlay.css
+
+/*
+ * General
+ */
+
+#status4evar-status-text,
+#status4evar-progress-bar
+{
+ margin: 0px 4px;
+}
+
+/*
+ * Download status
+ */
+
+#status4evar-download-progress-bar
+{
+ height: 6px;
+}
+
+toolbar[iconsize="small"] #status4evar-download-progress-bar
+{
+ height: 4px;
+}
+
+#status4evar-download-button[attention] #status4evar-download-icon
+{
+ background-image: url("chrome://browser/skin/downloads/download-glow.png");
+}
+
+#status4evar-download-button #status4evar-download-icon
+{
+ background: -moz-image-rect(url("chrome://browser/skin/Toolbar.png"), 0, 24, 24, 0) center no-repeat;
+ min-width: 24px;
+ min-height: 24px;
+}
+
+toolbar[iconsize="small"] #status4evar-download-button #status4evar-download-icon
+{
+ background: -moz-image-rect(url("chrome://browser/skin/Toolbar-small.png"), 0, 16, 16, 0) center no-repeat;
+ min-width: 16px;
+ min-height: 16px;
+}
+
+toolbar[iconsize="small"] > #status4evar-download-button[attention] #status4evar-download-icon {
+ background-image: url("chrome://browser/skin/downloads/download-glow-small.png");
+}
+
+toolbar[mode="icons"] #status4evar-download-button[forcelabel="true"] > label
+{
+ margin: 0px 2px !important;
+ margin-top: -1px !important;
+ margin-inline-start: 4px !important;
+}
+
+/*
+ * Splitter
+ */
+
+splitter.status4evar-status-splitter
+{
+ width: 8px;
+ margin: 0px -4px;
+}
+
+/*
+ * Location bar
+ */
+
+#urlbar-progress-alt
+{
+ margin: -1px;
+}
+
+#notification-popup-box
+{
+ margin-inline-start: -1px;
+}
+
+#urlbar .urlbar-over-link-box
+{
+ margin-top: -1px;
+ margin-bottom: -1px;
+}
+
+/*
+ * Add-on bar
+ */
+
+#browser-bottombox[s4eboarder="true"] :-moz-any(#status4evar-status-bar, #addon-bar)
+{
+ -moz-appearance: none;
+}
+
+#browser-bottombox[s4eboarder="true"] > *:not([hidden="true"]):not([collapsed="true"])
+{
+ box-shadow: none !important;
+ border: none !important;
+ border-top: 2px solid !important;
+ -moz-border-top-colors: ThreeDShadow ThreeDHighlight !important;
+}
+
+#browser-bottombox[s4eboarder="true"] > *:not([hidden="true"]):not([collapsed="true"]) ~ *
+{
+ border: none !important;
+}
+
diff --git a/browser/themes/linux/statusbar/prefs.css b/browser/themes/linux/statusbar/prefs.css
new file mode 100644
index 000000000..db6f24e61
--- /dev/null
+++ b/browser/themes/linux/statusbar/prefs.css
@@ -0,0 +1,8 @@
+/* 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");
+
+%include ../../shared/statusbar/prefs.css
+
diff --git a/browser/themes/linux/sync-16-throbber.png b/browser/themes/linux/sync-16-throbber.png
new file mode 100644
index 000000000..d6f801aab
--- /dev/null
+++ b/browser/themes/linux/sync-16-throbber.png
Binary files differ
diff --git a/browser/themes/linux/sync-24-throbber.png b/browser/themes/linux/sync-24-throbber.png
new file mode 100644
index 000000000..5587174de
--- /dev/null
+++ b/browser/themes/linux/sync-24-throbber.png
Binary files differ
diff --git a/browser/themes/linux/tabbrowser/alltabs.png b/browser/themes/linux/tabbrowser/alltabs.png
new file mode 100644
index 000000000..2f1902519
--- /dev/null
+++ b/browser/themes/linux/tabbrowser/alltabs.png
Binary files differ
diff --git a/browser/themes/linux/tabbrowser/connecting.png b/browser/themes/linux/tabbrowser/connecting.png
new file mode 100644
index 000000000..e564fb570
--- /dev/null
+++ b/browser/themes/linux/tabbrowser/connecting.png
Binary files differ
diff --git a/browser/themes/linux/tabbrowser/loading.png b/browser/themes/linux/tabbrowser/loading.png
new file mode 100644
index 000000000..55f25e591
--- /dev/null
+++ b/browser/themes/linux/tabbrowser/loading.png
Binary files differ
diff --git a/browser/themes/linux/tabbrowser/tab-overflow-border.png b/browser/themes/linux/tabbrowser/tab-overflow-border.png
new file mode 100644
index 000000000..77f2462e5
--- /dev/null
+++ b/browser/themes/linux/tabbrowser/tab-overflow-border.png
Binary files differ
diff --git a/browser/themes/linux/tabbrowser/tab.png b/browser/themes/linux/tabbrowser/tab.png
new file mode 100644
index 000000000..deeeb0add
--- /dev/null
+++ b/browser/themes/linux/tabbrowser/tab.png
Binary files differ
diff --git a/browser/themes/linux/tabbrowser/tabDragIndicator.png b/browser/themes/linux/tabbrowser/tabDragIndicator.png
new file mode 100644
index 000000000..df7d914f8
--- /dev/null
+++ b/browser/themes/linux/tabbrowser/tabDragIndicator.png
Binary files differ
diff --git a/browser/themes/linux/urlbar-arrow.png b/browser/themes/linux/urlbar-arrow.png
new file mode 100644
index 000000000..fcab253bb
--- /dev/null
+++ b/browser/themes/linux/urlbar-arrow.png
Binary files differ
diff --git a/browser/themes/linux/web-notifications-icon.svg b/browser/themes/linux/web-notifications-icon.svg
new file mode 100644
index 000000000..f7186c727
--- /dev/null
+++ b/browser/themes/linux/web-notifications-icon.svg
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- 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/. -->
+<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid" width="64" height="64" viewBox="0 0 64 64">
+ <defs>
+ <style>
+ .icon {
+ fill: #a6a6a6;
+ fill-rule: evenodd;
+ }
+ </style>
+ </defs>
+ <path d="M57,48 L46,48 L46,60.016 L32.482,48 L7,48 C5.343,48 4,46.657 4,45 L4,11.031 C4,9.374 5.343,8.031 7,8.031 L57,8.031 C58.657,8.031 60,9.374 60,11.031 L60,45 C60,46.657 58.657,48 57,48 ZM36,16.031 C36,14.927 35.105,14.031 34,14.031 L30,14.031 C28.895,14.031 28,14.927 28,16.031 L28,30.031 C28,31.136 28.895,32.031 30,32.031 L34,32.031 C35.105,32.031 36,31.136 36,30.031 L36,16.031 ZM36,37.5 C36,36.672 35.328,36 34.5,36 L29.5,36 C28.672,36 28,36.672 28,37.5 L28,40.5 C28,41.328 28.672,42 29.5,42 L34.5,42 C35.328,42 36,41.328 36,40.5 L36,37.5 Z" class="icon"/>
+</svg>
diff --git a/browser/themes/linux/web-notifications-tray.svg b/browser/themes/linux/web-notifications-tray.svg
new file mode 100644
index 000000000..314026a10
--- /dev/null
+++ b/browser/themes/linux/web-notifications-tray.svg
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- 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/. -->
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="48" height="16" viewBox="0 0 96 32">
+ <defs>
+ <style>
+ .style-icon-notification {
+ fill: #666666;
+ }
+ .style-icon-notification.hover {
+ fill: #808080;
+ }
+ .style-icon-notification.active {
+ fill: #4d4d4d;
+ }
+ </style>
+ <path id="shape-notifcations-push" d="M27,23.969 L24,23.969 L24,29.977 L17.241,23.969 L5,23.969 C3.343,23.969 2,22.626 2,20.969 L2,6.969 C2,5.312 3.343,3.969 5,3.969 L27,3.969 C28.657,3.969 30,5.312 30,6.969 L30,20.969 C30,22.626 28.657,23.969 27,23.969 ZM18,8.969 C18,7.864 17.105,6.969 16,6.969 C14.895,6.969 14,7.864 14,8.969 L14,13.969 C14,15.073 14.895,15.969 16,15.969 C17.105,15.969 18,15.073 18,13.969 L18,8.969 ZM16.5,17.969 L15.5,17.969 C14.672,17.969 14,18.640 14,19.469 C14,20.297 14.672,20.969 15.5,20.969 L16.5,20.969 C17.328,20.969 18,20.297 18,19.469 C18,18.640 17.328,17.969 16.5,17.969 Z"/>
+ </defs>
+ <use xlink:href="#shape-notifcations-push" class="style-icon-notification"/>
+ <use xlink:href="#shape-notifcations-push" transform="translate(32)" class="style-icon-notification hover"/>
+ <use xlink:href="#shape-notifcations-push" transform="translate(64)" class="style-icon-notification active"/>
+</svg>