タブの内容を左右反転している時、クローズボックスの表示・非表示が切り替わった後で
タブの内容の並び順が壊れる問題を修正 git-svn-id: http://www.cozmixng.org/repos/piro/treestyletab/trunk@4410 599a83e7-65a4-db11-8015-0010dcdd6dc2
This commit is contained in:
parent
a3c4b4552e
commit
d6fd326493
@ -214,11 +214,11 @@ TreeStyleTabBrowser.prototype = {
|
|||||||
|
|
||||||
eval('b.mTabContainer.adjustTabstrip = '+
|
eval('b.mTabContainer.adjustTabstrip = '+
|
||||||
b.mTabContainer.adjustTabstrip.toSource().replace(
|
b.mTabContainer.adjustTabstrip.toSource().replace(
|
||||||
/(\})(\)?)$/,
|
/(\}\)?)$/,
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
var b = TreeStyleTabService.getTabBrowserFromChild(this);
|
var b = TreeStyleTabService.getTabBrowserFromChild(this);
|
||||||
b.treeStyleTab.updateInvertedTabContentsOrder(true);
|
b.treeStyleTab.updateInvertedTabContentsOrder(true);
|
||||||
$1$2]]>
|
$1]]>
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -661,8 +661,14 @@ TreeStyleTabBrowser.prototype = {
|
|||||||
var counter = document.getAnonymousElementByAttribute(aTab, 'class', this.kCOUNTER_CONTAINER);
|
var counter = document.getAnonymousElementByAttribute(aTab, 'class', this.kCOUNTER_CONTAINER);
|
||||||
var inverted = this.mTabBrowser.getAttribute(this.kTAB_CONTENTS_INVERTED) == 'true';
|
var inverted = this.mTabBrowser.getAttribute(this.kTAB_CONTENTS_INVERTED) == 'true';
|
||||||
|
|
||||||
// top-level contents
|
|
||||||
var nodes = Array.slice(document.getAnonymousNodes(aTab));
|
var nodes = Array.slice(document.getAnonymousNodes(aTab));
|
||||||
|
|
||||||
|
// reset order
|
||||||
|
nodes.forEach(function(aNode, aIndex) {
|
||||||
|
aNode.setAttribute('ordinal', aIndex);
|
||||||
|
}, this);
|
||||||
|
|
||||||
|
// rearrange top-level contents
|
||||||
nodes.splice(nodes.indexOf(close), 1);
|
nodes.splice(nodes.indexOf(close), 1);
|
||||||
if (inverted) {
|
if (inverted) {
|
||||||
if (this.mTabBrowser.getAttribute(this.kCLOSEBOX_INVERTED) == 'true')
|
if (this.mTabBrowser.getAttribute(this.kCLOSEBOX_INVERTED) == 'true')
|
||||||
@ -682,7 +688,7 @@ TreeStyleTabBrowser.prototype = {
|
|||||||
aNode.setAttribute('ordinal', (count - aIndex + 1) * 100);
|
aNode.setAttribute('ordinal', (count - aIndex + 1) * 100);
|
||||||
}, this);
|
}, this);
|
||||||
|
|
||||||
// contents in "tab-image-middle"
|
// rearrange contents in "tab-image-middle"
|
||||||
nodes = Array.slice(label.parentNode.childNodes);
|
nodes = Array.slice(label.parentNode.childNodes);
|
||||||
nodes.splice(nodes.indexOf(counter), 1);
|
nodes.splice(nodes.indexOf(counter), 1);
|
||||||
if (inverted) nodes.reverse();
|
if (inverted) nodes.reverse();
|
||||||
@ -697,19 +703,13 @@ TreeStyleTabBrowser.prototype = {
|
|||||||
|
|
||||||
updateInvertedTabContentsOrder : function(aAll)
|
updateInvertedTabContentsOrder : function(aAll)
|
||||||
{
|
{
|
||||||
if (this.getTreePref('tabbar.position') != 'right' ||
|
if (!this.getTreePref('tabbar.invertTabContents')) return;
|
||||||
!this.getTreePref('tabbar.invertTabContents')) return;
|
|
||||||
|
|
||||||
window.setTimeout(function(aSelf) {
|
window.setTimeout(function(aSelf) {
|
||||||
var b = aSelf.mTabBrowser;
|
var b = aSelf.mTabBrowser;
|
||||||
if (aAll) {
|
var tabs = aAll ? aSelf.getTabsArray(b) : [b.selectedTab] ;
|
||||||
aSelf.getTabsArray(b).forEach(function(aTab) {
|
tabs.forEach(function(aTab) {
|
||||||
aSelf.initTabContentsOrder(aTab);
|
aSelf.initTabContentsOrder(aTab);
|
||||||
});
|
});
|
||||||
}
|
|
||||||
else {
|
|
||||||
aSelf.initTabContentsOrder(b.selectedTab);
|
|
||||||
}
|
|
||||||
}, 0, this);
|
}, 0, this);
|
||||||
},
|
},
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user