diff options
Diffstat (limited to 'media/audio')
-rw-r--r-- | media/audio/linux/audio_manager_linux.cc | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/media/audio/linux/audio_manager_linux.cc b/media/audio/linux/audio_manager_linux.cc index 8a8cad2..9d9e833 100644 --- a/media/audio/linux/audio_manager_linux.cc +++ b/media/audio/linux/audio_manager_linux.cc @@ -72,11 +72,20 @@ void AudioManagerLinux::UnMuteAll() { bool AudioManagerLinux::CanShowAudioInputSettings() { scoped_ptr<base::Environment> env(base::Environment::Create()); - base::nix::DesktopEnvironment desktop = base::nix::GetDesktopEnvironment( - env.get()); - return (desktop == base::nix::DESKTOP_ENVIRONMENT_GNOME || - desktop == base::nix::DESKTOP_ENVIRONMENT_KDE3 || - desktop == base::nix::DESKTOP_ENVIRONMENT_KDE4); + + switch (base::nix::GetDesktopEnvironment(env.get())) { + case base::nix::DESKTOP_ENVIRONMENT_GNOME: + case base::nix::DESKTOP_ENVIRONMENT_KDE3: + case base::nix::DESKTOP_ENVIRONMENT_KDE4: + return true; + case base::nix::DESKTOP_ENVIRONMENT_OTHER: + case base::nix::DESKTOP_ENVIRONMENT_UNITY: + case base::nix::DESKTOP_ENVIRONMENT_XFCE: + return false; + } + // Unless GetDesktopEnvironment() badly misbehaves, this should never happen. + NOTREACHED(); + return false; } void AudioManagerLinux::ShowAudioInputSettings() { |