Commit Graph
9835 Commits
Author SHA1 Message Date
Timothy Jaeryang Baek b5da50f3df refac 2026-08-16 23:26:24 -07:00
Classic298 1756c9d5d2 fix: default pinned models stop applying after a user's first page load (#28069)
Changing "Default Pinned Models" in admin settings had no effect for anyone who had already opened Open WebUI once. The sidebar copied the admin default into that user's own settings the first time it rendered and saved it to the server, which marked them as having customized their pins, so every later change to the default was ignored for them. Merely loading the page was enough, the user never had to touch a pin.

The default is now resolved for display only, through a shared store that falls back to the admin list while the user has no pins of their own, the same way default models already work. Nothing is written to the user's settings until they actually pin, unpin or reorder something, at which point their choice takes over for good. Unpinning everything still persists an empty list rather than snapping back to the default.

Users whose settings were already overwritten by the old behaviour keep that copy, since a stored pin list cannot be told apart from a deliberate one.

Fixes a drag-reorder path that mixed sidebar positions with stored ones, and stops the sidebar section reopening itself after any unrelated settings change.
2026-08-17 00:22:51 -06:00
Timothy Jaeryang Baek b211c407f4 refac 2026-08-16 23:14:08 -07:00
Timothy Jaeryang Baek e4694d6c3f refac 2026-08-16 22:59:10 -07:00
Timothy Jaeryang Baek f7a533cda6 refac 2026-08-16 22:57:01 -07:00
Timothy Jaeryang Baek 62fc436999 refac 2026-08-16 22:52:24 -07:00
Timothy Jaeryang Baek 31d08d592c refac 2026-08-15 01:10:14 -06:00
Timothy Jaeryang Baek 467be93e6d refac 2026-08-15 01:09:39 -06:00
Timothy Jaeryang Baek 7fc5fa1ff3 refac 2026-08-15 01:02:06 -06:00
Timothy Jaeryang Baek 3eb65f4715 refac 2026-08-15 00:06:38 -06:00
Timothy Jaeryang Baek 30f82788bc refac 2026-08-15 00:05:45 -06:00
Timothy Jaeryang Baek bbfdbd59f2 refac 2026-08-15 00:05:37 -06:00
Timothy Jaeryang Baek 98b9df0398 refac 2026-08-15 00:05:11 -06:00
Timothy Jaeryang Baek 0f821398ca refac 2026-08-14 23:52:13 -06:00
Timothy Jaeryang Baek 1b39ff352a refac 2026-08-14 23:50:34 -06:00
Timothy Jaeryang Baek a5ea732c1e refac 2026-08-14 23:47:00 -06:00
Timothy Jaeryang Baek 516cf1a9a6 refac 2026-08-14 21:44:13 -06:00
Timothy Jaeryang Baek a1579a01ff refac 2026-08-14 00:22:17 -06:00
Timothy Jaeryang Baek f7767d6be7 refac 2026-08-13 22:08:42 -06:00
Timothy Jaeryang Baek d9014b3483 refac 2026-08-13 22:01:33 -06:00
Timothy Jaeryang Baek 57bd08304e refac 2026-08-13 22:01:17 -06:00
Timothy Jaeryang Baek 14e4d72d9a refac 2026-08-13 22:01:15 -06:00
Timothy Jaeryang Baek 256cce505b refac 2026-08-13 21:51:04 -06:00
Timothy Jaeryang Baek 55c202e841 refac 2026-08-13 21:48:01 -06:00
Timothy Jaeryang Baek b4738d1a2e refac 2026-08-13 21:31:49 -06:00
Timothy Jaeryang Baek 083e351441 refac 2026-08-13 21:02:17 -06:00
Timothy Jaeryang Baek 7d99b2716a refac 2026-08-13 19:59:11 -06:00
Timothy Jaeryang Baek b018feb741 refac 2026-08-13 18:33:51 -06:00
Timothy Jaeryang Baek 133549a87e refac 2026-08-13 18:19:25 -06:00
Timothy Jaeryang Baek 4465f52a3e refac 2026-08-13 18:13:43 -06:00
Timothy Jaeryang Baek 2c01d59335 refac 2026-08-13 17:26:38 -06:00
Timothy Jaeryang Baek 7593698080 refac 2026-08-13 16:42:51 -06:00
Timothy Jaeryang Baek 2649e3305c refac 2026-08-13 16:42:10 -06:00
Timothy Jaeryang Baek 794671a988 refac 2026-08-13 16:16:10 -06:00
Timothy Jaeryang Baek b7292890cc refac 2026-08-13 16:13:47 -06:00
Timothy Jaeryang Baek f96b717566 refac 2026-08-13 16:04:53 -06:00
Timothy Jaeryang Baek b3a5fd3875 refac 2026-08-13 15:57:42 -06:00
Timothy Jaeryang Baek 76583749ed refac 2026-08-13 15:52:44 -06:00
Timothy Jaeryang Baek ec9bf5a64f refac 2026-08-13 15:49:50 -06:00
Timothy Jaeryang Baek 52c5e3b20d refac 2026-08-13 15:43:27 -06:00
Timothy Jaeryang Baek c93c6d6fc4 refac 2026-08-13 15:42:54 -06:00
Timothy Jaeryang Baek c1f914a626 refac 2026-08-13 15:38:25 -06:00
Timothy Jaeryang Baek bfb68feea7 refac 2026-08-13 15:33:42 -06:00
Timothy Jaeryang Baek 2befa8f796 refac 2026-08-13 15:26:19 -06:00
Timothy Jaeryang Baek 7dfbdd221a refac 2026-08-13 15:20:59 -06:00
Timothy Jaeryang Baek 8d25ad00e2 refac 2026-08-13 14:52:30 -06:00
Timothy Jaeryang Baek 60feca71a6 refac 2026-08-13 14:50:43 -06:00
Timothy Jaeryang Baek a17cb174ad refac 2026-08-13 14:46:08 -06:00
Classic298 5cb87e6630 fix: announce toggle state of integrations menu rows to screen readers (#27667)
Every toggle row in the chat integrations menu (filters, Web Search, Image, Code Interpreter, Tools, Skills) is a button whose on/off state was carried only by the decorative Switch inside it. Screen readers announced the row name and nothing else, so there was no way to tell whether a tool or feature was active without looking at it.

Each row button now carries aria-pressed, and the Switch wrapper is marked inert so the nested role=switch stops competing with the row for the announcement and stops adding a nameless tab stop. Hit testing skips inert content, so clicking the switch still toggles the row.

Tool rows that are not yet authenticated omit aria-pressed: activating those starts an OAuth redirect rather than toggling, so announcing them as an unpressed toggle would be wrong.

The Web Search, Image and Code Interpreter rows also had a state-flipping aria-label ("Disable Web Search") on top of aria-pressed, which announces as "Disable Web Search, pressed" and reads as the opposite of the truth. Removed: the visible row text already names each control.

Fixes #17150
2026-08-13 13:04:13 -06:00
Timothy Jaeryang Baek ba885d0026 refac 2026-08-13 13:03:56 -06:00