From 1012d9275641b07ba9f7e5c05473bad656a0af39 Mon Sep 17 00:00:00 2001 From: Yaroslav Lepenkin Date: Wed, 8 Apr 2015 18:09:52 +0300 Subject: [PATCH] Set initial focus on options tree in configure code style on selected fragment dialog --- .../CodeFragmentCodeStyleSettingsPanel.java | 12 +++++++++++- .../ConfigureCodeStyleOnSelectedFragment.java | 6 ++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/platform/lang-impl/src/com/intellij/formatting/contextConfiguration/CodeFragmentCodeStyleSettingsPanel.java b/platform/lang-impl/src/com/intellij/formatting/contextConfiguration/CodeFragmentCodeStyleSettingsPanel.java index a0a9b77f1872..ff0186cba05b 100644 --- a/platform/lang-impl/src/com/intellij/formatting/contextConfiguration/CodeFragmentCodeStyleSettingsPanel.java +++ b/platform/lang-impl/src/com/intellij/formatting/contextConfiguration/CodeFragmentCodeStyleSettingsPanel.java @@ -39,6 +39,7 @@ class CodeFragmentCodeStyleSettingsPanel extends TabbedLanguageCodeStylePanel { private final CodeStyleSettingsCodeFragmentFilter.CodeStyleSettingsToShow mySettingsToShow; private final SelectedTextFormatter mySelectedTextFormatter; + private SpacesPanelWithoutPreview mySpacesPanel; public CodeFragmentCodeStyleSettingsPanel(@NotNull CodeStyleSettings settings, @NotNull CodeStyleSettingsCodeFragmentFilter.CodeStyleSettingsToShow settingsToShow, @@ -63,11 +64,16 @@ class CodeFragmentCodeStyleSettingsPanel extends TabbedLanguageCodeStylePanel { @Override protected void initTabs(CodeStyleSettings settings) { - addTab(new SpacesPanelWithoutPreview(settings)); + mySpacesPanel = new SpacesPanelWithoutPreview(settings); + addTab(mySpacesPanel); addTab(new WrappingAndBracesPanelWithoutPreview(settings)); reset(getSettings()); } + public JComponent getPreferredFocusedComponent() { + return mySpacesPanel.getPreferredFocusedComponent(); + } + public static CodeStyleSettingsCodeFragmentFilter.CodeStyleSettingsToShow calcSettingNamesToShow(CodeStyleSettingsCodeFragmentFilter filter) { return filter.getFieldNamesAffectingCodeFragment(SPACING_SETTINGS, WRAPPING_AND_BRACES_SETTINGS); } @@ -129,6 +135,10 @@ class CodeFragmentCodeStyleSettingsPanel extends TabbedLanguageCodeStylePanel { protected String getPreviewText() { return null; } + + public JComponent getPreferredFocusedComponent() { + return myOptionsTree; + } } private class WrappingAndBracesPanelWithoutPreview extends MyWrappingAndBracesPanel { diff --git a/platform/lang-impl/src/com/intellij/formatting/contextConfiguration/ConfigureCodeStyleOnSelectedFragment.java b/platform/lang-impl/src/com/intellij/formatting/contextConfiguration/ConfigureCodeStyleOnSelectedFragment.java index cbcb71b5aae9..2ee840066085 100644 --- a/platform/lang-impl/src/com/intellij/formatting/contextConfiguration/ConfigureCodeStyleOnSelectedFragment.java +++ b/platform/lang-impl/src/com/intellij/formatting/contextConfiguration/ConfigureCodeStyleOnSelectedFragment.java @@ -121,6 +121,12 @@ public class ConfigureCodeStyleOnSelectedFragment implements IntentionAction { init(); } + @Nullable + @Override + public JComponent getPreferredFocusedComponent() { + return myTabbedLanguagePanel.getPreferredFocusedComponent(); + } + @Nullable @Override protected JComponent createCenterPanel() {