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

Side by Side Diff: chrome/renderer/autofill/password_autofill_manager.h

Issue 8680040: Group forms-related files in webkit/glue in a forms/ subdirectory. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase + another build fix Created 9 years 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 #ifndef CHROME_RENDERER_AUTOFILL_PASSWORD_AUTOFILL_MANAGER_H_ 5 #ifndef CHROME_RENDERER_AUTOFILL_PASSWORD_AUTOFILL_MANAGER_H_
6 #define CHROME_RENDERER_AUTOFILL_PASSWORD_AUTOFILL_MANAGER_H_ 6 #define CHROME_RENDERER_AUTOFILL_PASSWORD_AUTOFILL_MANAGER_H_
7 #pragma once 7 #pragma once
8 8
9 #include <map> 9 #include <map>
10 #include <vector> 10 #include <vector>
11 11
12 #include "base/memory/weak_ptr.h" 12 #include "base/memory/weak_ptr.h"
13 #include "chrome/renderer/page_click_listener.h" 13 #include "chrome/renderer/page_click_listener.h"
14 #include "content/public/renderer/render_view_observer.h" 14 #include "content/public/renderer/render_view_observer.h"
15 #include "third_party/WebKit/Source/WebKit/chromium/public/WebInputElement.h" 15 #include "third_party/WebKit/Source/WebKit/chromium/public/WebInputElement.h"
16 #include "webkit/glue/password_form_dom_manager.h" 16 #include "webkit/forms/password_form_dom_manager.h"
17 17
18 namespace WebKit { 18 namespace WebKit {
19 class WebInputElement; 19 class WebInputElement;
20 class WebKeyboardEvent; 20 class WebKeyboardEvent;
21 } 21 }
22 22
23 namespace autofill { 23 namespace autofill {
24 24
25 // This class is responsible for filling password forms. 25 // This class is responsible for filling password forms.
26 // There is one PasswordAutofillManager per RenderView. 26 // There is one PasswordAutofillManager per RenderView.
(...skipping 21 matching lines...) Expand all
48 // A no-op. Password forms are not previewed, so they do not need to be 48 // A no-op. Password forms are not previewed, so they do not need to be
49 // cleared when the selection changes. However, this method returns 49 // cleared when the selection changes. However, this method returns
50 // true when |node| is fillable by password Autofill. 50 // true when |node| is fillable by password Autofill.
51 bool DidClearAutofillSelection(const WebKit::WebNode& node); 51 bool DidClearAutofillSelection(const WebKit::WebNode& node);
52 52
53 private: 53 private:
54 friend class PasswordAutofillManagerTest; 54 friend class PasswordAutofillManagerTest;
55 55
56 struct PasswordInfo { 56 struct PasswordInfo {
57 WebKit::WebInputElement password_field; 57 WebKit::WebInputElement password_field;
58 webkit_glue::PasswordFormFillData fill_data; 58 webkit::forms::PasswordFormFillData fill_data;
59 bool backspace_pressed_last; 59 bool backspace_pressed_last;
60 PasswordInfo() : backspace_pressed_last(false) {} 60 PasswordInfo() : backspace_pressed_last(false) {}
61 }; 61 };
62 typedef std::map<WebKit::WebElement, PasswordInfo> LoginToPasswordInfoMap; 62 typedef std::map<WebKit::WebElement, PasswordInfo> LoginToPasswordInfoMap;
63 63
64 // RenderViewObserver: 64 // RenderViewObserver:
65 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE; 65 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE;
66 virtual void DidFinishDocumentLoad(WebKit::WebFrame* frame) OVERRIDE; 66 virtual void DidFinishDocumentLoad(WebKit::WebFrame* frame) OVERRIDE;
67 virtual void DidFinishLoad(WebKit::WebFrame* frame) OVERRIDE; 67 virtual void DidFinishLoad(WebKit::WebFrame* frame) OVERRIDE;
68 virtual void FrameDetached(WebKit::WebFrame* frame) OVERRIDE; 68 virtual void FrameDetached(WebKit::WebFrame* frame) OVERRIDE;
69 virtual void FrameWillClose(WebKit::WebFrame* frame) OVERRIDE; 69 virtual void FrameWillClose(WebKit::WebFrame* frame) OVERRIDE;
70 70
71 // PageClickListener: 71 // PageClickListener:
72 virtual bool InputElementClicked(const WebKit::WebInputElement& element, 72 virtual bool InputElementClicked(const WebKit::WebInputElement& element,
73 bool was_focused, 73 bool was_focused,
74 bool is_focused) OVERRIDE; 74 bool is_focused) OVERRIDE;
75 virtual bool InputElementLostFocus() OVERRIDE; 75 virtual bool InputElementLostFocus() OVERRIDE;
76 76
77 // RenderView IPC handlers: 77 // RenderView IPC handlers:
78 void OnFillPasswordForm(const webkit_glue::PasswordFormFillData& form_data); 78 void OnFillPasswordForm(const webkit::forms::PasswordFormFillData& form_data);
79 79
80 // Scans the given frame for password forms and sends them up to the browser. 80 // Scans the given frame for password forms and sends them up to the browser.
81 // If |only_visible| is true, only forms visible in the layout are sent. 81 // If |only_visible| is true, only forms visible in the layout are sent.
82 void SendPasswordForms(WebKit::WebFrame* frame, bool only_visible); 82 void SendPasswordForms(WebKit::WebFrame* frame, bool only_visible);
83 83
84 void GetSuggestions(const webkit_glue::PasswordFormFillData& fill_data, 84 void GetSuggestions(const webkit::forms::PasswordFormFillData& fill_data,
85 const string16& input, 85 const string16& input,
86 std::vector<string16>* suggestions); 86 std::vector<string16>* suggestions);
87 87
88 bool ShowSuggestionPopup(const webkit_glue::PasswordFormFillData& fill_data, 88 bool ShowSuggestionPopup(const webkit::forms::PasswordFormFillData& fill_data,
89 const WebKit::WebInputElement& user_input); 89 const WebKit::WebInputElement& user_input);
90 90
91 bool FillUserNameAndPassword( 91 bool FillUserNameAndPassword(
92 WebKit::WebInputElement* username_element, 92 WebKit::WebInputElement* username_element,
93 WebKit::WebInputElement* password_element, 93 WebKit::WebInputElement* password_element,
94 const webkit_glue::PasswordFormFillData& fill_data, 94 const webkit::forms::PasswordFormFillData& fill_data,
95 bool exact_username_match, 95 bool exact_username_match,
96 bool set_selection); 96 bool set_selection);
97 97
98 // Fills |login_input| and |password| with the most relevant suggestion from 98 // Fills |login_input| and |password| with the most relevant suggestion from
99 // |fill_data| and shows a popup with other suggestions. 99 // |fill_data| and shows a popup with other suggestions.
100 void PerformInlineAutocomplete( 100 void PerformInlineAutocomplete(
101 const WebKit::WebInputElement& username, 101 const WebKit::WebInputElement& username,
102 const WebKit::WebInputElement& password, 102 const WebKit::WebInputElement& password,
103 const webkit_glue::PasswordFormFillData& fill_data); 103 const webkit::forms::PasswordFormFillData& fill_data);
104 104
105 // Invoked when the passed frame is closing. Gives us a chance to clear any 105 // Invoked when the passed frame is closing. Gives us a chance to clear any
106 // reference we may have to elements in that frame. 106 // reference we may have to elements in that frame.
107 void FrameClosing(const WebKit::WebFrame* frame); 107 void FrameClosing(const WebKit::WebFrame* frame);
108 108
109 // Finds login information for a |node| that was previously filled. 109 // Finds login information for a |node| that was previously filled.
110 bool FindLoginInfo(const WebKit::WebNode& node, 110 bool FindLoginInfo(const WebKit::WebNode& node,
111 WebKit::WebInputElement* found_input, 111 WebKit::WebInputElement* found_input,
112 PasswordInfo* found_password); 112 PasswordInfo* found_password);
113 113
114 // The logins we have filled so far with their associated info. 114 // The logins we have filled so far with their associated info.
115 LoginToPasswordInfoMap login_to_password_info_; 115 LoginToPasswordInfoMap login_to_password_info_;
116 116
117 base::WeakPtrFactory<PasswordAutofillManager> weak_ptr_factory_; 117 base::WeakPtrFactory<PasswordAutofillManager> weak_ptr_factory_;
118 118
119 DISALLOW_COPY_AND_ASSIGN(PasswordAutofillManager); 119 DISALLOW_COPY_AND_ASSIGN(PasswordAutofillManager);
120 }; 120 };
121 121
122 } // namespace autofill 122 } // namespace autofill
123 123
124 #endif // CHROME_RENDERER_AUTOFILL_PASSWORD_AUTOFILL_MANAGER_H_ 124 #endif // CHROME_RENDERER_AUTOFILL_PASSWORD_AUTOFILL_MANAGER_H_
OLDNEW
« no previous file with comments | « chrome/renderer/autofill/form_cache.cc ('k') | chrome/renderer/autofill/password_autofill_manager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698