From fa2f8301425ebf8bd5d0a63aaeadab6b5766e4dd Mon Sep 17 00:00:00 2001 From: Ivan Buryak Date: Tue, 28 Jul 2020 17:12:55 +0700 Subject: [PATCH] IDEA-245945 Add `setViewer` to `EditorTextField` (in a pair with existing `isViewer`) GitOrigin-RevId: f20c07d636dea911354ee4eb37e5730cd642481f --- .../src/com/intellij/ui/EditorTextField.java | 25 ++++++++++++++----- 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/platform/platform-impl/src/com/intellij/ui/EditorTextField.java b/platform/platform-impl/src/com/intellij/ui/EditorTextField.java index 68f9f4c2480e..b3773ff5329d 100644 --- a/platform/platform-impl/src/com/intellij/ui/EditorTextField.java +++ b/platform/platform-impl/src/com/intellij/ui/EditorTextField.java @@ -652,12 +652,7 @@ public class EditorTextField extends NonOpaquePanel implements EditorTextCompone super.setEnabled(enabled); setFocusTraversalPolicyProvider(enabled); setViewerEnabled(enabled); - EditorEx editor = myEditor; - if (editor != null) { - releaseEditor(editor); - initEditor(); - revalidate(); - } + resetEditor(); } } @@ -665,10 +660,28 @@ public class EditorTextField extends NonOpaquePanel implements EditorTextCompone myIsViewer = !enabled; } + private void resetEditor() { + final EditorEx editor = myEditor; + + if (editor != null) { + releaseEditor(editor); + initEditor(); + revalidate(); + } + } + public boolean isViewer() { return myIsViewer; } + public void setViewer(boolean viewer) { + if (myIsViewer != viewer) { + myIsViewer = viewer; + + resetEditor(); + } + } + @Override public Color getBackground() { Color color = getBackgroundColor(isEnabled(), EditorColorsUtil.getGlobalOrDefaultColorScheme());