diff --git a/platform/platform-api/src/com/intellij/ui/tabs/impl/JBTabsImpl.java b/platform/platform-api/src/com/intellij/ui/tabs/impl/JBTabsImpl.java index 3ffc6eb3d68d..beab46c97e22 100644 --- a/platform/platform-api/src/com/intellij/ui/tabs/impl/JBTabsImpl.java +++ b/platform/platform-api/src/com/intellij/ui/tabs/impl/JBTabsImpl.java @@ -67,6 +67,9 @@ public class JBTabsImpl extends JComponent public static final DataKey NAVIGATION_ACTIONS_KEY = DataKey.create("JBTabs"); @NonNls public static final Key SIDE_TABS_SIZE_LIMIT_KEY = Key.create("SIDE_TABS_SIZE_LIMIT_KEY"); + static final int MIN_TAB_WIDTH = JBUI.scale(75); + public static final int DEFAULT_MAX_TAB_WIDTH = JBUI.scale(300); + public static final Color MAC_AQUA_BG_COLOR = Gray._200; private static final Comparator ABC_COMPARATOR = new Comparator() { @Override diff --git a/platform/platform-api/src/com/intellij/ui/tabs/impl/TabsSideSplitter.java b/platform/platform-api/src/com/intellij/ui/tabs/impl/TabsSideSplitter.java index 13645d557d44..ca2eb4dae1b5 100644 --- a/platform/platform-api/src/com/intellij/ui/tabs/impl/TabsSideSplitter.java +++ b/platform/platform-api/src/com/intellij/ui/tabs/impl/TabsSideSplitter.java @@ -19,7 +19,6 @@ import com.intellij.openapi.ui.OnePixelDivider; import com.intellij.openapi.ui.Splittable; import com.intellij.ui.tabs.JBTabsPosition; import com.intellij.ui.tabs.TabInfo; -import com.intellij.util.ui.JBUI; import com.intellij.util.ui.UIUtil; import org.jetbrains.annotations.NotNull; @@ -30,10 +29,9 @@ import java.beans.PropertyChangeListener; class TabsSideSplitter implements Splittable, PropertyChangeListener { - private static final int MIN_TAB_WIDTH = JBUI.scale(75); @NotNull private final JBTabsImpl myTabs; - private int mySideTabsLimit = 0; + private int mySideTabsLimit = JBTabsImpl.DEFAULT_MAX_TAB_WIDTH; private boolean myDragging; private final OnePixelDivider myDivider; @@ -50,17 +48,17 @@ class TabsSideSplitter implements Splittable, PropertyChangeListener { @Override public float getMinProportion(boolean first) { - return Math.min(.5F, (float)MIN_TAB_WIDTH / Math.max(1, myTabs.getWidth())); + return Math.min(.5F, (float)JBTabsImpl.MIN_TAB_WIDTH / Math.max(1, myTabs.getWidth())); } @Override public void setProportion(float proportion) { int width = myTabs.getWidth(); if (myTabs.getTabsPosition() == JBTabsPosition.left) { - setSideTabsLimit((int)Math.max(MIN_TAB_WIDTH, proportion * width)); + setSideTabsLimit((int)Math.max(JBTabsImpl.MIN_TAB_WIDTH, proportion * width)); } else if (myTabs.getTabsPosition() == JBTabsPosition.right) { - setSideTabsLimit(width - (int)Math.max(MIN_TAB_WIDTH, proportion * width)); + setSideTabsLimit(width - (int)Math.max(JBTabsImpl.MIN_TAB_WIDTH, proportion * width)); } } @@ -113,7 +111,7 @@ class TabsSideSplitter implements Splittable, PropertyChangeListener { public void propertyChange(PropertyChangeEvent evt) { if (evt.getSource() != myTabs) return; Integer limit = UIUtil.getClientProperty(myTabs, JBTabsImpl.SIDE_TABS_SIZE_LIMIT_KEY); - if (limit == null) limit = 0; + if (limit == null) limit = JBTabsImpl.DEFAULT_MAX_TAB_WIDTH; setSideTabsLimit(limit); } } diff --git a/platform/platform-impl/src/com/intellij/openapi/fileEditor/impl/EditorsSplitters.java b/platform/platform-impl/src/com/intellij/openapi/fileEditor/impl/EditorsSplitters.java index 3e47b6d9d0e0..b1a218b155ae 100644 --- a/platform/platform-impl/src/com/intellij/openapi/fileEditor/impl/EditorsSplitters.java +++ b/platform/platform-impl/src/com/intellij/openapi/fileEditor/impl/EditorsSplitters.java @@ -854,7 +854,8 @@ public class EditorsSplitters extends IdePanePanel implements UISettingsListener if (tabbedPane != null) { try { int limit = - Integer.parseInt(file.getParentElement().getAttributeValue(JBTabsImpl.SIDE_TABS_SIZE_LIMIT_KEY.toString(), "0")); + Integer.parseInt(file.getParentElement().getAttributeValue(JBTabsImpl.SIDE_TABS_SIZE_LIMIT_KEY.toString(), + String.valueOf(JBTabsImpl.DEFAULT_MAX_TAB_WIDTH))); UIUtil.putClientProperty(tabbedPane.getComponent(), JBTabsImpl.SIDE_TABS_SIZE_LIMIT_KEY, limit); } catch (NumberFormatException e) {