Skip to content

Commit 452ac63

Browse files
committed
Refresh lineStatus when tab gets focus
Fixes #9138
1 parent 19c3def commit 452ac63

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

app/src/processing/app/Editor.java

+2
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,8 @@
8080
import javax.swing.event.MenuEvent;
8181
import javax.swing.event.MenuListener;
8282
import javax.swing.text.BadLocationException;
83+
import javax.swing.text.Document;
84+
import javax.swing.text.Element;
8385

8486
import org.fife.ui.rsyntaxtextarea.folding.FoldManager;
8587

app/src/processing/app/EditorTab.java

+11-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,8 @@
3030
import java.awt.Font;
3131
import java.awt.event.ActionEvent;
3232
import java.awt.event.ActionListener;
33-
33+
import java.awt.event.FocusEvent;
34+
import java.awt.event.FocusListener;
3435
import java.io.IOException;
3536

3637
import javax.swing.Action;
@@ -175,6 +176,15 @@ private SketchTextArea createTextArea(RSyntaxDocument document)
175176

176177
editor.lineStatus.set(lineStart, lineEnd);
177178
});
179+
textArea.addFocusListener(new FocusListener() {
180+
public void focusGained(FocusEvent e) {
181+
Element root = textArea.getDocument().getDefaultRootElement();
182+
int lineStart = root.getElementIndex(textArea.getCaret().getMark());
183+
int lineEnd = root.getElementIndex(textArea.getCaret().getDot());
184+
editor.lineStatus.set(lineStart, lineEnd);
185+
};
186+
public void focusLost(FocusEvent e) {};
187+
});
178188
ToolTipManager.sharedInstance().registerComponent(textArea);
179189

180190
configurePopupMenu(textArea);

0 commit comments

Comments
 (0)