Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMathias Kinzler2011-02-17 16:44:55 +0000
committerJens Baumgart2011-02-18 14:25:10 +0000
commit02ed62a178de24ed5d0c33ba0f3f3c4430948181 (patch)
tree0d986d2d6ee1e553bc7f8b234087fc4670ec8eb1
parent2cc98a85b7532cf593c5f95d283c8888266beac4 (diff)
downloadegit-02ed62a178de24ed5d0c33ba0f3f3c4430948181.tar.gz
egit-02ed62a178de24ed5d0c33ba0f3f3c4430948181.tar.xz
egit-02ed62a178de24ed5d0c33ba0f3f3c4430948181.zip
[historyView] Performance third part
Renders a message instead of simply doing nothing when selecting a file in a merge commit which we can not render a diff for. Change-Id: I128356f6f81a38e595fbac17036af28d03f84e01 Signed-off-by: Mathias Kinzler <mathias.kinzler@sap.com>
-rw-r--r--org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIText.java3
-rw-r--r--org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/history/CommitMessageViewer.java7
-rw-r--r--org.eclipse.egit.ui/src/org/eclipse/egit/ui/uitext.properties1
3 files changed, 10 insertions, 1 deletions
diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIText.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIText.java
index 24ffa5ad42..93afad2a3e 100644
--- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIText.java
+++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIText.java
@@ -1717,6 +1717,9 @@ public class UIText extends NLS {
public static String CommitMessageViewer_BuildDiffTaskName;
/** */
+ public static String CommitMessageViewer_CanNotRenderDiffMessage;
+
+ /** */
public static String CommitMessageViewer_tags;
/** */
diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/history/CommitMessageViewer.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/history/CommitMessageViewer.java
index 8a12c3be3d..b01ba7b9aa 100644
--- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/history/CommitMessageViewer.java
+++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/history/CommitMessageViewer.java
@@ -398,6 +398,11 @@ class CommitMessageViewer extends TextViewer implements
if (trace)
GitTraceLocation.getTrace().traceEntry(
GitTraceLocation.HISTORYVIEW.getLocation());
+ if (commit.getParentCount() != 1) {
+ d.append(UIText.CommitMessageViewer_CanNotRenderDiffMessage);
+ return;
+ }
+
try {
monitor.beginTask(UIText.CommitMessageViewer_BuildDiffListTaskName,
currentDiffs.size());
@@ -805,7 +810,7 @@ class CommitMessageViewer extends TextViewer implements
// build the list of file diffs asynchronously to ensure UI
// responsiveness
- if (!currentDiffs.isEmpty() && commit.getParentCount() == 1)
+ if (!currentDiffs.isEmpty())
buildDiffs(d, styles, monitor, trace);
if (trace)
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 dc5d5c43f5..517c295a38 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
@@ -560,6 +560,7 @@ CommitMessageViewer_child=Child
CommitMessageViewer_branches=Branches
CommitMessageViewer_BuildDiffListTaskName=Building diffs for the selected files
CommitMessageViewer_BuildDiffTaskName=Building diff for file {0}
+CommitMessageViewer_CanNotRenderDiffMessage=Can not render Diff, as the current commit has no or multiple parents
CommitMessageViewer_tags=Tags
CommitMessageViewer_follows=Follows
CommitMessageViewer_precedes=Precedes

Back to the top