Trunkでのタブのグラフ型プログレスアイコンに対応

git-svn-id: http://www.cozmixng.org/repos/piro/treestyletab/trunk@5177 599a83e7-65a4-db11-8015-0010dcdd6dc2
This commit is contained in:
piro 2009-10-01 06:00:43 +00:00
parent 66f9e4deb8
commit 8d57039428
2 changed files with 51 additions and 7 deletions

View File

@ -14,33 +14,75 @@
@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); @namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
:root[tabFx2Compatible="5"] :root[tabFx2Compatible="6"]
.tabbrowser-tab { .tabbrowser-tab {
-moz-binding: url(tabFx2Compatible.xml#tabbrowser-tab) !important; -moz-binding: url(tabFx2Compatible.xml#tabbrowser-tab) !important;
} }
:root[tabFx2Compatible="5"]:not([tabFx2Compatible-flags~="png-throbber"]) :root[tabFx2Compatible="6"]:not([tabFx2Compatible-flags~="png-throbber"])
.tabbrowser-tab[busy] > hbox > stack > .tab-icon-image { .tabbrowser-tab[busy] > hbox > stack > .tab-icon-image {
list-style-image: url("chrome://global/skin/throbber/Throbber-small.gif") !important; list-style-image: url("chrome://global/skin/throbber/Throbber-small.gif") !important;
opacity: 0.6; opacity: 0.6;
} }
:root[tabFx2Compatible="5"][tabFx2Compatible-flags~="png-throbber"] :root[tabFx2Compatible="6"][tabFx2Compatible-flags~="png-throbber"]
.tabbrowser-tab[busy] > hbox > stack > .tab-icon-image { .tabbrowser-tab[busy] > hbox > stack > .tab-icon-image {
list-style-image: url("chrome://global/skin/icons/loading_16.png") !important; list-style-image: url("chrome://global/skin/icons/loading_16.png") !important;
} }
:root[tabFx2Compatible="5"][tabFx2Compatible-flags~="mac"][tabFx2Compatible-flags~="png-throbber"] :root[tabFx2Compatible="6"][tabFx2Compatible-flags~="mac"][tabFx2Compatible-flags~="png-throbber"]
.tabbrowser-tab .tab-icon-image { .tabbrowser-tab .tab-icon-image {
list-style-image: url("chrome://global/skin/tree/item.png"); list-style-image: url("chrome://global/skin/tree/item.png");
} }
:root[tabFx2Compatible="5"][tabFx2Compatible-flags~="mac"] :root[tabFx2Compatible="6"][tabFx2Compatible-flags~="mac"]
.tabbrowser-tab:not(:hover):not([selected="true"]) .tab-icon-image { .tabbrowser-tab:not(:hover):not([selected="true"]) .tab-icon-image {
opacity: 0.6; opacity: 0.6;
} }
:root[tabFx2Compatible="5"] :root[tabFx2Compatible="6"][tabFx2Compatible-flags~="pie"]
.tabbrowser-tab[busy] > hbox > stack > .tab-icon-image {
list-style-image: url("chrome://browser/skin/tabbrowser/progress.png") !important;
-moz-image-region: rect(0, 16px, 16px, 0);
}
:root[tabFx2Compatible="6"][tabFx2Compatible-flags~="pie"]
.tabbrowser-tab[busy][stalled] > hbox > stack > .tab-icon-image {
list-style-image: url("chrome://browser/skin/tabbrowser/progress-pulsing.png") !important;
}
:root[tabFx2Compatible="6"][tabFx2Compatible-flags~="pie"]
.tabbrowser-tab[busy][progress="1"] > hbox > stack > .tab-icon-image {
-moz-image-region: rect(0, 32px, 16px, 16px);
}
:root[tabFx2Compatible="6"][tabFx2Compatible-flags~="pie"]
.tabbrowser-tab[busy][progress="2"] > hbox > stack > .tab-icon-image {
-moz-image-region: rect(0, 48px, 16px, 32px);
}
:root[tabFx2Compatible="6"][tabFx2Compatible-flags~="pie"]
.tabbrowser-tab[busy][progress="3"] > hbox > stack > .tab-icon-image {
-moz-image-region: rect(0, 64px, 16px, 48px);
}
:root[tabFx2Compatible="6"][tabFx2Compatible-flags~="pie"]
.tabbrowser-tab[busy][progress="4"] > hbox > stack > .tab-icon-image {
-moz-image-region: rect(0, 80px, 16px, 64px);
}
:root[tabFx2Compatible="6"][tabFx2Compatible-flags~="pie"]
.tabbrowser-tab[busy][progress="5"] > hbox > stack > .tab-icon-image {
-moz-image-region: rect(0, 96px, 16px, 80px);
}
:root[tabFx2Compatible="6"][tabFx2Compatible-flags~="pie"]
.tabbrowser-tab[busy][progress="6"] > hbox > stack > .tab-icon-image {
-moz-image-region: rect(0, 112px, 16px, 96px);
}
:root[tabFx2Compatible="6"][tabFx2Compatible-flags~="pie"]
.tabbrowser-tab[busy][progress="7"] > hbox > stack > .tab-icon-image {
-moz-image-region: rect(0, 128px, 16px, 112px);
}
:root[tabFx2Compatible="6"][tabFx2Compatible-flags~="pie"]
.tabbrowser-tab[busy][progress="8"] > hbox > stack > .tab-icon-image {
-moz-image-region: rect(0, 144px, 16px, 128px);
}
:root[tabFx2Compatible="6"]
.tabbrowser-tab[selected="true"]:focus > hbox > .tab-text { .tabbrowser-tab[selected="true"]:focus > hbox > .tab-text {
border: 1px dotted -moz-DialogText; border: 1px dotted -moz-DialogText;
} }

View File

@ -19,7 +19,7 @@
window.addEventListener('DOMContentLoaded', function() { window.addEventListener('DOMContentLoaded', function() {
window.removeEventListener('DOMContentLoaded', arguments.callee, true); window.removeEventListener('DOMContentLoaded', arguments.callee, true);
const currentRevision = 5; const currentRevision = 6;
var b = document.getElementById('content'); var b = document.getElementById('content');
if (!b || b.localName != 'tabbrowser') return; if (!b || b.localName != 'tabbrowser') return;
@ -68,6 +68,8 @@ window.addEventListener('DOMContentLoaded', function() {
flags.push('mac'); flags.push('mac');
if ('nsPIPlacesDatabase' in Components.interfaces) if ('nsPIPlacesDatabase' in Components.interfaces)
flags.push('png-throbber'); flags.push('png-throbber');
if (b.mTabProgressListener.toSource().indexOf('_startStalledTimer') > -1)
flags.push('pie');
root.setAttribute('tabFx2Compatible-flags', flags.join(' ')); root.setAttribute('tabFx2Compatible-flags', flags.join(' '));
break; break;
} }