Ext.define('Ext.rtl.layout.container.boxOverflow.Scroller', { override: 'Ext.layout.container.boxOverflow.Scroller', scrollLeft: function(internal) { var me = this, layout = me.layout; if (layout.direction === 'horizontal' && layout.owner.getHierarchyState().rtl) { if (internal) { me.scrollBy(me.scrollIncrement, false); } else { me.scrollRight(true); } } else { me.callParent(); } }, scrollRight: function(internal) { var me = this, layout = me.layout; if (layout.direction === 'horizontal' && layout.owner.getHierarchyState().rtl) { if (internal) { me.scrollBy(-me.scrollIncrement, false); } else { me.scrollLeft(true); } } else { me.callParent(); } }, atExtremeBefore: function(internal) { var layout = this.layout; if (!internal && layout.direction === 'horizontal' && layout.owner.getHierarchyState().rtl) { return this.atExtremeAfter(true); } else { return this.callParent(); } }, atExtremeAfter: function(internal) { var layout = this.layout; if (!internal && layout.direction === 'horizontal' && layout.owner.getHierarchyState().rtl) { return this.atExtremeBefore(true); } else { return this.callParent(); } } });