 -  } else {
 -    // If we can't access system media controls, then directly listen for media
 -    // key keypresses instead.
+-    media_keys_listener_ = ui::MediaKeysListener::Create(
+-        this, ui::MediaKeysListener::Scope::kGlobal);
+-    DCHECK(media_keys_listener_);
+-  }
 +  // This is required for proper functioning of MediaMetadata.
 +  system_media_controls_->AddObserver(this);
 +  system_media_controls_notifier_ =

   // true if register successfully, or false if 1) the specificied |accelerator|
   // has been registered by another caller or other native applications, or
diff --git a/content/browser/media/media_keys_listener_manager_impl.cc b/content/browser/media/media_keys_listener_manager_impl.cc
index 5938f75742b793868638e693a9a8c8dc686dfc46..1263d679a5174beb960265989c370dd4a58ae7b4 100644
--- a/content/browser/media/media_keys_listener_manager_impl.cc
+++ b/content/browser/media/media_keys_listener_manager_impl.cc
@@ -231,18 +231,24 @@ void MediaKeysListenerManagerImpl::StartListeningForMediaKeysIfNecessary() {
       media::AudioManager::GetGlobalAppName());
 #endif
 

+          system_media_controls_.get());
+
+  // Directly listen for media key keypresses when using GlobalShortcuts.
+  media_keys_listener_ = ui::MediaKeysListener::Create(
+    this, ui::MediaKeysListener::Scope::kGlobal);
+  DCHECK(media_keys_listener_);
 
   EnsureAuxiliaryServices();
 }
