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

Side by Side Diff: chrome/browser/ui/views/location_bar/location_bar_view.cc

Issue 21696003: views/location_bar: Eliminate TouchableLocationBarView. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 4 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 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/views/location_bar/location_bar_view.h" 5 #include "chrome/browser/ui/views/location_bar/location_bar_view.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <map> 8 #include <map>
9 9
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after
220 browser_->search_model()->AddObserver(this); 220 browser_->search_model()->AddObserver(this);
221 } 221 }
222 222
223 LocationBarView::~LocationBarView() { 223 LocationBarView::~LocationBarView() {
224 if (template_url_service_) 224 if (template_url_service_)
225 template_url_service_->RemoveObserver(this); 225 template_url_service_->RemoveObserver(this);
226 if (browser_) 226 if (browser_)
227 browser_->search_model()->RemoveObserver(this); 227 browser_->search_model()->RemoveObserver(this);
228 } 228 }
229 229
230 // static
231 void LocationBarView::InitTouchableLocationBarView(views::View* view) {
232 int horizontal_padding = GetBuiltInHorizontalPaddingForChildViews();
233 if (horizontal_padding != 0) {
234 view->set_border(views::Border::CreateEmptyBorder(
235 3, horizontal_padding, 3, horizontal_padding));
236 }
237 }
238
230 void LocationBarView::Init() { 239 void LocationBarView::Init() {
231 // We need to be in a Widget, otherwise GetNativeTheme() may change and we're 240 // We need to be in a Widget, otherwise GetNativeTheme() may change and we're
232 // not prepared for that. 241 // not prepared for that.
233 DCHECK(GetWidget()); 242 DCHECK(GetWidget());
234 243
235 location_icon_view_ = new LocationIconView(this); 244 location_icon_view_ = new LocationIconView(this);
236 location_icon_view_->set_drag_controller(this); 245 location_icon_view_->set_drag_controller(this);
237 AddChildView(location_icon_view_); 246 AddChildView(location_icon_view_);
238 247
239 // Determine the main font. 248 // Determine the main font.
(...skipping 469 matching lines...) Expand 10 before | Expand all | Expand 10 after
709 } else if (model_->GetSecurityLevel(false) == ToolbarModel::EV_SECURE) { 718 } else if (model_->GetSecurityLevel(false) == ToolbarModel::EV_SECURE) {
710 ev_bubble_view_->SetLabel(model_->GetEVCertName()); 719 ev_bubble_view_->SetLabel(model_->GetEVCertName());
711 // The largest fraction of the omnibox that can be taken by the EV bubble. 720 // The largest fraction of the omnibox that can be taken by the EV bubble.
712 const double kMaxBubbleFraction = 0.5; 721 const double kMaxBubbleFraction = 0.5;
713 leading_decorations.AddDecoration(bubble_location_y, bubble_height, false, 722 leading_decorations.AddDecoration(bubble_location_y, bubble_height, false,
714 kMaxBubbleFraction, kBubblePadding, 723 kMaxBubbleFraction, kBubblePadding,
715 item_padding, 0, ev_bubble_view_); 724 item_padding, 0, ev_bubble_view_);
716 } else { 725 } else {
717 leading_decorations.AddDecoration( 726 leading_decorations.AddDecoration(
718 vertical_edge_thickness(), location_height, 727 vertical_edge_thickness(), location_height,
719 location_icon_view_->GetBuiltInHorizontalPadding(), 728 GetBuiltInHorizontalPaddingForChildViews(),
720 location_icon_view_); 729 location_icon_view_);
721 } 730 }
722 731
723 if (star_view_ && star_view_->visible()) { 732 if (star_view_ && star_view_->visible()) {
724 trailing_decorations.AddDecoration( 733 trailing_decorations.AddDecoration(
725 vertical_edge_thickness(), location_height, 734 vertical_edge_thickness(), location_height,
726 star_view_->GetBuiltInHorizontalPadding(), star_view_); 735 GetBuiltInHorizontalPaddingForChildViews(), star_view_);
727 } 736 }
728 if (script_bubble_icon_view_ && script_bubble_icon_view_->visible()) { 737 if (script_bubble_icon_view_ && script_bubble_icon_view_->visible()) {
729 trailing_decorations.AddDecoration( 738 trailing_decorations.AddDecoration(
730 vertical_edge_thickness(), location_height, 739 vertical_edge_thickness(), location_height,
731 script_bubble_icon_view_->GetBuiltInHorizontalPadding(), 740 GetBuiltInHorizontalPaddingForChildViews(),
732 script_bubble_icon_view_); 741 script_bubble_icon_view_);
733 } 742 }
734 if (open_pdf_in_reader_view_ && open_pdf_in_reader_view_->visible()) { 743 if (open_pdf_in_reader_view_ && open_pdf_in_reader_view_->visible()) {
735 trailing_decorations.AddDecoration( 744 trailing_decorations.AddDecoration(
736 vertical_edge_thickness(), location_height, 745 vertical_edge_thickness(), location_height,
737 open_pdf_in_reader_view_->GetBuiltInHorizontalPadding(), 746 GetBuiltInHorizontalPaddingForChildViews(),
738 open_pdf_in_reader_view_); 747 open_pdf_in_reader_view_);
739 } 748 }
740 for (PageActionViews::const_iterator i(page_action_views_.begin()); 749 for (PageActionViews::const_iterator i(page_action_views_.begin());
741 i != page_action_views_.end(); ++i) { 750 i != page_action_views_.end(); ++i) {
742 if ((*i)->visible()) { 751 if ((*i)->visible()) {
743 trailing_decorations.AddDecoration( 752 trailing_decorations.AddDecoration(
744 vertical_edge_thickness(), location_height, 753 vertical_edge_thickness(), location_height,
745 (*i)->GetBuiltInHorizontalPadding(), (*i)); 754 GetBuiltInHorizontalPaddingForChildViews(), (*i));
746 } 755 }
747 } 756 }
748 if (zoom_view_->visible()) { 757 if (zoom_view_->visible()) {
749 trailing_decorations.AddDecoration(vertical_edge_thickness(), 758 trailing_decorations.AddDecoration(vertical_edge_thickness(),
750 location_height, 0, zoom_view_); 759 location_height, 0, zoom_view_);
751 } 760 }
752 for (ContentSettingViews::const_reverse_iterator i( 761 for (ContentSettingViews::const_reverse_iterator i(
753 content_setting_views_.rbegin()); i != content_setting_views_.rend(); 762 content_setting_views_.rbegin()); i != content_setting_views_.rend();
754 ++i) { 763 ++i) {
755 if ((*i)->visible()) { 764 if ((*i)->visible()) {
756 trailing_decorations.AddDecoration( 765 trailing_decorations.AddDecoration(
757 bubble_location_y, bubble_height, false, 0, item_padding, 766 bubble_location_y, bubble_height, false, 0, item_padding,
758 item_padding, (*i)->GetBuiltInHorizontalPadding(), (*i)); 767 item_padding, GetBuiltInHorizontalPaddingForChildViews(), (*i));
759 } 768 }
760 } 769 }
761 if (autofill_credit_card_view_->visible()) { 770 if (autofill_credit_card_view_->visible()) {
762 trailing_decorations.AddDecoration(vertical_edge_thickness(), 771 trailing_decorations.AddDecoration(vertical_edge_thickness(),
763 location_height, 0, 772 location_height, 0,
764 autofill_credit_card_view_); 773 autofill_credit_card_view_);
765 } 774 }
766 if (mic_search_view_->visible()) { 775 if (mic_search_view_->visible()) {
767 trailing_decorations.AddDecoration(vertical_edge_thickness(), 776 trailing_decorations.AddDecoration(vertical_edge_thickness(),
768 location_height, 0, mic_search_view_); 777 location_height, 0, mic_search_view_);
(...skipping 306 matching lines...) Expand 10 before | Expand all | Expand 10 after
1075 } 1084 }
1076 1085
1077 WebContents* LocationBarView::GetWebContents() const { 1086 WebContents* LocationBarView::GetWebContents() const {
1078 return delegate_->GetWebContents(); 1087 return delegate_->GetWebContents();
1079 } 1088 }
1080 1089
1081 gfx::Rect LocationBarView::GetOmniboxBounds() const { 1090 gfx::Rect LocationBarView::GetOmniboxBounds() const {
1082 return bounds(); 1091 return bounds();
1083 } 1092 }
1084 1093
1094 // static
1095 int LocationBarView::GetBuiltInHorizontalPaddingForChildViews() {
1096 return ui::GetDisplayLayout() == ui::LAYOUT_TOUCH ? GetItemPadding() / 2 : 0;
Peter Kasting 2013/08/06 20:32:42 Nit: Parens around binary subexpr
tfarina 2013/08/07 18:42:53 Done.
tfarina 2013/08/07 18:42:53 Done.
1097 }
1098
1085 int LocationBarView::GetHorizontalEdgeThickness() const { 1099 int LocationBarView::GetHorizontalEdgeThickness() const {
1086 // In maximized popup mode, there isn't any edge. 1100 // In maximized popup mode, there isn't any edge.
1087 return (is_popup_mode_ && browser_ && browser_->window() && 1101 return (is_popup_mode_ && browser_ && browser_->window() &&
1088 browser_->window()->IsMaximized()) ? 0 : vertical_edge_thickness(); 1102 browser_->window()->IsMaximized()) ? 0 : vertical_edge_thickness();
1089 } 1103 }
1090 1104
1091 void LocationBarView::RefreshContentSettingViews() { 1105 void LocationBarView::RefreshContentSettingViews() {
1092 for (ContentSettingViews::const_iterator i(content_setting_views_.begin()); 1106 for (ContentSettingViews::const_iterator i(content_setting_views_.begin());
1093 i != content_setting_views_.end(); ++i) { 1107 i != content_setting_views_.end(); ++i) {
1094 (*i)->Update(model_->GetInputInProgress() ? NULL : GetWebContents()); 1108 (*i)->Update(model_->GetInputInProgress() ? NULL : GetWebContents());
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after
1230 const ToolbarModel::SecurityLevel security_level = 1244 const ToolbarModel::SecurityLevel security_level =
1231 model_->GetSecurityLevel(false); 1245 model_->GetSecurityLevel(false);
1232 const SkColor text_color = GetColor(security_level, TEXT); 1246 const SkColor text_color = GetColor(security_level, TEXT);
1233 const SkColor background_color = GetColor(security_level, BACKGROUND); 1247 const SkColor background_color = GetColor(security_level, BACKGROUND);
1234 1248
1235 for (PageActionViews::const_iterator 1249 for (PageActionViews::const_iterator
1236 page_action_view = page_action_views_.begin(); 1250 page_action_view = page_action_views_.begin();
1237 page_action_view != page_action_views_.end(); 1251 page_action_view != page_action_views_.end();
1238 ++page_action_view) { 1252 ++page_action_view) {
1239 gfx::Rect bounds = (*page_action_view)->bounds(); 1253 gfx::Rect bounds = (*page_action_view)->bounds();
1240 int horizontal_padding = GetItemPadding() - 1254 int horizontal_padding =
1241 (*page_action_view)->GetBuiltInHorizontalPadding(); 1255 GetItemPadding() - GetBuiltInHorizontalPaddingForChildViews();
1242 // Make the bounding rectangle include the whole vertical range of the 1256 // Make the bounding rectangle include the whole vertical range of the
1243 // location bar, and the mid-point pixels between adjacent page actions. 1257 // location bar, and the mid-point pixels between adjacent page actions.
1244 // 1258 //
1245 // For odd horizontal_paddings, "horizontal_padding + 1" includes the 1259 // For odd horizontal_paddings, "horizontal_padding + 1" includes the
1246 // mid-point between two page actions in the bounding rectangle. For even 1260 // mid-point between two page actions in the bounding rectangle. For even
1247 // paddings, the +1 is dropped, which is right since there is no pixel at 1261 // paddings, the +1 is dropped, which is right since there is no pixel at
1248 // the mid-point. 1262 // the mid-point.
1249 bounds.Inset(-(horizontal_padding + 1) / 2, 0); 1263 bounds.Inset(-(horizontal_padding + 1) / 2, 0);
1250 location_bar_util::PaintExtensionActionBackground( 1264 location_bar_util::PaintExtensionActionBackground(
1251 *(*page_action_view)->image_view()->page_action(), 1265 *(*page_action_view)->image_view()->page_action(),
(...skipping 254 matching lines...) Expand 10 before | Expand all | Expand 10 after
1506 int LocationBarView::GetInternalHeight(bool use_preferred_size) { 1520 int LocationBarView::GetInternalHeight(bool use_preferred_size) {
1507 int total_height = 1521 int total_height =
1508 use_preferred_size ? GetPreferredSize().height() : height(); 1522 use_preferred_size ? GetPreferredSize().height() : height();
1509 return std::max(total_height - (vertical_edge_thickness() * 2), 0); 1523 return std::max(total_height - (vertical_edge_thickness() * 2), 0);
1510 } 1524 }
1511 1525
1512 bool LocationBarView::HasValidSuggestText() const { 1526 bool LocationBarView::HasValidSuggestText() const {
1513 return suggested_text_view_->visible() && 1527 return suggested_text_view_->visible() &&
1514 !suggested_text_view_->size().IsEmpty(); 1528 !suggested_text_view_->size().IsEmpty();
1515 } 1529 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698