diff --git a/.changeset/jetbrains-picker-popups.md b/.changeset/jetbrains-picker-popups.md new file mode 100644 index 0000000000..fb7f2eebea --- /dev/null +++ b/.changeset/jetbrains-picker-popups.md @@ -0,0 +1,5 @@ +--- +"@kilocode/kilo-jetbrains": patch +--- + +Fix JetBrains prompt pickers so reasoning effort opens above the button and expanded model details still allow one-click model selection. diff --git a/packages/kilo-jetbrains/frontend/src/main/kotlin/ai/kilocode/client/session/ui/ReasoningPicker.kt b/packages/kilo-jetbrains/frontend/src/main/kotlin/ai/kilocode/client/session/ui/ReasoningPicker.kt index b3db2c7d41..cd1ac3e39b 100644 --- a/packages/kilo-jetbrains/frontend/src/main/kotlin/ai/kilocode/client/session/ui/ReasoningPicker.kt +++ b/packages/kilo-jetbrains/frontend/src/main/kotlin/ai/kilocode/client/session/ui/ReasoningPicker.kt @@ -6,6 +6,7 @@ import com.intellij.icons.AllIcons import com.intellij.openapi.ui.popup.JBPopupFactory import com.intellij.openapi.ui.popup.ListPopup import com.intellij.openapi.ui.popup.PopupStep +import com.intellij.openapi.ui.popup.PopupShowOptions import com.intellij.openapi.ui.popup.util.BaseListPopupStep import com.intellij.util.ui.EmptyIcon import java.awt.Cursor @@ -17,7 +18,7 @@ import javax.swing.Icon * Clickable label-style dropdown picker with a native filled background. * * Shows the selected item's display text with a down-arrow. On click, - * opens a list popup below the picker. Disabled (greyed out, not + * opens a list popup above the picker. Disabled (greyed out, not * clickable) when no items are loaded. */ class ReasoningPicker : PickerButton() { @@ -100,7 +101,7 @@ class ReasoningPicker : PickerButton() { } val popup: ListPopup = JBPopupFactory.getInstance().createListPopup(step) - popup.showUnderneathOf(this) + popup.show(PopupShowOptions.aboveComponent(this)) } private fun icon(item: Item): Icon = if (item.id == selected?.id) checked else empty diff --git a/packages/kilo-jetbrains/frontend/src/main/kotlin/ai/kilocode/client/session/ui/model/ModelPicker.kt b/packages/kilo-jetbrains/frontend/src/main/kotlin/ai/kilocode/client/session/ui/model/ModelPicker.kt index 19edae0d41..b9d467c36b 100644 --- a/packages/kilo-jetbrains/frontend/src/main/kotlin/ai/kilocode/client/session/ui/model/ModelPicker.kt +++ b/packages/kilo-jetbrains/frontend/src/main/kotlin/ai/kilocode/client/session/ui/model/ModelPicker.kt @@ -379,11 +379,6 @@ class ModelPicker : PickerButton() { e.consume() return } - if (expanded && e.clickCount < 2) { - list.selectedIndex = row - syncDetails() - return - } activate(value) } })