summaryrefslogtreecommitdiffstats
path: root/content/renderer/render_frame_impl.cc
diff options
context:
space:
mode:
authornasko <nasko@chromium.org>2016-03-04 12:56:37 -0800
committerCommit bot <commit-bot@chromium.org>2016-03-04 20:57:32 +0000
commit35fa1b226afdc5623af8389dc7454ac67eb2e62a (patch)
tree8b7e3c37c0d74a00e1cc52b3501ef9dd2cec160a /content/renderer/render_frame_impl.cc
parent3d07b951187bf83e3d8d291988090f899f78d24a (diff)
downloadchromium_src-35fa1b226afdc5623af8389dc7454ac67eb2e62a.zip
chromium_src-35fa1b226afdc5623af8389dc7454ac67eb2e62a.tar.gz
chromium_src-35fa1b226afdc5623af8389dc7454ac67eb2e62a.tar.bz2
Revert of PlzNavigate: inform the WebFrameClient that a form will be submitted (patchset #4 id:60001 of https://codereview.chromium.org/1446253002/ )
Reason for revert: This is causing a bunch of crashes on Canary. Details are in https://crbug.com/591910. Original issue's description: > PlzNavigate: inform the WebFrameClient that a form will be submitted > > This CL makes it so that the WebFrameClient is informed that a form will be > submitted when the embedder handles the navigation. > > BUG=504347 > > Committed: https://crrev.com/bca103622d505bb537dbc2032de5fcd051c39e0d > Cr-Commit-Position: refs/heads/master@{#379001} TBR=dcheng@chromium.org,japhet@chromium.org,clamy@chromium.org # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=504347 Review URL: https://codereview.chromium.org/1767693002 Cr-Commit-Position: refs/heads/master@{#379353}
Diffstat (limited to 'content/renderer/render_frame_impl.cc')
-rw-r--r--content/renderer/render_frame_impl.cc36
1 files changed, 15 insertions, 21 deletions
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
index 6b7e1ea..d3cfa63 100644
--- a/content/renderer/render_frame_impl.cc
+++ b/content/renderer/render_frame_impl.cc
@@ -2873,30 +2873,24 @@ void RenderFrameImpl::willSendSubmitEvent(const blink::WebFormElement& form) {
}
void RenderFrameImpl::willSubmitForm(const blink::WebFormElement& form) {
- // With PlzNavigate-enabled, this will be called before a DataSource has been
- // set-up.
- // TODO(clamy): make sure the internal state is properly updated at some
- // point in the navigation.
- if (!IsBrowserSideNavigationEnabled()) {
- DocumentState* document_state =
- DocumentState::FromDataSource(frame_->provisionalDataSource());
- NavigationStateImpl* navigation_state =
- static_cast<NavigationStateImpl*>(document_state->navigation_state());
- InternalDocumentStateData* internal_data =
- InternalDocumentStateData::FromDocumentState(document_state);
-
- if (ui::PageTransitionCoreTypeIs(navigation_state->GetTransitionType(),
- ui::PAGE_TRANSITION_LINK)) {
- navigation_state->set_transition_type(ui::PAGE_TRANSITION_FORM_SUBMIT);
- }
+ DocumentState* document_state =
+ DocumentState::FromDataSource(frame_->provisionalDataSource());
+ NavigationStateImpl* navigation_state =
+ static_cast<NavigationStateImpl*>(document_state->navigation_state());
+ InternalDocumentStateData* internal_data =
+ InternalDocumentStateData::FromDocumentState(document_state);
- // Save these to be processed when the ensuing navigation is committed.
- WebSearchableFormData web_searchable_form_data(form);
- internal_data->set_searchable_form_url(web_searchable_form_data.url());
- internal_data->set_searchable_form_encoding(
- web_searchable_form_data.encoding().utf8());
+ if (ui::PageTransitionCoreTypeIs(navigation_state->GetTransitionType(),
+ ui::PAGE_TRANSITION_LINK)) {
+ navigation_state->set_transition_type(ui::PAGE_TRANSITION_FORM_SUBMIT);
}
+ // Save these to be processed when the ensuing navigation is committed.
+ WebSearchableFormData web_searchable_form_data(form);
+ internal_data->set_searchable_form_url(web_searchable_form_data.url());
+ internal_data->set_searchable_form_encoding(
+ web_searchable_form_data.encoding().utf8());
+
FOR_EACH_OBSERVER(RenderFrameObserver, observers_, WillSubmitForm(form));
}