| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "components/autofill/content/renderer/autofill_agent.h" | 5 #include "components/autofill/content/renderer/autofill_agent.h" |
| 6 | 6 |
| 7 #include "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "base/command_line.h" | 8 #include "base/command_line.h" |
| 9 #include "base/message_loop/message_loop.h" | 9 #include "base/message_loop/message_loop.h" |
| 10 #include "base/strings/string_split.h" | 10 #include "base/strings/string_split.h" |
| (...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 204 void AutofillAgent::DidChangeScrollOffset() { | 204 void AutofillAgent::DidChangeScrollOffset() { |
| 205 HidePopup(); | 205 HidePopup(); |
| 206 } | 206 } |
| 207 | 207 |
| 208 void AutofillAgent::FocusedNodeChanged(const WebNode& node) { | 208 void AutofillAgent::FocusedNodeChanged(const WebNode& node) { |
| 209 HidePopup(); | 209 HidePopup(); |
| 210 | 210 |
| 211 if (node.isNull() || !node.isElementNode()) | 211 if (node.isNull() || !node.isElementNode()) |
| 212 return; | 212 return; |
| 213 | 213 |
| 214 if (node.document().frame() != render_frame()->GetWebFrame()) | |
| 215 return; | |
| 216 | |
| 217 if (password_generation_agent_ && | 214 if (password_generation_agent_ && |
| 218 password_generation_agent_->FocusedNodeHasChanged(node)) { | 215 password_generation_agent_->FocusedNodeHasChanged(node)) { |
| 219 is_popup_possibly_visible_ = true; | 216 is_popup_possibly_visible_ = true; |
| 220 return; | 217 return; |
| 221 } | 218 } |
| 222 | 219 |
| 223 WebElement web_element = node.toConst<WebElement>(); | 220 WebElement web_element = node.toConst<WebElement>(); |
| 224 | |
| 225 if (!web_element.document().frame()) | |
| 226 return; | |
| 227 | |
| 228 const WebInputElement* element = toWebInputElement(&web_element); | 221 const WebInputElement* element = toWebInputElement(&web_element); |
| 229 | 222 |
| 230 if (!element || !element->isEnabled() || element->isReadOnly() || | 223 if (!element || !element->isEnabled() || element->isReadOnly() || |
| 231 !element->isTextField() || element->isPasswordField()) | 224 !element->isTextField() || element->isPasswordField()) |
| 232 return; | 225 return; |
| 233 | 226 |
| 234 element_ = *element; | 227 element_ = *element; |
| 235 } | 228 } |
| 236 | 229 |
| 237 void AutofillAgent::Resized() { | 230 void AutofillAgent::Resized() { |
| (...skipping 535 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 773 : content::RenderViewObserver(render_view), agent_(agent) { | 766 : content::RenderViewObserver(render_view), agent_(agent) { |
| 774 } | 767 } |
| 775 | 768 |
| 776 AutofillAgent::LegacyAutofillAgent::~LegacyAutofillAgent() { | 769 AutofillAgent::LegacyAutofillAgent::~LegacyAutofillAgent() { |
| 777 } | 770 } |
| 778 | 771 |
| 779 void AutofillAgent::LegacyAutofillAgent::OnDestruct() { | 772 void AutofillAgent::LegacyAutofillAgent::OnDestruct() { |
| 780 // No-op. Don't delete |this|. | 773 // No-op. Don't delete |this|. |
| 781 } | 774 } |
| 782 | 775 |
| 783 void AutofillAgent::LegacyAutofillAgent::FocusedNodeChanged( | |
| 784 const WebNode& node) { | |
| 785 agent_->FocusedNodeChanged(node); | |
| 786 } | |
| 787 | |
| 788 void AutofillAgent::LegacyAutofillAgent::Resized() { | 776 void AutofillAgent::LegacyAutofillAgent::Resized() { |
| 789 agent_->Resized(); | 777 agent_->Resized(); |
| 790 } | 778 } |
| 791 | 779 |
| 792 } // namespace autofill | 780 } // namespace autofill |
| OLD | NEW |