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

Side by Side Diff: chrome/browser/ui/toolbar/toolbar_model_impl.cc

Issue 1410293003: Vectorize LocationIconView icons (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix android Created 5 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
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 #include "chrome/browser/ui/toolbar/toolbar_model_impl.h" 5 #include "chrome/browser/ui/toolbar/toolbar_model_impl.h"
6 6
7 #include "base/prefs/pref_service.h" 7 #include "base/prefs/pref_service.h"
8 #include "base/strings/utf_string_conversions.h" 8 #include "base/strings/utf_string_conversions.h"
9 #include "base/time/time.h" 9 #include "base/time/time.h"
10 #include "chrome/browser/autocomplete/chrome_autocomplete_scheme_classifier.h" 10 #include "chrome/browser/autocomplete/chrome_autocomplete_scheme_classifier.h"
(...skipping 17 matching lines...) Expand all
28 #include "content/public/browser/web_ui.h" 28 #include "content/public/browser/web_ui.h"
29 #include "content/public/common/content_constants.h" 29 #include "content/public/common/content_constants.h"
30 #include "content/public/common/ssl_status.h" 30 #include "content/public/common/ssl_status.h"
31 #include "grit/components_scaled_resources.h" 31 #include "grit/components_scaled_resources.h"
32 #include "grit/theme_resources.h" 32 #include "grit/theme_resources.h"
33 #include "net/cert/cert_status_flags.h" 33 #include "net/cert/cert_status_flags.h"
34 #include "net/cert/x509_certificate.h" 34 #include "net/cert/x509_certificate.h"
35 #include "net/ssl/ssl_connection_status_flags.h" 35 #include "net/ssl/ssl_connection_status_flags.h"
36 #include "ui/base/l10n/l10n_util.h" 36 #include "ui/base/l10n/l10n_util.h"
37 #include "ui/gfx/text_elider.h" 37 #include "ui/gfx/text_elider.h"
38 #include "ui/gfx/vector_icons_public.h"
38 39
39 using content::NavigationController; 40 using content::NavigationController;
40 using content::NavigationEntry; 41 using content::NavigationEntry;
41 using content::WebContents; 42 using content::WebContents;
42 43
43 ToolbarModelImpl::ToolbarModelImpl(ToolbarModelDelegate* delegate) 44 ToolbarModelImpl::ToolbarModelImpl(ToolbarModelDelegate* delegate)
44 : delegate_(delegate) { 45 : delegate_(delegate) {
45 } 46 }
46 47
47 ToolbarModelImpl::~ToolbarModelImpl() { 48 ToolbarModelImpl::~ToolbarModelImpl() {
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
131 const SecurityStateModel* model = 132 const SecurityStateModel* model =
132 SecurityStateModel::FromWebContents(web_contents); 133 SecurityStateModel::FromWebContents(web_contents);
133 134
134 // When editing, assume no security style. 135 // When editing, assume no security style.
135 return (input_in_progress() && !ignore_editing) 136 return (input_in_progress() && !ignore_editing)
136 ? SecurityStateModel::NONE 137 ? SecurityStateModel::NONE
137 : model->GetSecurityInfo().security_level; 138 : model->GetSecurityInfo().security_level;
138 } 139 }
139 140
140 int ToolbarModelImpl::GetIcon() const { 141 int ToolbarModelImpl::GetIcon() const {
141 if (WouldPerformSearchTermReplacement(false)) 142 switch (GetSecurityLevel(false)) {
142 return IDR_OMNIBOX_SEARCH_SECURED;
143
144 return GetIconForSecurityLevel(GetSecurityLevel(false));
145 }
146
147 int ToolbarModelImpl::GetIconForSecurityLevel(
148 SecurityStateModel::SecurityLevel level) const {
149 switch (level) {
150 case SecurityStateModel::NONE: 143 case SecurityStateModel::NONE:
151 return IDR_LOCATION_BAR_HTTP; 144 return IDR_LOCATION_BAR_HTTP;
152 case SecurityStateModel::EV_SECURE: 145 case SecurityStateModel::EV_SECURE:
153 case SecurityStateModel::SECURE: 146 case SecurityStateModel::SECURE:
154 return IDR_OMNIBOX_HTTPS_VALID; 147 return IDR_OMNIBOX_HTTPS_VALID;
155 case SecurityStateModel::SECURITY_WARNING: 148 case SecurityStateModel::SECURITY_WARNING:
156 // Surface Dubious as Neutral. 149 // Surface Dubious as Neutral.
157 return IDR_LOCATION_BAR_HTTP; 150 return IDR_LOCATION_BAR_HTTP;
158 case SecurityStateModel::SECURITY_POLICY_WARNING: 151 case SecurityStateModel::SECURITY_POLICY_WARNING:
159 return IDR_OMNIBOX_HTTPS_POLICY_WARNING; 152 return IDR_OMNIBOX_HTTPS_POLICY_WARNING;
160 case SecurityStateModel::SECURITY_ERROR: 153 case SecurityStateModel::SECURITY_ERROR:
161 return IDR_OMNIBOX_HTTPS_INVALID; 154 return IDR_OMNIBOX_HTTPS_INVALID;
162 } 155 }
163 156
164 NOTREACHED(); 157 NOTREACHED();
165 return IDR_LOCATION_BAR_HTTP; 158 return IDR_LOCATION_BAR_HTTP;
166 } 159 }
167 160
161 gfx::VectorIconId ToolbarModelImpl::GetVectorIcon() const {
162 #if !defined(OS_ANDROID) && !defined(OS_MACOSX) && !defined(OS_IOS)
163 switch (GetSecurityLevel(false)) {
164 case SecurityStateModel::NONE:
165 return gfx::VectorIconId::LOCATION_BAR_HTTP;
166 case SecurityStateModel::EV_SECURE:
167 case SecurityStateModel::SECURE:
168 return gfx::VectorIconId::LOCATION_BAR_HTTPS_VALID;
169 case SecurityStateModel::SECURITY_WARNING:
170 // Surface Dubious as Neutral.
171 return gfx::VectorIconId::LOCATION_BAR_HTTP;
172 case SecurityStateModel::SECURITY_POLICY_WARNING:
173 return gfx::VectorIconId::BUSINESS;
174 case SecurityStateModel::SECURITY_ERROR:
175 return gfx::VectorIconId::LOCATION_BAR_HTTPS_INVALID;
176 }
177 #endif
178
179 NOTREACHED();
180 return gfx::VectorIconId::VECTOR_ICON_NONE;
181 }
182
168 base::string16 ToolbarModelImpl::GetEVCertName() const { 183 base::string16 ToolbarModelImpl::GetEVCertName() const {
169 if (GetSecurityLevel(false) != SecurityStateModel::EV_SECURE) 184 if (GetSecurityLevel(false) != SecurityStateModel::EV_SECURE)
170 return base::string16(); 185 return base::string16();
171 186
172 // Note: Navigation controller and active entry are guaranteed non-NULL or 187 // Note: Navigation controller and active entry are guaranteed non-NULL or
173 // the security level would be NONE. 188 // the security level would be NONE.
174 scoped_refptr<net::X509Certificate> cert; 189 scoped_refptr<net::X509Certificate> cert;
175 content::CertStore::GetInstance()->RetrieveCert( 190 content::CertStore::GetInstance()->RetrieveCert(
176 GetNavigationController()->GetVisibleEntry()->GetSSL().cert_id, &cert); 191 GetNavigationController()->GetVisibleEntry()->GetSSL().cert_id, &cert);
177 192
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
259 274
260 // Otherwise, extract search terms for HTTPS pages that do not have a security 275 // Otherwise, extract search terms for HTTPS pages that do not have a security
261 // error. 276 // error.
262 SecurityStateModel::SecurityLevel security_level = 277 SecurityStateModel::SecurityLevel security_level =
263 GetSecurityLevel(ignore_editing); 278 GetSecurityLevel(ignore_editing);
264 return ((security_level == SecurityStateModel::NONE) || 279 return ((security_level == SecurityStateModel::NONE) ||
265 (security_level == SecurityStateModel::SECURITY_ERROR)) 280 (security_level == SecurityStateModel::SECURITY_ERROR))
266 ? base::string16() 281 ? base::string16()
267 : search_terms; 282 : search_terms;
268 } 283 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/toolbar/toolbar_model_impl.h ('k') | chrome/browser/ui/views/location_bar/location_bar_view.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698