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

Side by Side Diff: chrome/browser/ui/libgtkui/native_theme_gtk2.cc

Issue 2610883004: Gtk3: Rename Gtk2UI and Get[FB]GColor (Closed)
Patch Set: Rebase Created 3 years, 11 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
« no previous file with comments | « chrome/browser/ui/libgtkui/gtk_util.cc ('k') | chrome/browser/ui/libgtkui/native_theme_gtk3.cc » ('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 (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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/libgtkui/native_theme_gtk2.h" 5 #include "chrome/browser/ui/libgtkui/native_theme_gtk2.h"
6 6
7 #include <gtk/gtk.h> 7 #include <gtk/gtk.h>
8 8
9 #include "chrome/browser/ui/libgtkui/chrome_gtk_frame.h" 9 #include "chrome/browser/ui/libgtkui/chrome_gtk_frame.h"
10 #include "chrome/browser/ui/libgtkui/chrome_gtk_menu_subclasses.h" 10 #include "chrome/browser/ui/libgtkui/chrome_gtk_menu_subclasses.h"
(...skipping 22 matching lines...) Expand all
33 SELECTED = 3, 33 SELECTED = 3,
34 INSENSITIVE = 4, 34 INSENSITIVE = 4,
35 }; 35 };
36 36
37 // Same order as enum WidgetState above 37 // Same order as enum WidgetState above
38 const GtkStateType stateMap[] = { 38 const GtkStateType stateMap[] = {
39 GTK_STATE_NORMAL, GTK_STATE_ACTIVE, GTK_STATE_PRELIGHT, 39 GTK_STATE_NORMAL, GTK_STATE_ACTIVE, GTK_STATE_PRELIGHT,
40 GTK_STATE_SELECTED, GTK_STATE_INSENSITIVE, 40 GTK_STATE_SELECTED, GTK_STATE_INSENSITIVE,
41 }; 41 };
42 42
43 SkColor GetFGColor(GtkWidget* widget, WidgetState state) { 43 SkColor GetFgColor(GtkWidget* widget, WidgetState state) {
44 return GdkColorToSkColor(gtk_rc_get_style(widget)->fg[stateMap[state]]); 44 return GdkColorToSkColor(gtk_rc_get_style(widget)->fg[stateMap[state]]);
45 } 45 }
46 SkColor GetBGColor(GtkWidget* widget, WidgetState state) { 46 SkColor GetBgColor(GtkWidget* widget, WidgetState state) {
47 return GdkColorToSkColor(gtk_rc_get_style(widget)->bg[stateMap[state]]); 47 return GdkColorToSkColor(gtk_rc_get_style(widget)->bg[stateMap[state]]);
48 } 48 }
49 49
50 SkColor GetTextColor(GtkWidget* widget, WidgetState state) { 50 SkColor GetTextColor(GtkWidget* widget, WidgetState state) {
51 return GdkColorToSkColor(gtk_rc_get_style(widget)->text[stateMap[state]]); 51 return GdkColorToSkColor(gtk_rc_get_style(widget)->text[stateMap[state]]);
52 } 52 }
53 SkColor GetTextAAColor(GtkWidget* widget, WidgetState state) { 53 SkColor GetTextAAColor(GtkWidget* widget, WidgetState state) {
54 return GdkColorToSkColor(gtk_rc_get_style(widget)->text_aa[stateMap[state]]); 54 return GdkColorToSkColor(gtk_rc_get_style(widget)->text_aa[stateMap[state]]);
55 } 55 }
56 SkColor GetBaseColor(GtkWidget* widget, WidgetState state) { 56 SkColor GetBaseColor(GtkWidget* widget, WidgetState state) {
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
125 canvas->drawRect(gfx::RectToSkRect(rect), paint); 125 canvas->drawRect(gfx::RectToSkRect(rect), paint);
126 } 126 }
127 127
128 SkColor NativeThemeGtk2::GetSystemColor(ColorId color_id) const { 128 SkColor NativeThemeGtk2::GetSystemColor(ColorId color_id) const {
129 const SkColor kPositiveTextColor = SkColorSetRGB(0x0b, 0x80, 0x43); 129 const SkColor kPositiveTextColor = SkColorSetRGB(0x0b, 0x80, 0x43);
130 const SkColor kNegativeTextColor = SkColorSetRGB(0xc5, 0x39, 0x29); 130 const SkColor kNegativeTextColor = SkColorSetRGB(0xc5, 0x39, 0x29);
131 131
132 switch (color_id) { 132 switch (color_id) {
133 // Windows 133 // Windows
134 case kColorId_WindowBackground: 134 case kColorId_WindowBackground:
135 return GetBGColor(GetWindow(), SELECTED); 135 return GetBgColor(GetWindow(), SELECTED);
136 136
137 // Dialogs 137 // Dialogs
138 case kColorId_DialogBackground: 138 case kColorId_DialogBackground:
139 case kColorId_BubbleBackground: 139 case kColorId_BubbleBackground:
140 return GetBGColor(GetWindow(), NORMAL); 140 return GetBgColor(GetWindow(), NORMAL);
141 141
142 // FocusableBorder 142 // FocusableBorder
143 case kColorId_FocusedBorderColor: 143 case kColorId_FocusedBorderColor:
144 return GetBGColor(GetEntry(), SELECTED); 144 return GetBgColor(GetEntry(), SELECTED);
145 case kColorId_UnfocusedBorderColor: 145 case kColorId_UnfocusedBorderColor:
146 return GetTextAAColor(GetEntry(), NORMAL); 146 return GetTextAAColor(GetEntry(), NORMAL);
147 147
148 // MenuItem 148 // MenuItem
149 case kColorId_SelectedMenuItemForegroundColor: 149 case kColorId_SelectedMenuItemForegroundColor:
150 return GetTextColor(GetMenuItem(), SELECTED); 150 return GetTextColor(GetMenuItem(), SELECTED);
151 case kColorId_FocusedMenuItemBackgroundColor: 151 case kColorId_FocusedMenuItemBackgroundColor:
152 return GetBGColor(GetMenuItem(), SELECTED); 152 return GetBgColor(GetMenuItem(), SELECTED);
153 153
154 case kColorId_EnabledMenuItemForegroundColor: 154 case kColorId_EnabledMenuItemForegroundColor:
155 return GetTextColor(GetMenuItem(), NORMAL); 155 return GetTextColor(GetMenuItem(), NORMAL);
156 case kColorId_MenuItemSubtitleColor: 156 case kColorId_MenuItemSubtitleColor:
157 case kColorId_DisabledMenuItemForegroundColor: 157 case kColorId_DisabledMenuItemForegroundColor:
158 return GetTextColor(GetMenuItem(), INSENSITIVE); 158 return GetTextColor(GetMenuItem(), INSENSITIVE);
159 case kColorId_FocusedMenuButtonBorderColor: 159 case kColorId_FocusedMenuButtonBorderColor:
160 return GetBGColor(GetEntry(), NORMAL); 160 return GetBgColor(GetEntry(), NORMAL);
161 case kColorId_HoverMenuButtonBorderColor: 161 case kColorId_HoverMenuButtonBorderColor:
162 return GetTextAAColor(GetEntry(), PRELIGHT); 162 return GetTextAAColor(GetEntry(), PRELIGHT);
163 case kColorId_MenuBorderColor: 163 case kColorId_MenuBorderColor:
164 case kColorId_EnabledMenuButtonBorderColor: 164 case kColorId_EnabledMenuButtonBorderColor:
165 case kColorId_MenuSeparatorColor: { 165 case kColorId_MenuSeparatorColor: {
166 return GetTextColor(GetMenuItem(), INSENSITIVE); 166 return GetTextColor(GetMenuItem(), INSENSITIVE);
167 } 167 }
168 case kColorId_MenuBackgroundColor: 168 case kColorId_MenuBackgroundColor:
169 return GetBGColor(GetMenu(), NORMAL); 169 return GetBgColor(GetMenu(), NORMAL);
170 170
171 // Label 171 // Label
172 case kColorId_LabelEnabledColor: 172 case kColorId_LabelEnabledColor:
173 return GetTextColor(GetEntry(), NORMAL); 173 return GetTextColor(GetEntry(), NORMAL);
174 case kColorId_LabelDisabledColor: 174 case kColorId_LabelDisabledColor:
175 return GetTextColor(GetLabel(), INSENSITIVE); 175 return GetTextColor(GetLabel(), INSENSITIVE);
176 case kColorId_LabelTextSelectionColor: 176 case kColorId_LabelTextSelectionColor:
177 return GetTextColor(GetLabel(), SELECTED); 177 return GetTextColor(GetLabel(), SELECTED);
178 case kColorId_LabelTextSelectionBackgroundFocused: 178 case kColorId_LabelTextSelectionBackgroundFocused:
179 return GetBaseColor(GetLabel(), SELECTED); 179 return GetBaseColor(GetLabel(), SELECTED);
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
231 return GetTextColor(GetEntry(), ACTIVE); 231 return GetTextColor(GetEntry(), ACTIVE);
232 case kColorId_TextfieldReadOnlyBackground: 232 case kColorId_TextfieldReadOnlyBackground:
233 return GetBaseColor(GetEntry(), ACTIVE); 233 return GetBaseColor(GetEntry(), ACTIVE);
234 case kColorId_TextfieldSelectionColor: 234 case kColorId_TextfieldSelectionColor:
235 return GetTextColor(GetEntry(), SELECTED); 235 return GetTextColor(GetEntry(), SELECTED);
236 case kColorId_TextfieldSelectionBackgroundFocused: 236 case kColorId_TextfieldSelectionBackgroundFocused:
237 return GetBaseColor(GetEntry(), SELECTED); 237 return GetBaseColor(GetEntry(), SELECTED);
238 238
239 // Tooltips 239 // Tooltips
240 case kColorId_TooltipBackground: 240 case kColorId_TooltipBackground:
241 return GetBGColor(GetTooltip(), NORMAL); 241 return GetBgColor(GetTooltip(), NORMAL);
242 case kColorId_TooltipText: 242 case kColorId_TooltipText:
243 return GetFGColor(GetTooltip(), NORMAL); 243 return GetFgColor(GetTooltip(), NORMAL);
244 244
245 // Trees and Tables (implemented on GTK using the same class) 245 // Trees and Tables (implemented on GTK using the same class)
246 case kColorId_TableBackground: 246 case kColorId_TableBackground:
247 case kColorId_TreeBackground: 247 case kColorId_TreeBackground:
248 return GetBGColor(GetTree(), NORMAL); 248 return GetBgColor(GetTree(), NORMAL);
249 case kColorId_TableText: 249 case kColorId_TableText:
250 case kColorId_TreeText: 250 case kColorId_TreeText:
251 return GetTextColor(GetTree(), NORMAL); 251 return GetTextColor(GetTree(), NORMAL);
252 case kColorId_TableSelectedText: 252 case kColorId_TableSelectedText:
253 case kColorId_TableSelectedTextUnfocused: 253 case kColorId_TableSelectedTextUnfocused:
254 case kColorId_TreeSelectedText: 254 case kColorId_TreeSelectedText:
255 case kColorId_TreeSelectedTextUnfocused: 255 case kColorId_TreeSelectedTextUnfocused:
256 return GetTextColor(GetTree(), SELECTED); 256 return GetTextColor(GetTree(), SELECTED);
257 case kColorId_TableSelectionBackgroundFocused: 257 case kColorId_TableSelectionBackgroundFocused:
258 case kColorId_TableSelectionBackgroundUnfocused: 258 case kColorId_TableSelectionBackgroundUnfocused:
259 case kColorId_TreeSelectionBackgroundFocused: 259 case kColorId_TreeSelectionBackgroundFocused:
260 case kColorId_TreeSelectionBackgroundUnfocused: 260 case kColorId_TreeSelectionBackgroundUnfocused:
261 return GetBGColor(GetTree(), SELECTED); 261 return GetBgColor(GetTree(), SELECTED);
262 case kColorId_TreeArrow: 262 case kColorId_TreeArrow:
263 return GetFGColor(GetTree(), NORMAL); 263 return GetFgColor(GetTree(), NORMAL);
264 case kColorId_TableGroupingIndicatorColor: 264 case kColorId_TableGroupingIndicatorColor:
265 return GetTextAAColor(GetTree(), NORMAL); 265 return GetTextAAColor(GetTree(), NORMAL);
266 266
267 // Results Table 267 // Results Table
268 case kColorId_ResultsTableNormalBackground: 268 case kColorId_ResultsTableNormalBackground:
269 return GetSystemColor(kColorId_TextfieldDefaultBackground); 269 return GetSystemColor(kColorId_TextfieldDefaultBackground);
270 case kColorId_ResultsTableHoveredBackground: 270 case kColorId_ResultsTableHoveredBackground:
271 return color_utils::AlphaBlend( 271 return color_utils::AlphaBlend(
272 GetSystemColor(kColorId_TextfieldDefaultBackground), 272 GetSystemColor(kColorId_TextfieldDefaultBackground),
273 GetSystemColor(kColorId_TextfieldSelectionBackgroundFocused), 0x80); 273 GetSystemColor(kColorId_TextfieldSelectionBackgroundFocused), 0x80);
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
322 } 322 }
323 323
324 // Throbber 324 // Throbber
325 case kColorId_ThrobberSpinningColor: 325 case kColorId_ThrobberSpinningColor:
326 case kColorId_ThrobberLightColor: 326 case kColorId_ThrobberLightColor:
327 return GetSystemColor(kColorId_TextfieldSelectionBackgroundFocused); 327 return GetSystemColor(kColorId_TextfieldSelectionBackgroundFocused);
328 328
329 case kColorId_ThrobberWaitingColor: 329 case kColorId_ThrobberWaitingColor:
330 return color_utils::AlphaBlend( 330 return color_utils::AlphaBlend(
331 GetSystemColor(kColorId_TextfieldSelectionBackgroundFocused), 331 GetSystemColor(kColorId_TextfieldSelectionBackgroundFocused),
332 GetBGColor(GetWindow(), NORMAL), 0x80); 332 GetBgColor(GetWindow(), NORMAL), 0x80);
333 333
334 // Alert icons 334 // Alert icons
335 // Just fall back to the same colors as Aura. 335 // Just fall back to the same colors as Aura.
336 case kColorId_AlertSeverityLow: 336 case kColorId_AlertSeverityLow:
337 case kColorId_AlertSeverityMedium: 337 case kColorId_AlertSeverityMedium:
338 case kColorId_AlertSeverityHigh: { 338 case kColorId_AlertSeverityHigh: {
339 ui::NativeTheme* fallback_theme = 339 ui::NativeTheme* fallback_theme =
340 color_utils::IsDark(GetTextColor(GetEntry(), NORMAL)) 340 color_utils::IsDark(GetTextColor(GetEntry(), NORMAL))
341 ? ui::NativeTheme::GetInstanceForNativeUi() 341 ? ui::NativeTheme::GetInstanceForNativeUi()
342 : ui::NativeThemeDarkAura::instance(); 342 : ui::NativeThemeDarkAura::instance();
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
441 441
442 if (!fake_menu_item) { 442 if (!fake_menu_item) {
443 fake_menu_item = gtk_custom_menu_item_new(); 443 fake_menu_item = gtk_custom_menu_item_new();
444 gtk_menu_shell_append(GTK_MENU_SHELL(GetMenu()), fake_menu_item); 444 gtk_menu_shell_append(GTK_MENU_SHELL(GetMenu()), fake_menu_item);
445 } 445 }
446 446
447 return fake_menu_item; 447 return fake_menu_item;
448 } 448 }
449 449
450 } // namespace libgtkui 450 } // namespace libgtkui
OLDNEW
« no previous file with comments | « chrome/browser/ui/libgtkui/gtk_util.cc ('k') | chrome/browser/ui/libgtkui/native_theme_gtk3.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698