From ddd219d48582dc8a01966ed43e37d8460c9ba19f Mon Sep 17 00:00:00 2001 From: Ricardo JL Rufino Date: Fri, 15 May 2020 02:34:00 -0300 Subject: [PATCH 1/4] [IDE] Title of sketch is misaligned on Linux FIX #10209 --- app/src/processing/app/EditorHeader.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/app/src/processing/app/EditorHeader.java b/app/src/processing/app/EditorHeader.java index 25c09a8dfaa..a620e764ee6 100644 --- a/app/src/processing/app/EditorHeader.java +++ b/app/src/processing/app/EditorHeader.java @@ -271,6 +271,11 @@ public void paintComponent(Graphics screen) { g.setColor(textColor[state]); int baseline = (sizeH + fontAscent) / 2; + + // FIX for OpenJDK 8 and 11 on Linux (GNOME/KDE) (https://github.com/arduino/Arduino/issues/10209) + if (OSUtils.isLinux()) { + baseline = baseline - 2; + } //g.drawString(sketch.code[i].name, textLeft, baseline); g.drawString(text, textLeft, baseline); From 77e658d90b54dbf9e9d149e5cb34a5942f691177 Mon Sep 17 00:00:00 2001 From: Ricardo JL Rufino Date: Fri, 15 May 2020 02:51:11 -0300 Subject: [PATCH 2/4] Fix signal =) --- app/src/processing/app/EditorHeader.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/processing/app/EditorHeader.java b/app/src/processing/app/EditorHeader.java index a620e764ee6..8ff3ab02912 100644 --- a/app/src/processing/app/EditorHeader.java +++ b/app/src/processing/app/EditorHeader.java @@ -274,7 +274,7 @@ public void paintComponent(Graphics screen) { // FIX for OpenJDK 8 and 11 on Linux (GNOME/KDE) (https://github.com/arduino/Arduino/issues/10209) if (OSUtils.isLinux()) { - baseline = baseline - 2; + baseline = baseline + 2; } //g.drawString(sketch.code[i].name, textLeft, baseline); g.drawString(text, textLeft, baseline); From f98b7a6f352047e0936e1a809b0c58112af1545f Mon Sep 17 00:00:00 2001 From: Ricardo JL Rufino Date: Fri, 15 May 2020 14:38:24 -0300 Subject: [PATCH 3/4] Rever OS changes, and use + getDescent() to improve alignment --- app/src/processing/app/EditorHeader.java | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/app/src/processing/app/EditorHeader.java b/app/src/processing/app/EditorHeader.java index 8ff3ab02912..64d6446a1ec 100644 --- a/app/src/processing/app/EditorHeader.java +++ b/app/src/processing/app/EditorHeader.java @@ -270,12 +270,8 @@ public void paintComponent(Graphics screen) { int textLeft = contentLeft + (pieceWidth - textWidth) / 2; g.setColor(textColor[state]); - int baseline = (sizeH + fontAscent) / 2; - - // FIX for OpenJDK 8 and 11 on Linux (GNOME/KDE) (https://github.com/arduino/Arduino/issues/10209) - if (OSUtils.isLinux()) { - baseline = baseline + 2; - } + int baseline = (sizeH + fontAscent + metrics.getDescent()) / 2; + //g.drawString(sketch.code[i].name, textLeft, baseline); g.drawString(text, textLeft, baseline); From d41d22c13ede7048f1eb0ca1138906358380604e Mon Sep 17 00:00:00 2001 From: Ricardo JL Rufino Date: Tue, 19 May 2020 18:31:24 -0300 Subject: [PATCH 4/4] Fix: calculate center of Tab not Header --- app/src/processing/app/EditorHeader.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/src/processing/app/EditorHeader.java b/app/src/processing/app/EditorHeader.java index 64d6446a1ec..c5695cf8abd 100644 --- a/app/src/processing/app/EditorHeader.java +++ b/app/src/processing/app/EditorHeader.java @@ -73,6 +73,7 @@ public class EditorHeader extends JComponent { static final int PIECE_WIDTH = scale(4); static final int PIECE_HEIGHT = scale(33); + static final int TAB_HEIGHT = scale(27); // value for the size bars, buttons, etc // TODO: Should be a Theme value? @@ -270,9 +271,8 @@ public void paintComponent(Graphics screen) { int textLeft = contentLeft + (pieceWidth - textWidth) / 2; g.setColor(textColor[state]); - int baseline = (sizeH + fontAscent + metrics.getDescent()) / 2; - - //g.drawString(sketch.code[i].name, textLeft, baseline); + int tabMarginTop = sizeH - TAB_HEIGHT; + int baseline = tabMarginTop + ((TAB_HEIGHT + fontAscent) / 2) ; g.drawString(text, textLeft, baseline); g.drawImage(pieces[state][RIGHT], x, 0, null);