RunDashboard: Change content toolbar layout on show/hide configurations

This commit is contained in:
Konstantin Aleev
2017-10-10 19:46:17 +03:00
parent 53ae3a88ab
commit aebeea8bf7
@@ -146,7 +146,7 @@ public class RunDashboardContent extends JPanel implements TreeContent, Disposab
}
RunnerLayoutUiImpl layoutUiImpl = (RunnerLayoutUiImpl)layoutUi;
layoutUiImpl.setLeftToolbarVisible(false);
layoutUiImpl.setContentToolbarBefore(false);
layoutUiImpl.setContentToolbarBefore(!RunDashboardManager.getInstance(myProject).isShowConfigurations());
List<AnAction> leftToolbarActions = layoutUiImpl.getActions();
myContentActions.put(content, leftToolbarActions);
updateContentToolbar(content);
@@ -397,6 +397,18 @@ public class RunDashboardContent extends JPanel implements TreeContent, Disposab
public void updateContent(boolean withStructure) {
AppUIUtil.invokeLaterIfProjectAlive(myProject, () -> {
boolean showConfigurations = RunDashboardManager.getInstance(myProject).isShowConfigurations();
Content selectedContent = myContentManager.getSelectedContent();
if (selectedContent != null) {
RunContentDescriptor descriptor = RunContentManagerImpl.getRunContentDescriptorByContent(selectedContent);
if (descriptor != null) {
RunnerLayoutUi layoutUi = descriptor.getRunnerLayoutUi();
if (layoutUi instanceof RunnerLayoutUiImpl) {
((RunnerLayoutUiImpl)layoutUi).setContentToolbarBefore(!showConfigurations);
}
}
}
if (myTreePanel.isVisible() ^ showConfigurations) {
setTreeVisible(showConfigurations);