[Modern Media Controls] Placards
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 10 Oct 2016 21:17:47 +0000 (21:17 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 10 Oct 2016 21:17:47 +0000 (21:17 +0000)
commitf811b791789bbbb803b8cbf13fb5a5c8d8f8ec1f
tree2ee8fdab2d6a639861ef3a797baef9a183e5a36a
parentc6531a4a31d9310f52cdd88f6ad98cbce8cc0b0b
[Modern Media Controls] Placards
https://bugs.webkit.org/show_bug.cgi?id=163110
<rdar://problem/28669342>

Patch by Antoine Quint <graouts@apple.com> on 2016-10-10
Reviewed by Dean Jackson.

Source/WebCore:

Inline media controls need to display placards when the video is no longer playing inline,
such as when the video is playing fullscreen or via AirPlay. To that end, we introduce a
new Placard class and two subclasses for display during fullscreen or AirPlay playback.
Note that localization will be done in a later patch.

Tests: media/modern-media-controls/airplay-placard/airplay-placard.html
       media/modern-media-controls/pip-placard/pip-placard.html
       media/modern-media-controls/placard/placard.html

* Modules/modern-media-controls/controls/airplay-placard.js:
(AirplayPlacard):
* Modules/modern-media-controls/controls/icon-service.js:
* Modules/modern-media-controls/controls/pip-placard.js:
(PiPPlacard):
* Modules/modern-media-controls/controls/placard.css:
(.placard):
(.placard .container):
(.placard .icon):
(.placard .title,):
(.placard .title):
(.placard .description):
* Modules/modern-media-controls/controls/placard.js:
(Placard.):
* Modules/modern-media-controls/images/iOS/airplay-placard@1x.png: Added.
* Modules/modern-media-controls/images/iOS/airplay-placard@2x.png: Added.
* Modules/modern-media-controls/images/iOS/airplay-placard@3x.png: Added.
* Modules/modern-media-controls/images/iOS/pip-placard@1x.png: Added.
* Modules/modern-media-controls/images/iOS/pip-placard@2x.png: Added.
* Modules/modern-media-controls/images/iOS/pip-placard@3x.png: Added.
* Modules/modern-media-controls/images/macOS/airplay-placard@1x.png: Added.
* Modules/modern-media-controls/images/macOS/airplay-placard@2x.png: Added.
* Modules/modern-media-controls/images/macOS/pip-placard@1x.png: Added.
* Modules/modern-media-controls/images/macOS/pip-placard@2x.png: Added.

LayoutTests:

Testing the properties of the new Placard class and its subclasses.

* media/modern-media-controls/airplay-placard/airplay-placard-expected.txt: Added.
* media/modern-media-controls/airplay-placard/airplay-placard.html: Added.
* media/modern-media-controls/pip-placard/pip-placard-expected.txt: Added.
* media/modern-media-controls/pip-placard/pip-placard.html: Added.
* media/modern-media-controls/placard/placard-expected.txt: Added.
* media/modern-media-controls/placard/placard.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@207024 268f45cc-cd09-0410-ab3c-d52691b4dbfc
23 files changed:
LayoutTests/ChangeLog
LayoutTests/media/modern-media-controls/airplay-placard/airplay-placard-expected.txt [new file with mode: 0644]
LayoutTests/media/modern-media-controls/airplay-placard/airplay-placard.html [new file with mode: 0644]
LayoutTests/media/modern-media-controls/pip-placard/pip-placard-expected.txt [new file with mode: 0644]
LayoutTests/media/modern-media-controls/pip-placard/pip-placard.html [new file with mode: 0644]
LayoutTests/media/modern-media-controls/placard/placard-expected.txt [new file with mode: 0644]
LayoutTests/media/modern-media-controls/placard/placard.html [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/Modules/modern-media-controls/controls/airplay-placard.js [new file with mode: 0644]
Source/WebCore/Modules/modern-media-controls/controls/icon-service.js
Source/WebCore/Modules/modern-media-controls/controls/pip-placard.js [new file with mode: 0644]
Source/WebCore/Modules/modern-media-controls/controls/placard.css [new file with mode: 0644]
Source/WebCore/Modules/modern-media-controls/controls/placard.js [new file with mode: 0644]
Source/WebCore/Modules/modern-media-controls/images/iOS/airplay-placard@1x.png [new file with mode: 0644]
Source/WebCore/Modules/modern-media-controls/images/iOS/airplay-placard@2x.png [new file with mode: 0644]
Source/WebCore/Modules/modern-media-controls/images/iOS/airplay-placard@3x.png [new file with mode: 0644]
Source/WebCore/Modules/modern-media-controls/images/iOS/pip-placard@1x.png [new file with mode: 0644]
Source/WebCore/Modules/modern-media-controls/images/iOS/pip-placard@2x.png [new file with mode: 0644]
Source/WebCore/Modules/modern-media-controls/images/iOS/pip-placard@3x.png [new file with mode: 0644]
Source/WebCore/Modules/modern-media-controls/images/macOS/airplay-placard@1x.png [new file with mode: 0644]
Source/WebCore/Modules/modern-media-controls/images/macOS/airplay-placard@2x.png [new file with mode: 0644]
Source/WebCore/Modules/modern-media-controls/images/macOS/pip-placard@1x.png [new file with mode: 0644]
Source/WebCore/Modules/modern-media-controls/images/macOS/pip-placard@2x.png [new file with mode: 0644]