From a392c8662ec1a30c2f251a93897eaff37ea4b859 Mon Sep 17 00:00:00 2001 From: Carl-Robert Linnupuu Date: Sat, 1 Apr 2023 16:22:37 +0100 Subject: [PATCH] Index content improvements --- .../chat/BrowserContentManager.java | 2 +- .../chat/MarkdownJCEFHtmlPanel.java | 86 +++------------ .../html => html/icons}/codegpt-icon.svg | 0 .../html => html/icons}/codegpt-icon_dark.svg | 0 src/main/resources/html/index.html | 104 ++++++++++++++++++ 5 files changed, 118 insertions(+), 74 deletions(-) rename src/main/resources/{icons/html => html/icons}/codegpt-icon.svg (100%) rename src/main/resources/{icons/html => html/icons}/codegpt-icon_dark.svg (100%) create mode 100644 src/main/resources/html/index.html diff --git a/src/main/java/ee/carlrobert/codegpt/toolwindow/chat/BrowserContentManager.java b/src/main/java/ee/carlrobert/codegpt/toolwindow/chat/BrowserContentManager.java index 6c626da3..8e799177 100644 --- a/src/main/java/ee/carlrobert/codegpt/toolwindow/chat/BrowserContentManager.java +++ b/src/main/java/ee/carlrobert/codegpt/toolwindow/chat/BrowserContentManager.java @@ -180,7 +180,7 @@ public class BrowserContentManager { private String getSvgIcon() { try { var stream = Objects.requireNonNull(BrowserContentManager.class.getResourceAsStream( - UIUtil.isUnderDarcula() ? "/icons/html/codegpt-icon_dark.svg" : "/icons/html/codegpt-icon.svg")); + UIUtil.isUnderDarcula() ? "/html/icons/codegpt-icon_dark.svg" : "/html/icons/codegpt-icon.svg")); return new String(stream.readAllBytes(), StandardCharsets.UTF_8); } catch (IOException e) { throw new RuntimeException(e); diff --git a/src/main/java/ee/carlrobert/codegpt/toolwindow/chat/MarkdownJCEFHtmlPanel.java b/src/main/java/ee/carlrobert/codegpt/toolwindow/chat/MarkdownJCEFHtmlPanel.java index 6e21d4bb..c3d1dc0a 100644 --- a/src/main/java/ee/carlrobert/codegpt/toolwindow/chat/MarkdownJCEFHtmlPanel.java +++ b/src/main/java/ee/carlrobert/codegpt/toolwindow/chat/MarkdownJCEFHtmlPanel.java @@ -10,6 +10,9 @@ import com.intellij.util.ui.UIUtil; import ee.carlrobert.codegpt.state.AccountDetailsState; import ee.carlrobert.codegpt.state.conversations.Conversation; import java.awt.Color; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.util.Objects; import java.util.UUID; import java.util.concurrent.CompletableFuture; import org.cef.browser.CefBrowser; @@ -93,79 +96,16 @@ public class MarkdownJCEFHtmlPanel extends JCEFHtmlPanel { private String getIndexContent() { var panelBg = UIUtil.getPanelBackground(); - var theme = UIUtil.isUnderDarcula() ? "darcula" : "vs"; - var bgColor = getRGB(UIUtil.isUnderDarcula() ? toDarker(panelBg) : panelBg.brighter()); - var separatorColor = JBUI.CurrentTheme.CustomFrameDecorations.separatorForeground(); - return "" + - "" + - format( - "", - theme) + - "" + - "" + - "" + - "" + - "" + - ""; + try { + var stream = Objects.requireNonNull(MarkdownJCEFHtmlPanel.class.getResourceAsStream("/html/index.html")); + return new String(stream.readAllBytes(), StandardCharsets.UTF_8) + .replace("[font-color]", getForegroundRGB()) + .replace("[font-size]", String.valueOf(JBFont.regular().getSize())) + .replace("[separator-color]", getRGB(JBUI.CurrentTheme.CustomFrameDecorations.separatorForeground())) + .replace("[panel-background-color]", getRGB(UIUtil.isUnderDarcula() ? toDarker(panelBg) : panelBg.brighter())); + } catch (IOException e) { + throw new RuntimeException(e); + } } private static Color toDarker(Color color) { diff --git a/src/main/resources/icons/html/codegpt-icon.svg b/src/main/resources/html/icons/codegpt-icon.svg similarity index 100% rename from src/main/resources/icons/html/codegpt-icon.svg rename to src/main/resources/html/icons/codegpt-icon.svg diff --git a/src/main/resources/icons/html/codegpt-icon_dark.svg b/src/main/resources/html/icons/codegpt-icon_dark.svg similarity index 100% rename from src/main/resources/icons/html/codegpt-icon_dark.svg rename to src/main/resources/html/icons/codegpt-icon_dark.svg diff --git a/src/main/resources/html/index.html b/src/main/resources/html/index.html new file mode 100644 index 00000000..0c26c867 --- /dev/null +++ b/src/main/resources/html/index.html @@ -0,0 +1,104 @@ + + + + + + + + + + + +