summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorerg@google.com <erg@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-09-29 23:30:41 +0000
committererg@google.com <erg@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-09-29 23:30:41 +0000
commit6159685d95afd3ba1543300d54a21dddd1a22249 (patch)
tree90d5021d4987e58139064812c7a8e476941ec8d7
parentb0950a734d693e2192b1e2e94381c4345387b330 (diff)
downloadchromium_src-6159685d95afd3ba1543300d54a21dddd1a22249.zip
chromium_src-6159685d95afd3ba1543300d54a21dddd1a22249.tar.gz
chromium_src-6159685d95afd3ba1543300d54a21dddd1a22249.tar.bz2
GTK: Use a calculated border color in chrome theme mode instead of blue.
Review URL: http://codereview.chromium.org/255012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27565 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/gtk/blocked_popup_container_view_gtk.cc12
-rw-r--r--chrome/browser/gtk/download_shelf_gtk.cc11
-rw-r--r--chrome/browser/gtk/extension_shelf_gtk.cc14
-rw-r--r--chrome/browser/gtk/find_bar_gtk.cc9
-rw-r--r--chrome/browser/gtk/gtk_theme_provider.cc22
5 files changed, 26 insertions, 42 deletions
diff --git a/chrome/browser/gtk/blocked_popup_container_view_gtk.cc b/chrome/browser/gtk/blocked_popup_container_view_gtk.cc
index 925c390..24016a0 100644
--- a/chrome/browser/gtk/blocked_popup_container_view_gtk.cc
+++ b/chrome/browser/gtk/blocked_popup_container_view_gtk.cc
@@ -20,12 +20,10 @@
#include "grit/theme_resources.h"
namespace {
+
// The minimal border around the edge of the notification.
const int kSmallPadding = 2;
-// Color of the border.
-const GdkColor kBorderColor = GDK_COLOR_RGB(190, 205, 223);
-
// Color of the gradient in the background.
const double kBackgroundColorTop[] = { 246.0 / 255, 250.0 / 255, 1.0 };
const double kBackgroundColorBottom[] = { 219.0 / 255, 235.0 / 255, 1.0 };
@@ -109,14 +107,14 @@ void BlockedPopupContainerViewGtk::Observe(NotificationType type,
GtkWidget* label = gtk_bin_get_child(GTK_BIN(menu_button_));
if (theme_provider_->UseGtkTheme()) {
gtk_util::SetLabelColor(label, NULL);
- GdkColor color = theme_provider_->GetBorderColor();
- gtk_util::SetRoundedWindowBorderColor(container_.get(), color);
} else {
GdkColor color = theme_provider_->GetGdkColor(
BrowserThemeProvider::COLOR_BOOKMARK_TEXT);
gtk_util::SetLabelColor(label, &color);
- gtk_util::SetRoundedWindowBorderColor(container_.get(), kBorderColor);
}
+
+ GdkColor color = theme_provider_->GetBorderColor();
+ gtk_util::SetRoundedWindowBorderColor(container_.get(), color);
}
bool BlockedPopupContainerViewGtk::IsCommandEnabled(int command_id) const {
@@ -179,7 +177,7 @@ void BlockedPopupContainerViewGtk::Init() {
g_signal_connect(container_.get(), "expose-event",
G_CALLBACK(OnRoundedExposeCallback), this);
gtk_util::ActAsRoundedWindow(
- container_.get(), kBorderColor, kCornerSize,
+ container_.get(), gfx::kGdkBlack, kCornerSize,
gtk_util::ROUNDED_TOP_LEFT | gtk_util::ROUNDED_TOP_RIGHT,
gtk_util::BORDER_LEFT | gtk_util::BORDER_TOP | gtk_util::BORDER_RIGHT);
diff --git a/chrome/browser/gtk/download_shelf_gtk.cc b/chrome/browser/gtk/download_shelf_gtk.cc
index 6188b75..dba7532 100644
--- a/chrome/browser/gtk/download_shelf_gtk.cc
+++ b/chrome/browser/gtk/download_shelf_gtk.cc
@@ -39,9 +39,6 @@ const int kLeftPadding = 2;
// Padding between the right side of the shelf and the close button.
const int kRightPadding = 10;
-// Border color (the top pixel of the shelf).
-const GdkColor kBorderColor = GDK_COLOR_RGB(214, 214, 214);
-
// Speed of the shelf show/hide animation.
const int kShelfAnimationDurationMs = 120;
@@ -194,12 +191,8 @@ void DownloadShelfGtk::Observe(NotificationType type,
BrowserThemeProvider::COLOR_TOOLBAR);
gtk_widget_modify_bg(padding_bg_, GTK_STATE_NORMAL, &color);
- if (theme_provider_->UseGtkTheme()) {
- GdkColor color = theme_provider_->GetBorderColor();
- gtk_widget_modify_bg(top_border_, GTK_STATE_NORMAL, &color);
- } else {
- gtk_widget_modify_bg(top_border_, GTK_STATE_NORMAL, &kBorderColor);
- }
+ color = theme_provider_->GetBorderColor();
+ gtk_widget_modify_bg(top_border_, GTK_STATE_NORMAL, &color);
}
}
diff --git a/chrome/browser/gtk/extension_shelf_gtk.cc b/chrome/browser/gtk/extension_shelf_gtk.cc
index 24547ed..437f91f 100644
--- a/chrome/browser/gtk/extension_shelf_gtk.cc
+++ b/chrome/browser/gtk/extension_shelf_gtk.cc
@@ -15,9 +15,6 @@
#include "grit/generated_resources.h"
#include "grit/theme_resources.h"
-// Border color (the top pixel of the shelf).
-const GdkColor kBorderColor = GDK_COLOR_RGB(214, 214, 214);
-
// Preferred height of the ExtensionShelfGtk.
static const int kShelfHeight = 29;
@@ -155,15 +152,10 @@ void ExtensionShelfGtk::Observe(NotificationType type,
const NotificationSource& source,
const NotificationDetails& details) {
DCHECK(type == NotificationType::BROWSER_THEME_CHANGED);
- if (theme_provider_->UseGtkTheme()) {
- GdkColor color = theme_provider_->GetBorderColor();
- gtk_widget_modify_bg(top_border_, GTK_STATE_NORMAL, &color);
- } else {
- gtk_widget_modify_bg(top_border_, GTK_STATE_NORMAL, &kBorderColor);
- }
+ GdkColor color = theme_provider_->GetBorderColor();
+ gtk_widget_modify_bg(top_border_, GTK_STATE_NORMAL, &color);
- GdkColor color = theme_provider_->GetGdkColor(
- BrowserThemeProvider::COLOR_TOOLBAR);
+ color = theme_provider_->GetGdkColor(BrowserThemeProvider::COLOR_TOOLBAR);
gtk_widget_modify_bg(event_box_.get(), GTK_STATE_NORMAL, &color);
// Reset the background images on all the individual toolstrips
diff --git a/chrome/browser/gtk/find_bar_gtk.cc b/chrome/browser/gtk/find_bar_gtk.cc
index 282dd56..f3378c3 100644
--- a/chrome/browser/gtk/find_bar_gtk.cc
+++ b/chrome/browser/gtk/find_bar_gtk.cc
@@ -29,7 +29,6 @@
namespace {
-const GdkColor kFrameBorderColor = GDK_COLOR_RGB(0xbe, 0xc8, 0xd4);
const GdkColor kTextBorderColor = GDK_COLOR_RGB(0xa6, 0xaf, 0xba);
const GdkColor kTextBorderColorAA = GDK_COLOR_RGB(0xee, 0xf4, 0xfb);
// Used as the color of the text in the entry box and the text for the results
@@ -470,10 +469,10 @@ void FindBarGtk::Observe(NotificationType type,
container_height_ = -1;
current_fixed_width_ = -1;
- if (theme_provider_->UseGtkTheme()) {
- GdkColor color = theme_provider_->GetBorderColor();
- gtk_widget_modify_bg(border_, GTK_STATE_NORMAL, &color);
+ GdkColor color = theme_provider_->GetBorderColor();
+ gtk_widget_modify_bg(border_, GTK_STATE_NORMAL, &color);
+ if (theme_provider_->UseGtkTheme()) {
gtk_widget_modify_base(text_entry_, GTK_STATE_NORMAL, NULL);
gtk_widget_modify_text(text_entry_, GTK_STATE_NORMAL, NULL);
@@ -500,8 +499,6 @@ void FindBarGtk::Observe(NotificationType type,
gtk_misc_set_alignment(GTK_MISC(match_count_label_), 0.5, 0.5);
} else {
- gtk_widget_modify_bg(border_, GTK_STATE_NORMAL, &kFrameBorderColor);
-
gtk_widget_modify_base(text_entry_, GTK_STATE_NORMAL,
&kEntryBackgroundColor);
gtk_widget_modify_text(text_entry_, GTK_STATE_NORMAL,
diff --git a/chrome/browser/gtk/gtk_theme_provider.cc b/chrome/browser/gtk/gtk_theme_provider.cc
index 07a8d38..bc47e8f 100644
--- a/chrome/browser/gtk/gtk_theme_provider.cc
+++ b/chrome/browser/gtk/gtk_theme_provider.cc
@@ -156,19 +156,23 @@ GdkColor GtkThemeProvider::GetGdkColor(int id) {
GdkColor GtkThemeProvider::GetBorderColor() {
GtkStyle* style = gtk_rc_get_style(fake_window_);
+ GdkColor text;
+ GdkColor bg;
+ if (use_gtk_) {
+ text = style->text[GTK_STATE_NORMAL];
+ bg = style->bg[GTK_STATE_NORMAL];
+ } else {
+ text = GetGdkColor(COLOR_BOOKMARK_TEXT);
+ bg = GetGdkColor(COLOR_TOOLBAR);
+ }
+
// Creates a weighted average between the text and base color where
// the base color counts more than once.
GdkColor color;
color.pixel = 0;
- color.red = (style->text[GTK_STATE_NORMAL].red +
- (style->bg[GTK_STATE_NORMAL].red * kBgWeight)) /
- (1 + kBgWeight);
- color.green = (style->text[GTK_STATE_NORMAL].green +
- (style->bg[GTK_STATE_NORMAL].green * kBgWeight)) /
- (1 + kBgWeight);
- color.blue = (style->text[GTK_STATE_NORMAL].blue +
- (style->bg[GTK_STATE_NORMAL].blue * kBgWeight)) /
- (1 + kBgWeight);
+ color.red = (text.red + (bg.red * kBgWeight)) / (1 + kBgWeight);
+ color.green = (text.green + (bg.green * kBgWeight)) / (1 + kBgWeight);
+ color.blue = (text.blue + (bg.blue * kBgWeight)) / (1 + kBgWeight);
return color;
}