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

Unified Diff: chrome/browser/ui/webui/settings/chromeos/cups_printers_handler.h

Issue 2380753004: [CUPS] Implement the Webui handler for the printers auto discovery. (Closed)
Patch Set: Address michaelpg@'s comments. Created 4 years, 2 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/settings/chromeos/cups_printers_handler.h
diff --git a/chrome/browser/ui/webui/settings/chromeos/cups_printers_handler.h b/chrome/browser/ui/webui/settings/chromeos/cups_printers_handler.h
index 3153c15b0cedcbf06ddef21ca5e529488f1dced3..8c30a2ed0996f5a4efff3753dd3f6e02cef99b36 100644
--- a/chrome/browser/ui/webui/settings/chromeos/cups_printers_handler.h
+++ b/chrome/browser/ui/webui/settings/chromeos/cups_printers_handler.h
@@ -8,6 +8,7 @@
#include "base/memory/weak_ptr.h"
#include "chrome/browser/ui/webui/settings/settings_page_ui_handler.h"
#include "chromeos/printing/printer_configuration.h"
+#include "chromeos/printing/printer_discoverer.h"
#include "ui/shell_dialogs/select_file_dialog.h"
namespace base {
@@ -21,22 +22,22 @@ namespace settings {
// Chrome OS CUPS printing settings page UI handler.
class CupsPrintersHandler : public ::settings::SettingsPageUIHandler,
- public ui::SelectFileDialog::Listener {
+ public ui::SelectFileDialog::Listener,
+ public chromeos::PrinterDiscoverer::Observer {
public:
explicit CupsPrintersHandler(content::WebUI* webui);
~CupsPrintersHandler() override;
// SettingsPageUIHandler overrides:
void RegisterMessages() override;
- void OnJavascriptAllowed() override{};
- void OnJavascriptDisallowed() override{};
+ void OnJavascriptAllowed() override {}
+ void OnJavascriptDisallowed() override {}
private:
// Gets all CUPS printers and return it to WebUI.
void HandleGetCupsPrintersList(const base::ListValue* args);
void HandleUpdateCupsPrinter(const base::ListValue* args);
void HandleRemoveCupsPrinter(const base::ListValue* args);
- void OnRemovedPrinter(const std::string& printer_id, bool success);
void HandleAddCupsPrinter(const base::ListValue* args);
void OnAddedPrinter(std::unique_ptr<Printer> printer, bool success);
@@ -49,6 +50,15 @@ class CupsPrintersHandler : public ::settings::SettingsPageUIHandler,
int index,
void* params) override;
+ void HandleStartDiscovery(const base::ListValue* args);
+ void HandleStopDiscovery(const base::ListValue* args);
+
+ // chromeos::PrinterDiscoverer::Observer override:
+ void OnPrintersFound(const std::vector<Printer>& printers) override;
+ void OnDiscoveryDone() override;
+
+ std::unique_ptr<chromeos::PrinterDiscoverer> printer_discoverer_;
+
Profile* profile_;
scoped_refptr<ui::SelectFileDialog> select_file_dialog_;
std::string webui_callback_id_;

Powered by Google App Engine
This is Rietveld 408576698