Bug 1240423 - part4 : update audio playing window checking in AndroidBridge. draft
authorAlastor Wu <alwu@mozilla.com>
Wed, 01 Jun 2016 10:26:14 +0800
changeset 373703 53be11d8a24e12cb08aceb0c9a735f4f95ed71fa
parent 373702 5ee3e492726b01be0f146cd4fcaa6559420b1b14
child 373704 cf6ca36d56ac49817a5f0a5ff02cd1c0e5ebf0c2
push id19816
push useralwu@mozilla.com
push dateWed, 01 Jun 2016 02:38:39 +0000
bugs1240423
milestone49.0a1
Bug 1240423 - part4 : update audio playing window checking in AndroidBridge. MozReview-Commit-ID: CJCnyUtSduN
widget/android/AndroidBridge.cpp
--- a/widget/android/AndroidBridge.cpp
+++ b/widget/android/AndroidBridge.cpp
@@ -1646,16 +1646,22 @@ nsAndroidBridge::Observe(nsISupports* aS
     RemoveObservers();
   } else if (!strcmp(aTopic, "audio-playback")) {
     ALOG_BRIDGE("nsAndroidBridge::Observe, get audio-playback event.");
 
     nsCOMPtr<nsPIDOMWindowOuter> window = do_QueryInterface(aSubject);
     MOZ_ASSERT(window);
 
     nsAutoString activeStr(aData);
+    if (activeStr.EqualsLiteral("inactive-nonaudible")) {
+      // This state means the audio becomes silent, but it's still playing, so
+      // we don't need to notify the AudioFocusAgent.
+      return NS_OK;
+    }
+
     bool isPlaying = activeStr.EqualsLiteral("active");
 
     UpdateAudioPlayingWindows(window, isPlaying);
   }
   return NS_OK;
 }
 
 void