fix for bug #343370. additional scenario where tab scrolling does not handle window resize well. cache the tab strip width and only adjust the tabstrip, scroll and ensure the selected tab is visible if the width changes. r=asaf
git-svn-id: svn://10.0.0.236/trunk@201479 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
@@ -2414,14 +2414,21 @@
|
||||
|
||||
var self = this;
|
||||
function onResize() {
|
||||
self.adjustTabstrip(false);
|
||||
self.mTabstrip.scrollBoxObject
|
||||
.ensureElementIsVisible(self.selectedItem);
|
||||
var width = self.mTabstrip.boxObject.width;
|
||||
if (width != self.mTabstripWidth) {
|
||||
self.adjustTabstrip(false);
|
||||
self.mTabstrip.scrollByIndex(1);
|
||||
self.mTabstrip.scrollBoxObject
|
||||
.ensureElementIsVisible(self.selectedItem);
|
||||
self.mTabstripWidth = width;
|
||||
}
|
||||
}
|
||||
window.addEventListener("resize", onResize, false);
|
||||
]]>
|
||||
</constructor>
|
||||
|
||||
<field name="mTabstripWidth">0</field>
|
||||
|
||||
<field name="mTabstrip">
|
||||
document.getAnonymousElementByAttribute(this, "anonid", "arrowscrollbox");
|
||||
</field>
|
||||
@@ -2563,7 +2570,7 @@
|
||||
<handlers>
|
||||
<handler event="TabOpen" action="this.adjustTabstrip(false);"/>
|
||||
<handler event="TabClose" action="this.adjustTabstrip(true);"/>
|
||||
<handler event="TabSelect" action="this._handleTabSelect()"/>
|
||||
<handler event="TabSelect" action="this._handleTabSelect();"/>
|
||||
</handlers>
|
||||
</binding>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user