diff options
author | darin@chromium.org <darin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-06-15 17:21:10 +0000 |
---|---|---|
committer | darin@chromium.org <darin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-06-15 17:21:10 +0000 |
commit | daa8c58ee49795d292312bbf217999c93693919c (patch) | |
tree | 561a327f148d74b0522871f15103e25a27b841f5 /chrome/renderer/render_view.h | |
parent | 0b97342d07fd3ef047432b52809d31d10432ee85 (diff) | |
download | chromium_src-daa8c58ee49795d292312bbf217999c93693919c.zip chromium_src-daa8c58ee49795d292312bbf217999c93693919c.tar.gz chromium_src-daa8c58ee49795d292312bbf217999c93693919c.tar.bz2 |
Extract form related classes from the guts of WebFrameImpl.
Instead of having WebFrameImpl generate SearchableFormData, PasswordForm, and AutofillForm classes, allow the embedder (RenderView) to do so.
This is done to help minimize the dependencies WebFrameImpl has on other code, which will make it easier to move WebFrame and WebDataSource into the WebKit API.
Most significant change: Now, RenderView always sets a NavigationState on WebDataSource instances. We used to only do so for browser initiated navigations. This is done so that we can store things like SearchableFormData and friends on the NavigationState.
To facilitate this change, it was necessary to add a way through the WebKit API to refer to a HTMLFormElement. This CL introduces WebForm, which is like a RefPtr<HTMLFormElement>, so you can just copy a WebForm around by value and the right thing happens.
Some of the other changes are about moving more things into the webkit_glue namespace. On hindsight, I probably should have done that as a separate CL.
BUG=10041
TEST=none
R=brettw
Review URL: http://codereview.chromium.org/126083
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18395 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer/render_view.h')
-rw-r--r-- | chrome/renderer/render_view.h | 24 |
1 files changed, 7 insertions, 17 deletions
diff --git a/chrome/renderer/render_view.h b/chrome/renderer/render_view.h index 237b79c..f1108eb 100644 --- a/chrome/renderer/render_view.h +++ b/chrome/renderer/render_view.h @@ -207,23 +207,15 @@ class RenderView : public RenderWidget, virtual void DidChangeLocationWithinPageForFrame(WebView* webview, WebFrame* frame, bool is_new_navigation); - virtual void DidReceiveIconForFrame(WebView* webview, WebFrame* frame); virtual void DidContentsSizeChange(WebWidget* webwidget, int new_width, int new_height); - virtual void WillPerformClientRedirect(WebView* webview, - WebFrame* frame, - const GURL& src_url, - const GURL& dest_url, - unsigned int delay_seconds, - unsigned int fire_date); - virtual void DidCancelClientRedirect(WebView* webview, - WebFrame* frame); virtual void DidCompleteClientRedirect(WebView* webview, WebFrame* frame, const GURL& source); - virtual void WillCloseFrame(WebView* webview, WebFrame* frame); + virtual void WillSubmitForm(WebView* webview, WebFrame* frame, + const WebKit::WebForm& form); virtual void WillSendRequest(WebView* webview, uint32 identifier, WebRequest* request); @@ -300,12 +292,6 @@ class RenderView : public RenderWidget, virtual void PasteFromSelectionClipboard(); - virtual void OnPasswordFormsSeen(WebView* webview, - const std::vector<PasswordForm>& forms); - - virtual void OnAutofillFormSubmitted(WebView* webview, - const AutofillForm& form); - virtual void ReportFindInPageMatchCount(int count, int request_id, bool final_update); virtual void ReportFindInPageSelection(int request_id, @@ -506,7 +492,8 @@ class RenderView : public RenderWidget, const FilePath& local_directory_name); void OnUploadFileRequest(const ViewMsg_UploadFile_Params& p); void OnFormFill(const FormData& form); - void OnFillPasswordForm(const PasswordFormDomManager::FillData& form_data); + void OnFillPasswordForm( + const webkit_glue::PasswordFormDomManager::FillData& form_data); void OnDragTargetDragEnter(const WebDropData& drop_data, const gfx::Point& client_pt, const gfx::Point& screen_pt); @@ -620,6 +607,9 @@ class RenderView : public RenderWidget, void DumpLoadHistograms() const; + // Scan the given frame for password forms and send them up to the browser. + void SendPasswordForms(WebFrame* frame); + // Bitwise-ORed set of extra bindings that have been enabled. See // BindingsPolicy for details. int enabled_bindings_; |