ladybird/Libraries/LibWebView
Andreas Kling 24f37c6732 LibWebView: Keep browser history in the UI process
Use the LibWebView history mirror to preserve traversable session
history across WebContent process swaps. WebContent reports snapshots to
the UI process, and new renderers can be seeded from the mirror.

Browser back and forward now resolve through the UI-owned used history
steps. WebContent still runs the spec traversal path when the current
renderer has enough matching state to do so.

Handle canceled and no-op UI navigations without leaving speculative
history entries or pending WebDriver waits behind. Preserve traversal
precheck state across synchronous IPC shutdown, and avoid overwriting a
restored target entry's persisted scroll state before the document has
adopted that entry.
2026-06-14 17:38:44 +02:00
..
Plugins LibGfx: Split image decoders into a separate library 2026-06-10 11:55:48 +02:00
WebUI LibWebView: Add about:history to view, query and mangage browser history 2026-06-10 20:27:36 +02:00
Application.cpp LibWebView: Keep browser history in the UI process 2026-06-14 17:38:44 +02:00
Application.h LibDevTools: Allow editing Web Storage 2026-06-11 16:08:33 +01:00
Attribute.cpp Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
Attribute.h LibWebView: Enable EXPLICIT_SYMBOL_EXPORT 2025-08-23 16:04:36 -06:00
Autocomplete.cpp RequestServer: Send bytecode cache sidecars as files 2026-05-16 08:13:35 +02:00
Autocomplete.h LibWebView: Add a "Search with <engine>" autocomplete row 2026-04-16 21:01:28 +02:00
BookmarkStore.cpp LibWebView: Add bookmark import/export to about:bookmarks 2026-04-22 08:02:15 -04:00
BookmarkStore.h LibWebView: Add bookmark import/export to about:bookmarks 2026-04-22 08:02:15 -04:00
BrowserProcess.cpp Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
BrowserProcess.h Everywhere: Remove dynamic Mach bootstrap registration on macOS 2026-03-23 18:50:48 +01:00
CMakeLists.txt LibWebView: Add a UI session history model 2026-06-14 17:38:44 +02:00
CompositorClient.cpp LibWebView+WebContent: Add feature-gated Compositor process backend 2026-05-22 19:50:42 +01:00
CompositorClient.h Compositor+WebContent+LibWebView: Implement service-side compositor IPC 2026-05-22 19:50:42 +01:00
ConsoleOutput.cpp LibJS: Add source locations to console.trace() 2026-02-06 11:58:07 +00:00
ConsoleOutput.h LibJS: Add source locations to console.trace() 2026-02-06 11:58:07 +00:00
CookieJar.cpp LibWebView: Add async cookie deletion internals 2026-06-13 10:18:33 +02:00
CookieJar.h LibWebView: Add async cookie deletion internals 2026-06-13 10:18:33 +02:00
DOMNodeProperties.cpp LibDevTools+LibWebView+WebContent: Selectively fetch DOM node properties 2025-03-20 09:01:26 +01:00
DOMNodeProperties.h LibWeb+LibDevTools: Report applied style rules to Firefox 2026-06-04 20:54:33 +01:00
ErrorHTML.h LibWeb+LibWebView: Preserve crashed page URLs on crash 2026-05-20 20:17:45 +02:00
FileDownloader.cpp RequestServer: Send bytecode cache sidecars as files 2026-05-16 08:13:35 +02:00
FileDownloader.h LibWebView+UI: Add a context menu item to download images 2026-02-05 07:27:34 -05:00
Forward.h LibWebView: Add a UI session history model 2026-06-14 17:38:44 +02:00
HeadlessWebView.cpp LibWebView+WebContent: Add feature-gated Compositor process backend 2026-05-22 19:50:42 +01:00
HeadlessWebView.h test-web: Reset viewport size after each test 2026-02-23 18:44:26 +00:00
HelperProcess.cpp LibWebView: Keep browser history in the UI process 2026-06-14 17:38:44 +02:00
HelperProcess.h LibWebView+WebContent: Make page IDs browser-assigned 2026-05-30 17:30:00 +01:00
HistoryDebug.cpp LibWebView: Add a UI session history model 2026-06-14 17:38:44 +02:00
HistoryDebug.h LibWebView: Add a UI session history model 2026-06-14 17:38:44 +02:00
HistoryStore.cpp LibWebView+UI: Remove the clear-everything history store API 2026-06-10 20:27:36 +02:00
HistoryStore.h LibWebView+UI: Remove the clear-everything history store API 2026-06-10 20:27:36 +02:00
HSTSStore.cpp LibWebView: Let Settings clear HSTS policies 2026-05-29 22:23:33 +02:00
HSTSStore.h LibWebView: Let Settings clear HSTS policies 2026-05-29 22:23:33 +02:00
Menu.cpp LibWebView+UI: Add an option to toggle a menu's visibility 2026-05-29 10:46:27 -04:00
Menu.h WebContent+LibWebView: Add dumping for session storage 2026-06-11 16:08:33 +01:00
Mutation.cpp LibWeb+LibWebView+WebContent: Inform the UI about DOM mutations 2025-03-08 01:25:55 +01:00
Mutation.h LibWebView: Enable EXPLICIT_SYMBOL_EXPORT 2025-08-23 16:04:36 -06:00
Options.h LibWebView: Keep browser history in the UI process 2026-06-14 17:38:44 +02:00
PageInfo.h test-web: Dump stacking context tree in layout test output 2025-07-09 14:36:08 +02:00
Process.cpp LibWebView: Tie helper processes to browser lifetime 2026-05-26 20:40:25 +02:00
Process.h test-web: Add results directory and live terminal display 2026-01-13 21:05:58 +01:00
ProcessHandle.cpp Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
ProcessHandle.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
ProcessManager.cpp LibWebView: Force-exit unresponsive child processes 2026-05-26 20:40:25 +02:00
ProcessManager.h LibWebView: Force-exit unresponsive child processes 2026-05-26 20:40:25 +02:00
ProcessMonitor.cpp WebContent: Exit cleanly when browser IPC disconnects 2026-05-12 20:57:08 +02:00
ProcessMonitor.h WebContent: Exit cleanly when browser IPC disconnects 2026-05-12 20:57:08 +02:00
ProcessType.h Compositor+LibWebView+WebContent: Scaffold opt-in Compositor process 2026-05-22 19:50:42 +01:00
SearchEngine.cpp Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
SearchEngine.h LibWebView: Enable EXPLICIT_SYMBOL_EXPORT 2025-08-23 16:04:36 -06:00
SessionHistory.cpp LibWebView: Add a UI session history model 2026-06-14 17:38:44 +02:00
SessionHistory.h LibWebView: Add a UI session history model 2026-06-14 17:38:44 +02:00
Settings.cpp LibURL+LibWeb+LibWebView: Move internal URLs to their own header 2026-06-10 20:27:36 +02:00
Settings.h LibWebView+UI/Qt: Move the show menu bar setting to LibWebView settings 2026-06-03 18:14:12 -04:00
SiteIsolation.cpp LibWebView: Keep javascript URL navigations in the same process 2025-03-16 10:59:41 -04:00
SiteIsolation.h LibWebView: Enable EXPLICIT_SYMBOL_EXPORT 2025-08-23 16:04:36 -06:00
SourceHighlighter.cpp LibSyntax+LibJS+LibWebView: Port the syntax highlighter to UTF-8 2026-06-06 18:42:18 +02:00
SourceHighlighter.h LibSyntax+LibJS+LibWeb+LibWebView: Remove unused syntax highlighter code 2026-06-06 18:42:18 +02:00
StorageJar.cpp LibWeb: Fix storage set broadcast event never broadcasting old value 2026-01-21 22:27:59 +01:00
StorageJar.h LibWeb: Fix storage set broadcast event never broadcasting old value 2026-01-21 22:27:59 +01:00
StorageSetResult.h LibWeb: Fix storage set broadcast event never broadcasting old value 2026-01-21 22:27:59 +01:00
UIProcessClient.ipc Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
UIProcessServer.ipc Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
URL.cpp LibURL: Use libpsl for public suffix matching 2026-06-10 11:43:44 +02:00
URL.h UI: Shorten web URLs in location fields 2026-05-31 19:20:59 +02:00
UserAgent.cpp Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
UserAgent.h Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
Utilities.cpp Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
Utilities.h Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
ViewImplementation.cpp LibWebView: Keep browser history in the UI process 2026-06-14 17:38:44 +02:00
ViewImplementation.h LibWebView: Keep browser history in the UI process 2026-06-14 17:38:44 +02:00
WebContentClient.cpp LibWebView: Keep browser history in the UI process 2026-06-14 17:38:44 +02:00
WebContentClient.h LibWebView: Keep browser history in the UI process 2026-06-14 17:38:44 +02:00
WebUI.cpp LibWebView: Add about:history to view, query and mangage browser history 2026-06-10 20:27:36 +02:00
WebUI.h LibWebView+WebContent: Make page IDs browser-assigned 2026-05-30 17:30:00 +01:00
WebWorkerClient.cpp LibWeb+LibHTTP+LibWebView: Implement HSTS 2026-05-29 22:23:33 +02:00
WebWorkerClient.h LibWeb+LibHTTP+LibWebView: Implement HSTS 2026-05-29 22:23:33 +02:00
WorkerProcessManager.cpp Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
WorkerProcessManager.h LibWeb+LibWebView: Move WebWorkerClient into LibWebView 2026-05-27 02:27:19 +01:00