diff --git a/platform/editor-ui-api/src/com/intellij/ide/ui/experimental/toolbar/ExperimentalToolbarSettings.kt b/platform/editor-ui-api/src/com/intellij/ide/ui/experimental/toolbar/ExperimentalToolbarSettings.kt index 3d2a0415444c..3c7ccdf4acfe 100644 --- a/platform/editor-ui-api/src/com/intellij/ide/ui/experimental/toolbar/ExperimentalToolbarSettings.kt +++ b/platform/editor-ui-api/src/com/intellij/ide/ui/experimental/toolbar/ExperimentalToolbarSettings.kt @@ -53,6 +53,8 @@ class ExperimentalToolbarSettings private constructor() : ToolbarSettings, toolbarState.state = getToolbarStateByVisibilityFlags(false, oldState.showMainToolbar, false, oldState.showNavigationBar) + logger.info("Loading old state, main toolbar: ${oldState.showMainToolbar} navBar ${oldState.showNavigationBar}") + } else { toolbarState = state @@ -63,6 +65,7 @@ class ExperimentalToolbarSettings private constructor() : ToolbarSettings, fun getToolbarStateByVisibilityFlags(newToolbarEnabled: Boolean, oldToolbarVisible: Boolean, newToolbarVisible: Boolean, navBarVisible: Boolean): ExperimentalToolbarStateEnum { if (oldToolbarVisible && newToolbarVisible) { + logger.error("Illegal double toolbar visible state") throw IllegalStateException() } if (newToolbarEnabled && newToolbarVisible) { @@ -107,7 +110,7 @@ class ExperimentalToolbarSettings private constructor() : ToolbarSettings, private fun updateSettingsState() { UISettings.instance.state.showNavigationBar = toolbarState.state.navBarVisible UISettings.instance.state.showMainToolbar = toolbarState.state.oldToolbarVisible - logger.info("showNavigationBar: $UISettings.instance.state.showNavigationBar showMainToolbar: $UISettings.instance.state.showMainToolbar") + logger.info("showNavigationBar: ${UISettings.instance.state.showNavigationBar} showMainToolbar: ${UISettings.instance.state.showMainToolbar}") } override fun isToolbarVisible(): Boolean { diff --git a/platform/lang-impl/src/com/intellij/ide/navigationToolbar/NavBarRootPaneExtension.java b/platform/lang-impl/src/com/intellij/ide/navigationToolbar/NavBarRootPaneExtension.java index d327f7beb1f6..5e3261bb0062 100644 --- a/platform/lang-impl/src/com/intellij/ide/navigationToolbar/NavBarRootPaneExtension.java +++ b/platform/lang-impl/src/com/intellij/ide/navigationToolbar/NavBarRootPaneExtension.java @@ -8,6 +8,7 @@ import com.intellij.ide.ui.customization.CustomActionsSchema; import com.intellij.ide.ui.customization.CustomisedActionGroup; import com.intellij.openapi.actionSystem.*; import com.intellij.openapi.actionSystem.ex.ComboBoxAction; +import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.project.Project; import com.intellij.openapi.wm.IdeRootPaneNorthExtension; import com.intellij.openapi.wm.impl.IdeFrameImpl; @@ -25,6 +26,8 @@ import java.awt.*; * @author Konstantin Bulenkov */ public final class NavBarRootPaneExtension extends IdeRootPaneNorthExtension { + private Logger logger = Logger.getInstance(NavBarRootPaneExtension.class); + private JComponent myWrapperPanel; @NonNls public static final String NAV_BAR = "NavBar"; @SuppressWarnings("StatefulEp") @@ -51,6 +54,7 @@ public final class NavBarRootPaneExtension extends IdeRootPaneNorthExtension { @Override public void revalidate() { final UISettings settings = UISettings.getInstance(); + logger.info("Revalidate in the navbarRootPane, toolbar visible: " + isShowToolPanel(settings)); if (isShowToolPanel(settings)) { toggleRunPanel(false); toggleRunPanel(true); @@ -63,8 +67,10 @@ public final class NavBarRootPaneExtension extends IdeRootPaneNorthExtension { } public boolean isMainToolbarVisible() { - return !UISettings.getInstance().getPresentationMode() && + var b = !UISettings.getInstance().getPresentationMode() && (UISettings.getInstance().getShowMainToolbar() || !myNavToolbarGroupExist); + logger.info("Toolbar visibility: " + b); + return b; } public static boolean runToolbarExists() { @@ -91,7 +97,6 @@ public final class NavBarRootPaneExtension extends IdeRootPaneNorthExtension { }; addNavigationBarPanel(myWrapperPanel); - toggleRunPanel(isShowToolPanel(UISettings.getInstance())); } return myWrapperPanel; @@ -152,13 +157,6 @@ public final class NavBarRootPaneExtension extends IdeRootPaneNorthExtension { } } - private boolean isUndocked() { - final Window ancestor = SwingUtilities.getWindowAncestor(myWrapperPanel); - return (ancestor != null && !(ancestor instanceof IdeFrameImpl)) - || !UISettings.getInstance().getShowMainToolbar() - || !UISettings.getInstance().getPresentationMode(); - } - private static boolean isNeedGap(final AnAction group) { final AnAction firstAction = getFirstAction(group); return firstAction instanceof ComboBoxAction; diff --git a/platform/lang-impl/src/com/intellij/ide/navigationToolbar/experimental/NewToolbarRootPaneExtension.kt b/platform/lang-impl/src/com/intellij/ide/navigationToolbar/experimental/NewToolbarRootPaneExtension.kt index b7ebef50197b..c219ad567469 100644 --- a/platform/lang-impl/src/com/intellij/ide/navigationToolbar/experimental/NewToolbarRootPaneExtension.kt +++ b/platform/lang-impl/src/com/intellij/ide/navigationToolbar/experimental/NewToolbarRootPaneExtension.kt @@ -112,6 +112,7 @@ class NewToolbarRootPaneExtension(val myProject: Project) : IdeRootPaneNorthExte myPanel.isVisible = myPanelWrapper.isVisible myLeftPanel.isVisible = myPanelWrapper.isVisible myRightPanel.isVisible = myPanelWrapper.isVisible + logger.info("finish revalidate newtoolbar") } else { myPanel.isVisible = false