In bug1654045, we would stop controlling media once media reaches to the end. Considering some user might still want to control media by pressing media keys even if it has ended, so adding a pref to control this abilitiy.
Differential Revision: https://phabricator.services.mozilla.com/D85930
The deactivation timer introduces an uncertainty of when user can control media, but instead of removing that, I want to add a pref to control it and disable it by default because I can still think of some benefit of this ability.
Differential Revision: https://phabricator.services.mozilla.com/D85928
Add two new test cases for inaudible media being used in fullscreen/PIP mode.
In addition, after applying D84115, we fix the issue of incorrectly controlling media which doesn't be started yet and is not in the fullscreen. So modify the current test case.
Differential Revision: https://phabricator.services.mozilla.com/D84369
This patch will
- remove `MediaControlKeysEvent` and use `MediaControlKey` to replace it
- rename names for all `MediaControlKey` related methods, functions, classes and descriptions
The advantage of doing so are
- remove the duplicated type so that we only need to maintain `MediaControlKey`
Differential Revision: https://phabricator.services.mozilla.com/D78140
This patch will
- add a method `SetSupportedMediaKeys()` on `MediaControlKeysEventSource`
- set main controller's supported key to the event source
The advantage of doing so are
- to allow the event source knowing which key is supported in order to determine the displayed UI button
Differential Revision: https://phabricator.services.mozilla.com/D77200
This patch will
- make `ContentMediaAgent` inherit from `IMediaInfoUpdater`
- move `MediaPlaybackState` and `MediaAudibleState` to `MediaPlaybackStatus.h`
The advantage of doing so are
- to force all methods which are related with updating information from content process to chrome process to be manged by `IMediaInfoUpdater`. It can help us only put the descriptive comment for methods on one place. (on `IMediaInfoUpdater`)
Differential Revision: https://phabricator.services.mozilla.com/D77196
This patch will do :
- add test cases
- introduce the test-only notification `media-displayed-metadata-changed` when the event source updates its metadata
The advantage of doing so :
- increase test coverage
Differential Revision: https://phabricator.services.mozilla.com/D72501
This patch will do :
- listen to the playback change from the event source directly
The advantage of doing so :
- more close to the real situation because the event source is where we decide the information that should be displayed the virtual control interface
Differential Revision: https://phabricator.services.mozilla.com/D72498
This patch will do :
- postpone the timing of activating the media controller. Activate the controller after it first time becomes audible.
The advantage of doing so :
- prevent setting incorrect media metadata before the controller becomes audible
---
More details about this change :
The active media session would be chose after the context owns the audio focus. Therefore, if we would like to get the correct metadata from the media session, we should postpone the timimg of activate controller and wait until we decide the active media session then we can get the correct metadata.
Differential Revision: https://phabricator.services.mozilla.com/D72497
This patch will do :
- add test cases
- introduce the test-only notification `media-displayed-metadata-changed` when the event source updates its metadata
The advantage of doing so :
- increase test coverage
Differential Revision: https://phabricator.services.mozilla.com/D72501
This patch will do :
- listen to the playback change from the event source directly
The advantage of doing so :
- more close to the real situation because the event source is where we decide the information that should be displayed the virtual control interface
Differential Revision: https://phabricator.services.mozilla.com/D72498
This patch will do :
- postpone the timing of activating the media controller. Activate the controller after it first time becomes audible.
The advantage of doing so :
- prevent setting incorrect media metadata before the controller becomes audible
---
More details about this change :
The active media session would be chose after the context owns the audio focus. Therefore, if we would like to get the correct metadata from the media session, we should postpone the timimg of activate controller and wait until we decide the active media session then we can get the correct metadata.
Differential Revision: https://phabricator.services.mozilla.com/D72497
This patch will do :
- add test cases
- introduce the test-only notification `media-displayed-metadata-changed` when the event source updates its metadata
The advantage of doing so :
- increase test coverage
Differential Revision: https://phabricator.services.mozilla.com/D72501