From 0b55be5c3610d9281946cc0e39b46316f5cb9964 Mon Sep 17 00:00:00 2001 From: dev Date: Sat, 23 May 2026 13:49:11 +0200 Subject: [PATCH] refactor(combobox + search-field): ClearButton/Clear render + {/if} + {/snippet} diff --git a/src/uix/eidos/components/combobox/combobox.css b/src/uix/eidos/components/combobox/combobox.css index 0a3672e63..8dd19b8bb 100644 --- a/src/uix/eidos/components/combobox/combobox.css +++ b/src/uix/eidos/components/combobox/combobox.css @@ -241,38 +241,10 @@ transition: transform var(--duration-fast) var(--ease-default); } -[data-combobox-clear-button] { - display: inline-flex; - flex: 0 0 auto; - align-items: center; - justify-content: center; - inline-size: var(--control-height-xs); - block-size: var(--control-height-xs); - padding: 0; - border: 0; - border-radius: var(--radius-full); - background: transparent; - color: var(--color-content-secondary); - font: inherit; - cursor: pointer; - outline: none; - transition: - background var(--duration-fast) var(--ease-default), - color var(--duration-fast) var(--ease-default), - opacity var(--duration-fast) var(--ease-default); -} - -[data-combobox-clear-button]:hover:not(:disabled):not([data-disabled]) { - background: var(--color-surface-raised); - color: var(--color-content-primary); -} - -[data-combobox-clear-button]:focus-visible { - box-shadow: - 0 0 0 var(--focus-ring-offset) var(--color-surface-default), - 0 0 0 calc(var(--focus-ring-offset) + var(--focus-ring-width)) var(--focus-ring-color); -} - +/* ClearButton chrome (border, focus ring, padding, hover) comes from + * `button.css` since the eidos wrapper renders an icon-only ` + {/if} + {/snippet} diff --git a/src/uix/eidos/components/search-field/search-field.css b/src/uix/eidos/components/search-field/search-field.css index cadf478a1..846fe35fe 100644 --- a/src/uix/eidos/components/search-field/search-field.css +++ b/src/uix/eidos/components/search-field/search-field.css @@ -163,36 +163,10 @@ cursor: not-allowed; } -[data-search-field-clear-trigger] { - display: inline-flex; - flex: 0 0 auto; - align-items: center; - justify-content: center; - inline-size: var(--search-field-clear-size); - block-size: var(--search-field-clear-size); - border: var(--search-field-clear-border-width) solid var(--search-field-clear-border); - border-radius: var(--search-field-clear-radius); - background: var(--search-field-clear-bg); - color: var(--search-field-clear-color); - font: inherit; - cursor: pointer; - outline: none; - transition: - background var(--search-field-transition-duration) var(--search-field-transition-ease), - border-color var(--search-field-transition-duration) var(--search-field-transition-ease), - color var(--search-field-transition-duration) var(--search-field-transition-ease); -} - -[data-search-field-clear-trigger]:hover:not([data-disabled]) { - border-color: var(--search-field-clear-border-hover); - background: var(--search-field-clear-bg-hover); - color: var(--search-field-clear-color-hover); -} - -[data-search-field-clear-trigger]:focus-visible { - box-shadow: var(--search-field-clear-focus-shadow); -} - +/* ClearTrigger chrome (border, focus ring, padding, hover) comes from + * `button.css` since the eidos wrapper renders an icon-only `