mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
WEB-29768 Console output doesn't change colors when the theme is changed
This commit is contained in:
@@ -44,10 +44,14 @@ import com.intellij.openapi.editor.*;
|
||||
import com.intellij.openapi.editor.actionSystem.*;
|
||||
import com.intellij.openapi.editor.actions.ScrollToTheEndToolbarAction;
|
||||
import com.intellij.openapi.editor.actions.ToggleUseSoftWrapsToolbarAction;
|
||||
import com.intellij.openapi.editor.colors.EditorColorsListener;
|
||||
import com.intellij.openapi.editor.colors.EditorColorsManager;
|
||||
import com.intellij.openapi.editor.colors.EditorColorsScheme;
|
||||
import com.intellij.openapi.editor.event.EditorMouseEvent;
|
||||
import com.intellij.openapi.editor.ex.DocumentEx;
|
||||
import com.intellij.openapi.editor.ex.EditorEx;
|
||||
import com.intellij.openapi.editor.ex.MarkupModelEx;
|
||||
import com.intellij.openapi.editor.ex.RangeHighlighterEx;
|
||||
import com.intellij.openapi.editor.ex.util.EditorUtil;
|
||||
import com.intellij.openapi.editor.impl.DocumentImpl;
|
||||
import com.intellij.openapi.editor.impl.DocumentMarkupModel;
|
||||
@@ -264,6 +268,19 @@ public class ConsoleViewImpl extends JPanel implements ConsoleView, ObservableCo
|
||||
});
|
||||
}
|
||||
});
|
||||
ApplicationManager.getApplication().getMessageBus().connect().subscribe(EditorColorsManager.TOPIC, new EditorColorsListener() {
|
||||
@Override
|
||||
public void globalSchemeChange(EditorColorsScheme scheme) {
|
||||
ApplicationManager.getApplication().assertIsDispatchThread();
|
||||
if (isDisposed() || myEditor == null) return;
|
||||
MarkupModel model = DocumentMarkupModel.forDocument(myEditor.getDocument(), project, false);
|
||||
for (RangeHighlighter tokenMarker : model.getAllHighlighters()) {
|
||||
ConsoleViewContentType contentType = tokenMarker.getUserData(CONTENT_TYPE);
|
||||
if (contentType != null && tokenMarker instanceof RangeHighlighterEx)
|
||||
((RangeHighlighterEx)tokenMarker).setTextAttributes(contentType.getAttributes());
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@NotNull
|
||||
|
||||
Reference in New Issue
Block a user