Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(996)

Unified Diff: components/autofill/content/renderer/password_autofill_agent.cc

Issue 1381003004: Better distinguish didFinishLoad and didStopLoading (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/autofill/content/renderer/password_autofill_agent.cc
diff --git a/components/autofill/content/renderer/password_autofill_agent.cc b/components/autofill/content/renderer/password_autofill_agent.cc
index 9e6df579fc42a7de38533b88c3a43d51f1cad37a..4e9657022b35110f6de5fb6d9e6d71e705045f60 100644
--- a/components/autofill/content/renderer/password_autofill_agent.cc
+++ b/components/autofill/content/renderer/password_autofill_agent.cc
@@ -692,7 +692,6 @@ PasswordAutofillAgent::PasswordAutofillAgent(content::RenderFrame* render_frame)
logging_state_active_(false),
was_username_autofilled_(false),
was_password_autofilled_(false),
- did_stop_loading_(false),
weak_ptr_factory_(this) {
Send(new AutofillHostMsg_PasswordAutofillAgentConstructed(routing_id()));
}
@@ -1097,9 +1096,16 @@ void PasswordAutofillAgent::SendPasswordForms(bool only_visible) {
}
if (only_visible) {
- Send(new AutofillHostMsg_PasswordFormsRendered(routing_id(),
- password_forms,
- did_stop_loading_));
+ bool is_last_load = true;
+ for (blink::WebFrame* frame = render_frame()->GetWebFrame()->top(); frame;
+ frame = frame->traverseNext(false)) {
+ if (frame != render_frame()->GetWebFrame() && frame->isLoading()) {
Nate Chapin 2015/10/06 18:35:36 This is kind of gross, and necessary because didSt
dcheng 2015/10/08 05:34:35 "didStopLoading does the same thing [no other navi
Nate Chapin 2015/10/08 21:03:59 It was checking all frames. The message blink send
dcheng 2015/10/09 18:34:01 Hmm... but when this is called, the entire page mi
Nate Chapin 2015/10/09 18:39:44 This callback is called for each DidFinishLoad. is
dcheng 2015/10/09 18:45:26 Hmm. I'm thinking of the OOPI case: subframe rende
+ is_last_load = false;
+ break;
+ }
+ }
+ Send(new AutofillHostMsg_PasswordFormsRendered(routing_id(), password_forms,
+ is_last_load));
} else {
Send(new AutofillHostMsg_PasswordFormsParsed(routing_id(), password_forms));
}
@@ -1145,14 +1151,6 @@ void PasswordAutofillAgent::DidCommitProvisionalLoad(
}
}
-void PasswordAutofillAgent::DidStartLoading() {
- did_stop_loading_ = false;
-}
-
-void PasswordAutofillAgent::DidStopLoading() {
- did_stop_loading_ = true;
-}
-
void PasswordAutofillAgent::FrameDetached() {
// If a sub frame has been destroyed while the user was entering information
// into a password form, try to save the data. See https://crbug.com/450806
@@ -1561,14 +1559,6 @@ void PasswordAutofillAgent::LegacyPasswordAutofillAgent::OnDestruct() {
// No op. Do not delete |this|.
}
-void PasswordAutofillAgent::LegacyPasswordAutofillAgent::DidStartLoading() {
- agent_->DidStartLoading();
-}
-
-void PasswordAutofillAgent::LegacyPasswordAutofillAgent::DidStopLoading() {
- agent_->DidStopLoading();
-}
-
void PasswordAutofillAgent::LegacyPasswordAutofillAgent::
DidStartProvisionalLoad(blink::WebLocalFrame* navigated_frame) {
agent_->LegacyDidStartProvisionalLoad(navigated_frame);

Powered by Google App Engine
This is Rietveld 408576698