refactor(jetbrains): share UI style helpers

This commit is contained in:
kirillk
2026-04-30 15:37:31 -04:00
parent 0e87586a82
commit fcfd9e6eed
17 changed files with 20 additions and 9 deletions
@@ -4,6 +4,7 @@ import ai.kilocode.client.plugin.KiloBundle
import ai.kilocode.client.session.update.SessionController
import ai.kilocode.client.session.update.SessionControllerEvent
import ai.kilocode.client.session.update.SessionControllerListener
import ai.kilocode.client.ui.UiStyle
import com.intellij.icons.AllIcons
import com.intellij.openapi.Disposable
import com.intellij.openapi.util.Disposer
@@ -2,6 +2,7 @@ package ai.kilocode.client.session.ui
import ai.kilocode.client.plugin.KiloBundle
import ai.kilocode.client.session.update.SessionController
import ai.kilocode.client.ui.UiStyle
import ai.kilocode.client.ui.md.MdView
import ai.kilocode.rpc.dto.SessionDto
import com.intellij.openapi.Disposable
@@ -1,5 +1,6 @@
package ai.kilocode.client.session.ui
import ai.kilocode.client.ui.UiStyle
import com.intellij.icons.AllIcons
import com.intellij.openapi.ui.popup.JBPopupFactory
import com.intellij.openapi.ui.popup.ListPopup
@@ -3,6 +3,7 @@ package ai.kilocode.client.session.ui
import ai.kilocode.client.plugin.KiloBundle
import ai.kilocode.client.session.update.SessionController
import ai.kilocode.client.session.model.Permission
import ai.kilocode.client.ui.UiStyle
import ai.kilocode.rpc.dto.PermissionReplyDto
import com.intellij.icons.AllIcons
import com.intellij.ui.dsl.builder.RightGap
@@ -3,6 +3,7 @@ package ai.kilocode.client.session.ui
import ai.kilocode.client.session.model.SessionModel
import ai.kilocode.client.session.model.SessionModelEvent
import ai.kilocode.client.session.model.SessionState
import ai.kilocode.client.ui.UiStyle
import com.intellij.openapi.Disposable
import com.intellij.ui.AnimatedIcon
import com.intellij.ui.components.JBLabel
@@ -1,6 +1,7 @@
package ai.kilocode.client.session.ui
import ai.kilocode.client.plugin.KiloBundle
import ai.kilocode.client.ui.UiStyle
import ai.kilocode.log.ChatLogSummary
import ai.kilocode.log.KiloLog
import com.intellij.openapi.fileTypes.PlainTextFileType
@@ -127,7 +128,8 @@ class PromptPanel(
this.style = style
editor.font = style.transcriptFont
editor.getEditor(false)?.let(style::applyToEditor)
val height = style.transcriptFont.size * UiStyle.Size.LINES + JBUI.scale(UiStyle.Size.CHROME)
val height = style.transcriptFont.size * UiStyle.Size.LINES + JBUI.scale(
UiStyle.Size.CHROME)
editor.preferredSize = JBDimension(0, height)
editor.minimumSize = JBDimension(0, height)
revalidate()
@@ -3,6 +3,7 @@ package ai.kilocode.client.session.ui
import ai.kilocode.client.plugin.KiloBundle
import ai.kilocode.client.session.update.SessionController
import ai.kilocode.client.session.model.Question
import ai.kilocode.client.ui.UiStyle
import ai.kilocode.rpc.dto.QuestionReplyDto
import com.intellij.icons.AllIcons
import com.intellij.ui.dsl.builder.RightGap
@@ -1,5 +1,6 @@
package ai.kilocode.client.session.ui
import ai.kilocode.client.ui.UiStyle
import com.intellij.util.ui.JBDimension
import com.intellij.util.ui.components.BorderLayoutPanel
import java.awt.Component
@@ -4,6 +4,7 @@ import ai.kilocode.client.session.model.SessionModel
import ai.kilocode.client.session.model.SessionModelEvent
import ai.kilocode.client.session.views.MessageView
import ai.kilocode.client.session.views.TurnView
import ai.kilocode.client.ui.UiStyle
import com.intellij.openapi.Disposable
/**
@@ -4,7 +4,7 @@ import ai.kilocode.client.session.model.Compaction
import ai.kilocode.client.session.model.Content
import ai.kilocode.client.plugin.KiloBundle
import ai.kilocode.client.session.ui.SessionStyle
import ai.kilocode.client.session.ui.UiStyle
import ai.kilocode.client.ui.UiStyle
import com.intellij.ui.components.JBLabel
import java.awt.BorderLayout
import java.awt.GridBagConstraints
@@ -3,7 +3,7 @@ package ai.kilocode.client.session.views
import ai.kilocode.client.session.model.Content
import ai.kilocode.client.session.model.Generic
import ai.kilocode.client.session.ui.SessionStyle
import ai.kilocode.client.session.ui.UiStyle
import ai.kilocode.client.ui.UiStyle
import com.intellij.ui.components.JBLabel
import java.awt.BorderLayout
@@ -4,7 +4,7 @@ import ai.kilocode.client.session.model.Content
import ai.kilocode.client.session.model.Message
import ai.kilocode.client.session.ui.SessionStyle
import ai.kilocode.client.session.ui.SessionStyleTarget
import ai.kilocode.client.session.ui.UiStyle
import ai.kilocode.client.ui.UiStyle
/**
* A single message container inside a [TurnView].
@@ -4,7 +4,7 @@ import ai.kilocode.client.plugin.KiloBundle
import ai.kilocode.client.session.model.Content
import ai.kilocode.client.session.model.Reasoning
import ai.kilocode.client.session.ui.SessionStyle
import ai.kilocode.client.session.ui.UiStyle
import ai.kilocode.client.ui.UiStyle
import ai.kilocode.client.ui.md.MdView
import com.intellij.icons.AllIcons
import com.intellij.ui.components.JBLabel
@@ -5,7 +5,7 @@ import ai.kilocode.client.session.model.Content
import ai.kilocode.client.session.model.Tool
import ai.kilocode.client.session.model.ToolExecState
import ai.kilocode.client.session.ui.SessionStyle
import ai.kilocode.client.session.ui.UiStyle
import ai.kilocode.client.ui.UiStyle
import com.intellij.icons.AllIcons
import com.intellij.openapi.ide.CopyPasteManager
import com.intellij.ui.components.JBLabel
@@ -3,7 +3,7 @@ package ai.kilocode.client.session.views
import ai.kilocode.client.session.model.Message
import ai.kilocode.client.session.ui.SessionStyle
import ai.kilocode.client.session.ui.SessionStyleTarget
import ai.kilocode.client.session.ui.UiStyle
import ai.kilocode.client.ui.UiStyle
/**
* Top-level transcript item representing one conversational turn.
@@ -1,4 +1,4 @@
package ai.kilocode.client.session.ui
package ai.kilocode.client.ui
import com.intellij.ui.JBColor
import com.intellij.ui.RoundedLineBorder
@@ -80,7 +80,7 @@ object UiStyle {
fun warning(): Border = JBUI.Borders.customLine(Colors.warning(), 1)
fun picker(): Border = JBUI.Borders.compound(
RoundedLineBorder(Colors.line(), JBUI.scale(Space.MD)),
RoundedLineBorder(Colors.line(), JBUI.scale(Space.MD)),
JBUI.Borders.empty(Space.XS, Space.LG),
)!!
@@ -3,6 +3,7 @@ package ai.kilocode.client.session.ui
import ai.kilocode.client.session.update.SessionController
import ai.kilocode.client.session.update.SessionControllerEvent
import ai.kilocode.client.session.update.SessionControllerTestBase
import ai.kilocode.client.ui.UiStyle
import ai.kilocode.rpc.dto.ConfigWarningDto
import ai.kilocode.rpc.dto.KiloAppStateDto
import ai.kilocode.rpc.dto.KiloAppStatusDto