Index: chrome/browser/gtk/gtk_theme_provider.cc |
diff --git a/chrome/browser/gtk/gtk_theme_provider.cc b/chrome/browser/gtk/gtk_theme_provider.cc |
index 4a229c6ed108a9b5d42249b374a01f1f156be2d8..ca993bd451577f785eb82657c70f476cc84edcd6 100644 |
--- a/chrome/browser/gtk/gtk_theme_provider.cc |
+++ b/chrome/browser/gtk/gtk_theme_provider.cc |
@@ -8,6 +8,7 @@ |
#include "app/resource_bundle.h" |
#include "base/stl_util-inl.h" |
+#include "base/linux_util.h" |
Evan Stade
2010/03/26 19:37:35
alphabet
|
#include "chrome/browser/metrics/user_metrics.h" |
#include "chrome/browser/profile.h" |
#include "chrome/browser/gtk/cairo_cached_surface.h" |
@@ -399,6 +400,21 @@ GdkPixbuf* GtkThemeProvider::GetDefaultFavicon(bool native) { |
static GdkPixbuf* default_bookmark_icon_ = rb.GetPixbufNamed( |
IDR_DEFAULT_FAVICON); |
return default_bookmark_icon_; |
+ |
+} |
+ |
+// static |
+bool GtkThemeProvider::DefaultUsesSystemTheme() { |
+ scoped_ptr<base::EnvironmentVariableGetter> env_getter( |
+ base::EnvironmentVariableGetter::Create()); |
+ |
+ switch (base::GetDesktopEnvironment(env_getter.get())) { |
+ case base::DESKTOP_ENVIRONMENT_GNOME: |
+ case base::DESKTOP_ENVIRONMENT_XFCE: |
+ return true; |
+ default: |
+ return false; |
+ } |
} |
void GtkThemeProvider::ClearAllThemeData() { |