mirror of
https://github.com/open-webui/open-webui.git
synced 2026-09-22 00:31:30 +00:00
Since v0.10.0 chat messages are virtualized with content-visibility: auto to skip rendering of off-screen messages. Safari's implementation of content-visibility has known paint bugs (WebKit bugs 277573, 281570 and 283846) that can leave the contents of a message unpainted even when it is on screen. On iOS this makes assistant responses render as empty, both in Safari and as a PWA, while the same chats render fine in Chromium and Firefox. This matches the regression window reported in #26712, which appeared when upgrading from 0.9.6 to 0.10.2. Detect Safari (including all iOS browsers, which use WebKit) with the same user agent check already used in MessageInput and ShareChatModal, and skip the virtualization class there. Safari falls back to rendering all messages like before v0.10.0, while other engines keep the optimization. Verified with a spoofed Safari user agent that messages render without the virtualization class and with content-visibility resolving to visible, while Chromium keeps content-visibility: auto. Fixes #26712 |
||
|---|---|---|
| .. | ||
| ChatControls | ||
| ContentRenderer | ||
| Controls | ||
| FileNav | ||
| MessageInput | ||
| Messages | ||
| ModelSelector | ||
| Overview | ||
| Placeholder | ||
| Settings | ||
| Artifacts.svelte | ||
| Chat.svelte | ||
| ChatControls.svelte | ||
| ChatPlaceholder.svelte | ||
| EmbeddedChatHistoryDropdown.svelte | ||
| EmbeddedChatHistoryItem.svelte | ||
| FileNav.svelte | ||
| MessageInput.svelte | ||
| Messages.svelte | ||
| ModelSelector.svelte | ||
| Navbar.svelte | ||
| Overview.svelte | ||
| Placeholder.svelte | ||
| PyodideFileNav.svelte | ||
| SettingsModal.svelte | ||
| ShareChatModal.svelte | ||
| ShortcutItem.svelte | ||
| SkillsModal.svelte | ||
| Suggestions.svelte | ||
| TagChatModal.svelte | ||
| Tags.svelte | ||
| ToolServersModal.svelte | ||
| XTerminal.svelte | ||