From 026f9116f144a5ff46f82f3504c3c2b615debe37 Mon Sep 17 00:00:00 2001 From: anna Date: Mon, 21 Oct 2013 16:05:00 +0200 Subject: [PATCH] scopes order: do not override stored order (IDEA-46994; IDEA-115020) --- .../ScopeChooserConfigurable.java | 36 ++++++++----------- 1 file changed, 14 insertions(+), 22 deletions(-) diff --git a/platform/lang-impl/src/com/intellij/ide/util/scopeChooser/ScopeChooserConfigurable.java b/platform/lang-impl/src/com/intellij/ide/util/scopeChooser/ScopeChooserConfigurable.java index 7c76f79920f0..1d8f3dc02d94 100644 --- a/platform/lang-impl/src/com/intellij/ide/util/scopeChooser/ScopeChooserConfigurable.java +++ b/platform/lang-impl/src/com/intellij/ide/util/scopeChooser/ScopeChooserConfigurable.java @@ -113,8 +113,21 @@ public class ScopeChooserConfigurable extends MasterDetailsComponent implements @Override public void reset() { - reloadTree(); + myRoot.removeAllChildren(); + loadScopes(mySharedScopesManager); + loadScopes(myLocalScopesManager); + super.reset(); + + final List order = getScopesState().myOrder; + TreeUtil.sort(myRoot, new Comparator() { + @Override + public int compare(final DefaultMutableTreeNode o1, final DefaultMutableTreeNode o2) { + final int idx1 = order.indexOf(((MyNode)o1).getDisplayName()); + final int idx2 = order.indexOf(((MyNode)o2).getDisplayName()); + return idx1 - idx2; + } + }); } @@ -194,27 +207,6 @@ public class ScopeChooserConfigurable extends MasterDetailsComponent implements mySharedScopesManager.setScopes(sharedScopes.toArray(new NamedScope[sharedScopes.size()])); } - private void reloadTree() { - myRoot.removeAllChildren(); - loadScopes(mySharedScopesManager); - loadScopes(myLocalScopesManager); - - if (isModified()) { - loadStateOrder(); - } - - - final List order = getScopesState().myOrder; - TreeUtil.sort(myRoot, new Comparator() { - @Override - public int compare(final DefaultMutableTreeNode o1, final DefaultMutableTreeNode o2) { - final int idx1 = order.indexOf(((MyNode)o1).getDisplayName()); - final int idx2 = order.indexOf(((MyNode)o2).getDisplayName()); - return idx1 - idx2; - } - }); - } - private void loadStateOrder() { final List order = getScopesState().myOrder; order.clear();