allow to place tabbar not in #TabsToolbar
This commit is contained in:
parent
d4257a7179
commit
6e676a29d6
@ -13,7 +13,7 @@
|
||||
http://github.com/piroor/fxaddonlibs/blob/master/tabsDragUtils.js
|
||||
*/
|
||||
(function() {
|
||||
const currentRevision = 7;
|
||||
const currentRevision = 8;
|
||||
|
||||
if (!('piro.sakura.ne.jp' in window)) window['piro.sakura.ne.jp'] = {};
|
||||
|
||||
@ -192,7 +192,7 @@
|
||||
if (aTabBrowserChild.tabbrowser) // tabs, Firefox 4.0 or later
|
||||
return aTabBrowserChild.tabbrowser;
|
||||
|
||||
if (aTabBrowserChild.id == 'TabsToolbar') // tabs toolbar, Firefox 4.0 or later
|
||||
if (aTabBrowserChild.localName == 'toolbar') // tabs toolbar, Firefox 4.0 or later
|
||||
return aTabBrowserChild.getElementsByTagName('tabs')[0].tabbrowser;
|
||||
|
||||
var b = aTabBrowserChild.ownerDocument.evaluate(
|
||||
|
@ -78,13 +78,13 @@
|
||||
.tabbrowser-strip[treestyletab-tabbar-autohide="hidden"]+splitter,
|
||||
.tabbrowser-strip[collapsed="true"] + splitter:not([state="collapsed"]),
|
||||
.treestyletab-tabbar-toggler,
|
||||
#TabsToolbar[treestyletab-tabbar-autohide="hidden"] > *,
|
||||
#TabsToolbar .treestyletab-splitter,
|
||||
.treestyletab-tabbar-toolbar[treestyletab-tabbar-autohide="hidden"] > *,
|
||||
.treestyletab-tabbar-toolbar .treestyletab-splitter,
|
||||
#treestyletab-tabbar-resizer-box,
|
||||
tabbrowser[treestyletab-tabbar-autohide-mode="1"][tabcontainer]
|
||||
.tabbrowser-strip[treestyletab-tabbar-placeholder="true"],
|
||||
.tabbrowser-strip.treestyletab-tabbar-placeholder,
|
||||
tabbrowser[treestyletab-tabbar-autohide-mode="1"][tabcontainer]
|
||||
.tabbrowser-strip[treestyletab-tabbar-placeholder="true"]+splitter {
|
||||
.tabbrowser-strip.treestyletab-tabbar-placeholder+splitter {
|
||||
visibility: collapse;
|
||||
}
|
||||
|
||||
@ -92,22 +92,22 @@ tabbrowser[treestyletab-tabbar-autohide-mode="1"][tabcontainer]
|
||||
.treestyletab-tabbar-toggler,
|
||||
tabbrowser[treestyletab-tabbar-autohide-mode="1"][treestyletab-tabbar-autohide="hidden"]
|
||||
.treestyletab-tabbar-toggler,
|
||||
#TabsToolbar[treestyletab-mode="vertical"][treestyletab-tabbar-autohide][treestyletab-tabbar-autohide-state="expanded"]
|
||||
.treestyletab-tabbar-toolbar[treestyletab-mode="vertical"][treestyletab-tabbar-autohide][treestyletab-tabbar-autohide-state="expanded"]
|
||||
#treestyletab-tabbar-resizer-box,
|
||||
#TabsToolbar[treestyletab-mode="vertical"][treestyletab-tabbar-autohide][treestyletab-tabbar-autohide-state="expanded"]:not([treestyletab-tabbar-fixed="true"])
|
||||
.treestyletab-tabbar-toolbar[treestyletab-mode="vertical"][treestyletab-tabbar-autohide][treestyletab-tabbar-autohide-state="expanded"]:not([treestyletab-tabbar-fixed="true"])
|
||||
.treestyletab-splitter {
|
||||
visibility: visible;
|
||||
}
|
||||
|
||||
/* put resizer under tabs, and raise up tabs */
|
||||
#TabsToolbar[treestyletab-mode="vertical"][treestyletab-tabbar-autohide][treestyletab-tabbar-autohide-state="expanded"]
|
||||
.treestyletab-tabbar-toolbar[treestyletab-mode="vertical"][treestyletab-tabbar-autohide][treestyletab-tabbar-autohide-state="expanded"]
|
||||
> *,
|
||||
.tabs-toolbar-inner-box[treestyletab-tabbar-autohide][treestyletab-tabbar-autohide-state="expanded"]:not([treestyletab-tabbar-fixed="true"])
|
||||
> * {
|
||||
position: relative;
|
||||
z-index: 2;
|
||||
}
|
||||
#TabsToolbar[treestyletab-mode="vertical"][treestyletab-tabbar-autohide][treestyletab-tabbar-autohide-state="expanded"]
|
||||
.treestyletab-tabbar-toolbar[treestyletab-mode="vertical"][treestyletab-tabbar-autohide][treestyletab-tabbar-autohide-state="expanded"]
|
||||
#treestyletab-tabbar-resizer-box {
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
@ -159,8 +159,8 @@ tabbrowser[treestyletab-tabbar-autohide-mode="1"][treestyletab-tabbar-autohide="
|
||||
|
||||
.tabbrowser-tabs[treestyletab-mode="vertical"] .tabs-alltabs-button, /* -Firefox 3.6 */
|
||||
.tabbrowser-tabs[treestyletab-mode="vertical"] .close-button.tabs-closebutton, /* -Firefox 3.6 */
|
||||
#TabsToolbar[treestyletab-mode="vertical"] > toolbarbutton,
|
||||
#TabsToolbar[treestyletab-mode="vertical"] > toolbarpaletteitem > toolbarbutton {
|
||||
.treestyletab-tabbar-toolbar[treestyletab-mode="vertical"] > toolbarbutton,
|
||||
.treestyletab-tabbar-toolbar[treestyletab-mode="vertical"] > toolbarpaletteitem > toolbarbutton {
|
||||
max-width: none !important;
|
||||
}
|
||||
|
||||
@ -169,7 +169,7 @@ tabbrowser[treestyletab-tabbar-autohide-mode="1"][treestyletab-tabbar-autohide="
|
||||
.tabbrowser-tabs[treestyletab-mode="vertical"] .tabbrowser-arrowscrollbox > .scrollbutton-down-stack,
|
||||
.tabbrowser-tabs[treestyletab-mode="vertical"] .tabbrowser-arrowscrollbox > .scrollbutton-down, /* Firefox 3 */
|
||||
.tabbrowser-tabs[treestyletab-mode="vertical"] .tabs-closebutton-box,
|
||||
#TabsToolbar[treestyletab-mode="vertical"] .tabs-closebutton,
|
||||
.treestyletab-tabbar-toolbar[treestyletab-mode="vertical"] .tabs-closebutton,
|
||||
.tabbrowser-tabs[treestyletab-mode="vertical"] .tab-drop-indicator-bar {
|
||||
visibility: collapse !important;
|
||||
}
|
||||
@ -186,7 +186,7 @@ tabbrowser[treestyletab-tabbar-autohide-mode="1"][treestyletab-tabbar-autohide="
|
||||
.tabbrowser-tab:not([pinned]) {
|
||||
max-width: 65000px !important;
|
||||
}
|
||||
#TabsToolbar[treestyletab-mode="vertical"]
|
||||
.treestyletab-tabbar-toolbar[treestyletab-mode="vertical"]
|
||||
.tabbrowser-tab:not([pinned]):not([fadein]) {
|
||||
opacity: 0.5 !important;
|
||||
}
|
||||
@ -195,7 +195,7 @@ tabbrowser[treestyletab-tabbar-autohide-mode="1"][treestyletab-tabbar-autohide="
|
||||
max-width: 65250px !important;
|
||||
min-width: 1px !important;
|
||||
}
|
||||
#TabsToolbar[treestyletab-mode="vertical"][treestyletab-animation-enabled="true"]
|
||||
.treestyletab-tabbar-toolbar[treestyletab-mode="vertical"][treestyletab-animation-enabled="true"]
|
||||
.tabbrowser-tab:not([pinned]):not([fadein])[treestyletab-removed="true"] {
|
||||
max-height: 1px !important;
|
||||
min-height: 1px !important;
|
||||
@ -208,28 +208,28 @@ tabbrowser[treestyletab-tabbar-autohide-mode="1"][treestyletab-tabbar-autohide="
|
||||
max-width: 64000px !important;
|
||||
}
|
||||
|
||||
#TabsToolbar,
|
||||
#navigator-toolbox[tabsontop="false"] > #TabsToolbar,
|
||||
#navigator-toolbox[tabsontop="false"] > #TabsToolbar:-moz-lwtheme {
|
||||
.treestyletab-tabbar-toolbar,
|
||||
#navigator-toolbox[tabsontop="false"] > .treestyletab-tabbar-toolbar,
|
||||
#navigator-toolbox[tabsontop="false"] > .treestyletab-tabbar-toolbar:-moz-lwtheme {
|
||||
-moz-binding: url(treestyletab.xml#tabs-toolbar);
|
||||
}
|
||||
#navigator-toolbox[tabsontop="true"] > #TabsToolbar,
|
||||
#navigator-toolbox[tabsontop="true"] > #TabsToolbar:-moz-lwtheme,
|
||||
#navigator-toolbox[tabsontop="true"] > .treestyletab-tabbar-toolbar,
|
||||
#navigator-toolbox[tabsontop="true"] > .treestyletab-tabbar-toolbar:-moz-lwtheme,
|
||||
#navigator-toolbox
|
||||
> #nav-bar + #customToolbars + #PersonalToolbar[collapsed="true"] + #TabsToolbar[tabsontop="true"]:last-child,
|
||||
> #nav-bar + #customToolbars + #PersonalToolbar[collapsed="true"] + .treestyletab-tabbar-toolbar[tabsontop="true"]:last-child,
|
||||
#navigator-toolbox
|
||||
> #nav-bar + #customToolbars + #PersonalToolbar[collapsed="true"] + #TabsToolbar[tabsontop="false"]:last-child {
|
||||
> #nav-bar + #customToolbars + #PersonalToolbar[collapsed="true"] + .treestyletab-tabbar-toolbar[tabsontop="false"]:last-child {
|
||||
-moz-binding: url(treestyletab.xml#tabs-toolbar-drag);
|
||||
}
|
||||
#TabsToolbar:not([treestyletab-tabbar-position="top"]),
|
||||
#TabsToolbar[treestyletab-tabbar-position="top"]:not([treestyletab-tabbar-fixed="true"]) {
|
||||
.treestyletab-tabbar-toolbar:not([treestyletab-tabbar-position="top"]),
|
||||
.treestyletab-tabbar-toolbar[treestyletab-tabbar-position="top"]:not([treestyletab-tabbar-fixed="true"]) {
|
||||
line-height: 0 !important; /* to avoid an useless space above the tab bar */
|
||||
position: fixed !important;
|
||||
-moz-appearance: none !important;
|
||||
}
|
||||
#TabsToolbar:not([treestyletab-tabbar-position="top"])
|
||||
.treestyletab-tabbar-toolbar:not([treestyletab-tabbar-position="top"])
|
||||
.tabbrowser-tabs,
|
||||
#TabsToolbar[treestyletab-tabbar-position="top"]:not([treestyletab-tabbar-fixed="true"])
|
||||
.treestyletab-tabbar-toolbar[treestyletab-tabbar-position="top"]:not([treestyletab-tabbar-fixed="true"])
|
||||
.tabbrowser-tabs {
|
||||
overflow: hidden !important;
|
||||
}
|
||||
@ -358,7 +358,7 @@ tabbrowser[treestyletab-tabbar-autohide-mode="1"][treestyletab-tabbar-autohide="
|
||||
.tabbrowser-strip[treestyletab-tabbar-fixed="true"]+splitter,
|
||||
.tabbrowser-strip[treestyletab-print-preview="true"],
|
||||
.tabbrowser-strip[treestyletab-print-preview="true"]+splitter,
|
||||
#TabsToolbar[treestyletab-print-preview="true"],
|
||||
.treestyletab-tabbar-toolbar[treestyletab-print-preview="true"],
|
||||
tabbrowser[treestyletab-tabbar-autohide-mode="1"][treestyletab-print-preview="true"]
|
||||
.treestyletab-tabbar-toggler {
|
||||
visibility: collapse;
|
||||
@ -366,9 +366,9 @@ tabbrowser[treestyletab-tabbar-autohide-mode="1"][treestyletab-print-preview="tr
|
||||
|
||||
/* stylized window (opened by window.open() with features) */
|
||||
window[chromehidden~="toolbar"]
|
||||
.tabbrowser-strip[treestyletab-tabbar-placeholder="true"],
|
||||
.tabbrowser-strip.treestyletab-tabbar-placeholder,
|
||||
window[chromehidden~="toolbar"]
|
||||
.tabbrowser-strip[treestyletab-tabbar-placeholder="true"]+splitter {
|
||||
.tabbrowser-strip.treestyletab-tabbar-placeholder+splitter {
|
||||
visibility: collapse;
|
||||
}
|
||||
|
||||
|
@ -325,6 +325,8 @@ TreeStyleTabBrowser.prototype = {
|
||||
|
||||
var b = this.mTabBrowser;
|
||||
b.tabContainer.treeStyleTab = this;
|
||||
if (b.tabContainer.parentNode.localName == 'toolbar')
|
||||
b.tabContainer.parentNode.classList.add(this.kTABBAR_TOOLBAR);
|
||||
|
||||
this.tabsHash = {};
|
||||
this.tabStripPlaceHolder = null;
|
||||
@ -350,9 +352,8 @@ TreeStyleTabBrowser.prototype = {
|
||||
if (!placeHolder) {
|
||||
placeHolder = document.createElement('hbox');
|
||||
placeHolder.setAttribute('anonid', 'strip');
|
||||
placeHolder.setAttribute('class', 'tabbrowser-strip');
|
||||
placeHolder.setAttribute('class', 'tabbrowser-strip '+this.kTABBAR_PLACEHOLDER);
|
||||
placeHolder.setAttribute('layer', true); // https://bugzilla.mozilla.org/show_bug.cgi?id=590468
|
||||
placeHolder.setAttribute(this.kTABBAR_PLACEHOLDER, true);
|
||||
b.mTabBox.insertBefore(placeHolder, toggler.nextSibling);
|
||||
}
|
||||
if (placeHolder != this.tabStrip)
|
||||
|
@ -6,10 +6,10 @@
|
||||
.autoScroll
|
||||
.processAutoScroll(mouseMoveOrDragOverEvent);
|
||||
|
||||
license: The MIT License, Copyright (c) 2009-2010 SHIMODA "Piro" Hiroshi
|
||||
http://www.cozmixng.org/repos/piro/fx3-compatibility-lib/trunk/license.txt
|
||||
license: The MIT License, Copyright (c) 2009-2011 SHIMODA "Piro" Hiroshi
|
||||
http://github.com/piroor/fxaddonlibs/blob/master/license.txt
|
||||
original:
|
||||
http://www.cozmixng.org/repos/piro/fx3-compatibility-lib/trunk/autoScroll.js
|
||||
http://github.com/piroor/fxaddonlibs/blob/master/autoScroll.js
|
||||
*/
|
||||
|
||||
/* To work as a JS Code Module */
|
||||
@ -18,7 +18,7 @@ if (typeof window == 'undefined' ||
|
||||
this.EXPORTED_SYMBOLS = ['autoScroll'];
|
||||
|
||||
// If namespace.jsm is available, export symbols to the shared namespace.
|
||||
// See: http://www.cozmixng.org/repos/piro/fx3-compatibility-lib/trunk/namespace.jsm
|
||||
// See: http://github.com/piroor/fxaddonlibs/blob/master/namespace.jsm
|
||||
try {
|
||||
let ns = {};
|
||||
Components.utils.import('resource://treestyletab-modules/lib/namespace.jsm', ns);
|
||||
@ -30,7 +30,7 @@ if (typeof window == 'undefined' ||
|
||||
}
|
||||
|
||||
(function() {
|
||||
const currentRevision = 4;
|
||||
const currentRevision = 5;
|
||||
|
||||
if (!('piro.sakura.ne.jp' in window)) window['piro.sakura.ne.jp'] = {};
|
||||
|
||||
@ -123,16 +123,16 @@ if (typeof window == 'undefined' ||
|
||||
if (aTabBrowserChild.localName == 'tabbrowser') // itself
|
||||
return aTabBrowserChild;
|
||||
|
||||
if (aTabBrowserChild.tabbrowser) // tabs, Firefox 3.7 or later
|
||||
if (aTabBrowserChild.tabbrowser) // tabs, Firefox 4.0 or later
|
||||
return aTabBrowserChild.tabbrowser;
|
||||
|
||||
if (aTabBrowserChild.id == 'TabsToolbar') // tabs toolbar, Firefox 3.7 or later
|
||||
if (aTabBrowserChild.localName == 'toolbar') // tabs toolbar, Firefox 4.0 or later
|
||||
return aTabBrowserChild.getElementsByTagName('tabs')[0].tabbrowser;
|
||||
|
||||
var b = aTabBrowserChild.ownerDocument.evaluate(
|
||||
'ancestor::*[local-name()="tabbrowser"] | '+
|
||||
'ancestor::*[local-name()="tabs" and @tabbrowser] |'+
|
||||
'ancestor::*[local-name()="toolbar" and @id="TabsToolbar"]/descendant::*[local-name()="tabs"]',
|
||||
'ancestor::*[local-name()="toolbar"]/descendant::*[local-name()="tabs"]',
|
||||
aTabBrowserChild,
|
||||
null,
|
||||
Ci.nsIDOMXPathResult.FIRST_ORDERED_NODE_TYPE,
|
||||
|
@ -4,7 +4,7 @@
|
||||
* @version 1
|
||||
*
|
||||
* @license
|
||||
* The MIT License, Copyright (c) 2010 SHIMODA "Piro" Hiroshi
|
||||
* The MIT License, Copyright (c) 2010-2011 SHIMODA "Piro" Hiroshi
|
||||
* http://github.com/piroor/fxaddonlibs/blob/master/license.txt
|
||||
* @url http://github.com/piroor/fxaddonlibs/blob/master/confirmWithTab.js
|
||||
* @url http://github.com/piroor/fxaddonlibs
|
||||
@ -34,7 +34,7 @@ if (typeof namespace.Deferred == 'undefined')
|
||||
|
||||
var confirmWithTab;
|
||||
(function() {
|
||||
const currentRevision = 1;
|
||||
const currentRevision = 2;
|
||||
|
||||
var loadedRevision = 'confirmWithTab' in namespace ?
|
||||
namespace.confirmWithTab.revision :
|
||||
@ -118,7 +118,7 @@ var confirmWithTab;
|
||||
var b = aTabBrowserChild.ownerDocument.evaluate(
|
||||
'ancestor::*[local-name()="tabbrowser"] | '+
|
||||
'ancestor::*[local-name()="tabs"][@tabbrowser] |'+
|
||||
'ancestor::*[local-name()="toolbar"][@id="TabsToolbar"]/descendant::*[local-name()="tabs"]',
|
||||
'ancestor::*[local-name()="toolbar"]/descendant::*[local-name()="tabs"]',
|
||||
aTabBrowserChild,
|
||||
null,
|
||||
Ci.nsIDOMXPathResult.FIRST_ORDERED_NODE_TYPE,
|
||||
|
@ -118,6 +118,7 @@ var TreeStyleTabUtils = {
|
||||
kSPLITTER : 'treestyletab-splitter',
|
||||
kTABBAR_TOGGLER : 'treestyletab-tabbar-toggler',
|
||||
kTABBAR_PLACEHOLDER : 'treestyletab-tabbar-placeholder',
|
||||
kTABBAR_TOOLBAR : 'treestyletab-tabbar-toolbar',
|
||||
|
||||
/* event types, topics */
|
||||
kEVENT_TYPE_TAB_FOCUS_SWITCHING_KEY_DOWN : 'nsDOMTreeStyleTabFocusSwitchingKeyDown',
|
||||
@ -1003,7 +1004,7 @@ var TreeStyleTabUtils = {
|
||||
return this.evaluateXPath(
|
||||
'ancestor-or-self::*[contains(concat(" ", normalize-space(@class), " "), " tabbrowser-strip ")] | '+
|
||||
'ancestor-or-self::xul:tabs[@tabbrowser] | ' +
|
||||
'ancestor-or-self::xul:toolbar[@id="TabsToolbar"]/child::xul:tabs[@tabbrowser]',
|
||||
'ancestor-or-self::xul:toolbar/child::xul:tabs[@tabbrowser]',
|
||||
aNode,
|
||||
Ci.nsIDOMXPathResult.FIRST_ORDERED_NODE_TYPE
|
||||
).singleNodeValue;
|
||||
@ -1082,7 +1083,7 @@ var TreeStyleTabUtils = {
|
||||
if (aTabBrowserChild.tabbrowser) // tabs, Firefox 4.0 or later
|
||||
return aTabBrowserChild.tabbrowser;
|
||||
|
||||
if (aTabBrowserChild.id == 'TabsToolbar') // tabs toolbar, Firefox 4.0 or later
|
||||
if (aTabBrowserChild.localName == 'toolbar') // tabs toolbar, Firefox 4.0 or later
|
||||
return aTabBrowserChild.getElementsByTagName('tabs')[0].tabbrowser;
|
||||
|
||||
// tab context menu on Firefox 4.0
|
||||
@ -1097,7 +1098,7 @@ var TreeStyleTabUtils = {
|
||||
var b = this.evaluateXPath(
|
||||
'ancestor::xul:tabbrowser | '+
|
||||
'ancestor::xul:tabs[@tabbrowser] |'+
|
||||
'ancestor::xul:toolbar[@id="TabsToolbar"]/descendant::xul:tabs',
|
||||
'ancestor::xul:toolbar/descendant::xul:tabs',
|
||||
aTabBrowserChild,
|
||||
Ci.nsIDOMXPathResult.FIRST_ORDERED_NODE_TYPE
|
||||
).singleNodeValue;
|
||||
|
@ -18,19 +18,19 @@
|
||||
/* vertical tree */
|
||||
|
||||
.tabbrowser-strip[treestyletab-style~="square"][treestyletab-tabbar-position="left"]:not([treestyletab-tabbar-transparent="full"]),
|
||||
#TabsToolbar[treestyletab-style~="square"][treestyletab-tabbar-position="left"]:not([treestyletab-tabbar-transparent="full"]) {
|
||||
.treestyletab-tabbar-toolbar[treestyletab-style~="square"][treestyletab-tabbar-position="left"]:not([treestyletab-tabbar-transparent="full"]) {
|
||||
border-right: 1px solid ThreeDShadow !important;
|
||||
-moz-border-right-colors: none !important;
|
||||
}
|
||||
.tabbrowser-strip[treestyletab-style~="square"][treestyletab-tabbar-position="right"]:not([treestyletab-tabbar-transparent="full"]),
|
||||
#TabsToolbar[treestyletab-style~="square"][treestyletab-tabbar-position="right"]:not([treestyletab-tabbar-transparent="full"]) {
|
||||
.treestyletab-tabbar-toolbar[treestyletab-style~="square"][treestyletab-tabbar-position="right"]:not([treestyletab-tabbar-transparent="full"]) {
|
||||
border-left: 1px solid ThreeDShadow !important;
|
||||
-moz-border-right-colors: none !important;
|
||||
}
|
||||
|
||||
|
||||
/* splitter for floating & autohide tab bar */
|
||||
#TabsToolbar .treestyletab-splitter {
|
||||
.treestyletab-tabbar-toolbar .treestyletab-splitter {
|
||||
width: 6px;
|
||||
-moz-appearance: none;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user