summaryrefslogtreecommitdiff
path: root/chromium/third_party/blink/renderer/core/frame/history.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/blink/renderer/core/frame/history.cc')
-rw-r--r--chromium/third_party/blink/renderer/core/frame/history.cc18
1 files changed, 10 insertions, 8 deletions
diff --git a/chromium/third_party/blink/renderer/core/frame/history.cc b/chromium/third_party/blink/renderer/core/frame/history.cc
index 48f34f5d4d3..4ad6068a5ee 100644
--- a/chromium/third_party/blink/renderer/core/frame/history.cc
+++ b/chromium/third_party/blink/renderer/core/frame/history.cc
@@ -211,13 +211,13 @@ void History::pushState(v8::Isolate* isolate,
const String& url,
ExceptionState& exception_state) {
WebFrameLoadType load_type = WebFrameLoadType::kStandard;
- // Navigations in portal contexts do not create back/forward entries.
- if (DomWindow() && DomWindow()->GetFrame()->GetPage()->InsidePortal()) {
+ if (DomWindow() &&
+ DomWindow()->GetFrame()->ShouldMaintainTrivialSessionHistory()) {
DomWindow()->AddConsoleMessage(
MakeGarbageCollected<ConsoleMessage>(
- mojom::ConsoleMessageSource::kJavaScript,
- mojom::ConsoleMessageLevel::kWarning,
- "Use of history.pushState in a portal context "
+ mojom::blink::ConsoleMessageSource::kJavaScript,
+ mojom::blink::ConsoleMessageLevel::kWarning,
+ "Use of history.pushState in a prerender context "
"is treated as history.replaceState."),
/* discard_duplicates */ true);
load_type = WebFrameLoadType::kReplaceCurrentItem;
@@ -302,15 +302,17 @@ void History::StateObjectAdded(
}
if (auto* app_history = AppHistory::appHistory(*DomWindow())) {
- if (!app_history->DispatchNavigateEvent(
+ if (app_history->DispatchNavigateEvent(
full_url, nullptr, NavigateEventType::kHistoryApi, type,
- UserNavigationInvolvement::kNone, data.get())) {
+ UserNavigationInvolvement::kNone,
+ data.get()) != AppHistory::DispatchResult::kContinue) {
return;
}
}
DomWindow()->document()->Loader()->RunURLAndHistoryUpdateSteps(
- full_url, std::move(data), type, restoration_type);
+ full_url, mojom::blink::SameDocumentNavigationType::kHistoryApi,
+ std::move(data), type, restoration_type);
}
} // namespace blink