diff --git a/packages/kilo-jetbrains/frontend/src/main/kotlin/ai/kilocode/client/session/history/HistoryPanel.kt b/packages/kilo-jetbrains/frontend/src/main/kotlin/ai/kilocode/client/session/history/HistoryPanel.kt index b1999f3b805..f521687e4d0 100644 --- a/packages/kilo-jetbrains/frontend/src/main/kotlin/ai/kilocode/client/session/history/HistoryPanel.kt +++ b/packages/kilo-jetbrains/frontend/src/main/kotlin/ai/kilocode/client/session/history/HistoryPanel.kt @@ -6,7 +6,9 @@ import ai.kilocode.client.session.ui.LoadingPanel import ai.kilocode.client.session.ui.style.SessionEditorStyle import ai.kilocode.client.ui.UiStyle import ai.kilocode.client.ui.HoverIcon -import ai.kilocode.client.ui.iconButton +import ai.kilocode.client.ui.layout.HAlign +import ai.kilocode.client.ui.layout.VAlign +import ai.kilocode.client.ui.layout.align import ai.kilocode.client.util.UiTimerSource import ai.kilocode.client.util.UiTimers import com.intellij.icons.AllIcons @@ -186,7 +188,7 @@ class HistoryPanel( ) } - private fun back(): BorderLayoutPanel { + private fun back(): JComponent { val label = KiloBundle.message("history.back") val btn = HoverIcon().apply { icon = AllIcons.Actions.Back @@ -195,8 +197,7 @@ class HistoryPanel( cursor = Cursor.getPredefinedCursor(Cursor.HAND_CURSOR) addActionListener { nav() } } - return BorderLayoutPanel().apply { - add(btn, BorderLayout.WEST) + return btn.align(HAlign.LEFT, VAlign.CENTER).apply { border = JBUI.Borders.emptyRight(UiStyle.Gap.lg()) } } diff --git a/packages/kilo-jetbrains/frontend/src/test/kotlin/ai/kilocode/client/session/history/HistoryControllerTest.kt b/packages/kilo-jetbrains/frontend/src/test/kotlin/ai/kilocode/client/session/history/HistoryControllerTest.kt index ef476010ec9..48fda098476 100644 --- a/packages/kilo-jetbrains/frontend/src/test/kotlin/ai/kilocode/client/session/history/HistoryControllerTest.kt +++ b/packages/kilo-jetbrains/frontend/src/test/kotlin/ai/kilocode/client/session/history/HistoryControllerTest.kt @@ -10,6 +10,8 @@ import ai.kilocode.client.session.SessionRef import ai.kilocode.client.testing.FakeSessionRpcApi import ai.kilocode.client.testing.FakeWorkspaceRpcApi import ai.kilocode.client.ui.UiStyle +import ai.kilocode.client.ui.HoverIcon +import ai.kilocode.client.ui.layout.Align import ai.kilocode.rpc.dto.CloudSessionDto import ai.kilocode.rpc.dto.KiloWorkspaceStateDto import ai.kilocode.rpc.dto.KiloWorkspaceStatusDto @@ -341,6 +343,11 @@ class HistoryControllerTest : BasePlatformTestCase() { flush() assertEquals(KiloBundle.message("history.back"), panel.backText()) + val backs = UIUtil.uiTraverser(panel.component).filter(HoverIcon::class.java) + .filter { it.toolTipText == KiloBundle.message("history.back") } + .toList() + assertTrue(backs.isNotEmpty()) + assertTrue(backs.all { it.parent is Align }) panel.clickCloud() flush()