From 9ce993508228f2b12c8fe1ecc3e1a9aa5fa96f91 Mon Sep 17 00:00:00 2001 From: Denis Fokin Date: Thu, 4 Apr 2013 18:32:42 +0400 Subject: [PATCH] IDEA-104594 LineSeparatorPanel does not show anything but uses space in the IDE status bar for R/O files --- .../wm/impl/status/LineSeparatorPanel.java | 27 +++++++++---------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/status/LineSeparatorPanel.java b/platform/platform-impl/src/com/intellij/openapi/wm/impl/status/LineSeparatorPanel.java index b5c2e53069c3..e7d6ad173e34 100644 --- a/platform/platform-impl/src/com/intellij/openapi/wm/impl/status/LineSeparatorPanel.java +++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/status/LineSeparatorPanel.java @@ -89,29 +89,26 @@ public class LineSeparatorPanel extends EditorBasedWidget implements StatusBarWi UIUtil.invokeLaterIfNeeded(new Runnable() { @Override public void run() { - String lineSeparator = null; VirtualFile file = getSelectedFile(); - if (file == null || !file.isWritable()) { - myActionEnabled = false; - } - else { - lineSeparator = LoadTextUtil.detectLineSeparator(file, true); - } + myActionEnabled = false; - myComponent.resetColor(); - if (lineSeparator == null) { - myComponent.setText(""); - } - else { - myActionEnabled = true; + if (file != null) { + myActionEnabled = (file.isWritable()); + + String lineSeparator = LoadTextUtil.detectLineSeparator(file, true); + + if (lineSeparator == null) { + lineSeparator = ""; + } + + myComponent.resetColor(); myComponent.setToolTipText(String.format("Line separator: %s%nClick to change", StringUtil.escapeLineBreak(lineSeparator))); myComponent.setText(LineSeparator.fromString(lineSeparator).toString()); } if (myActionEnabled) { myComponent.setForeground(UIUtil.getActiveTextColor()); - } - else { + } else { myComponent.setForeground(UIUtil.getInactiveTextColor()); }