diff options
author | Robin Stocker | 2013-01-19 12:35:44 +0000 |
---|---|---|
committer | Matthias Sohn | 2013-04-15 21:34:53 +0000 |
commit | 56eb69bcb21faa7cbaee03d363e110483c0b839f (patch) | |
tree | f6468e89c9440f44eaec62c3181ec1f609cf32a2 | |
parent | 3535a3e37bca6fee8f69c4d4592d7895f6d08db7 (diff) | |
download | egit-56eb69bcb21faa7cbaee03d363e110483c0b839f.tar.gz egit-56eb69bcb21faa7cbaee03d363e110483c0b839f.tar.xz egit-56eb69bcb21faa7cbaee03d363e110483c0b839f.zip |
Improve label of index version in compare editors
When opening the compare editor from the staging view for an unstaged
file, the right side shows the Index version.
The problem is that not many people discover that it is in fact editable
(and the way to do partial staging).
This change tries to help a bit by changing the label from
file.txt Index ()
to
Index: file.txt (editable)
Index is used as a prefix because the left side is "Local: file.txt".
"(editable)" is not appended in case of non-editable (stage != 0), see
bug 391856.
Bug: 398562
Change-Id: I9940d2f148393b1f4704664e379c5c863565a118
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
4 files changed, 21 insertions, 2 deletions
diff --git a/org.eclipse.egit.core/src/org/eclipse/egit/core/internal/storage/IndexFileRevision.java b/org.eclipse.egit.core/src/org/eclipse/egit/core/internal/storage/IndexFileRevision.java index bf1fbbda0a..3758de3784 100644 --- a/org.eclipse.egit.core/src/org/eclipse/egit/core/internal/storage/IndexFileRevision.java +++ b/org.eclipse.egit.core/src/org/eclipse/egit/core/internal/storage/IndexFileRevision.java @@ -27,7 +27,7 @@ import org.eclipse.osgi.util.NLS; import org.eclipse.team.core.history.IFileRevision; /** An {@link IFileRevision} for the version in the Git index. */ -class IndexFileRevision extends GitFileRevision { +public class IndexFileRevision extends GitFileRevision { // This is to maintain compatibility with the old behavior private static final int FIRST_AVAILABLE = -1; diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/GitCompareFileRevisionEditorInput.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/GitCompareFileRevisionEditorInput.java index 3c0646ac20..f8c5bc5045 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/GitCompareFileRevisionEditorInput.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/GitCompareFileRevisionEditorInput.java @@ -1,6 +1,7 @@ /******************************************************************************* * Copyright (C) 2007, Robin Rosenberg <robin.rosenberg@dewire.com> * Copyright (C) 2008, Roger C. Soares <rogersoares@intelinet.com.br> + * Copyright (C) 2013, Robin Stocker <robin@nibor.org> * * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 @@ -31,6 +32,7 @@ import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.core.runtime.NullProgressMonitor; import org.eclipse.egit.core.Activator; +import org.eclipse.egit.core.internal.storage.IndexFileRevision; import org.eclipse.osgi.util.NLS; import org.eclipse.swt.graphics.Image; import org.eclipse.team.internal.ui.Utils; @@ -299,6 +301,15 @@ public class GitCompareFileRevisionEditorInput extends SaveableCompareEditorInpu Object fileObject = element.getFileRevision(); if (fileObject instanceof LocalFileRevision){ return NLS.bind(UIText.GitCompareFileRevisionEditorInput_LocalHistoryLabel, new Object[]{element.getName(), element.getTimestamp()}); + } else if (fileObject instanceof IndexFileRevision) { + if (isEditable(element)) + return NLS.bind( + UIText.GitCompareFileRevisionEditorInput_IndexEditableLabel, + element.getName()); + else + return NLS.bind( + UIText.GitCompareFileRevisionEditorInput_IndexLabel, + element.getName()); } else { return NLS.bind(UIText.GitCompareFileRevisionEditorInput_RevisionLabel, new Object[]{element.getName(), CompareUtils.truncatedRevision(element.getContentIdentifier()), element.getAuthor()}); diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/UIText.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/UIText.java index 4c0034830e..49b5a702a9 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/UIText.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/UIText.java @@ -5,7 +5,7 @@ * Copyright (C) 2011, Daniel Megert <daniel_megert@ch.ibm.com> * Copyright (C) 2012, Mathias Kinzler <mathias.kinzler@sap.com> * Copyright (C) 2012, Daniel Megert <daniel_megert@ch.ibm.com> - * Copyright (C) 2012, Robin Stocker <robin@nibor.org> + * Copyright (C) 2012, 2013 Robin Stocker <robin@nibor.org> * Copyright (C) 2012, Laurent Goubet <laurent.goubet@obeo.fr> * Copyright (C) 2012, Gunnar Wagenknecht <gunnar@wagenknecht.org> * All rights reserved. This program and the accompanying materials @@ -3192,6 +3192,12 @@ public class UIText extends NLS { public static String GitCompareFileRevisionEditorInput_LocalLabel; /** */ + public static String GitCompareFileRevisionEditorInput_IndexLabel; + + /** */ + public static String GitCompareFileRevisionEditorInput_IndexEditableLabel; + + /** */ public static String GitCompareFileRevisionEditorInput_LocalRevision; /** */ diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/uitext.properties b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/uitext.properties index 05336ca272..7d0584fba8 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/uitext.properties +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/uitext.properties @@ -1116,6 +1116,8 @@ GitCompareFileRevisionEditorInput_CurrentTitle=Current GitCompareFileRevisionEditorInput_contentIdentifier=Problem getting content identifier GitCompareFileRevisionEditorInput_LocalHistoryLabel=Local history: {0} {1} GitCompareFileRevisionEditorInput_LocalLabel=Local: {0} +GitCompareFileRevisionEditorInput_IndexLabel=Index: {0} +GitCompareFileRevisionEditorInput_IndexEditableLabel=Index: {0} (editable) GitCompareFileRevisionEditorInput_LocalRevision=Local Revision GitCompareFileRevisionEditorInput_RevisionLabel={0} {1} ({2}) GitCompareFileRevisionEditorInput_LocalVersion={0} (local version) |