diff options
author | Matthias Sohn | 2014-10-12 21:22:41 +0000 |
---|---|---|
committer | Gerrit Code Review @ Eclipse.org | 2014-10-12 21:22:41 +0000 |
commit | 31e00a42f09f0579e05b63e40ec0af4c8a5c7ea2 (patch) | |
tree | f59f1afdd4efa916fc0cf09b9945acb759df20f1 | |
parent | 07fca3f5dda46def9bea26fc839cae91b2bb6a8e (diff) | |
parent | 0d87158f24d81071e3c4ca20a50495ef4e8f74fd (diff) | |
download | egit-31e00a42f09f0579e05b63e40ec0af4c8a5c7ea2.tar.gz egit-31e00a42f09f0579e05b63e40ec0af4c8a5c7ea2.tar.xz egit-31e00a42f09f0579e05b63e40ec0af4c8a5c7ea2.zip |
Merge "Do not check all repositories when importing repositories"
-rw-r--r-- | org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/repository/RepositorySearchDialog.java | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/repository/RepositorySearchDialog.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/repository/RepositorySearchDialog.java index beda37b1c4..2f80f5e375 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/repository/RepositorySearchDialog.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/repository/RepositorySearchDialog.java @@ -102,6 +102,8 @@ public class RepositorySearchDialog extends WizardPage { private final IEclipsePreferences prefs = InstanceScope.INSTANCE .getNode(Activator.getPluginId()); + private boolean isUserModifiedTreeSelection; + private static final class ContentProvider implements ITreeContentProvider { private final Object[] children = new Object[0]; @@ -298,11 +300,16 @@ public class RepositorySearchDialog extends WizardPage { @Override public boolean isElementVisible(Viewer viewer, Object element) { - - if (getCheckedItems().contains(element)) - return true; - - return super.isElementVisible(viewer, element); + boolean elementVisible = super + .isElementVisible(viewer, element); + // Only user selected elements are not searched. + if (getCheckedItems().contains(element)) { + if (!isUserModifiedTreeSelection) + fTreeViewer.setChecked(element, elementVisible); + else + return true; + } + return elementVisible; } }; @@ -312,6 +319,7 @@ public class RepositorySearchDialog extends WizardPage { fTreeViewer.addCheckStateListener(new ICheckStateListener() { public void checkStateChanged(CheckStateChangedEvent event) { + isUserModifiedTreeSelection = true; enableOk(); } }); @@ -514,6 +522,7 @@ public class RepositorySearchDialog extends WizardPage { fTreeViewer.setInput(validDirs); // this sets all to selected fTreeViewer.setAllChecked(true); + isUserModifiedTreeSelection = false; enableOk(); } |