| Index: chrome/browser/ui/libgtk2ui/gtk2_ui.cc
|
| diff --git a/chrome/browser/ui/libgtk2ui/gtk2_ui.cc b/chrome/browser/ui/libgtk2ui/gtk2_ui.cc
|
| index 195460aba4b4491a88cef62987e978df37edb18e..3243d7b54afec82bbfbbb0d8d6f93d5672e31a87 100644
|
| --- a/chrome/browser/ui/libgtk2ui/gtk2_ui.cc
|
| +++ b/chrome/browser/ui/libgtk2ui/gtk2_ui.cc
|
| @@ -7,6 +7,7 @@
|
| #include <set>
|
|
|
| #include "base/command_line.h"
|
| +#include "base/environment.h"
|
| #include "base/i18n/rtl.h"
|
| #include "base/logging.h"
|
| #include "base/nix/mime_util_xdg.h"
|
| @@ -342,10 +343,32 @@ bool Gtk2UI::GetColor(int id, SkColor* color) const {
|
| return false;
|
| }
|
|
|
| +bool Gtk2UI::HasCustomImage(int id) const {
|
| + return IsOverridableImage(id);
|
| +}
|
| +
|
| ui::NativeTheme* Gtk2UI::GetNativeTheme() const {
|
| return NativeThemeGtk2::instance();
|
| }
|
|
|
| +bool Gtk2UI::GetDefaultUsesSystemTheme() const {
|
| + scoped_ptr<base::Environment> env(base::Environment::Create());
|
| +
|
| + switch (base::nix::GetDesktopEnvironment(env.get())) {
|
| + case base::nix::DESKTOP_ENVIRONMENT_GNOME:
|
| + case base::nix::DESKTOP_ENVIRONMENT_UNITY:
|
| + case base::nix::DESKTOP_ENVIRONMENT_XFCE:
|
| + return true;
|
| + case base::nix::DESKTOP_ENVIRONMENT_KDE3:
|
| + case base::nix::DESKTOP_ENVIRONMENT_KDE4:
|
| + case base::nix::DESKTOP_ENVIRONMENT_OTHER:
|
| + return false;
|
| + }
|
| + // Unless GetDesktopEnvironment() badly misbehaves, this should never happen.
|
| + NOTREACHED();
|
| + return false;
|
| +}
|
| +
|
| ui::SelectFileDialog* Gtk2UI::CreateSelectFileDialog(
|
| ui::SelectFileDialog::Listener* listener,
|
| ui::SelectFilePolicy* policy) const {
|
|
|