Commit 8669a544 authored by Lei Zhang's avatar Lei Zhang Committed by Commit Bot

Build PrinterManagerDialog whenever printing is enabled.

Originally, it was only used when Print Preview is enabled, but the
original user no longer exists, and the only user is the Settings page.
Transitively only build settings::PrintingHandler when printing is
enabled.

BUG=789790

Change-Id: I8e8b9d0df66b1a5ead01abeeaad78982f16e61ec
Reviewed-on: https://chromium-review.googlesource.com/806447Reviewed-by: default avatarDave Schuyler <dschuyler@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
Cr-Commit-Position: refs/heads/master@{#521880}
parent ba4f0e6b
......@@ -3205,6 +3205,10 @@ split_static_library("browser") {
"printing/print_view_manager_base.h",
"printing/print_view_manager_common.cc",
"printing/print_view_manager_common.h",
"printing/printer_manager_dialog.h",
"printing/printer_manager_dialog_linux.cc",
"printing/printer_manager_dialog_mac.mm",
"printing/printer_manager_dialog_win.cc",
"printing/printer_query.cc",
"printing/printer_query.h",
"printing/printing_init.cc",
......@@ -3246,10 +3250,6 @@ split_static_library("browser") {
"printing/print_preview_message_handler.h",
"printing/print_view_manager.cc",
"printing/print_view_manager.h",
"printing/printer_manager_dialog.h",
"printing/printer_manager_dialog_linux.cc",
"printing/printer_manager_dialog_mac.mm",
"printing/printer_manager_dialog_win.cc",
"printing/pwg_raster_converter.cc",
"printing/pwg_raster_converter.h",
]
......
......@@ -6,10 +6,16 @@
#define CHROME_BROWSER_PRINTING_PRINTER_MANAGER_DIALOG_H_
#include "base/macros.h"
#include "printing/features/features.h"
#if !BUILDFLAG(ENABLE_PRINTING)
#error "Printing must be enabled"
#endif
namespace printing {
// An abstraction of a printer manager dialog. This is used for print preview.
// An abstraction of a printer manager dialog. This is used for the printing
// sub-section of Settings.
// This includes the OS-dependent UI to manage the network and local printers.
class PrinterManagerDialog {
public:
......
......@@ -1556,12 +1556,6 @@ split_static_library("ui") {
if (use_cras) {
defines += [ "USE_CRAS" ]
}
} else if (!is_android) {
# !is_chromeos && !is_android
sources += [
"webui/settings/printing_handler.cc",
"webui/settings/printing_handler.h",
]
}
if (is_win || is_mac || is_desktop_linux || is_chromeos) {
......@@ -3576,6 +3570,12 @@ split_static_library("ui") {
"//components/printing/browser",
"//printing",
]
if (!is_chromeos && !is_android) {
sources += [
"webui/settings/printing_handler.cc",
"webui/settings/printing_handler.h",
]
}
if (use_cups) {
configs += [ "//printing:cups" ]
}
......
......@@ -9,6 +9,7 @@
#include <memory>
#include <string>
#include <utility>
#include <vector>
#include "base/memory/ptr_util.h"
#include "base/metrics/histogram_macros.h"
......@@ -46,6 +47,7 @@
#include "content/public/browser/web_contents.h"
#include "content/public/browser/web_ui.h"
#include "content/public/browser/web_ui_data_source.h"
#include "printing/features/features.h"
#if defined(OS_WIN)
#include "chrome/browser/safe_browsing/chrome_cleaner/chrome_cleaner_controller_win.h"
......@@ -84,7 +86,6 @@
#include "chromeos/chromeos_switches.h"
#include "components/arc/arc_util.h"
#else // !defined(OS_CHROMEOS)
#include "chrome/browser/ui/webui/settings/printing_handler.h"
#include "chrome/browser/ui/webui/settings/settings_default_browser_handler.h"
#include "chrome/browser/ui/webui/settings/settings_manage_profile_handler.h"
#include "chrome/browser/ui/webui/settings/system_handler.h"
......@@ -96,6 +97,10 @@
#include "chrome/browser/ui/webui/settings/native_certificates_handler.h"
#endif // defined(USE_NSS_CERTS)
#if BUILDFLAG(ENABLE_PRINTING) && !defined(OS_CHROMEOS)
#include "chrome/browser/ui/webui/settings/printing_handler.h"
#endif
#if defined(SAFE_BROWSING_DB_LOCAL)
#include "chrome/browser/safe_browsing/chrome_password_protection_service.h"
#include "chrome/browser/ui/webui/settings/change_password_handler.h"
......@@ -186,6 +191,9 @@ MdSettingsUI::MdSettingsUI(content::WebUI* web_ui)
AddSettingsPageUIHandler(base::MakeUnique<DefaultBrowserHandler>(web_ui));
AddSettingsPageUIHandler(base::MakeUnique<ManageProfileHandler>(profile));
AddSettingsPageUIHandler(base::MakeUnique<SystemHandler>());
#endif
#if BUILDFLAG(ENABLE_PRINTING) && !defined(OS_CHROMEOS)
AddSettingsPageUIHandler(base::MakeUnique<PrintingHandler>());
#endif
......
......@@ -6,7 +6,17 @@
#define CHROME_BROWSER_UI_WEBUI_SETTINGS_PRINTING_HANDLER_H_
#include "base/macros.h"
#include "build/build_config.h"
#include "chrome/browser/ui/webui/settings/settings_page_ui_handler.h"
#include "printing/features/features.h"
#if defined(OS_CHROMEOS)
#error "Not for use on ChromeOS"
#endif
#if !BUILDFLAG(ENABLE_PRINTING)
#error "Printing must be enabled"
#endif
namespace settings {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment