From 75bbbc916f1bf1250a8694732b8ad1f7ed8af664 Mon Sep 17 00:00:00 2001 From: Ekaterina Tuzova Date: Thu, 13 Nov 2014 18:41:19 +0300 Subject: [PATCH] fixed PY-14220 Fix darkula theme issues --- .../ipnb/src/org/jetbrains/plugins/ipnb/IpnbUtils.java | 4 ++++ .../jetbrains/plugins/ipnb/editor/IpnbEditorUtil.java | 9 +++++++-- .../plugins/ipnb/editor/panels/IpnbEditablePanel.java | 3 +-- .../ipnb/editor/panels/code/IpnbCodeOutputPanel.java | 2 ++ 4 files changed, 14 insertions(+), 4 deletions(-) diff --git a/python/ipnb/src/org/jetbrains/plugins/ipnb/IpnbUtils.java b/python/ipnb/src/org/jetbrains/plugins/ipnb/IpnbUtils.java index 1b07e519b511..e74f4e705285 100644 --- a/python/ipnb/src/org/jetbrains/plugins/ipnb/IpnbUtils.java +++ b/python/ipnb/src/org/jetbrains/plugins/ipnb/IpnbUtils.java @@ -5,12 +5,14 @@ import com.intellij.openapi.util.text.StringUtil; import com.intellij.ui.BrowserHyperlinkListener; import com.intellij.util.containers.ContainerUtil; import com.intellij.util.text.MarkdownUtil; +import com.intellij.util.ui.UIUtil; import com.petebevin.markdown.MarkdownProcessor; import net.sourceforge.jeuclid.MathMLParserSupport; import net.sourceforge.jeuclid.context.LayoutContextImpl; import net.sourceforge.jeuclid.context.Parameter; import net.sourceforge.jeuclid.converter.Converter; import org.jetbrains.annotations.NotNull; +import org.jetbrains.plugins.ipnb.editor.IpnbEditorUtil; import org.jetbrains.plugins.ipnb.editor.panels.IpnbTexPackageDefinitions; import org.w3c.dom.Document; import org.xml.sax.SAXException; @@ -71,6 +73,7 @@ public class IpnbUtils { public static JEditorPane createLatexPane(@NotNull final String source) { final JEditorPane editorPane = new JEditorPane(); + editorPane.setBackground(IpnbEditorUtil.getBackground()); editorPane.setContentType(new HTMLEditorKit().getContentType()); editorPane.setEditorKit(new HTMLEditorKit()); @@ -197,6 +200,7 @@ public class IpnbUtils { final String xmlString = session.buildXMLString(options); if (xmlString == null) return; final LayoutContextImpl context = (LayoutContextImpl)LayoutContextImpl.getDefaultLayoutContext(); + context.setParameter(Parameter.MATHCOLOR, UIUtil.getTextAreaForeground()); context.setParameter(Parameter.MATHSIZE, 18); final Document document = MathMLParserSupport.parseString(xmlString); diff --git a/python/ipnb/src/org/jetbrains/plugins/ipnb/editor/IpnbEditorUtil.java b/python/ipnb/src/org/jetbrains/plugins/ipnb/editor/IpnbEditorUtil.java index 44b3c38431d7..b691973e9831 100644 --- a/python/ipnb/src/org/jetbrains/plugins/ipnb/editor/IpnbEditorUtil.java +++ b/python/ipnb/src/org/jetbrains/plugins/ipnb/editor/IpnbEditorUtil.java @@ -20,6 +20,7 @@ import com.intellij.execution.impl.ConsoleViewUtil; import com.intellij.openapi.editor.Document; import com.intellij.openapi.editor.Editor; import com.intellij.openapi.editor.EditorFactory; +import com.intellij.openapi.editor.colors.EditorColors; import com.intellij.openapi.editor.colors.EditorColorsManager; import com.intellij.openapi.editor.ex.EditorEx; import com.intellij.openapi.project.Project; @@ -59,13 +60,17 @@ public class IpnbEditorUtil { } private static void setupEditor(@NotNull final EditorEx editor) { - if (!UIUtil.isUnderDarcula()) - editor.setBackgroundColor(Gray._247); + editor.setBackgroundColor(getEditablePanelBackground()); noScrolling(editor); editor.getScrollPane().setBorder(null); ConsoleViewUtil.setupConsoleEditor(editor, false, false); } + public static Color getEditablePanelBackground() { + return !UIUtil.isUnderDarcula() ? Gray._247 : EditorColorsManager.getInstance().getGlobalScheme().getColor( + EditorColors.GUTTER_BACKGROUND); + } + public static Editor createPlainCodeEditor(@NotNull final Project project, @NotNull final String text) { final EditorFactory editorFactory = EditorFactory.getInstance(); assert editorFactory != null; diff --git a/python/ipnb/src/org/jetbrains/plugins/ipnb/editor/panels/IpnbEditablePanel.java b/python/ipnb/src/org/jetbrains/plugins/ipnb/editor/panels/IpnbEditablePanel.java index 950b7306afca..714cd68d9d6b 100644 --- a/python/ipnb/src/org/jetbrains/plugins/ipnb/editor/panels/IpnbEditablePanel.java +++ b/python/ipnb/src/org/jetbrains/plugins/ipnb/editor/panels/IpnbEditablePanel.java @@ -2,7 +2,6 @@ package org.jetbrains.plugins.ipnb.editor.panels; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.util.text.StringUtil; -import com.intellij.ui.Gray; import com.intellij.ui.JBColor; import com.intellij.util.ui.UIUtil; import org.jetbrains.annotations.NotNull; @@ -136,7 +135,7 @@ public abstract class IpnbEditablePanel extends IpnbPanel