From acc3ed80b60578d578181d7cd8cfc254b8d9e989 Mon Sep 17 00:00:00 2001 From: piro Date: Fri, 17 Sep 2010 02:43:29 +0000 Subject: [PATCH] =?UTF-8?q?=E9=96=89=E3=81=98=E3=82=89=E3=82=8C=E3=81=AA?= =?UTF-8?q?=E3=81=84=E3=82=BF=E3=83=96=E3=81=8C=E6=AE=8B=E3=82=8B=E5=95=8F?= =?UTF-8?q?=E9=A1=8C=E3=81=AB=E5=AF=BE=E5=87=A6=E3=81=97=E3=81=9F=E3=81=A4?= =?UTF-8?q?=E3=82=82=E3=82=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://www.cozmixng.org/repos/piro/treestyletab/trunk@7248 599a83e7-65a4-db11-8015-0010dcdd6dc2 --- content/treestyletab/treestyletab.css | 30 ++++++++++++++++++--------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/content/treestyletab/treestyletab.css b/content/treestyletab/treestyletab.css index 332a065e..d408eca4 100644 --- a/content/treestyletab/treestyletab.css +++ b/content/treestyletab/treestyletab.css @@ -145,12 +145,29 @@ tabbrowser[treestyletab-tabbar-autohide-mode="1"][treestyletab-tabbar-autohide=" * So we have to define max-width for both states [fadein] (means "completely * opened") and :not([fadein]) (means "in opening/removing process". */ -.tabbrowser-tabs[treestyletab-mode="vertical"] .tabbrowser-tab:not([pinned]) { +.tabbrowser-tabs[treestyletab-mode="vertical"] + .tabbrowser-tab:not([pinned]):not([fadein]) { max-width: 65000px !important; + opacity: 0.5 !important; +} +.tabbrowser-tabs[treestyletab-mode="vertical"] + .tabbrowser-tab:not([pinned])[fadein] { + max-width: 65250px !important; min-width: 1px !important; } -.tabbrowser-tabs[treestyletab-mode="vertical"] .tabbrowser-tab:not([pinned])[fadein] { - max-width: 65250px !important; +.tabbrowser-tabs[treestyletab-mode="vertical"][treestyletab-animation-enabled="true"] + .tabbrowser-tab:not([pinned]):not([fadein])[treestyletab-removed="true"] { + max-height: 1px !important; + min-height: 1px !important; + opacity: 0 !important; + /** + * "transitionend" event will not fire if new transitions start before + * old transitions are finished. When treestyletab-removed="true" is set + * new transitions will start by these declarations, so, ghost tabs + * possibly because "max-width" transition is canceled. To prevent ghost + * tabs, we have to re-define new max-width to fire transitionend event. + */ + max-width: 64000px !important; } #TabsToolbar, @@ -174,13 +191,6 @@ tabbrowser[treestyletab-tabbar-autohide-mode="1"][treestyletab-tabbar-autohide=" /* animation effects */ -.tabbrowser-tabs[treestyletab-animation-enabled="true"][treestyletab-mode="vertical"] - .tabbrowser-tab[treestyletab-removed="true"] { - max-height: 1px !important; - min-height: 1px !important; - opacfity: 0 !important; -} - .tabbrowser-tabs[treestyletab-animation-enabled="true"][treestyletab-mode="vertical"]:not([treestyletab-tab-inverted="true"]) .tabbrowser-tab:not([treestyletab-collapsed-done="true"]) { -moz-transition: margin-top 0.15s ease-out,