| OLD | NEW | 
|---|
| 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 #ifndef CHROME_BROWSER_UI_GTK_GTK_THEME_SERVICE_H_ | 5 #ifndef CHROME_BROWSER_UI_GTK_GTK_THEME_SERVICE_H_ | 
| 6 #define CHROME_BROWSER_UI_GTK_GTK_THEME_SERVICE_H_ | 6 #define CHROME_BROWSER_UI_GTK_GTK_THEME_SERVICE_H_ | 
| 7 #pragma once | 7 #pragma once | 
| 8 | 8 | 
| 9 #include <map> | 9 #include <map> | 
| 10 #include <vector> | 10 #include <vector> | 
| 11 | 11 | 
| 12 #include "base/compiler_specific.h" | 12 #include "base/compiler_specific.h" | 
|  | 13 #include "base/lazy_instance.h" | 
| 13 #include "base/memory/scoped_ptr.h" | 14 #include "base/memory/scoped_ptr.h" | 
| 14 #include "chrome/browser/prefs/pref_change_registrar.h" | 15 #include "chrome/browser/prefs/pref_change_registrar.h" | 
| 15 #include "chrome/browser/themes/theme_service.h" | 16 #include "chrome/browser/themes/theme_service.h" | 
| 16 #include "content/public/browser/notification_observer.h" | 17 #include "content/public/browser/notification_observer.h" | 
| 17 #include "ui/base/glib/glib_integers.h" | 18 #include "ui/base/glib/glib_integers.h" | 
| 18 #include "ui/base/gtk/gtk_signal.h" | 19 #include "ui/base/gtk/gtk_signal.h" | 
| 19 #include "ui/base/gtk/owned_widget_gtk.h" | 20 #include "ui/base/gtk/owned_widget_gtk.h" | 
| 20 #include "ui/gfx/color_utils.h" | 21 #include "ui/gfx/color_utils.h" | 
| 21 | 22 | 
| 22 class Profile; | 23 class Profile; | 
| (...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 136   SkColor get_inactive_selection_bg_color() const { | 137   SkColor get_inactive_selection_bg_color() const { | 
| 137     return inactive_selection_bg_color_; | 138     return inactive_selection_bg_color_; | 
| 138   } | 139   } | 
| 139   SkColor get_inactive_selection_fg_color() const { | 140   SkColor get_inactive_selection_fg_color() const { | 
| 140     return inactive_selection_fg_color_; | 141     return inactive_selection_fg_color_; | 
| 141   } | 142   } | 
| 142 | 143 | 
| 143   // These functions return an image that is not owned by the caller and should | 144   // These functions return an image that is not owned by the caller and should | 
| 144   // not be deleted. If |native| is true, get the GTK_STOCK version of the | 145   // not be deleted. If |native| is true, get the GTK_STOCK version of the | 
| 145   // icon. | 146   // icon. | 
| 146   static gfx::Image* GetFolderIcon(bool native); | 147   static gfx::Image GetFolderIcon(bool native); | 
| 147   static gfx::Image* GetDefaultFavicon(bool native); | 148   static gfx::Image GetDefaultFavicon(bool native); | 
| 148 | 149 | 
| 149   // Whether we use the GTK theme by default in the current desktop | 150   // Whether we use the GTK theme by default in the current desktop | 
| 150   // environment. Returns true when we GTK defaults to on. | 151   // environment. Returns true when we GTK defaults to on. | 
| 151   static bool DefaultUsesSystemTheme(); | 152   static bool DefaultUsesSystemTheme(); | 
| 152 | 153 | 
| 153  private: | 154  private: | 
| 154   typedef std::map<int, SkColor> ColorMap; | 155   typedef std::map<int, SkColor> ColorMap; | 
| 155   typedef std::map<int, color_utils::HSL> TintMap; | 156   typedef std::map<int, color_utils::HSL> TintMap; | 
| 156   typedef std::map<int, gfx::Image*> ImageCache; | 157   typedef std::map<int, gfx::Image*> ImageCache; | 
| 157 | 158 | 
| (...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 293   PrefChangeRegistrar registrar_; | 294   PrefChangeRegistrar registrar_; | 
| 294 | 295 | 
| 295   // This is a dummy widget that only exists so we have something to pass to | 296   // This is a dummy widget that only exists so we have something to pass to | 
| 296   // gtk_widget_render_icon(). | 297   // gtk_widget_render_icon(). | 
| 297   static GtkWidget* icon_widget_; | 298   static GtkWidget* icon_widget_; | 
| 298 | 299 | 
| 299   // The default folder icon and default bookmark icon for the GTK theme. | 300   // The default folder icon and default bookmark icon for the GTK theme. | 
| 300   // These are static because the system can only have one theme at a time. | 301   // These are static because the system can only have one theme at a time. | 
| 301   // They are cached when they are requested the first time, and cleared when | 302   // They are cached when they are requested the first time, and cleared when | 
| 302   // the system theme changes. | 303   // the system theme changes. | 
| 303   static gfx::Image* default_folder_icon_; | 304   static base::LazyInstance<gfx::Image> default_folder_icon_; | 
| 304   static gfx::Image* default_bookmark_icon_; | 305   static base::LazyInstance<gfx::Image> default_bookmark_icon_; | 
| 305 }; | 306 }; | 
| 306 | 307 | 
| 307 #endif  // CHROME_BROWSER_UI_GTK_GTK_THEME_SERVICE_H_ | 308 #endif  // CHROME_BROWSER_UI_GTK_GTK_THEME_SERVICE_H_ | 
| OLD | NEW | 
|---|