Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b872b71975a2c60bb1496dbddf05dcaf987dc525
      
https://github.com/WebKit/WebKit/commit/b872b71975a2c60bb1496dbddf05dcaf987dc525
  Author: Megan Gardner <[email protected]>
  Date:   2024-01-11 (Thu, 11 Jan 2024)

  Changed paths:
    A 
LayoutTests/fast/dom/no-scroll-when-command-click-fragment-URL-expected.txt
    A LayoutTests/fast/dom/no-scroll-when-command-click-fragment-URL.html
    A 
LayoutTests/http/tests/navigation/fragment-navigation-policy-ignore-expected.txt
    A LayoutTests/http/tests/navigation/fragment-navigation-policy-ignore.html
    M LayoutTests/platform/gtk/TestExpectations
    M LayoutTests/platform/mac-wk1/TestExpectations
    A 
LayoutTests/platform/mac-wk1/http/tests/navigation/fragment-navigation-policy-ignore-expected.txt
    M LayoutTests/platform/wpe/TestExpectations
    M Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp

  Log Message:
  -----------
  User command-clicks on fragment URLS should not navigate on current page.
https://bugs.webkit.org/show_bug.cgi?id=267168
rdar://119079650

Reviewed by Wenson Hsieh and Alex Christensen.

In https://commits.webkit.org/270416@main a change was made for performance
to asynchronously  DecidePolicyForNavigationAction for fragment loading. While 
this is
a good speedup, it breaks the long-standing user interaction of 
command-clicking on
a fragment link to load that link in a background tab, while staying at the 
current
scroll location on the current page. This is a client behavior, and with this 
change, the
client no longer had control to keep the navigation to the fragment from 
happening.
We do not want to lose this speedup, so only revert to the previously 
synchronous behavior
when the fragment URL is being loaded from a user gesture.

* LayoutTests/fast/dom/no-scroll-when-command-click-fragment-URL-expected.txt: 
Added.
* LayoutTests/fast/dom/no-scroll-when-command-click-fragment-URL.html: Added.
* Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):

Canonical link: https://commits.webkit.org/272906@main


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to