From 5e7519473e16ef26134f8b83d1307aaaa3c952c1 Mon Sep 17 00:00:00 2001
From: maged <magedrifaat@gmail.com>
Date: Sun, 24 Jan 2021 16:26:17 +0200
Subject: [PATCH] Fix status bar custom board preferences disappearing

---
 app/src/processing/app/Editor.java           |  7 +------
 app/src/processing/app/EditorLineStatus.java | 16 ++++++++++------
 2 files changed, 11 insertions(+), 12 deletions(-)

diff --git a/app/src/processing/app/Editor.java b/app/src/processing/app/Editor.java
index 2ec29c498cb..3b3ab137116 100644
--- a/app/src/processing/app/Editor.java
+++ b/app/src/processing/app/Editor.java
@@ -2587,12 +2587,7 @@ private void statusEmpty() {
   // . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
 
   protected void onBoardOrPortChange() {
-    TargetBoard board = BaseNoGui.getTargetBoard();
-    if (board != null)
-      lineStatus.setBoardName(board.getName());
-    else
-      lineStatus.setBoardName("-");
-    lineStatus.setPort(PreferencesData.get("serial.port"));
+    lineStatus.updateBoardAndPort();
     lineStatus.repaint();
   }
 
diff --git a/app/src/processing/app/EditorLineStatus.java b/app/src/processing/app/EditorLineStatus.java
index 7635437da4f..f768b597c28 100644
--- a/app/src/processing/app/EditorLineStatus.java
+++ b/app/src/processing/app/EditorLineStatus.java
@@ -92,12 +92,7 @@ public void set(int newStart, int newStop) {
   public void paintComponent(Graphics graphics) {
     Graphics2D g = Theme.setupGraphics2D(graphics);
     if (name.isEmpty() && port.isEmpty()) {
-      PreferencesMap boardPreferences = BaseNoGui.getBoardPreferences();
-      if (boardPreferences != null)
-        setBoardName(boardPreferences.get("name"));
-      else
-        setBoardName("-");
-      setPort(PreferencesData.get("serial.port"));
+      updateBoardAndPort();
     }
     g.setColor(background);
     Dimension size = getSize();
@@ -146,4 +141,13 @@ public Dimension getMinimumSize() {
   public Dimension getMaximumSize() {
     return scale(new Dimension(3000, height));
   }
+
+  public void updateBoardAndPort() {
+    PreferencesMap boardPreferences = BaseNoGui.getBoardPreferences();
+    if (boardPreferences != null)
+      setBoardName(boardPreferences.get("name"));
+    else
+      setBoardName("-");
+    setPort(PreferencesData.get("serial.port"));
+  }
 }