Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 4ef4b65d33f45734ad3c6cbc7f2fe0dda17051bc https://github.com/WebKit/WebKit/commit/4ef4b65d33f45734ad3c6cbc7f2fe0dda17051bc Author: Michael[tm] Smith <m...@w3.org> Date: 2024-01-29 (Mon, 29 Jan 2024)
Changed paths: M LayoutTests/loader/stateobjects/pushstate-size-expected.txt M LayoutTests/loader/stateobjects/pushstate-size-iframe-expected.txt M Source/WebCore/history/HistoryItem.cpp M Source/WebCore/history/HistoryItem.h M Source/WebCore/loader/FrameLoader.cpp M Source/WebCore/loader/HistoryController.cpp M Source/WebCore/loader/HistoryController.h M Source/WebCore/page/History.cpp M Source/WebCore/page/History.h M Source/WebCore/page/History.idl M Source/WebKit/Shared/WebBackForwardListItem.h M Source/WebKit/UIProcess/API/C/WKBackForwardListItemRef.cpp M Source/WebKit/UIProcess/API/C/WKBackForwardListItemRef.h M Source/WebKit/UIProcess/API/Cocoa/WKBackForwardListItem.h M Source/WebKit/UIProcess/API/Cocoa/WKBackForwardListItem.mm M Source/WebKit/UIProcess/API/glib/WebKitBackForwardListItem.cpp M Source/WebKit/UIProcess/API/glib/WebKitBackForwardListItem.h.in M Source/WebKit/WebProcess/WebCoreSupport/SessionStateConversion.cpp M Source/WebKitLegacy/mac/History/HistoryPropertyList.mm M Source/WebKitLegacy/mac/History/WebHistory.mm M Source/WebKitLegacy/mac/History/WebHistoryItem.mm M Source/WebKitLegacy/mac/History/WebHistoryItemInternal.h M Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.mm M Tools/MiniBrowser/gtk/BrowserWindow.c M Tools/TestWebKitAPI/Tests/WebKit/WKBackForwardListTests.mm M Tools/TestWebKitAPI/Tests/WebKitGLib/TestBackForwardList.cpp Log Message: ----------- Ignore the “title” argument to history.pushState()/history.replaceState() https://bugs.webkit.org/show_bug.cgi?id=223190 Reviewed by Chris Dumez and Michael Catanzaro. This change causes WebKit to ignore the second argument to history.pushState() and history.replaceState(), making WebKit consistent with the current behavior in Gecko and Blink, and consistent with the current spec. That argument previously set the title for the history item, but in https://github.com/whatwg/html/pull/6482 was removed from the spec – which now at https://html.spec.whatwg.org/#the-history-interface:dom-history-pushstate defines the argument as “unused”, and specifies no processing requirements for it. Otherwise, without this change, the WebKit behavior is inconsistent with the current behavior in Gecko and Blink, and inconsistent with the current requirements defined in the spec. Note that this change also reverts https://commits.webkit.org/259367@main — because, since the title is being removed from history items, and no longer used, there’s no longer any need to truncate it, nor any need for the associated test. * LayoutTests/loader/stateobjects/pushstate-size-expected.txt: * LayoutTests/loader/stateobjects/pushstate-size-iframe-expected.txt: * Source/WebCore/history/HistoryItem.cpp: (WebCore::HistoryItem::HistoryItem): (WebCore::HistoryItem::reset): (WebCore::HistoryItem::title const): Deleted. (WebCore::HistoryItem::alternateTitle const): Deleted. (WebCore::HistoryItem::setAlternateTitle): Deleted. (WebCore::HistoryItem::setTitle): Deleted. * Source/WebCore/history/HistoryItem.h: (WebCore::HistoryItem::create): * Source/WebCore/loader/FrameLoader.cpp: (WebCore::FrameLoader::didChangeTitle): * Source/WebCore/loader/HistoryController.cpp: (WebCore::HistoryController::initializeItem): (WebCore::HistoryController::pushState): (WebCore::HistoryController::replaceState): (WebCore::HistoryController::setCurrentItemTitle): Deleted. * Source/WebCore/loader/HistoryController.h: * Source/WebCore/page/History.cpp: (WebCore::History::stateObjectAdded): * Source/WebCore/page/History.h: (WebCore::History::pushState): (WebCore::History::replaceState): * Source/WebCore/page/History.idl: * Source/WebKit/Shared/WebBackForwardListItem.h: (WebKit::WebBackForwardListItem::url const): (WebKit::WebBackForwardListItem::title const): Deleted. * Source/WebKit/UIProcess/API/C/WKBackForwardListItemRef.cpp: (WKBackForwardListItemCopyTitle): * Source/WebKit/UIProcess/API/C/WKBackForwardListItemRef.h: * Source/WebKit/UIProcess/API/Cocoa/WKBackForwardListItem.h: * Source/WebKit/UIProcess/API/Cocoa/WKBackForwardListItem.mm: (-[WKBackForwardListItem title]): * Source/WebKit/UIProcess/API/glib/WebKitBackForwardListItem.cpp: (webkit_back_forward_list_item_get_title): * Source/WebKit/UIProcess/API/glib/WebKitBackForwardListItem.h.in: * Source/WebKit/WebProcess/WebCoreSupport/SessionStateConversion.cpp: (WebKit::toBackForwardListItemState): (WebKit::applyFrameState): (WebKit::toHistoryItem): * Source/WebKitLegacy/mac/History/HistoryPropertyList.mm: (HistoryPropertyListWriter::writeHistoryItem): * Source/WebKitLegacy/mac/History/WebHistory.mm: (-[WebHistoryPrivate visitedURL:withTitle:]): * Source/WebKitLegacy/mac/History/WebHistoryItem.mm: (-[WebHistoryItem initWithURLString:title:lastVisitedTimeInterval:]): (-[WebHistoryItem initWithURLString:title:displayTitle:lastVisitedTimeInterval:]): (-[WebHistoryItem _visited]): (-[WebHistoryItem title]): Deleted. (-[WebHistoryItem setAlternateTitle:]): Deleted. (-[WebHistoryItem alternateTitle]): Deleted. (-[WebHistoryItem setTitle:]): Deleted. (-[WebHistoryItem _visitedWithTitle:]): Deleted. * Source/WebKitLegacy/mac/History/WebHistoryItemInternal.h: * Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::setTitle): * Tools/MiniBrowser/gtk/BrowserWindow.c: (browserWindowCreateBackForwardMenu): * Tools/TestWebKitAPI/Tests/WebKit/WKBackForwardListTests.mm: (TEST): * Tools/TestWebKitAPI/Tests/WebKitGLib/TestBackForwardList.cpp: (testBackForwardListNavigation): (testWebKitWebViewSessionState): Canonical link: https://commits.webkit.org/273650@main _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes