Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e72901245a13f0e051a65f1b15bb08fcae0f39a8
      
https://github.com/WebKit/WebKit/commit/e72901245a13f0e051a65f1b15bb08fcae0f39a8
  Author: Charlie Wolfe <[email protected]>
  Date:   2024-10-15 (Tue, 15 Oct 2024)

  Changed paths:
    M Source/WebCore/history/BackForwardCache.cpp
    M Source/WebCore/history/BackForwardCache.h
    M Source/WebCore/history/CachedPage.h
    M Source/WebCore/history/HistoryItem.cpp
    M Source/WebCore/history/HistoryItem.h

  Log Message:
  -----------
  Remove back/forward cache state from `HistoryItem`
https://bugs.webkit.org/show_bug.cgi?id=281467
rdar://137923224

Reviewed by Alex Christensen.

To prepare for site isolation, most history state is being moved to the UI 
process rather than being
stored in the history item maps within the web process, which will eventually 
be removed. Since the
back/forward cache state on `HistoryItem` cannot be stored in the UI process, 
it should be moved into
maps on `BackForwardCache`.

Modify `m_items` to store a `BackForwardItemIdentifier`, and add 
`m_cachedPageMap` to store the pruning
reason when an item is removed from the back/forward cache.

* Source/WebCore/history/BackForwardCache.cpp:
(WebCore::BackForwardCache::dump const):
(WebCore::BackForwardCache::frameCount):
(WebCore::BackForwardCache::markPagesForDeviceOrPageScaleChanged):
(WebCore::BackForwardCache::markPagesForContentsSizeChanged):
(WebCore::BackForwardCache::markPagesForCaptionPreferencesChanged):
(WebCore::BackForwardCache::addIfCacheable):
(WebCore::BackForwardCache::take):
(WebCore::BackForwardCache::removeAllItemsForPage):
(WebCore::BackForwardCache::get):
(WebCore::BackForwardCache::remove):
(WebCore::BackForwardCache::prune):
(WebCore::BackForwardCache::clearEntriesForOrigins):
(WebCore::BackForwardCache::isInBackForwardCache const):
(WebCore::BackForwardCache::hasCachedPageExpired const):
(WebCore::BackForwardCache::frameCount const):
* Source/WebCore/history/BackForwardCache.h:
* Source/WebCore/history/HistoryItem.cpp:
(WebCore::HistoryItem::HistoryItem):
(WebCore::HistoryItem::~HistoryItem):
(WebCore::HistoryItem::isInBackForwardCache const):
(WebCore::HistoryItem::hasCachedPageExpired const):
(WebCore::HistoryItem::setCachedPage): Deleted.
(WebCore::HistoryItem::takeCachedPage): Deleted.
* Source/WebCore/history/HistoryItem.h:
(WebCore::HistoryItem::isInBackForwardCache const): Deleted.
* Source/WebCore/history/CachedPage.h:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to