Bug 1088763 - Preload yosemite tab images. r?mconley
We need to preload both the inactive and the active images. All our image loads
need to be kicked off before the window document's load event. While the window
is hidden, it is inactive. So we need the preloading hack to kick off the loads
for the active images.
MozReview-Commit-ID: 2dPdJNORwhw
--- a/browser/themes/osx/browser.css
+++ b/browser/themes/osx/browser.css
@@ -2544,16 +2544,34 @@ toolbarbutton.chevron > .toolbarbutton-m
}
.tab-throbber[progress] {
list-style-image: url("chrome://global/skin/icons/loading@2x.png");
}
}
@media (-moz-mac-yosemite-theme) {
+ /* image preloading hack from shared/tabs.inc.css */
+ #tabbrowser-tabs::before {
+ background-image:
+ url(chrome://browser/skin/yosemite/tab-selected-end-inactive.svg),
+ url(chrome://browser/skin/yosemite/tab-selected-start-inactive.svg),
+ url(chrome://browser/skin/yosemite/tab-stroke-start-inactive.png),
+ url(chrome://browser/skin/yosemite/tab-active-middle-inactive.png),
+ url(chrome://browser/skin/yosemite/tab-stroke-end-inactive.png),
+ url(chrome://browser/skin/tabbrowser/tab-selected-end.svg),
+ url(chrome://browser/skin/tabbrowser/tab-selected-start.svg),
+ url(chrome://browser/skin/tabbrowser/tab-stroke-end.png),
+ url(chrome://browser/skin/tabbrowser/tab-active-middle.png),
+ url(chrome://browser/skin/tabbrowser/tab-stroke-start.png),
+ url(chrome://browser/skin/tabbrowser/tab-background-end.png),
+ url(chrome://browser/skin/tabbrowser/tab-background-middle.png),
+ url(chrome://browser/skin/tabbrowser/tab-background-start.png);
+ }
+
.tab-background-middle[visuallyselected=true]:-moz-window-inactive {
background-image: url(chrome://browser/skin/yosemite/tab-active-middle-inactive.png),
@fgTabTextureYosemiteInactive@,
none;
}
.tab-background-start[visuallyselected=true]:-moz-window-inactive:-moz-locale-dir(ltr)::after,
.tab-background-end[visuallyselected=true]:-moz-window-inactive:-moz-locale-dir(rtl)::after {
@@ -2573,16 +2591,34 @@ toolbarbutton.chevron > .toolbarbutton-m
.tab-background-end[visuallyselected=true]:-moz-window-inactive:-moz-locale-dir(ltr):not(:-moz-lwtheme)::before,
.tab-background-start[visuallyselected=true]:-moz-window-inactive:-moz-locale-dir(rtl):not(:-moz-lwtheme)::before {
background-image: url(chrome://browser/skin/yosemite/tab-selected-end-inactive.svg);
background-size: 100% 100%;
}
@media (min-resolution: 2dppx) {
+ /* image preloading hack from shared/tabs.inc.css */
+ #tabbrowser-tabs::before {
+ background-image:
+ url(chrome://browser/skin/yosemite/tab-selected-end-inactive.svg),
+ url(chrome://browser/skin/yosemite/tab-selected-start-inactive.svg),
+ url(chrome://browser/skin/yosemite/tab-stroke-start-inactive@2x.png),
+ url(chrome://browser/skin/yosemite/tab-active-middle-inactive@2x.png),
+ url(chrome://browser/skin/yosemite/tab-stroke-end-inactive@2x.png),
+ url(chrome://browser/skin/tabbrowser/tab-selected-end.svg),
+ url(chrome://browser/skin/tabbrowser/tab-selected-start.svg),
+ url(chrome://browser/skin/tabbrowser/tab-stroke-end@2x.png),
+ url(chrome://browser/skin/tabbrowser/tab-active-middle@2x.png),
+ url(chrome://browser/skin/tabbrowser/tab-stroke-start@2x.png),
+ url(chrome://browser/skin/tabbrowser/tab-background-end@2x.png),
+ url(chrome://browser/skin/tabbrowser/tab-background-middle@2x.png),
+ url(chrome://browser/skin/tabbrowser/tab-background-start@2x.png);
+ }
+
.tab-background-middle[visuallyselected=true]:-moz-window-inactive {
background-image: url(chrome://browser/skin/yosemite/tab-active-middle-inactive@2x.png),
@fgTabTextureYosemiteInactive@,
none;
}
.tab-background-start[visuallyselected=true]:-moz-window-inactive:-moz-locale-dir(ltr)::after,
.tab-background-end[visuallyselected=true]:-moz-window-inactive:-moz-locale-dir(rtl)::after {