[Webkit-unassigned] [Bug 273956] New: [Navigation] Improve maintaining the entries list and their interaction with HistoryItems.

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu May 9 10:06:14 PDT 2024


https://bugs.webkit.org/show_bug.cgi?id=273956

            Bug ID: 273956
           Summary: [Navigation] Improve maintaining the entries list and
                    their interaction with HistoryItems.
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: WebCore Misc.
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: pgriffis at igalia.com
            Blocks: 258384

This changes a few areas but it all adds up to solving the same problems.
I'll go over the changes by entry point:

- navigation.navigate() takes a historyHandling argument that controls the
  history behavior all the way down.
- navigation.back/forward/traverseTo load the known HistoryItem instead of
  loading a URL as well as specify the correct FrameLoadType.
- the location APIs use the proper historyHandling.
- navigation.entries() is more accurately maintained:
  - On reactivation (loading a cached page from history) we regenerate the entires.
  - On a cross-document navigation we filter out any cross-origin entries.
- history.pushState/history.replaceState changes are reflected in entries.
  - This also no longer changes the key of replaced entries.
- Traversal events use the proper HistoryItem.

This all leads to a more consistent and correct list of entries. In order for adding
these entries to work there were also a few dispatches of NavigateEvent in the
expected places like during a history traversal or history state change.


Referenced Bugs:

https://bugs.webkit.org/show_bug.cgi?id=258384
[Bug 258384] Implement the navigation API
-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20240509/0c5e67ec/attachment.htm>


More information about the webkit-unassigned mailing list