PlzNavigate: use is_waiting_for_beforeunload_ack in the RenderFrameHost
This CL removes the function IsWaitingForBeforeUnloadACK in favor of just using
the is_waiting_for_beforeunload_ack now that PlzNavigate uses the
BeforeUnload IPC. This CL undoes lots of
the work done in https://codereview.chromium.org/789643005.
BUG=504347
Review URL: https://codereview.chromium.org/1213773003
Cr-Commit-Position: refs/heads/master@{#336543}
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 2d64c53..5ee8b9c 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -3993,7 +3993,7 @@
if (DevToolsAgentHost::IsDebuggerAttached(this))
return;
- if (rfhi->IsWaitingForBeforeUnloadACK() ||
+ if (rfhi->is_waiting_for_beforeunload_ack() ||
rfhi->IsWaitingForUnloadACK()) {
// Hang occurred while firing the beforeunload/unload handler.
// Pretend the handler fired so tab closing continues as if it had.
@@ -4009,7 +4009,7 @@
// close. Otherwise, pretend the unload listeners have all fired and close
// the tab.
bool close = true;
- if (rfhi->IsWaitingForBeforeUnloadACK() && delegate_) {
+ if (rfhi->is_waiting_for_beforeunload_ack() && delegate_) {
delegate_->BeforeUnloadFired(this, true, &close);
}
if (close)
diff --git a/content/browser/web_contents/web_contents_impl_unittest.cc b/content/browser/web_contents/web_contents_impl_unittest.cc
index 83546fd..9bd63aa 100644
--- a/content/browser/web_contents/web_contents_impl_unittest.cc
+++ b/content/browser/web_contents/web_contents_impl_unittest.cc
@@ -1004,11 +1004,11 @@
const GURL url2("http://www.yahoo.com");
controller().LoadURL(
url2, Referrer(), ui::PAGE_TRANSITION_TYPED, std::string());
- EXPECT_TRUE(orig_rfh->IsWaitingForBeforeUnloadACK());
+ EXPECT_TRUE(orig_rfh->is_waiting_for_beforeunload_ack());
base::TimeTicks now = base::TimeTicks::Now();
orig_rfh->OnMessageReceived(
FrameHostMsg_BeforeUnload_ACK(0, false, now, now));
- EXPECT_FALSE(orig_rfh->IsWaitingForBeforeUnloadACK());
+ EXPECT_FALSE(orig_rfh->is_waiting_for_beforeunload_ack());
EXPECT_FALSE(contents()->CrossProcessNavigationPending());
EXPECT_EQ(orig_rfh, contents()->GetMainFrame());
@@ -1016,10 +1016,10 @@
controller().LoadURL(
url2, Referrer(), ui::PAGE_TRANSITION_TYPED, std::string());
entry_id = controller().GetPendingEntry()->GetUniqueID();
- EXPECT_TRUE(orig_rfh->IsWaitingForBeforeUnloadACK());
+ EXPECT_TRUE(orig_rfh->is_waiting_for_beforeunload_ack());
now = base::TimeTicks::Now();
orig_rfh->PrepareForCommit();
- EXPECT_FALSE(orig_rfh->IsWaitingForBeforeUnloadACK());
+ EXPECT_FALSE(orig_rfh->is_waiting_for_beforeunload_ack());
EXPECT_TRUE(contents()->CrossProcessNavigationPending());
TestRenderFrameHost* pending_rfh = contents()->GetPendingMainFrame();
@@ -1057,7 +1057,7 @@
const GURL url2("http://www.yahoo.com");
controller().LoadURL(
url2, Referrer(), ui::PAGE_TRANSITION_TYPED, std::string());
- EXPECT_TRUE(orig_rfh->IsWaitingForBeforeUnloadACK());
+ EXPECT_TRUE(orig_rfh->is_waiting_for_beforeunload_ack());
orig_rfh->PrepareForCommit();
EXPECT_TRUE(contents()->CrossProcessNavigationPending());
@@ -1065,7 +1065,7 @@
orig_rfh->SendNavigate(2, 0, true, GURL("http://www.google.com/foo"));
// Verify that the pending navigation is cancelled.
- EXPECT_FALSE(orig_rfh->IsWaitingForBeforeUnloadACK());
+ EXPECT_FALSE(orig_rfh->is_waiting_for_beforeunload_ack());
SiteInstance* instance2 = contents()->GetSiteInstance();
EXPECT_FALSE(contents()->CrossProcessNavigationPending());
EXPECT_EQ(orig_rfh, contents()->GetMainFrame());
@@ -1103,7 +1103,7 @@
TestRenderFrameHost* google_rfh = contents()->GetPendingMainFrame();
// Simulate beforeunload approval.
- EXPECT_TRUE(ntp_rfh->IsWaitingForBeforeUnloadACK());
+ EXPECT_TRUE(ntp_rfh->is_waiting_for_beforeunload_ack());
base::TimeTicks now = base::TimeTicks::Now();
ntp_rfh->PrepareForCommit();
@@ -1156,7 +1156,7 @@
EXPECT_EQ(entry1, controller().GetPendingEntry());
// Simulate beforeunload approval.
- EXPECT_TRUE(google_rfh->IsWaitingForBeforeUnloadACK());
+ EXPECT_TRUE(google_rfh->is_waiting_for_beforeunload_ack());
now = base::TimeTicks::Now();
google_rfh->PrepareForCommit();
google_rfh->OnMessageReceived(
@@ -1209,12 +1209,12 @@
child_rfh->SendNavigateWithTransition(1, 0, false,
GURL("http://google.com/frame"),
ui::PAGE_TRANSITION_AUTO_SUBFRAME);
- EXPECT_TRUE(orig_rfh->IsWaitingForBeforeUnloadACK());
+ EXPECT_TRUE(orig_rfh->is_waiting_for_beforeunload_ack());
// Now simulate the onbeforeunload approval and verify the navigation is
// not canceled.
orig_rfh->PrepareForCommit();
- EXPECT_FALSE(orig_rfh->IsWaitingForBeforeUnloadACK());
+ EXPECT_FALSE(orig_rfh->is_waiting_for_beforeunload_ack());
EXPECT_TRUE(contents()->CrossProcessNavigationPending());
}
@@ -1244,7 +1244,7 @@
int entry2_id = controller().GetPendingEntry()->GetUniqueID();
TestRenderFrameHost* pending_rfh = contents()->GetPendingMainFrame();
EXPECT_TRUE(contents()->CrossProcessNavigationPending());
- EXPECT_TRUE(orig_rfh->IsWaitingForBeforeUnloadACK());
+ EXPECT_TRUE(orig_rfh->is_waiting_for_beforeunload_ack());
EXPECT_NE(orig_rfh, pending_rfh);
// Suppose the first navigation tries to commit now, with a
@@ -1254,7 +1254,7 @@
1, entry1_id, true, url, base::Bind(SetAsNonUserGesture));
EXPECT_TRUE(contents()->CrossProcessNavigationPending());
EXPECT_EQ(orig_rfh, contents()->GetMainFrame());
- EXPECT_FALSE(orig_rfh->IsWaitingForBeforeUnloadACK());
+ EXPECT_FALSE(orig_rfh->is_waiting_for_beforeunload_ack());
// It should commit.
ASSERT_EQ(1, controller().GetEntryCount());
EXPECT_EQ(url, controller().GetLastCommittedEntry()->GetURL());