| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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/gtk/location_bar_view_gtk.h" | 5 #include "chrome/browser/ui/gtk/location_bar_view_gtk.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <string> | 8 #include <string> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 897 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 908 PangoFontMetrics* metrics = pango_context_get_metrics( | 908 PangoFontMetrics* metrics = pango_context_get_metrics( |
| 909 context, | 909 context, |
| 910 gtk_widget_get_style(security_info_label_)->font_desc, | 910 gtk_widget_get_style(security_info_label_)->font_desc, |
| 911 pango_context_get_language(context)); | 911 pango_context_get_language(context)); |
| 912 int char_width = | 912 int char_width = |
| 913 pango_font_metrics_get_approximate_char_width(metrics) / PANGO_SCALE; | 913 pango_font_metrics_get_approximate_char_width(metrics) / PANGO_SCALE; |
| 914 | 914 |
| 915 // The EV label should never take up more than half the hbox. We try to | 915 // The EV label should never take up more than half the hbox. We try to |
| 916 // correct our inaccurate measurement units ("the average character width") | 916 // correct our inaccurate measurement units ("the average character width") |
| 917 // by dividing more than an even 2. | 917 // by dividing more than an even 2. |
| 918 int text_area = security_info_label_->allocation.width + | 918 GtkAllocation security_label_allocation; |
| 919 entry_box_->allocation.width; | 919 gtk_widget_get_allocation(security_info_label_, &security_label_allocation); |
| 920 GtkAllocation entry_box_allocation; |
| 921 gtk_widget_get_allocation(entry_box_, &entry_box_allocation); |
| 922 int text_area = security_label_allocation.width + |
| 923 entry_box_allocation.width; |
| 920 int max_chars = static_cast<int>(static_cast<float>(text_area) / | 924 int max_chars = static_cast<int>(static_cast<float>(text_area) / |
| 921 static_cast<float>(char_width) / 2.75); | 925 static_cast<float>(char_width) / 2.75); |
| 922 // Don't let the label be smaller than 10 characters so that the country | 926 // Don't let the label be smaller than 10 characters so that the country |
| 923 // code is always visible. | 927 // code is always visible. |
| 924 gtk_label_set_max_width_chars(GTK_LABEL(security_info_label_), | 928 gtk_label_set_max_width_chars(GTK_LABEL(security_info_label_), |
| 925 std::max(10, max_chars)); | 929 std::max(10, max_chars)); |
| 926 | 930 |
| 927 pango_font_metrics_unref(metrics); | 931 pango_font_metrics_unref(metrics); |
| 928 } | 932 } |
| 929 | 933 |
| (...skipping 702 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1632 | 1636 |
| 1633 std::string badge_text = page_action_->GetBadgeText(tab_id); | 1637 std::string badge_text = page_action_->GetBadgeText(tab_id); |
| 1634 if (badge_text.empty()) | 1638 if (badge_text.empty()) |
| 1635 return FALSE; | 1639 return FALSE; |
| 1636 | 1640 |
| 1637 gfx::CanvasSkiaPaint canvas(event, false); | 1641 gfx::CanvasSkiaPaint canvas(event, false); |
| 1638 gfx::Rect bounding_rect(widget->allocation); | 1642 gfx::Rect bounding_rect(widget->allocation); |
| 1639 page_action_->PaintBadge(&canvas, bounding_rect, tab_id); | 1643 page_action_->PaintBadge(&canvas, bounding_rect, tab_id); |
| 1640 return FALSE; | 1644 return FALSE; |
| 1641 } | 1645 } |
| OLD | NEW |