From 804c2ad21044591c32d58c45b8a73256f1d50124 Mon Sep 17 00:00:00 2001 From: Kirill Alekhnovich Date: Mon, 27 Oct 2025 16:03:59 +0100 Subject: [PATCH] LLM-20426 Show dropdown icons for certain icons Before this change we used to hide the dropdown icon for all popup action groups in CodeFloatingToolbar. However mockups for this feature require this dropdown to be present for the AI actions popup. This commit adds a ShowsDropdownIconInFloatingToolbar marker interface implementing which makes CodeFloatingToolbar show such icons. GitOrigin-RevId: b25aed52ee236072ea818d5f31b2fe71eb362c1e --- .../ui/codeFloatingToolbar/CodeFloatingToolbar.kt | 4 +++- .../ShowsDropdownIconInFloatingToolbar.kt | 8 ++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 platform/platform-impl/src/com/intellij/ui/codeFloatingToolbar/ShowsDropdownIconInFloatingToolbar.kt diff --git a/platform/platform-impl/src/com/intellij/ui/codeFloatingToolbar/CodeFloatingToolbar.kt b/platform/platform-impl/src/com/intellij/ui/codeFloatingToolbar/CodeFloatingToolbar.kt index dfe987d9715d..09b54ef6da86 100644 --- a/platform/platform-impl/src/com/intellij/ui/codeFloatingToolbar/CodeFloatingToolbar.kt +++ b/platform/platform-impl/src/com/intellij/ui/codeFloatingToolbar/CodeFloatingToolbar.kt @@ -194,7 +194,9 @@ class CodeFloatingToolbar( val hint = super.createHint() val buttons = UIUtil.findComponentsOfType(hint.component, ActionButton::class.java) buttons.forEach { button -> - button.presentation.putClientProperty(ActionUtil.HIDE_DROPDOWN_ICON, true) + if (button.action !is ShowsDropdownIconInFloatingToolbar) { + button.presentation.putClientProperty(ActionUtil.HIDE_DROPDOWN_ICON, true) + } showMenuPopupOnMouseHover(button) } return hint diff --git a/platform/platform-impl/src/com/intellij/ui/codeFloatingToolbar/ShowsDropdownIconInFloatingToolbar.kt b/platform/platform-impl/src/com/intellij/ui/codeFloatingToolbar/ShowsDropdownIconInFloatingToolbar.kt new file mode 100644 index 000000000000..a107b3be868c --- /dev/null +++ b/platform/platform-impl/src/com/intellij/ui/codeFloatingToolbar/ShowsDropdownIconInFloatingToolbar.kt @@ -0,0 +1,8 @@ +// Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. +package com.intellij.ui.codeFloatingToolbar + +/** + * By default [CodeFloatingToolbar] hides dropdown icons of popup action groups it contains. + * Implement this interface to show dropdown icons for your popup action group. + */ +interface ShowsDropdownIconInFloatingToolbar \ No newline at end of file