From 3c8cba0ea027cff823a82b5f2553e5d4660a40db Mon Sep 17 00:00:00 2001 From: Aleksey Pivovarov Date: Mon, 25 Jul 2016 12:55:52 +0300 Subject: [PATCH] merge: fix rendering for resolved changes in merge follow-up 95384fd3707df547b21b07dd0f41ae322eb07c7a --- .../diff-impl/src/com/intellij/diff/util/DiffDrawUtil.java | 4 +++- .../src/com/intellij/diff/util/DiffLineMarkerRenderer.java | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/platform/diff-impl/src/com/intellij/diff/util/DiffDrawUtil.java b/platform/diff-impl/src/com/intellij/diff/util/DiffDrawUtil.java index 78d33fc87a51..d5d2212adbc5 100644 --- a/platform/diff-impl/src/com/intellij/diff/util/DiffDrawUtil.java +++ b/platform/diff-impl/src/com/intellij/diff/util/DiffDrawUtil.java @@ -222,6 +222,7 @@ public class DiffDrawUtil { @NotNull private static LineSeparatorRenderer createDiffLineRenderer(@NotNull final Editor editor, @NotNull final TextDiffType type, + @NotNull SeparatorPlacement placement, final boolean doubleLine, final boolean resolved) { return new LineSeparatorRenderer() { @@ -230,6 +231,7 @@ public class DiffDrawUtil { // TODO: change LineSeparatorRenderer interface ? Rectangle clip = g.getClipBounds(); x2 = clip.x + clip.width; + if (placement == SeparatorPlacement.TOP) y++; drawChunkBorderLine((Graphics2D)g, x1, x2, y, type.getColor(editor), doubleLine, resolved); } }; @@ -504,7 +506,7 @@ public class DiffDrawUtil { @NotNull public LineMarkerBuilder withDefaultRenderer(boolean doubleLine) { assert type != null; - this.renderer = createDiffLineRenderer(editor, type, doubleLine, resolved); + this.renderer = createDiffLineRenderer(editor, type, placement, doubleLine, resolved); return this; } diff --git a/platform/diff-impl/src/com/intellij/diff/util/DiffLineMarkerRenderer.java b/platform/diff-impl/src/com/intellij/diff/util/DiffLineMarkerRenderer.java index 0f4022972f66..32f4d854231c 100644 --- a/platform/diff-impl/src/com/intellij/diff/util/DiffLineMarkerRenderer.java +++ b/platform/diff-impl/src/com/intellij/diff/util/DiffLineMarkerRenderer.java @@ -102,7 +102,7 @@ class DiffLineMarkerRenderer implements LineMarkerRendererEx { g2.setColor(ignoredBackgroundColor ? myDiffType.getIgnoredColor(editor) : color); g2.fillRect(x1, y1, x2 - x1, y2 - y1); } else { - DiffDrawUtil.drawChunkBorderLine(g2, x1, x2, y1 - 1, color, false, myResolved); + DiffDrawUtil.drawChunkBorderLine(g2, x1, x2, y1, color, false, myResolved); DiffDrawUtil.drawChunkBorderLine(g2, x1, x2, y2 - 1, color, false, myResolved); } }