Index: components/pdf/browser/pdf_tab_helper.h |
diff --git a/chrome/browser/ui/pdf/pdf_tab_helper.h b/components/pdf/browser/pdf_tab_helper.h |
similarity index 67% |
rename from chrome/browser/ui/pdf/pdf_tab_helper.h |
rename to components/pdf/browser/pdf_tab_helper.h |
index 5dca4a649dc9fa4eb643e4b3d33f4258352dbced..95ad32bcc009b15c62089ce928b7697a07a0a35e 100644 |
--- a/chrome/browser/ui/pdf/pdf_tab_helper.h |
+++ b/components/pdf/browser/pdf_tab_helper.h |
@@ -1,9 +1,9 @@ |
-// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
+// Copyright 2014 The Chromium Authors. All rights reserved. |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-#ifndef CHROME_BROWSER_UI_PDF_PDF_TAB_HELPER_H_ |
-#define CHROME_BROWSER_UI_PDF_PDF_TAB_HELPER_H_ |
+#ifndef COMPONENTS_PDF_BROWSER_PDF_TAB_HELPER_H_ |
+#define COMPONENTS_PDF_BROWSER_PDF_TAB_HELPER_H_ |
#include <string> |
@@ -13,19 +13,22 @@ |
#include "content/public/browser/web_contents_user_data.h" |
#include "ipc/ipc_message.h" |
-class OpenPDFInReaderPromptDelegate; |
- |
namespace content { |
class WebContents; |
} |
-// Per-tab class to handle PDF messages. |
+namespace pdf { |
+ |
+class OpenPDFInReaderPromptDelegate; |
+class PDFTabHelperDelegate; |
+ |
+// Per-WebContents class to handle PDF messages. |
class PDFTabHelper : public content::WebContentsObserver, |
- public content::WebContentsUserData<PDFTabHelper> { |
+ public content::WebContentsUserData<PDFTabHelper> { |
public: |
- |
- explicit PDFTabHelper(content::WebContents* web_contents); |
- virtual ~PDFTabHelper(); |
+ static void CreateForWebContentsWithDelegate( |
+ content::WebContents* contents, |
+ scoped_ptr<PDFTabHelperDelegate> delegate); |
OpenPDFInReaderPromptDelegate* open_in_reader_prompt() const { |
return open_in_reader_prompt_.get(); |
@@ -34,6 +37,10 @@ class PDFTabHelper : public content::WebContentsObserver, |
void ShowOpenInReaderPrompt(scoped_ptr<OpenPDFInReaderPromptDelegate> prompt); |
private: |
+ PDFTabHelper(content::WebContents* web_contents, |
+ scoped_ptr<PDFTabHelperDelegate> delegate); |
+ virtual ~PDFTabHelper(); |
+ |
// content::WebContentsObserver overrides: |
virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE; |
virtual void DidNavigateMainFrame( |
@@ -49,25 +56,18 @@ class PDFTabHelper : public content::WebContentsObserver, |
// Message handlers. |
void OnHasUnsupportedFeature(); |
- void OnSaveURLAs(const GURL& url, |
- const content::Referrer& referrer); |
+ void OnSaveURLAs(const GURL& url, const content::Referrer& referrer); |
void OnUpdateContentRestrictions(int content_restrictions); |
void OnModalPromptForPassword(const std::string& prompt, |
IPC::Message* reply_message); |
// The model for the confirmation prompt to open a PDF in Adobe Reader. |
scoped_ptr<OpenPDFInReaderPromptDelegate> open_in_reader_prompt_; |
+ scoped_ptr<PDFTabHelperDelegate> delegate_; |
DISALLOW_COPY_AND_ASSIGN(PDFTabHelper); |
}; |
-typedef base::Callback<void(bool /* success */, |
- const base::string16& /* password */)> |
- PasswordDialogClosedCallback; |
- |
-// Shows a tab-modal dialog to get a password for a PDF document. |
-void ShowPDFPasswordDialog(content::WebContents* web_contents, |
- const base::string16& prompt, |
- const PasswordDialogClosedCallback& callback); |
+} // namespace pdf |
-#endif // CHROME_BROWSER_UI_PDF_PDF_TAB_HELPER_H_ |
+#endif // COMPONENTS_PDF_BROWSER_PDF_TAB_HELPER_H_ |