1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef CHROME_BROWSER_UI_WEBUI_SETTINGS_SYSTEM_HANDLER_H_
6 #define CHROME_BROWSER_UI_WEBUI_SETTINGS_SYSTEM_HANDLER_H_
7 
8 #include "base/macros.h"
9 #include "chrome/browser/ui/webui/settings/settings_page_ui_handler.h"
10 
11 namespace base {
12 class ListValue;
13 }
14 
15 namespace content {
16 class WebUIDataSource;
17 }
18 
19 namespace settings {
20 
21 class SystemHandler : public SettingsPageUIHandler {
22  public:
23   SystemHandler();
24   ~SystemHandler() override;
25 
26   // Populates handler-specific loadTimeData values used by the system page.
27   static void AddLoadTimeData(content::WebUIDataSource* data_source);
28 
29   // SettingsPageUIHandler:
30   void RegisterMessages() override;
OnJavascriptAllowed()31   void OnJavascriptAllowed() override {}
OnJavascriptDisallowed()32   void OnJavascriptDisallowed() override {}
33 
34  private:
35   // Handler for the "showProxySettings" message. No args.
36   void HandleShowProxySettings(const base::ListValue* /*args*/);
37 
38   DISALLOW_COPY_AND_ASSIGN(SystemHandler);
39 };
40 
41 }  // namespace settings
42 
43 #endif  // CHROME_BROWSER_UI_WEBUI_SETTINGS_SYSTEM_HANDLER_H_
44