[EGIT PATCH 24/31] Clone wizard: force dir to suggested path only if repo selection change
- From
- Marek Zawirski <marek.zawirski@gmail.com>
- Date
- Aug 17, 2008, 20:44 UTC
- Message-ID
- <1219005852-21496-25-git-send-email-marek.zawirski@gmail.com>
- In-Reply-To
- <1219005852-21496-24-git-send-email-marek.zawirski@gmail.com>
When user moves backward in wizard from destination page to source branch selection, then moves forward, we shouldn't overwrite his/her directory selection in destination page. Let's do it only when repository selection changes.
Signed-off-by: Marek Zawirski <marek.zawirski@gmail.com> --- .../ui/internal/clone/CloneDestinationPage.java | 16 ++++++++++------ 1 files changed, 10 insertions(+), 6 deletions(-)
diff --git a/org.spearce.egit.ui/src/org/spearce/egit/ui/internal/clone/CloneDestinationPage.java b/org.spearce.egit.ui/src/org/spearce/egit/ui/internal/clone/CloneDestinationPage.java index 97f166a..508781d 100644 --- a/org.spearce.egit.ui/src/org/spearce/egit/ui/internal/clone/CloneDestinationPage.java +++ b/org.spearce.egit.ui/src/org/spearce/egit/ui/internal/clone/CloneDestinationPage.java @@ -278,15 +278,19 @@ class CloneDestinationPage extends WizardPage { checkPage(); return; } - validatedRepoSelection = sourcePage.getSelection(); + + if (!sourcePage.selectionEquals(validatedRepoSelection)) { + validatedRepoSelection = sourcePage.getSelection(); + // update repo-related selection only if it changed + final String n = getSuggestedName(); + setDescription(NLS.bind(UIText.CloneDestinationPage_description, n)); + directoryText.setText(new File(ResourcesPlugin.getWorkspace() + .getRoot().getRawLocation().toFile(), n).getAbsolutePath()); + } + validatedSelectedBranches = branchPage.getSelectedBranches(); validatedHEAD = branchPage.getHEAD(); - final String n = getSuggestedName(); - setDescription(NLS.bind(UIText.CloneDestinationPage_description, n)); - directoryText.setText(new File(ResourcesPlugin.getWorkspace().getRoot() - .getRawLocation().toFile(), n).getAbsolutePath()); - initialBranch.removeAll(); final Ref head = branchPage.getHEAD(); int newix = 0;
-- 1.5.6.3