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

Side by Side Diff: chrome/browser/ui/webui/settings/md_settings_ui.h

Issue 2076083003: MD Settings: ... and we fixed all CHECK()-based URL crashes once and for all. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2015 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_BROWSER_UI_WEBUI_SETTINGS_MD_SETTINGS_UI_H_ 5 #ifndef CHROME_BROWSER_UI_WEBUI_SETTINGS_MD_SETTINGS_UI_H_
6 #define CHROME_BROWSER_UI_WEBUI_SETTINGS_MD_SETTINGS_UI_H_ 6 #define CHROME_BROWSER_UI_WEBUI_SETTINGS_MD_SETTINGS_UI_H_
7 7
8 #include <unordered_set> 8 #include <unordered_set>
9 9
10 #include "base/macros.h" 10 #include "base/macros.h"
11 #include "base/time/time.h" 11 #include "base/time/time.h"
12 #include "content/public/browser/web_contents_observer.h" 12 #include "content/public/browser/web_contents_observer.h"
13 #include "content/public/browser/web_ui_controller.h" 13 #include "content/public/browser/web_ui_controller.h"
14 14
15 namespace settings { 15 namespace settings {
16 16
17 class SettingsPageUIHandler; 17 class SettingsPageUIHandler;
18 18
19 // The WebUI handler for chrome://md-settings. 19 // The WebUI handler for chrome://md-settings.
20 class MdSettingsUI : public content::WebUIController, 20 class MdSettingsUI : public content::WebUIController,
21 public content::WebContentsObserver { 21 public content::WebContentsObserver {
22 public: 22 public:
23 explicit MdSettingsUI(content::WebUI* web_ui); 23 MdSettingsUI(content::WebUI* web_ui, const GURL& url);
24 ~MdSettingsUI() override; 24 ~MdSettingsUI() override;
25 25
26 // content::WebContentsObserver: 26 // content::WebContentsObserver:
27 void DidStartProvisionalLoadForFrame( 27 void DidStartProvisionalLoadForFrame(
28 content::RenderFrameHost* render_frame_host, 28 content::RenderFrameHost* render_frame_host,
29 const GURL& validated_url, 29 const GURL& validated_url,
30 bool is_error_page, 30 bool is_error_page,
31 bool is_iframe_srcdoc) override; 31 bool is_iframe_srcdoc) override;
32 void DocumentLoadedInFrame( 32 void DocumentLoadedInFrame(
33 content::RenderFrameHost *render_frame_host) override; 33 content::RenderFrameHost *render_frame_host) override;
34 void DocumentOnLoadCompletedInMainFrame() override; 34 void DocumentOnLoadCompletedInMainFrame() override;
35 35
36 private: 36 private:
37 void AddSettingsPageUIHandler(SettingsPageUIHandler* handler); 37 void AddSettingsPageUIHandler(SettingsPageUIHandler* handler);
38 38
39 // Weak references; all |handlers_| are owned by |web_ui()|. 39 // Weak references; all |handlers_| are owned by |web_ui()|.
40 std::unordered_set<SettingsPageUIHandler*> handlers_; 40 std::unordered_set<SettingsPageUIHandler*> handlers_;
41 41
42 base::Time load_start_time_; 42 base::Time load_start_time_;
43 43
44 DISALLOW_COPY_AND_ASSIGN(MdSettingsUI); 44 DISALLOW_COPY_AND_ASSIGN(MdSettingsUI);
45 }; 45 };
46 46
47 } // namespace settings 47 } // namespace settings
48 48
49 #endif // CHROME_BROWSER_UI_WEBUI_SETTINGS_MD_SETTINGS_UI_H_ 49 #endif // CHROME_BROWSER_UI_WEBUI_SETTINGS_MD_SETTINGS_UI_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698