boolean (SingleRowPassInfo data, TabLabel label, int length) { if (data.requiredLength > data.toFitLength && !(label.isPinned() && TabLayout.showPinnedTabsSeparately())) { length = getStrategy().getLengthIncrement(label.getPreferredSize()); int moreRectSize = getMoreRectAxisSize(); if (data.entryPointAxisSize == 0) { Insets insets = myTabs.getActionsInsets(); moreRectSize += insets.left + insets.right; } if (data.position + length > data.toFitLength - moreRectSize) { if (getStrategy().drawPartialOverflowTabs()) { int clippedLength = ExperimentalUI.isNewUI() && myTabs.getTabsPosition().isSide() ? length : data.toFitLength - data.position - moreRectSize; final Rectangle rec = getStrategy().getLayoutRect(data, data.position, clippedLength); myTabs.layout(label, rec); } label.setAlignmentToCenter(false); return false; } } return super.applyTabLayout(data, label, length); }