新しく開かれたタブについて、そのタブが見える位置までスクロールした時に現在のタブがスクロールアウトしてしまわないのであれば、そのタブの位置までスクロールするようにした

git-svn-id: http://www.cozmixng.org/repos/piro/treestyletab/trunk@7032 599a83e7-65a4-db11-8015-0010dcdd6dc2
This commit is contained in:
piro 2010-07-25 16:06:03 +00:00
parent 6f54d8beba
commit 32cb03d981

View File

@ -2046,6 +2046,8 @@ TreeStyleTabBrowser.prototype = {
}, 0, this);
}
this.scrollToTab(tab, true);
return true;
},
_checkRestoringWindowTimerOnTabAdded : null,
@ -4553,7 +4555,7 @@ TreeStyleTabBrowser.prototype = {
},
smoothScrollTask : null,
scrollToTab : function TSTBrowser_scrollToTab(aTab)
scrollToTab : function TSTBrowser_scrollToTab(aTab, aOnlyWhenCurrentTabIsInViewport)
{
if (!aTab || !aTab.parentNode || this.isTabInViewport(aTab))
return;
@ -4583,6 +4585,13 @@ TreeStyleTabBrowser.prototype = {
(targetTabBox.screenY + yOffset - baseTabBox.screenY) - (targetTabBox.height * 0.5) :
(targetTabBox.screenY + yOffset - baseTabBox.screenY) - scrollBoxObject.height + (targetTabBox.height * 1.5) ;
if (aOnlyWhenCurrentTabIsInViewport && b.selectedTab != aTab) {
let box = b.selectedTab.boxObject;
if (targetTabBox.screenX - box.screenX + baseTabBox.width + xOffset > scrollBoxObject.width ||
targetTabBox.screenY - box.screenY + baseTabBox.height + yOffset > scrollBoxObject.height)
return;
}
this.scrollTo(targetX, targetY);
},