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

Unified Diff: chrome/browser/ui/webui/print_preview_handler.h

Issue 9114062: Move chrome/browser/ui/webui/print_preview* to chrome/browser/ui/webui/print_preview/ (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: rebase Created 8 years, 11 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: chrome/browser/ui/webui/print_preview_handler.h
===================================================================
--- chrome/browser/ui/webui/print_preview_handler.h (revision 117298)
+++ chrome/browser/ui/webui/print_preview_handler.h (working copy)
@@ -1,217 +0,0 @@
-// Copyright (c) 2011 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_WEBUI_PRINT_PREVIEW_HANDLER_H_
-#define CHROME_BROWSER_UI_WEBUI_PRINT_PREVIEW_HANDLER_H_
-#pragma once
-
-#include <string>
-
-#include "base/gtest_prod_util.h"
-#include "base/memory/ref_counted.h"
-#include "base/memory/scoped_ptr.h"
-#include "base/memory/weak_ptr.h"
-#include "build/build_config.h"
-#include "chrome/browser/printing/print_view_manager_observer.h"
-#include "chrome/browser/ui/select_file_dialog.h"
-#include "content/public/browser/web_ui_message_handler.h"
-#include "printing/print_job_constants.h"
-
-class FilePath;
-class PrintSystemTaskProxy;
-class TabContentsWrapper;
-
-namespace base {
-class DictionaryValue;
-class StringValue;
-}
-
-namespace printing {
-struct PageSizeMargins;
-class PrintBackend;
-}
-
-// The handler for Javascript messages related to the print preview dialog.
-class PrintPreviewHandler : public content::WebUIMessageHandler,
- public base::SupportsWeakPtr<PrintPreviewHandler>,
- public SelectFileDialog::Listener,
- public printing::PrintViewManagerObserver {
- public:
- PrintPreviewHandler();
- virtual ~PrintPreviewHandler();
-
- // WebUIMessageHandler implementation.
- virtual void RegisterMessages() OVERRIDE;
-
- // SelectFileDialog::Listener implementation.
- virtual void FileSelected(const FilePath& path,
- int index,
- void* params) OVERRIDE;
- virtual void FileSelectionCanceled(void* params) OVERRIDE;
-
- // PrintViewManagerObserver implementation.
- virtual void OnPrintDialogShown() OVERRIDE;
-
- // Displays a modal dialog, prompting the user to select a file.
- void SelectFile(const FilePath& default_path);
-
- // Called when the print preview tab is destroyed. This is the last time
- // this object has access to the PrintViewManager in order to disconnect the
- // observer.
- void OnTabDestroyed();
-
- // Called when print preview failed.
- void OnPrintPreviewFailed();
-
- // Called when the user press ctrl+shift+p to display the native system
- // dialog.
- void ShowSystemDialog();
-
- private:
- friend class PrintPreviewHandlerTest;
- friend class PrintSystemTaskProxy;
- FRIEND_TEST_ALL_PREFIXES(PrintPreviewHandlerTest, StickyMarginsCustom);
- FRIEND_TEST_ALL_PREFIXES(PrintPreviewHandlerTest, StickyMarginsDefault);
- FRIEND_TEST_ALL_PREFIXES(PrintPreviewHandlerTest,
- StickyMarginsCustomThenDefault);
- FRIEND_TEST_ALL_PREFIXES(PrintPreviewHandlerTest,
- GetLastUsedMarginSettingsCustom);
- FRIEND_TEST_ALL_PREFIXES(PrintPreviewHandlerTest,
- GetLastUsedMarginSettingsDefault);
-
- TabContentsWrapper* preview_tab_wrapper() const;
- content::WebContents* preview_tab() const;
-
- // Gets the list of printers. |args| is unused.
- void HandleGetPrinters(const base::ListValue* args);
-
- // Asks the initiator renderer to generate a preview. First element of |args|
- // is a job settings JSON string.
- void HandleGetPreview(const base::ListValue* args);
-
- // Gets the job settings from Web UI and initiate printing. First element of
- // |args| is a job settings JSON string.
- void HandlePrint(const base::ListValue* args);
-
- // Handles printing to PDF. |settings| points to a dictionary containing all
- // the print request parameters.
- void HandlePrintToPdf(const base::DictionaryValue& settings);
-
- // Handles the request to hide the preview tab for printing. |args| is unused.
- void HandleHidePreview(const base::ListValue* args);
-
- // Handles the request to cancel the pending print request. |args| is unused.
- void HandleCancelPendingPrintRequest(const base::ListValue* args);
-
- // Handles a request to back up data about the last used cloud print
- // printer.
- // First element of |args| is the printer name.
- // Second element of |args| is the current cloud print data JSON.
- void HandleSaveLastPrinter(const base::ListValue* args);
-
- // Gets the printer capabilities. First element of |args| is the printer name.
- void HandleGetPrinterCapabilities(const base::ListValue* args);
-
- // Asks the initiator renderer to show the native print system dialog. |args|
- // is unused.
- void HandleShowSystemDialog(const base::ListValue* args);
-
- // Brings up a dialog to allow the user to sign into cloud print.
- // |args| is unused.
- void HandleSignin(const base::ListValue* args);
-
- // Brings up a web page to allow the user to configure cloud print.
- // |args| is unused.
- void HandleManageCloudPrint(const base::ListValue* args);
-
- // Gathers UMA stats when the print preview tab is about to close.
- // |args| is unused.
- void HandleClosePreviewTab(const base::ListValue* args);
-
- // Asks the browser to show the native printer management dialog.
- // |args| is unused.
- void HandleManagePrinters(const base::ListValue* args);
-
- // Asks the browser to show the cloud print dialog.
- void HandlePrintWithCloudPrint();
-
- // Asks the browser for several settings that are needed before the first
- // preview is displayed.
- void HandleGetInitialSettings(const base::ListValue* args);
-
- void SendInitialSettings(
- const std::string& default_printer,
- const std::string& cloud_print_data);
-
- // Sends the printer capabilities to the Web UI. |settings_info| contains
- // printer capabilities information.
- void SendPrinterCapabilities(const base::DictionaryValue& settings_info);
-
- // Send the list of printers to the Web UI.
- void SetupPrinterList(const base::ListValue& printers);
-
- // Send whether cloud print integration should be enabled.
- void SendCloudPrintEnabled();
-
- // Send the PDF data to the cloud to print.
- void SendCloudPrintJob(const base::DictionaryValue& settings,
- std::string print_ticket);
-
- // Gets the initiator tab for the print preview tab.
- TabContentsWrapper* GetInitiatorTab() const;
-
- // Activates the initiator tab and close the preview tab.
- void ActivateInitiatorTabAndClosePreviewTab();
-
- // Adds all the recorded stats taken so far to histogram counts.
- void ReportStats();
-
- // Clears initiator tab details for this preview tab.
- void ClearInitiatorTabDetails();
-
- // Posts a task to save to pdf at |print_to_pdf_path_|.
- void PostPrintToPdfTask();
-
- // Populates |settings| according to the current locale.
- void GetNumberFormatAndMeasurementSystem(base::DictionaryValue* settings);
-
- // Populates |last_used_custom_margins| according to the last used margin
- // settings.
- void GetLastUsedMarginSettings(
- base::DictionaryValue* last_used_custom_margins);
-
- // Pointer to current print system.
- scoped_refptr<printing::PrintBackend> print_backend_;
-
- // The underlying dialog object.
- scoped_refptr<SelectFileDialog> select_file_dialog_;
-
- static FilePath* last_saved_path_;
- static std::string* last_used_printer_cloud_print_data_;
- static std::string* last_used_printer_name_;
- static printing::ColorModels last_used_color_model_;
- static printing::MarginType last_used_margins_type_;
- static printing::PageSizeMargins* last_used_page_size_margins_;
-
- // A count of how many requests received to regenerate preview data.
- // Initialized to 0 then incremented and emitted to a histogram.
- int regenerate_preview_request_count_;
-
- // A count of how many requests received to show manage printers dialog.
- int manage_printers_dialog_request_count_;
-
- // Whether we have already logged a failed print preview.
- bool reported_failed_preview_;
-
- // Whether we have already logged the number of printers this session.
- bool has_logged_printers_count_;
-
- // Holds the path to the print to pdf request. It is empty if no such request
- // exists.
- scoped_ptr<FilePath> print_to_pdf_path_;
-
- DISALLOW_COPY_AND_ASSIGN(PrintPreviewHandler);
-};
-
-#endif // CHROME_BROWSER_UI_WEBUI_PRINT_PREVIEW_HANDLER_H_
« no previous file with comments | « chrome/browser/ui/webui/print_preview_data_source.cc ('k') | chrome/browser/ui/webui/print_preview_handler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698