Files
orca/src
ValeandBrennan Benson b2b8b0be93 fix(plugins): clarify selected themes and confirm other-mode picks (#35926)
* plugins: show which theme chip is selected and switch modes for an other-mode pick

A selected chip used the muted secondary style and an unselected one the
filled primary style, so the theme in use looked like the inactive one.
Selected chips are now filled with a check and the others outlined.

Choosing a theme for the other mode only filled that mode's slot, so
nothing changed on screen and the click looked broken. Like installing a
one-mode theme, it now switches the app to that mode and offers Switch
back. The snapshot and toast are shared with applyPluginThemesNow.

Terminal chips were all listed under 'Use now', even a light terminal
theme shown in dark mode. They now sit under the mode they apply to.

Fixes #35922

* fix(plugins): switch back only the settings a theme chip changed

Switch back after an other-mode chip pick restored every theme setting,
so an icon or terminal pick made while the toast was still up was undone
too. It now restores only the keys that pick wrote, plus the mode. The
install flow keeps the full snapshot since it writes most of those keys.

* fix(plugins): list a terminal theme shown in the current mode under Use now

Installing a plugin whose only terminal theme is for the other mode puts
it in the slot that is showing. Grouping terminal chips by their own mode
then showed it selected under 'Use for light', and a click switched the
whole app to light. Treat a theme in the showing slot as that mode's for
the group, the check and the update together.

* fix(plugins): treat the terminal slot light mode displays as Use now

With Match dark mode on, light mode shows the dark terminal slot, but the
chip only checked the light slot. The dark theme on screen was listed
under 'Use for dark' and a click switched the app to dark. Check the slot
that is actually displayed.

* fix(plugins): replace theme chip type assertions

* fix(plugins): preserve appearance when assigning theme chips

* test(plugins): exercise disabled palette across plugin pages

* Prepare plugin terminal palettes only when selected

---------

Co-authored-by: Brennan Benson <79079362+brennanb2025@users.noreply.github.com>
2026-10-30 10:20:03 -07:00
..