Summary: | [WPE][GTK] Enable process swap on navigation to new origin | ||
---|---|---|---|
Product: | WebKit | Reporter: | Michael Catanzaro <mcatanzaro> |
Component: | WebKitGTK | Assignee: | Nobody <webkit-unassigned> |
Status: | RESOLVED FIXED | ||
Severity: | Normal | CC: | beidson, bugs-noreply, calvaris, cdumez, mcatanzaro |
Priority: | P2 | ||
Version: | WebKit Nightly Build | ||
Hardware: | PC | ||
OS: | Linux | ||
See Also: | https://bugs.webkit.org/show_bug.cgi?id=186542 |
Description
Michael Catanzaro
2018-06-13 15:41:09 PDT
Patch is trivial: diff --git a/Source/WebKit/UIProcess/API/glib/WebKitWebContext.cpp b/Source/WebKit/UIProcess/API/glib/WebKitWebContext.cpp index b52591d625e..829734126bc 100644 --- a/Source/WebKit/UIProcess/API/glib/WebKitWebContext.cpp +++ b/Source/WebKit/UIProcess/API/glib/WebKitWebContext.cpp @@ -335,6 +335,7 @@ static void webkitWebContextConstructed(GObject* object) configuration.setInjectedBundlePath(WebCore::FileSystem::stringFromFileSystemRepresentation(bundleFilename.get())); configuration.setMaximumProcessCount(1); configuration.setDiskCacheSpeculativeValidationEnabled(true); + configuration.setProcessSwapsOnNavigation(true); WebKitWebContext* webContext = WEBKIT_WEB_CONTEXT(object); WebKitWebContextPrivate* priv = webContext->priv; I tested this out and it sort of works. The navigation swap seems to occur as expected. However, back/forward list is broken: trying to navigate back past a process swap does not work properly. It is not enabled by default for COCOA yet. We are still working on layout test failures and then we'll have to work on performance. There is a cost to launching new processes (launch time and losing caches for e.g.). OK, let's definitely delay until you think it's ready for Cocoa. |