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

Side by Side Diff: components/toolbar/toolbar_model.h

Issue 2448943002: Refactor SecurityStateModel/Clients for simplicity and reusability. (Closed)
Patch Set: sync. Created 4 years, 1 month 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
« no previous file with comments | « components/toolbar/test_toolbar_model.cc ('k') | components/toolbar/toolbar_model_delegate.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 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 COMPONENTS_TOOLBAR_TOOLBAR_MODEL_H_ 5 #ifndef COMPONENTS_TOOLBAR_TOOLBAR_MODEL_H_
6 #define COMPONENTS_TOOLBAR_TOOLBAR_MODEL_H_ 6 #define COMPONENTS_TOOLBAR_TOOLBAR_MODEL_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 9
10 #include <string> 10 #include <string>
11 11
12 #include "base/macros.h" 12 #include "base/macros.h"
13 #include "base/strings/string16.h" 13 #include "base/strings/string16.h"
14 #include "components/security_state/security_state_model.h" 14 #include "components/security_state/core/security_state.h"
15 #include "url/gurl.h" 15 #include "url/gurl.h"
16 16
17 namespace gfx { 17 namespace gfx {
18 enum class VectorIconId; 18 enum class VectorIconId;
19 } 19 }
20 20
21 // This class is the model used by the toolbar, location bar and autocomplete 21 // This class is the model used by the toolbar, location bar and autocomplete
22 // edit. It populates its states from the current navigation entry retrieved 22 // edit. It populates its states from the current navigation entry retrieved
23 // from the navigation controller returned by GetNavigationController(). 23 // from the navigation controller returned by GetNavigationController().
24 class ToolbarModel { 24 class ToolbarModel {
25 public: 25 public:
26 virtual ~ToolbarModel() = default; 26 virtual ~ToolbarModel() = default;
27 27
28 // Returns a formatted URL for display in the toolbar. The formatting 28 // Returns a formatted URL for display in the toolbar. The formatting
29 // includes: 29 // includes:
30 // - Some characters may be unescaped. 30 // - Some characters may be unescaped.
31 // - The scheme and/or trailing slash may be dropped. 31 // - The scheme and/or trailing slash may be dropped.
32 // If |prefix_end| is non-NULL, it is set to the length of the pre-hostname 32 // If |prefix_end| is non-NULL, it is set to the length of the pre-hostname
33 // portion of the resulting URL. 33 // portion of the resulting URL.
34 virtual base::string16 GetFormattedURL(size_t* prefix_end) const = 0; 34 virtual base::string16 GetFormattedURL(size_t* prefix_end) const = 0;
35 35
36 // Returns the URL of the current navigation entry. 36 // Returns the URL of the current navigation entry.
37 virtual GURL GetURL() const = 0; 37 virtual GURL GetURL() const = 0;
38 38
39 // Returns the security level that the toolbar should display. If 39 // Returns the security level that the toolbar should display. If
40 // |ignore_editing| is true, the result reflects the underlying state of the 40 // |ignore_editing| is true, the result reflects the underlying state of the
41 // page without regard to any user edits that may be in progress in the 41 // page without regard to any user edits that may be in progress in the
42 // omnibox. 42 // omnibox.
43 virtual security_state::SecurityStateModel::SecurityLevel GetSecurityLevel( 43 virtual security_state::SecurityLevel GetSecurityLevel(
44 bool ignore_editing) const = 0; 44 bool ignore_editing) const = 0;
45 45
46 // Returns the id of the icon to show to the left of the address, based on the 46 // Returns the id of the icon to show to the left of the address, based on the
47 // current URL. When search term replacement is active, this returns a search 47 // current URL. When search term replacement is active, this returns a search
48 // icon. This doesn't cover specialized icons while the user is editing; see 48 // icon. This doesn't cover specialized icons while the user is editing; see
49 // OmniboxView::GetVectorIcon(). 49 // OmniboxView::GetVectorIcon().
50 virtual gfx::VectorIconId GetVectorIcon() const = 0; 50 virtual gfx::VectorIconId GetVectorIcon() const = 0;
51 51
52 // Returns text for the omnibox secure verbose chip. 52 // Returns text for the omnibox secure verbose chip.
53 virtual base::string16 GetSecureVerboseText() const = 0; 53 virtual base::string16 GetSecureVerboseText() const = 0;
(...skipping 15 matching lines...) Expand all
69 protected: 69 protected:
70 ToolbarModel() : input_in_progress_(false) {} 70 ToolbarModel() : input_in_progress_(false) {}
71 71
72 private: 72 private:
73 bool input_in_progress_; 73 bool input_in_progress_;
74 74
75 DISALLOW_COPY_AND_ASSIGN(ToolbarModel); 75 DISALLOW_COPY_AND_ASSIGN(ToolbarModel);
76 }; 76 };
77 77
78 #endif // COMPONENTS_TOOLBAR_TOOLBAR_MODEL_H_ 78 #endif // COMPONENTS_TOOLBAR_TOOLBAR_MODEL_H_
OLDNEW
« no previous file with comments | « components/toolbar/test_toolbar_model.cc ('k') | components/toolbar/toolbar_model_delegate.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698