New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 806249 link

Starred by 19 users

Issue metadata

Status: Fixed
Owner:
Closed: Jul 27
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , Chrome , Mac
Pri: 1
Type: Bug

Blocked on:
issue 726619



Sign in to add a comment

Implement Picture-in-Picture Web API

Project Member Reported by fbeaufort@chromium.org, Jan 26 2018

Issue description

Feature description: Allow websites to create a floating video window always on top of other windows so that users may continue consuming media while they interact with other content sites, or applications on their device.

https://wicg.github.io/picture-in-picture/

Eng owner: mlamouri@chromium.org
Product owner: hbengali@chromium.org

 
Components: Blink>Media>PictureInPicture
Cc: apaci...@chromium.org
Project Member

Comment 4 by bugdroid1@chromium.org, Jan 31 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e40637e20e3c86dfc072ddccac480476d119ac59

commit e40637e20e3c86dfc072ddccac480476d119ac59
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Wed Jan 31 17:29:09 2018

[Picture-In-Picture] Expose some APIs behind a runtime feature.

https://wicg.github.io/picture-in-picture/

The API is currently not working. It is mostly about implementing the shell: it
exposes document.pictureInPictureEnabled, document.exitPictureInPicture(), and
video.requestPictureInPicture(). It also adds the "picture-in-picture" feature
policy. Everything is gated by the "PictureInPictureAPI" runtime feature.

Intent to implement: https://groups.google.com/a/chromium.org/d/msg/blink-dev/U8Apo-WLBm4/03sO4ITYAQAJ

Change-Id: I64d8e17c6975017565c850afeeca19d94e9f9ceb
Bug:  806249 
Reviewed-on: https://chromium-review.googlesource.com/867915
Commit-Queue: Mounir Lamouri (slow) <mlamouri@chromium.org>
Reviewed-by: Mounir Lamouri (slow) <mlamouri@chromium.org>
Reviewed-by: Mike West <mkwst@chromium.org>
Reviewed-by: Ian Clelland <iclelland@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#533310}
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/LayoutTests/external/wpt/feature-policy/picture-in-picture-allowed-by-feature-policy-attribute-redirect-on-load.https.sub.html
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/LayoutTests/external/wpt/feature-policy/picture-in-picture-allowed-by-feature-policy-attribute.https.sub.html
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/LayoutTests/external/wpt/feature-policy/picture-in-picture-allowed-by-feature-policy.https.sub.html
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/LayoutTests/external/wpt/feature-policy/picture-in-picture-allowed-by-feature-policy.https.sub.html.headers
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/LayoutTests/external/wpt/feature-policy/picture-in-picture-default-feature-policy.https.sub.html
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/LayoutTests/external/wpt/feature-policy/picture-in-picture-disabled-by-feature-policy.https.sub.html
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/LayoutTests/external/wpt/feature-policy/picture-in-picture-disabled-by-feature-policy.https.sub.html.headers
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/LayoutTests/external/wpt/feature-policy/resources/feature-policy-picture-in-picture.html
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/LayoutTests/external/wpt/feature-policy/resources/picture-in-picture.js
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/LayoutTests/media/picture-in-picture/not-processing-user-gesture.html
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/LayoutTests/media/picture-in-picture/request-picture-in-picture.html
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/LayoutTests/media/picture-in-picture/resources/picture-in-picture-helpers.js
[modify] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/LayoutTests/webexposed/element-instance-property-listing-expected.txt
[modify] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/Source/core/core_idl_files.gni
[modify] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/Source/modules/BUILD.gn
[modify] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/Source/modules/modules_idl_files.gni
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/Source/modules/picture_in_picture/BUILD.gn
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/Source/modules/picture_in_picture/DEPS
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/Source/modules/picture_in_picture/DocumentPictureInPicture.cpp
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/Source/modules/picture_in_picture/DocumentPictureInPicture.h
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/Source/modules/picture_in_picture/DocumentPictureInPicture.idl
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/Source/modules/picture_in_picture/HTMLVideoElementPictureInPicture.cpp
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/Source/modules/picture_in_picture/HTMLVideoElementPictureInPicture.h
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/Source/modules/picture_in_picture/HTMLVideoElementPictureInPicture.idl
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/Source/modules/picture_in_picture/OWNERS
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureController.cpp
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureController.h
[add] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureTest.cpp
[modify] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/Source/platform/feature_policy/FeaturePolicy.cpp
[modify] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/Source/platform/runtime_enabled_features.json5
[modify] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/common/feature_policy/README.md
[modify] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/common/feature_policy/feature_policy.cc
[modify] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/common/feature_policy/feature_policy.mojom
[modify] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/common/feature_policy/feature_policy_feature.h
[modify] https://crrev.com/e40637e20e3c86dfc072ddccac480476d119ac59/third_party/WebKit/common/feature_policy/feature_policy_struct_traits.h

Project Member

Comment 5 by bugdroid1@chromium.org, Feb 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3eee245d55937118bd1c3e2f89632aa5e3c4fa9b

commit 3eee245d55937118bd1c3e2f89632aa5e3c4fa9b
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Thu Feb 01 11:41:10 2018

[Picture-in-Picture] Add basic implementation for document.pictureInPictureElement

This doesn't handle ShadowRoot yet. Full implementation will come in a future CL.

Bug:  806249 
Change-Id: I948b8f355549d759790545248593a37acb567579
Reviewed-on: https://chromium-review.googlesource.com/890740
Commit-Queue: Mounir Lamouri (slow) <mlamouri@chromium.org>
Reviewed-by: Mounir Lamouri (slow) <mlamouri@chromium.org>
Cr-Commit-Position: refs/heads/master@{#533639}
[add] https://crrev.com/3eee245d55937118bd1c3e2f89632aa5e3c4fa9b/third_party/WebKit/LayoutTests/media/picture-in-picture/exit-picture-in-picture.html
[modify] https://crrev.com/3eee245d55937118bd1c3e2f89632aa5e3c4fa9b/third_party/WebKit/LayoutTests/media/picture-in-picture/not-processing-user-gesture.html
[add] https://crrev.com/3eee245d55937118bd1c3e2f89632aa5e3c4fa9b/third_party/WebKit/LayoutTests/media/picture-in-picture/picture-in-picture-element.html
[modify] https://crrev.com/3eee245d55937118bd1c3e2f89632aa5e3c4fa9b/third_party/WebKit/LayoutTests/media/picture-in-picture/request-picture-in-picture.html
[modify] https://crrev.com/3eee245d55937118bd1c3e2f89632aa5e3c4fa9b/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/3eee245d55937118bd1c3e2f89632aa5e3c4fa9b/third_party/WebKit/Source/modules/picture_in_picture/DocumentPictureInPicture.cpp
[modify] https://crrev.com/3eee245d55937118bd1c3e2f89632aa5e3c4fa9b/third_party/WebKit/Source/modules/picture_in_picture/DocumentPictureInPicture.h
[modify] https://crrev.com/3eee245d55937118bd1c3e2f89632aa5e3c4fa9b/third_party/WebKit/Source/modules/picture_in_picture/DocumentPictureInPicture.idl
[modify] https://crrev.com/3eee245d55937118bd1c3e2f89632aa5e3c4fa9b/third_party/WebKit/Source/modules/picture_in_picture/HTMLVideoElementPictureInPicture.cpp
[modify] https://crrev.com/3eee245d55937118bd1c3e2f89632aa5e3c4fa9b/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureController.cpp
[modify] https://crrev.com/3eee245d55937118bd1c3e2f89632aa5e3c4fa9b/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureController.h

Project Member

Comment 6 by bugdroid1@chromium.org, Feb 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b696eeaf6b786760b9a7e30b0957cd5d38fcdc34

commit b696eeaf6b786760b9a7e30b0957cd5d38fcdc34
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Thu Feb 01 15:43:06 2018

[Picture-in-Picture] Add disablePictureInPicture video attribute

This is still incomplete as it still needs to reject pending requestPiP promises.

Bug:  806249 
Change-Id: I256cf5fa092e4e03a7a82135761e2160fbdba043
Reviewed-on: https://chromium-review.googlesource.com/891958
Reviewed-by: Mike West <mkwst@chromium.org>
Reviewed-by: Mounir Lamouri (slow) <mlamouri@chromium.org>
Commit-Queue: Mounir Lamouri (slow) <mlamouri@chromium.org>
Cr-Commit-Position: refs/heads/master@{#533674}
[add] https://crrev.com/b696eeaf6b786760b9a7e30b0957cd5d38fcdc34/third_party/WebKit/LayoutTests/media/picture-in-picture/disable-picture-in-picture.html
[modify] https://crrev.com/b696eeaf6b786760b9a7e30b0957cd5d38fcdc34/third_party/WebKit/LayoutTests/webexposed/element-instance-property-listing-expected.txt
[modify] https://crrev.com/b696eeaf6b786760b9a7e30b0957cd5d38fcdc34/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/b696eeaf6b786760b9a7e30b0957cd5d38fcdc34/third_party/WebKit/Source/core/html/HTMLAttributeNames.json5
[modify] https://crrev.com/b696eeaf6b786760b9a7e30b0957cd5d38fcdc34/third_party/WebKit/Source/modules/picture_in_picture/DocumentPictureInPicture.cpp
[modify] https://crrev.com/b696eeaf6b786760b9a7e30b0957cd5d38fcdc34/third_party/WebKit/Source/modules/picture_in_picture/HTMLVideoElementPictureInPicture.cpp
[modify] https://crrev.com/b696eeaf6b786760b9a7e30b0957cd5d38fcdc34/third_party/WebKit/Source/modules/picture_in_picture/HTMLVideoElementPictureInPicture.h
[modify] https://crrev.com/b696eeaf6b786760b9a7e30b0957cd5d38fcdc34/third_party/WebKit/Source/modules/picture_in_picture/HTMLVideoElementPictureInPicture.idl
[modify] https://crrev.com/b696eeaf6b786760b9a7e30b0957cd5d38fcdc34/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureController.cpp
[modify] https://crrev.com/b696eeaf6b786760b9a7e30b0957cd5d38fcdc34/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureController.h
[modify] https://crrev.com/b696eeaf6b786760b9a7e30b0957cd5d38fcdc34/third_party/WebKit/public/platform/web_feature.mojom
[modify] https://crrev.com/b696eeaf6b786760b9a7e30b0957cd5d38fcdc34/tools/metrics/histograms/enums.xml

Project Member

Comment 7 by bugdroid1@chromium.org, Feb 2 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e3b780f0dd9df17ef8950c7d563b700bd9437c38

commit e3b780f0dd9df17ef8950c7d563b700bd9437c38
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Fri Feb 02 14:53:21 2018

[Picture-in-Picture] Add enterpictureinpicture video event

Bug:  806249 
Change-Id: I64d5e3aeea52b04c4f79e5b7d302f6ffe914ff8a
Reviewed-on: https://chromium-review.googlesource.com/893461
Reviewed-by: Mike West <mkwst@chromium.org>
Reviewed-by: Mounir Lamouri (slow) <mlamouri@chromium.org>
Reviewed-by: apacible <apacible@chromium.org>
Commit-Queue: Mounir Lamouri (slow) <mlamouri@chromium.org>
Cr-Commit-Position: refs/heads/master@{#534049}
[add] https://crrev.com/e3b780f0dd9df17ef8950c7d563b700bd9437c38/third_party/WebKit/LayoutTests/media/picture-in-picture/enter-picture-in-picture.html
[modify] https://crrev.com/e3b780f0dd9df17ef8950c7d563b700bd9437c38/third_party/WebKit/LayoutTests/webexposed/element-instance-property-listing-expected.txt
[modify] https://crrev.com/e3b780f0dd9df17ef8950c7d563b700bd9437c38/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/e3b780f0dd9df17ef8950c7d563b700bd9437c38/third_party/WebKit/Source/core/events/event_type_names.json5
[modify] https://crrev.com/e3b780f0dd9df17ef8950c7d563b700bd9437c38/third_party/WebKit/Source/modules/event_target_modules_names.json5
[modify] https://crrev.com/e3b780f0dd9df17ef8950c7d563b700bd9437c38/third_party/WebKit/Source/modules/picture_in_picture/DEPS
[modify] https://crrev.com/e3b780f0dd9df17ef8950c7d563b700bd9437c38/third_party/WebKit/Source/modules/picture_in_picture/HTMLVideoElementPictureInPicture.cpp
[modify] https://crrev.com/e3b780f0dd9df17ef8950c7d563b700bd9437c38/third_party/WebKit/Source/modules/picture_in_picture/HTMLVideoElementPictureInPicture.h
[modify] https://crrev.com/e3b780f0dd9df17ef8950c7d563b700bd9437c38/third_party/WebKit/Source/modules/picture_in_picture/HTMLVideoElementPictureInPicture.idl

Project Member

Comment 8 by bugdroid1@chromium.org, Feb 2 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6fad61f75f9d04858f1571f870196d966f190d25

commit 6fad61f75f9d04858f1571f870196d966f190d25
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Fri Feb 02 16:32:10 2018

[Picture-in-Picture] Move LayoutTests to external/wpt

Bug:  806249 
Change-Id: I46ccd72da19253fdb0ff54d90fd439a8d98ca5a9
Reviewed-on: https://chromium-review.googlesource.com/895447
Commit-Queue: Mounir Lamouri (slow) <mlamouri@chromium.org>
Reviewed-by: Mounir Lamouri (slow) <mlamouri@chromium.org>
Reviewed-by: apacible <apacible@chromium.org>
Cr-Commit-Position: refs/heads/master@{#534069}
[rename] https://crrev.com/6fad61f75f9d04858f1571f870196d966f190d25/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/disable-picture-in-picture.html
[rename] https://crrev.com/6fad61f75f9d04858f1571f870196d966f190d25/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/enter-picture-in-picture.html
[rename] https://crrev.com/6fad61f75f9d04858f1571f870196d966f190d25/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/exit-picture-in-picture.html
[rename] https://crrev.com/6fad61f75f9d04858f1571f870196d966f190d25/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/not-processing-user-gesture.html
[rename] https://crrev.com/6fad61f75f9d04858f1571f870196d966f190d25/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/picture-in-picture-element.html
[add] https://crrev.com/6fad61f75f9d04858f1571f870196d966f190d25/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/request-picture-in-picture.html
[rename] https://crrev.com/6fad61f75f9d04858f1571f870196d966f190d25/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/resources/picture-in-picture-helpers.js
[delete] https://crrev.com/d78bbcf864694fb57c8c3bdea49526d8f30c3ccf/third_party/WebKit/LayoutTests/media/picture-in-picture/request-picture-in-picture.html

Project Member

Comment 9 by bugdroid1@chromium.org, Feb 5 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/06c27f0628fbbdd325a3febf0eb58d873d7ee043

commit 06c27f0628fbbdd325a3febf0eb58d873d7ee043
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Mon Feb 05 15:36:44 2018

[Picture-in-Picture] Add leavepictureinpicture video event

Bug:  806249 
Change-Id: I443cedc0b6d0d72f98a61dd8bf5bb8c79da0d490
Reviewed-on: https://chromium-review.googlesource.com/895309
Reviewed-by: Mounir Lamouri (slow) <mlamouri@chromium.org>
Reviewed-by: Mike West <mkwst@chromium.org>
Reviewed-by: apacible <apacible@chromium.org>
Commit-Queue: Mounir Lamouri (slow) <mlamouri@chromium.org>
Cr-Commit-Position: refs/heads/master@{#534388}
[modify] https://crrev.com/06c27f0628fbbdd325a3febf0eb58d873d7ee043/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/enter-picture-in-picture.html
[add] https://crrev.com/06c27f0628fbbdd325a3febf0eb58d873d7ee043/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/leave-picture-in-picture.html
[modify] https://crrev.com/06c27f0628fbbdd325a3febf0eb58d873d7ee043/third_party/WebKit/LayoutTests/webexposed/element-instance-property-listing-expected.txt
[modify] https://crrev.com/06c27f0628fbbdd325a3febf0eb58d873d7ee043/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/06c27f0628fbbdd325a3febf0eb58d873d7ee043/third_party/WebKit/Source/core/events/event_type_names.json5
[modify] https://crrev.com/06c27f0628fbbdd325a3febf0eb58d873d7ee043/third_party/WebKit/Source/modules/picture_in_picture/DocumentPictureInPicture.cpp
[modify] https://crrev.com/06c27f0628fbbdd325a3febf0eb58d873d7ee043/third_party/WebKit/Source/modules/picture_in_picture/HTMLVideoElementPictureInPicture.cpp
[modify] https://crrev.com/06c27f0628fbbdd325a3febf0eb58d873d7ee043/third_party/WebKit/Source/modules/picture_in_picture/HTMLVideoElementPictureInPicture.h
[modify] https://crrev.com/06c27f0628fbbdd325a3febf0eb58d873d7ee043/third_party/WebKit/Source/modules/picture_in_picture/HTMLVideoElementPictureInPicture.idl

Project Member

Comment 10 by bugdroid1@chromium.org, Feb 7 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7dba4c6a1c56a8e0b6fe9e5dc93af286009a86d3

commit 7dba4c6a1c56a8e0b6fe9e5dc93af286009a86d3
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Wed Feb 07 13:02:54 2018

[Picture-in-Picture] Add comments to PictureInPictureController

Bug:  806249 
Change-Id: I18e6b7de189bbac3147c2d1c704aa911e49cd937
Reviewed-on: https://chromium-review.googlesource.com/897648
Commit-Queue: Mounir Lamouri <mlamouri@chromium.org>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Reviewed-by: apacible <apacible@chromium.org>
Cr-Commit-Position: refs/heads/master@{#534990}
[modify] https://crrev.com/7dba4c6a1c56a8e0b6fe9e5dc93af286009a86d3/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureController.h

Blockedon: 726619
Project Member

Comment 13 by bugdroid1@chromium.org, Feb 9 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/283f74916dee53ed07291c78a2735636d2541768

commit 283f74916dee53ed07291c78a2735636d2541768
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Fri Feb 09 12:49:10 2018

[Picture-in-Picture] Add test for consuming user gesture.

This merge all request Picture-in-Picture tests into one test file and
adds one test to make sure user gesture is consumed by request
Picture-in-Picture so that a site couldn't produce a popup and a video
played in Picture-in-Picture on the same gesture.

Bug:  806249 
Change-Id: Id974342b5cb48c1b60a44074d41603e93d2192e7
Reviewed-on: https://chromium-review.googlesource.com/909148
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Reviewed-by: apacible <apacible@chromium.org>
Commit-Queue: Mounir Lamouri <mlamouri@chromium.org>
Cr-Commit-Position: refs/heads/master@{#535694}
[delete] https://crrev.com/ca5066b992b8a05e6a3df042f2c0e1766e13a565/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/not-processing-user-gesture.html
[modify] https://crrev.com/283f74916dee53ed07291c78a2735636d2541768/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/request-picture-in-picture.html

Project Member

Comment 14 by bugdroid1@chromium.org, Feb 9 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2082cf8ad3a0704a162ed640945fdf643dee07ed

commit 2082cf8ad3a0704a162ed640945fdf643dee07ed
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Fri Feb 09 17:50:49 2018

[Picture-in-Picture] Add Shadow DOM support for pictureInPictureElement

Until now, pictureInPictureElement was supported only in Document. This
CL makes it compliant with the spec by adding Shadow DOM support to
pictureInPictureElement. Note that I wish I could have used a partial
interface DocumentOrShadowRoot but partial interface for mix-in IDL are
not supported at that time ( crbug.com/656517 ).

Bug:  806249 ,  656517 
Change-Id: I5f9666ea9c52ded9a6d07a238fc7756371b7550e
Reviewed-on: https://chromium-review.googlesource.com/897513
Commit-Queue: Mounir Lamouri <mlamouri@chromium.org>
Reviewed-by: apacible <apacible@chromium.org>
Reviewed-by: Hayato Ito <hayato@chromium.org>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#535747}
[add] https://crrev.com/2082cf8ad3a0704a162ed640945fdf643dee07ed/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/shadow-dom.html
[modify] https://crrev.com/2082cf8ad3a0704a162ed640945fdf643dee07ed/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/2082cf8ad3a0704a162ed640945fdf643dee07ed/third_party/WebKit/Source/core/core_idl_files.gni
[modify] https://crrev.com/2082cf8ad3a0704a162ed640945fdf643dee07ed/third_party/WebKit/Source/modules/modules_idl_files.gni
[modify] https://crrev.com/2082cf8ad3a0704a162ed640945fdf643dee07ed/third_party/WebKit/Source/modules/picture_in_picture/BUILD.gn
[modify] https://crrev.com/2082cf8ad3a0704a162ed640945fdf643dee07ed/third_party/WebKit/Source/modules/picture_in_picture/DocumentPictureInPicture.cpp
[modify] https://crrev.com/2082cf8ad3a0704a162ed640945fdf643dee07ed/third_party/WebKit/Source/modules/picture_in_picture/DocumentPictureInPicture.h
[modify] https://crrev.com/2082cf8ad3a0704a162ed640945fdf643dee07ed/third_party/WebKit/Source/modules/picture_in_picture/DocumentPictureInPicture.idl
[modify] https://crrev.com/2082cf8ad3a0704a162ed640945fdf643dee07ed/third_party/WebKit/Source/modules/picture_in_picture/HTMLVideoElementPictureInPicture.cpp
[modify] https://crrev.com/2082cf8ad3a0704a162ed640945fdf643dee07ed/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureController.cpp
[modify] https://crrev.com/2082cf8ad3a0704a162ed640945fdf643dee07ed/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureController.h
[add] https://crrev.com/2082cf8ad3a0704a162ed640945fdf643dee07ed/third_party/WebKit/Source/modules/picture_in_picture/ShadowRootPictureInPicture.cpp
[add] https://crrev.com/2082cf8ad3a0704a162ed640945fdf643dee07ed/third_party/WebKit/Source/modules/picture_in_picture/ShadowRootPictureInPicture.h
[add] https://crrev.com/2082cf8ad3a0704a162ed640945fdf643dee07ed/third_party/WebKit/Source/modules/picture_in_picture/ShadowRootPictureInPicture.idl

Project Member

Comment 15 by bugdroid1@chromium.org, Feb 13 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0ac4d309ef0e7b7d83b5b2930a56a767e0a096bf

commit 0ac4d309ef0e7b7d83b5b2930a56a767e0a096bf
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Tue Feb 13 22:36:23 2018

[Picture-in-Picture] Add PictureInPictureWindow width and height stubs

This introduces PictureInPictureWindow interface with |width| and
|height| attributes. |onresize| event will follow in an upcoming CL.
|width| and |height| simply return fake values, respectively 500 and
300, for now as we don't have any resize events coming from the backend
yet. They are reset to 0 though when PictureInPictureWindow state is
closed.

Bug:  806249 
Change-Id: I5e0f0875a53b7f659bc3469e562d3db5e075f31d
Reviewed-on: https://chromium-review.googlesource.com/899347
Commit-Queue: Mounir Lamouri <mlamouri@chromium.org>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Reviewed-by: apacible <apacible@chromium.org>
Cr-Commit-Position: refs/heads/master@{#536520}
[add] https://crrev.com/0ac4d309ef0e7b7d83b5b2930a56a767e0a096bf/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/picture-in-picture-window.html
[modify] https://crrev.com/0ac4d309ef0e7b7d83b5b2930a56a767e0a096bf/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/0ac4d309ef0e7b7d83b5b2930a56a767e0a096bf/third_party/WebKit/Source/modules/modules_idl_files.gni
[modify] https://crrev.com/0ac4d309ef0e7b7d83b5b2930a56a767e0a096bf/third_party/WebKit/Source/modules/picture_in_picture/BUILD.gn
[modify] https://crrev.com/0ac4d309ef0e7b7d83b5b2930a56a767e0a096bf/third_party/WebKit/Source/modules/picture_in_picture/DocumentPictureInPicture.cpp
[modify] https://crrev.com/0ac4d309ef0e7b7d83b5b2930a56a767e0a096bf/third_party/WebKit/Source/modules/picture_in_picture/HTMLVideoElementPictureInPicture.cpp
[modify] https://crrev.com/0ac4d309ef0e7b7d83b5b2930a56a767e0a096bf/third_party/WebKit/Source/modules/picture_in_picture/HTMLVideoElementPictureInPicture.idl
[modify] https://crrev.com/0ac4d309ef0e7b7d83b5b2930a56a767e0a096bf/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureController.cpp
[modify] https://crrev.com/0ac4d309ef0e7b7d83b5b2930a56a767e0a096bf/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureController.h
[add] https://crrev.com/0ac4d309ef0e7b7d83b5b2930a56a767e0a096bf/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureWindow.cpp
[add] https://crrev.com/0ac4d309ef0e7b7d83b5b2930a56a767e0a096bf/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureWindow.h
[add] https://crrev.com/0ac4d309ef0e7b7d83b5b2930a56a767e0a096bf/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureWindow.idl

Project Member

Comment 16 by bugdroid1@chromium.org, Feb 14 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/95e3f81ec6a36365d683044d2bca4f0848ae54c0

commit 95e3f81ec6a36365d683044d2bca4f0848ae54c0
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Wed Feb 14 13:54:53 2018

[Picture-in-Picture] Add PictureInPictureWindow resize event stub

This CL prepares the PictureInPictureWindow interface by adding the
|resize| event handler to PictureInPictureWindow. We currently don't
receive resize events from the backend. Triggering |resize| event will
come in a future CL.

Bug:  806249 
Change-Id: Ib10eabc0e35af782dcdb36862535063d2dab0a2c
Reviewed-on: https://chromium-review.googlesource.com/908562
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Reviewed-by: apacible <apacible@chromium.org>
Commit-Queue: Mounir Lamouri <mlamouri@chromium.org>
Cr-Commit-Position: refs/heads/master@{#536703}
[modify] https://crrev.com/95e3f81ec6a36365d683044d2bca4f0848ae54c0/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/95e3f81ec6a36365d683044d2bca4f0848ae54c0/third_party/WebKit/Source/modules/event_target_modules_names.json5
[modify] https://crrev.com/95e3f81ec6a36365d683044d2bca4f0848ae54c0/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureController.cpp
[modify] https://crrev.com/95e3f81ec6a36365d683044d2bca4f0848ae54c0/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureWindow.cpp
[modify] https://crrev.com/95e3f81ec6a36365d683044d2bca4f0848ae54c0/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureWindow.h
[modify] https://crrev.com/95e3f81ec6a36365d683044d2bca4f0848ae54c0/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureWindow.idl

Project Member

Comment 17 by bugdroid1@chromium.org, Feb 21 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/858d067e06e085b5f0a83942d187195da5e35e99

commit 858d067e06e085b5f0a83942d187195da5e35e99
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Wed Feb 21 17:32:21 2018

[Picture-in-Picture] Update feature policy default allowlist to *.

This CL reflects updated spec which changes Picture-in-Picture feature
to be allowed by default to documents in child frames.

Bug:  806249 
Change-Id: I7c7a3a073b30ad5118aa634b0c0b1f3ac60d2e7a
Reviewed-on: https://chromium-review.googlesource.com/926104
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Reviewed-by: Ian Clelland <iclelland@chromium.org>
Commit-Queue: Mounir Lamouri <mlamouri@chromium.org>
Cr-Commit-Position: refs/heads/master@{#538145}
[modify] https://crrev.com/858d067e06e085b5f0a83942d187195da5e35e99/third_party/WebKit/LayoutTests/external/wpt/feature-policy/picture-in-picture-default-feature-policy.https.sub.html
[modify] https://crrev.com/858d067e06e085b5f0a83942d187195da5e35e99/third_party/WebKit/common/feature_policy/feature_policy.cc

Project Member

Comment 18 by bugdroid1@chromium.org, Feb 26 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc

commit 0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc
Author: Francois Beaufort <beaufort.francois@gmail.com>
Date: Mon Feb 26 07:49:07 2018

[Picture-in-Picture] Detect if feature is enabled on Android.

This CL exposes a new internal setting that determines whether
Picture-in-Picture is enabled and if the user has disabled
Picture-in-Picture for Chrome using the system's per-application
settings. This setting is used in document.pictureInPictureEnabled and
video.requestPictureInPicture().

Test page: https://beaufortfrancois.github.io/sandbox/media/picture-in-picture-enabled
Screenshots: https://i.imgur.com/nLL3l0U.png
Recording: https://drive.google.com/file/d/1DgIH8XPPGr7giPvaFQ8bvDd_WM-1lzSj/view

Bug:  806249 
Cq-Include-Trybots: master.tryserver.chromium.linux:closure_compilation;master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: I6a4a8ca69c8b53a4bce3d8375c16725b3e545d52
Reviewed-on: https://chromium-review.googlesource.com/922081
Reviewed-by: Maria Khomenko <mariakhomenko@chromium.org>
Reviewed-by: Mike West <mkwst@chromium.org>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Reviewed-by: Nasko Oskov <nasko@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#539085}
[modify] https://crrev.com/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
[add] https://crrev.com/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc/chrome/android/java/src/org/chromium/chrome/browser/media/PictureInPicture.java
[modify] https://crrev.com/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc/chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java
[modify] https://crrev.com/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc/chrome/android/java_sources.gni
[modify] https://crrev.com/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc/chrome/browser/android/tab_android.cc
[modify] https://crrev.com/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc/chrome/browser/android/tab_android.h
[modify] https://crrev.com/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc/chrome/browser/chrome_content_browser_client.cc
[modify] https://crrev.com/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc/content/public/common/common_param_traits_macros.h
[modify] https://crrev.com/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc/content/public/common/web_preferences.h
[modify] https://crrev.com/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc/content/renderer/render_view_impl.cc
[add] https://crrev.com/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc/third_party/WebKit/LayoutTests/media/picture-in-picture-enabled.html
[modify] https://crrev.com/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc/third_party/WebKit/Source/core/exported/WebSettingsImpl.cpp
[modify] https://crrev.com/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc/third_party/WebKit/Source/core/exported/WebSettingsImpl.h
[modify] https://crrev.com/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc/third_party/WebKit/Source/core/frame/Settings.json5
[modify] https://crrev.com/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc/third_party/WebKit/Source/modules/BUILD.gn
[modify] https://crrev.com/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc/third_party/WebKit/Source/modules/picture_in_picture/DEPS
[modify] https://crrev.com/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc/third_party/WebKit/Source/modules/picture_in_picture/HTMLVideoElementPictureInPicture.h
[modify] https://crrev.com/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureController.cpp
[modify] https://crrev.com/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureController.h
[delete] https://crrev.com/e5ba4940ef99f142d9edba984b9e105b2920dd70/third_party/WebKit/Source/modules/picture_in_picture/PictureInPictureTest.cpp
[modify] https://crrev.com/0acc4d7a6eaaa3dfb6a1233ba30940085d7391dc/third_party/WebKit/public/web/WebSettings.h

Project Member

Comment 19 by bugdroid1@chromium.org, Feb 26 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ad6c523b9de20fbed7bbcf980736c212526a2ae0

commit ad6c523b9de20fbed7bbcf980736c212526a2ae0
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Mon Feb 26 11:00:44 2018

Prevent auto-PiP if disablePictureInPicture video attribute is set.

This CLs makes sure fullscreen videos don't enter automatically
Picture-in-Picture if the disablePictureInPicture attribute is set on
the video element.

Test page: https://beaufortfrancois.github.io/sandbox/media/disable-pip.html

Bug:  806249 
Change-Id: I3621ef58c8f1778d54865eca6cc30a736994d493
Reviewed-on: https://chromium-review.googlesource.com/918421
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Cr-Commit-Position: refs/heads/master@{#539106}
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/chrome/android/java/src/org/chromium/chrome/browser/media/PictureInPictureController.java
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/content/browser/DEPS
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/content/browser/media/media_web_contents_observer.cc
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/content/browser/media/media_web_contents_observer.h
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/content/browser/web_contents/web_contents_android.cc
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/content/browser/web_contents/web_contents_android.h
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/content/browser/web_contents/web_contents_impl.cc
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/content/browser/web_contents/web_contents_impl.h
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/content/common/DEPS
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/content/common/media/media_player_delegate_messages.h
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/content/public/android/java/src/org/chromium/content/browser/webcontents/WebContentsImpl.java
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/content/public/android/java/src/org/chromium/content_public/browser/WebContents.java
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/content/public/test/android/javatests/src/org/chromium/content/browser/test/mock/MockWebContents.java
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/content/renderer/media/renderer_webmediaplayer_delegate.cc
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/content/renderer/media/renderer_webmediaplayer_delegate.h
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/content/renderer/media/stream/webmediaplayer_ms_unittest.cc
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/media/blink/webmediaplayer_delegate.h
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/media/blink/webmediaplayer_impl.cc
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/media/blink/webmediaplayer_impl.h
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/media/blink/webmediaplayer_impl_unittest.cc
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/third_party/WebKit/Source/core/html/media/HTMLMediaElementEventListenersTest.cpp
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/third_party/WebKit/Source/core/html/media/MediaCustomControlsFullscreenDetector.cpp
[add] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/third_party/WebKit/public/platform/WebFullscreenVideoStatus.h
[modify] https://crrev.com/ad6c523b9de20fbed7bbcf980736c212526a2ae0/third_party/WebKit/public/platform/WebMediaPlayer.h

Project Member

Comment 20 by bugdroid1@chromium.org, Mar 5 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8c08979fc5ad38bf141d7f5aa5c80ab867041b7a

commit 8c08979fc5ad38bf141d7f5aa5c80ab867041b7a
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Mon Mar 05 13:06:31 2018

[Picture-in-Picture] Disable feature if requirements are not fulfilled.

This CL makes sure document.pictureInPictureEnabled always returns false
and video.requestPictureInPicture() rejects if PictureInPicture and
UseSurfaceLayerForVideo features are not enabled.

Bug:  806249 
Change-Id: Icc91903aa0f44dde577ce479a8d5d453952e6575
Reviewed-on: https://chromium-review.googlesource.com/937301
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Cr-Commit-Position: refs/heads/master@{#540807}
[modify] https://crrev.com/8c08979fc5ad38bf141d7f5aa5c80ab867041b7a/chrome/browser/chrome_content_browser_client.cc
[modify] https://crrev.com/8c08979fc5ad38bf141d7f5aa5c80ab867041b7a/content/browser/renderer_host/render_view_host_impl.cc
[modify] https://crrev.com/8c08979fc5ad38bf141d7f5aa5c80ab867041b7a/content/public/common/common_param_traits_macros.h
[modify] https://crrev.com/8c08979fc5ad38bf141d7f5aa5c80ab867041b7a/content/public/common/web_preferences.cc
[modify] https://crrev.com/8c08979fc5ad38bf141d7f5aa5c80ab867041b7a/content/public/common/web_preferences.h
[modify] https://crrev.com/8c08979fc5ad38bf141d7f5aa5c80ab867041b7a/content/renderer/render_view_impl.cc
[modify] https://crrev.com/8c08979fc5ad38bf141d7f5aa5c80ab867041b7a/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/8c08979fc5ad38bf141d7f5aa5c80ab867041b7a/third_party/WebKit/LayoutTests/VirtualTestSuites
[delete] https://crrev.com/94f8117c386b375b74aa6da33846fb83ade00d0a/third_party/WebKit/LayoutTests/media/picture-in-picture-enabled.html
[rename] https://crrev.com/8c08979fc5ad38bf141d7f5aa5c80ab867041b7a/third_party/WebKit/LayoutTests/media/picture-in-picture/controls/picture-in-picture-button.html
[add] https://crrev.com/8c08979fc5ad38bf141d7f5aa5c80ab867041b7a/third_party/WebKit/LayoutTests/media/picture-in-picture/picture-in-picture-enabled.html
[add] https://crrev.com/8c08979fc5ad38bf141d7f5aa5c80ab867041b7a/third_party/WebKit/LayoutTests/virtual/picture-in-picture/external/wpt/feature-policy/README.txt
[add] https://crrev.com/8c08979fc5ad38bf141d7f5aa5c80ab867041b7a/third_party/WebKit/LayoutTests/virtual/picture-in-picture/external/wpt/picture-in-picture/README.txt
[add] https://crrev.com/8c08979fc5ad38bf141d7f5aa5c80ab867041b7a/third_party/WebKit/LayoutTests/virtual/picture-in-picture/media/picture-in-picture/README.txt

Project Member

Comment 21 by bugdroid1@chromium.org, Apr 13 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/664c3ca7b7e7ca3bf634226663256a18df7552ec

commit 664c3ca7b7e7ca3bf634226663256a18df7552ec
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Fri Apr 13 07:24:51 2018

[Picture-in-Picture] Disable background video tracks optimization.

This CL makes sure a video player in Picture-in-Picture doesn't get
paused because of background video tracks optimization.

Bug:  806249 , 663999
Change-Id: Ia3453000a9107d28974428c1ab004227370dc28f
Reviewed-on: https://chromium-review.googlesource.com/1008082
Reviewed-by: apacible <apacible@chromium.org>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#550534}
[modify] https://crrev.com/664c3ca7b7e7ca3bf634226663256a18df7552ec/media/blink/webmediaplayer_impl.cc
[modify] https://crrev.com/664c3ca7b7e7ca3bf634226663256a18df7552ec/media/blink/webmediaplayer_impl_unittest.cc

Project Member

Comment 22 by bugdroid1@chromium.org, Apr 13 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/377fc2f272f4670567be8dd7ba9ec6fd80926834

commit 377fc2f272f4670567be8dd7ba9ec6fd80926834
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Fri Apr 13 10:09:56 2018

[Picture-in-Picture] Show/hide window.

This CL makes sure that calling video.requestPictureInPicture() shows a
Picture-in-Picture window and that setting disablePictureInPicture to
true or calling document.exitPictureInPicture() hides the
Picture-in-Picture window.

Bug:  806249 
Change-Id: Ifa9e6df55c913d6eb68fd0fbb59450d3d516ee1c
Reviewed-on: https://chromium-review.googlesource.com/1006956
Reviewed-by: apacible <apacible@chromium.org>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#550572}
[modify] https://crrev.com/377fc2f272f4670567be8dd7ba9ec6fd80926834/third_party/blink/renderer/core/html/media/html_media_element.cc
[modify] https://crrev.com/377fc2f272f4670567be8dd7ba9ec6fd80926834/third_party/blink/renderer/core/html/media/html_media_element.h
[modify] https://crrev.com/377fc2f272f4670567be8dd7ba9ec6fd80926834/third_party/blink/renderer/modules/picture_in_picture/document_picture_in_picture.cc
[modify] https://crrev.com/377fc2f272f4670567be8dd7ba9ec6fd80926834/third_party/blink/renderer/modules/picture_in_picture/html_video_element_picture_in_picture.cc

Project Member

Comment 23 by bugdroid1@chromium.org, Apr 17 2018

Labels: merge-merged-testbranch
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/664c3ca7b7e7ca3bf634226663256a18df7552ec

commit 664c3ca7b7e7ca3bf634226663256a18df7552ec
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Fri Apr 13 07:24:51 2018

[Picture-in-Picture] Disable background video tracks optimization.

This CL makes sure a video player in Picture-in-Picture doesn't get
paused because of background video tracks optimization.

Bug:  806249 , 663999
Change-Id: Ia3453000a9107d28974428c1ab004227370dc28f
Reviewed-on: https://chromium-review.googlesource.com/1008082
Reviewed-by: apacible <apacible@chromium.org>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#550534}
[modify] https://crrev.com/664c3ca7b7e7ca3bf634226663256a18df7552ec/media/blink/webmediaplayer_impl.cc
[modify] https://crrev.com/664c3ca7b7e7ca3bf634226663256a18df7552ec/media/blink/webmediaplayer_impl_unittest.cc

Project Member

Comment 24 by bugdroid1@chromium.org, Apr 17 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/377fc2f272f4670567be8dd7ba9ec6fd80926834

commit 377fc2f272f4670567be8dd7ba9ec6fd80926834
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Fri Apr 13 10:09:56 2018

[Picture-in-Picture] Show/hide window.

This CL makes sure that calling video.requestPictureInPicture() shows a
Picture-in-Picture window and that setting disablePictureInPicture to
true or calling document.exitPictureInPicture() hides the
Picture-in-Picture window.

Bug:  806249 
Change-Id: Ifa9e6df55c913d6eb68fd0fbb59450d3d516ee1c
Reviewed-on: https://chromium-review.googlesource.com/1006956
Reviewed-by: apacible <apacible@chromium.org>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#550572}
[modify] https://crrev.com/377fc2f272f4670567be8dd7ba9ec6fd80926834/third_party/blink/renderer/core/html/media/html_media_element.cc
[modify] https://crrev.com/377fc2f272f4670567be8dd7ba9ec6fd80926834/third_party/blink/renderer/core/html/media/html_media_element.h
[modify] https://crrev.com/377fc2f272f4670567be8dd7ba9ec6fd80926834/third_party/blink/renderer/modules/picture_in_picture/document_picture_in_picture.cc
[modify] https://crrev.com/377fc2f272f4670567be8dd7ba9ec6fd80926834/third_party/blink/renderer/modules/picture_in_picture/html_video_element_picture_in_picture.cc

Project Member

Comment 25 by bugdroid1@chromium.org, Apr 23 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ce37baf13c4d4b4b186aab3a9353c24482ece351

commit ce37baf13c4d4b4b186aab3a9353c24482ece351
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Mon Apr 23 07:18:24 2018

[Picture-in-Picture] Mark API as experimental.

This makes it easier for web developers to experiment with the
Picture-in-Picture Web API by simply enabling the "Experimental Web
Platform features" flag in about:flags.

Bug:  806249 
Change-Id: I29a0113bdfd1da1f1455de5c47225c18d4b7b200
Reviewed-on: https://chromium-review.googlesource.com/1013928
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#552649}
[modify] https://crrev.com/ce37baf13c4d4b4b186aab3a9353c24482ece351/third_party/blink/renderer/platform/runtime_enabled_features.json5

Project Member

Comment 26 by bugdroid1@chromium.org, May 7 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e189916274cf571d7fa27d7a00dcb93da4f6568e

commit e189916274cf571d7fa27d7a00dcb93da4f6568e
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Mon May 07 14:54:00 2018

[Picture-in-Picture] Disable if no GPU compositing.

This is a temporary fix that sets document.pictureInPictureEnabled to
false in the case of disabling the GPU.

Bug:  806249 ,  807840 
Change-Id: I84445a0231b46cfbd0bb2f25eaca53f96604ce55
Reviewed-on: https://chromium-review.googlesource.com/1042290
Commit-Queue: Mounir Lamouri <mlamouri@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Cr-Commit-Position: refs/heads/master@{#556438}
[modify] https://crrev.com/e189916274cf571d7fa27d7a00dcb93da4f6568e/content/renderer/render_view_impl.cc

Project Member

Comment 27 by bugdroid1@chromium.org, May 7 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9290aab7c649832deb53cfce0d2a5e45438cc789

commit 9290aab7c649832deb53cfce0d2a5e45438cc789
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Mon May 07 21:18:47 2018

[Picture-in-Picture] Resolve promises when window is created and closed.

This makes the promise returned by enterPictureInPicture() resolved only
when window is created. Picture-in-Picture window size is still
hard-coded though and will be fixed in a future CL.
This also makes the promise returned by exitPictureInPicture() resolved
only when window is closed.

Bug:  806249 
Change-Id: I8232a42a50b808527560eb0e6a69d8fb98da63e4
Reviewed-on: https://chromium-review.googlesource.com/1025832
Reviewed-by: Frank Liberato <liberato@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: apacible <apacible@chromium.org>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#556567}
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/content/renderer/media/stream/webmediaplayer_ms.cc
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/content/renderer/media/stream/webmediaplayer_ms.h
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/content/renderer/media_capture_from_element/html_video_element_capturer_source_unittest.cc
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/media/blink/webmediaplayer_impl.cc
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/media/blink/webmediaplayer_impl.h
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/media/blink/webmediaplayer_impl_unittest.cc
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/WebKit/LayoutTests/external/wpt/feature-policy/resources/picture-in-picture.js
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/disable-picture-in-picture.html
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/enter-picture-in-picture.html
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/exit-picture-in-picture.html
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/leave-picture-in-picture.html
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/picture-in-picture-element.html
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/picture-in-picture-window.html
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/request-picture-in-picture.html
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/resources/picture-in-picture-helpers.js
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/shadow-dom.html
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/blink/public/platform/web_media_player.h
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/blink/renderer/core/frame/picture_in_picture_controller.h
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/blink/renderer/core/html/media/html_media_element.cc
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/blink/renderer/core/html/media/html_media_element.h
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/blink/renderer/core/html/media/html_video_element.cc
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/blink/renderer/core/page/context_menu_controller_test.cc
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/blink/renderer/modules/media_controls/elements/media_control_picture_in_picture_button_element.cc
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/blink/renderer/modules/media_controls/media_controls_impl_test.cc
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/blink/renderer/modules/picture_in_picture/document_picture_in_picture.cc
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/blink/renderer/modules/picture_in_picture/html_video_element_picture_in_picture.cc
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_controller_impl.cc
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_controller_impl.h
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_window.cc
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_window.h
[modify] https://crrev.com/9290aab7c649832deb53cfce0d2a5e45438cc789/third_party/blink/renderer/platform/testing/empty_web_media_player.h

Project Member

Comment 28 by bugdroid1@chromium.org, May 11 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/43b2d26790d0f56c17f02d630ceda0d6225eb3a2

commit 43b2d26790d0f56c17f02d630ceda0d6225eb3a2
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Fri May 11 19:32:36 2018

[Picture-in-Picture] Fire enter/leave events for native video controls.

This makes sure enterpictureinpicture and leavepictureinpicture events
are fired when user enters and leaves Picture-in-Picture from native
video controls.

Bug:  806249 
Change-Id: I8d8717ce6fa97c3882913e73d8599cede6ec92dc
Reviewed-on: https://chromium-review.googlesource.com/1029951
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Cr-Commit-Position: refs/heads/master@{#557978}
[modify] https://crrev.com/43b2d26790d0f56c17f02d630ceda0d6225eb3a2/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/43b2d26790d0f56c17f02d630ceda0d6225eb3a2/third_party/WebKit/LayoutTests/media/picture-in-picture/controls/picture-in-picture-button.html
[modify] https://crrev.com/43b2d26790d0f56c17f02d630ceda0d6225eb3a2/third_party/WebKit/LayoutTests/media/picture-in-picture/controls/picture-in-picture-video-with-audio-only-button.html
[modify] https://crrev.com/43b2d26790d0f56c17f02d630ceda0d6225eb3a2/third_party/WebKit/LayoutTests/media/picture-in-picture/picture-in-picture-interstitial.html
[modify] https://crrev.com/43b2d26790d0f56c17f02d630ceda0d6225eb3a2/third_party/WebKit/LayoutTests/media/picture-in-picture/utils.js
[modify] https://crrev.com/43b2d26790d0f56c17f02d630ceda0d6225eb3a2/third_party/blink/renderer/core/frame/picture_in_picture_controller.h
[modify] https://crrev.com/43b2d26790d0f56c17f02d630ceda0d6225eb3a2/third_party/blink/renderer/core/html/media/html_video_element.cc
[modify] https://crrev.com/43b2d26790d0f56c17f02d630ceda0d6225eb3a2/third_party/blink/renderer/modules/media_controls/DEPS
[modify] https://crrev.com/43b2d26790d0f56c17f02d630ceda0d6225eb3a2/third_party/blink/renderer/modules/media_controls/elements/media_control_picture_in_picture_button_element.cc
[modify] https://crrev.com/43b2d26790d0f56c17f02d630ceda0d6225eb3a2/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_controller_impl.cc
[modify] https://crrev.com/43b2d26790d0f56c17f02d630ceda0d6225eb3a2/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_controller_impl.h

Project Member

Comment 29 by bugdroid1@chromium.org, May 11 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3ef23fc28ff49424aa2893f80fcc66e6f7af1bcc

commit 3ef23fc28ff49424aa2893f80fcc66e6f7af1bcc
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Fri May 11 19:53:58 2018

[Picture-in-Picture] Add Desktop-only Origin Trial

Intent to Experiment: https://groups.google.com/a/chromium.org/d/msg/blink-dev/xQiDYZEnwaA/MNGbYJnaBwAJ

Bug:  806249 
Change-Id: I0828e52221100f6b6ae576304650466bfdd79188
Reviewed-on: https://chromium-review.googlesource.com/1047671
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Reviewed-by: Ian Clelland <iclelland@chromium.org>
Cr-Commit-Position: refs/heads/master@{#557986}
[modify] https://crrev.com/3ef23fc28ff49424aa2893f80fcc66e6f7af1bcc/third_party/WebKit/LayoutTests/TestExpectations
[add] https://crrev.com/3ef23fc28ff49424aa2893f80fcc66e6f7af1bcc/third_party/WebKit/LayoutTests/http/tests/origin_trials/webexposed/picture-in-picture-api-origin-trial-interfaces.html
[modify] https://crrev.com/3ef23fc28ff49424aa2893f80fcc66e6f7af1bcc/third_party/blink/renderer/modules/picture_in_picture/document_picture_in_picture.idl
[modify] https://crrev.com/3ef23fc28ff49424aa2893f80fcc66e6f7af1bcc/third_party/blink/renderer/modules/picture_in_picture/html_video_element_picture_in_picture.idl
[modify] https://crrev.com/3ef23fc28ff49424aa2893f80fcc66e6f7af1bcc/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_window.idl
[modify] https://crrev.com/3ef23fc28ff49424aa2893f80fcc66e6f7af1bcc/third_party/blink/renderer/modules/picture_in_picture/shadow_root_picture_in_picture.idl
[modify] https://crrev.com/3ef23fc28ff49424aa2893f80fcc66e6f7af1bcc/third_party/blink/renderer/platform/feature_policy/feature_policy.cc
[modify] https://crrev.com/3ef23fc28ff49424aa2893f80fcc66e6f7af1bcc/third_party/blink/renderer/platform/runtime_enabled_features.json5

Project Member

Comment 30 by bugdroid1@chromium.org, May 14 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/07d2279218ceeb9fe1b0ae44b9e393c474ad20fd

commit 07d2279218ceeb9fe1b0ae44b9e393c474ad20fd
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Mon May 14 15:50:45 2018

[Picture-in-Picture] Add UseCounter.

As part of the origin trial, we should record usage with UseCounter, as that
can be automatically monitored by the origin trials infrastructure.

Bug:  806249 
Change-Id: I7978d33f57c9d31ecc2b18a410c66475f3971ddb
Reviewed-on: https://chromium-review.googlesource.com/1055396
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Cr-Commit-Position: refs/heads/master@{#558324}
[modify] https://crrev.com/07d2279218ceeb9fe1b0ae44b9e393c474ad20fd/third_party/blink/public/platform/web_feature.mojom
[modify] https://crrev.com/07d2279218ceeb9fe1b0ae44b9e393c474ad20fd/third_party/blink/renderer/core/html/media/html_video_element.cc
[modify] https://crrev.com/07d2279218ceeb9fe1b0ae44b9e393c474ad20fd/third_party/blink/renderer/core/html/media/html_video_element.h
[modify] https://crrev.com/07d2279218ceeb9fe1b0ae44b9e393c474ad20fd/third_party/blink/renderer/modules/picture_in_picture/document_picture_in_picture.idl
[modify] https://crrev.com/07d2279218ceeb9fe1b0ae44b9e393c474ad20fd/third_party/blink/renderer/modules/picture_in_picture/html_video_element_picture_in_picture.idl
[modify] https://crrev.com/07d2279218ceeb9fe1b0ae44b9e393c474ad20fd/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_window.cc
[modify] https://crrev.com/07d2279218ceeb9fe1b0ae44b9e393c474ad20fd/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_window.h
[modify] https://crrev.com/07d2279218ceeb9fe1b0ae44b9e393c474ad20fd/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_window.idl
[modify] https://crrev.com/07d2279218ceeb9fe1b0ae44b9e393c474ad20fd/third_party/blink/renderer/modules/picture_in_picture/shadow_root_picture_in_picture.idl
[modify] https://crrev.com/07d2279218ceeb9fe1b0ae44b9e393c474ad20fd/tools/metrics/histograms/enums.xml

Project Member

Comment 31 by bugdroid1@chromium.org, May 16 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4

commit 6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4
Author: Mounir Lamouri <mlamouri@chromium.org>
Date: Wed May 16 20:01:30 2018

Picture-in-Picture: resolve exitPictureInPicture() promise when closing window.

Previously, the promise was resolved before hitting the IPC to the
browser process. This adds an ACK IPC that notifies that the operation
is done.

Technically, this isn't checking that the window is really closed but
instead the ACK is sent after `Close()` is called.

Bug:  806249 
Change-Id: Ibcae8789275f743a827340d0f22485484cbac5b1
Reviewed-on: https://chromium-review.googlesource.com/1042572
Reviewed-by: Frank Liberato <liberato@chromium.org>
Reviewed-by: Nasko Oskov <nasko@chromium.org>
Reviewed-by: François Beaufort <beaufort.francois@gmail.com>
Commit-Queue: Mounir Lamouri <mlamouri@chromium.org>
Cr-Commit-Position: refs/heads/master@{#559247}
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/content/browser/frame_host/render_frame_host_delegate.h
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/content/browser/frame_host/render_frame_host_impl.cc
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/content/browser/frame_host/render_frame_host_impl.h
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/content/browser/media/media_web_contents_observer.cc
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/content/browser/media/media_web_contents_observer.h
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/content/browser/web_contents/web_contents_impl.cc
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/content/browser/web_contents/web_contents_impl.h
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/content/common/frame.mojom
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/content/common/media/media_player_delegate_messages.h
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/content/renderer/media/media_factory.cc
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/content/renderer/media/renderer_webmediaplayer_delegate.cc
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/content/renderer/media/renderer_webmediaplayer_delegate.h
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/content/renderer/media/stream/webmediaplayer_ms_unittest.cc
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/content/renderer/render_frame_impl.cc
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/content/renderer/render_frame_impl.h
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/content/test/test_render_frame.cc
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/media/blink/webmediaplayer_delegate.h
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/media/blink/webmediaplayer_impl.cc
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/media/blink/webmediaplayer_impl.h
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/media/blink/webmediaplayer_impl_unittest.cc
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/media/blink/webmediaplayer_params.cc
[modify] https://crrev.com/6d759e1d32ad341cd8e0d5e8666dae470b7c4aa4/media/blink/webmediaplayer_params.h

Project Member

Comment 32 by bugdroid1@chromium.org, May 17 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f4a5eacc8259fa41850582fc2374e4d88c7dc407

commit f4a5eacc8259fa41850582fc2374e4d88c7dc407
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Thu May 17 09:31:36 2018

[Picture-in-Picture] Enable if no GPU compositing.

This reverts https://chromium-review.googlesource.com/1042290 since
cc::Surfaces for video are now allowed to work with software
compositing.

Bug:  806249 ,  807840 
Change-Id: Ie02c69d527b8e13235d744d3c2e98ea5b073f61d
Reviewed-on: https://chromium-review.googlesource.com/1062745
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#559470}
[modify] https://crrev.com/f4a5eacc8259fa41850582fc2374e4d88c7dc407/content/renderer/render_view_impl.cc

Project Member

Comment 33 by bugdroid1@chromium.org, May 22 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/11e9ef43b00faa76e2e87c2abde123861ce9a4c4

commit 11e9ef43b00faa76e2e87c2abde123861ce9a4c4
Author: Mounir Lamouri <mlamouri@chromium.org>
Date: Tue May 22 03:10:16 2018

Picture-in-Picture: resolve requestPictureInPicture with window size.

Resolves the Web API promise with the actual size of the window after
it was created. As a side effect, the promise is now resolved when the
window is actually created instead of slightly after the call.

Bug:  806249 
Change-Id: Iab88e31ba2c1b6efcc5691dca43b02eee1e79412
Reviewed-on: https://chromium-review.googlesource.com/1060533
Commit-Queue: Mounir Lamouri <mlamouri@chromium.org>
Reviewed-by: Nasko Oskov <nasko@chromium.org>
Reviewed-by: apacible <apacible@chromium.org>
Reviewed-by: Frank Liberato <liberato@chromium.org>
Reviewed-by: Peter Kasting <pkasting@chromium.org>
Reviewed-by: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#560470}
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/chrome/browser/ui/browser.cc
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/chrome/browser/ui/browser.h
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/content/browser/media/media_web_contents_observer.cc
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/content/browser/media/media_web_contents_observer.h
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/content/browser/picture_in_picture/picture_in_picture_window_controller_impl.cc
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/content/browser/picture_in_picture/picture_in_picture_window_controller_impl.h
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/content/browser/web_contents/web_contents_impl.cc
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/content/browser/web_contents/web_contents_impl.h
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/content/browser/web_contents/web_contents_impl_unittest.cc
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/content/common/media/media_player_delegate_messages.h
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/content/public/browser/picture_in_picture_window_controller.h
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/content/public/browser/web_contents_delegate.cc
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/content/public/browser/web_contents_delegate.h
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/content/renderer/media/renderer_webmediaplayer_delegate.cc
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/content/renderer/media/renderer_webmediaplayer_delegate.h
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/content/renderer/media/stream/webmediaplayer_ms_unittest.cc
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/content/shell/browser/shell.cc
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/content/shell/browser/shell.h
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/media/blink/webmediaplayer_delegate.h
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/media/blink/webmediaplayer_impl.cc
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/media/blink/webmediaplayer_impl_unittest.cc
[modify] https://crrev.com/11e9ef43b00faa76e2e87c2abde123861ce9a4c4/third_party/WebKit/LayoutTests/media/picture-in-picture/controls/picture-in-picture-button.html

Project Member

Comment 34 by bugdroid1@chromium.org, May 22 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c8987e412cdd048af2ad43709c0f16333fe88871

commit c8987e412cdd048af2ad43709c0f16333fe88871
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Tue May 22 15:38:17 2018

[Picture-in-Picture] Add a layout test for detached frame.

This CL adds a test to make sure requesting Picture-in-Picture rejects
when frame is detached.

Bug:  806249 
Change-Id: I2f9a029cc03fa8977400f908c87f80ed69674e93
Reviewed-on: https://chromium-review.googlesource.com/1065732
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#560605}
[modify] https://crrev.com/c8987e412cdd048af2ad43709c0f16333fe88871/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/resources/picture-in-picture-helpers.js
[modify] https://crrev.com/c8987e412cdd048af2ad43709c0f16333fe88871/third_party/WebKit/LayoutTests/media/picture-in-picture/picture-in-picture-enabled.html
[add] https://crrev.com/c8987e412cdd048af2ad43709c0f16333fe88871/third_party/WebKit/LayoutTests/media/picture-in-picture/request-picture-in-picture.html

Project Member

Comment 35 by bugdroid1@chromium.org, May 23 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d074d7f77da131de4e87bc96a8dd2fd40ccd7720

commit d074d7f77da131de4e87bc96a8dd2fd40ccd7720
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Wed May 23 14:18:03 2018

[Picture-in-Picture] Do not require feature flag for Web API.

This CL makes sure Picture-in-Picture Web API does not require
kPictureInPicture feature flag for Origin Trial.

Bug:  806249 
Change-Id: I502e2337e9e9c1bc519aef61755a475f66d0f8cc
Reviewed-on: https://chromium-review.googlesource.com/1069009
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#561067}
[modify] https://crrev.com/d074d7f77da131de4e87bc96a8dd2fd40ccd7720/chrome/browser/chrome_content_browser_client.cc
[modify] https://crrev.com/d074d7f77da131de4e87bc96a8dd2fd40ccd7720/content/browser/renderer_host/render_view_host_impl.cc

Project Member

Comment 36 by bugdroid1@chromium.org, May 23 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5beaf36d601f522648d71e984bc4c8f653c6123b

commit 5beaf36d601f522648d71e984bc4c8f653c6123b
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Wed May 23 17:24:10 2018

[Picture-in-Picture] Reject temporarily if video src is a MediaStream.

This CL makses sure requestPictureInPicture promise rejects whem video
src is a MediaStream as backend is not implemented yet. This will remove
confusion during upcoming Origin Trial.

Bug:  806249 
Change-Id: I65506111f256b9b0684bdd7d179d01d81e0974a0
Reviewed-on: https://chromium-review.googlesource.com/1070368
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#561139}
[modify] https://crrev.com/5beaf36d601f522648d71e984bc4c8f653c6123b/third_party/blink/renderer/modules/picture_in_picture/html_video_element_picture_in_picture.cc

Project Member

Comment 37 by bugdroid1@chromium.org, May 24 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/31e4cd02ef4797bae865b2e75cd591be718aff2b

commit 31e4cd02ef4797bae865b2e75cd591be718aff2b
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Thu May 24 14:35:17 2018

[Picture-in-Picture] Do not require feature flag in tests.

This CL makes sure Picture-in-Picture Web API tests don't require
kPictureInPicture feature flag.

Bug:  806249 
Change-Id: Ic2a95b6ded01813f97373f91f13bdad01ccc419a
Reviewed-on: https://chromium-review.googlesource.com/1071569
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#561498}
[modify] https://crrev.com/31e4cd02ef4797bae865b2e75cd591be718aff2b/third_party/WebKit/LayoutTests/VirtualTestSuites

Project Member

Comment 38 by bugdroid1@chromium.org, May 24 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/917143afc6ce9391a44199452e282a4649df4f04

commit 917143afc6ce9391a44199452e282a4649df4f04
Author: Mounir Lamouri <mlamouri@chromium.org>
Date: Thu May 24 21:19:57 2018

Picture-in-Picture: send window size updates.

Implements a callback mechanism to notify the blink
PictureInPictureWindow when the //content/browser window's size has
changed.

Bug:  806249 
Change-Id: I5a110e64ab2762f28d963a15790d842b9f6e126c
Reviewed-on: https://chromium-review.googlesource.com/1068066
Commit-Queue: Mounir Lamouri <mlamouri@chromium.org>
Reviewed-by: Nasko Oskov <nasko@chromium.org>
Reviewed-by: Frank Liberato <liberato@chromium.org>
Reviewed-by: Philip Jägenstedt <foolip@chromium.org>
Cr-Commit-Position: refs/heads/master@{#561633}
[add] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/chrome/browser/picture_in_picture/DEPS
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/chrome/browser/picture_in_picture/picture_in_picture_window_controller_browsertest.cc
[add] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/chrome/test/data/media/picture-in-picture/window-size.html
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/content/browser/media/media_web_contents_observer.cc
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/content/browser/media/media_web_contents_observer.h
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/content/browser/picture_in_picture/picture_in_picture_window_controller_impl.cc
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/content/common/media/media_player_delegate_messages.h
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/content/renderer/media/renderer_webmediaplayer_delegate.cc
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/content/renderer/media/renderer_webmediaplayer_delegate.h
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/content/renderer/media/stream/webmediaplayer_ms.cc
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/content/renderer/media/stream/webmediaplayer_ms.h
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/content/renderer/media/stream/webmediaplayer_ms_unittest.cc
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/content/renderer/media_capture_from_element/html_video_element_capturer_source_unittest.cc
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/media/blink/webmediaplayer_delegate.h
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/media/blink/webmediaplayer_impl.cc
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/media/blink/webmediaplayer_impl.h
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/media/blink/webmediaplayer_impl_unittest.cc
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/third_party/blink/public/platform/web_media_player.h
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/third_party/blink/renderer/core/html/media/html_media_element.cc
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/third_party/blink/renderer/core/html/media/html_media_element.h
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_controller_impl.cc
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_window.cc
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_window.h
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_window.idl
[modify] https://crrev.com/917143afc6ce9391a44199452e282a4649df4f04/third_party/blink/renderer/platform/testing/empty_web_media_player.h

François, I believe this is implementing v1 of the API. Should we close this bug?
I'd like to keep this opened until Origin Trial ends so that we can address issues found by developers in this bug. WDYT?
sgtm
Project Member

Comment 42 by bugdroid1@chromium.org, Jun 4

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8923cf38bc92231b37f61642934009f681311b38

commit 8923cf38bc92231b37f61642934009f681311b38
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Mon Jun 04 20:39:09 2018

[Picture-in-Picture] Add tests if video src is a MediaStream.

Following previous CL, this makes sure we have tests when
requestPictureInPicture promise rejects if video src is a MediaStream as
backend is not implemented yet.

Bug:  806249 
Change-Id: I8c32f7de8ef9f5455a1909d83810edce76d35e2f
Reviewed-on: https://chromium-review.googlesource.com/1085062
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#564219}
[modify] https://crrev.com/8923cf38bc92231b37f61642934009f681311b38/third_party/WebKit/LayoutTests/media/picture-in-picture/request-picture-in-picture.html

Project Member

Comment 43 by bugdroid1@chromium.org, Jun 5

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/04ccc79bb799504a1976d1f9fe5209bdd2aa2d2b

commit 04ccc79bb799504a1976d1f9fe5209bdd2aa2d2b
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Tue Jun 05 07:03:54 2018

[Picture-in-Picture] Use DCHECK in IsPictureInPictureElement.

Since element passed to IsPictureInPictureElement shouldn't be null, we
can use a DCHECK instead of a simple "if" condition.

Bug:  806249 
Change-Id: I0babdc26569a37ebaae2bbc6f39e4cd00da0beb3
Reviewed-on: https://chromium-review.googlesource.com/1086787
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#564383}
[modify] https://crrev.com/04ccc79bb799504a1976d1f9fe5209bdd2aa2d2b/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_controller_impl.cc

Project Member

Comment 44 by bugdroid1@chromium.org, Jun 5

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f68821d3be6513022c5b2c205bd122958321c546

commit f68821d3be6513022c5b2c205bd122958321c546
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Tue Jun 05 14:57:08 2018

[Picture-in-Picture] Do not pause playback when exiting from API.

This CL makes sure that PiP video is paused only when user interacts
with the PiP window. If it comes from the API, video should NOT pause.

Bug:  848270 ,  806249 
Change-Id: Id09dffce15ff4b99c24dd53696f5715d76937f9e
Reviewed-on: https://chromium-review.googlesource.com/1082274
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#564496}
[modify] https://crrev.com/f68821d3be6513022c5b2c205bd122958321c546/chrome/browser/picture_in_picture/picture_in_picture_window_controller_browsertest.cc
[modify] https://crrev.com/f68821d3be6513022c5b2c205bd122958321c546/chrome/browser/ui/browser.cc
[modify] https://crrev.com/f68821d3be6513022c5b2c205bd122958321c546/chrome/browser/ui/views/overlay/overlay_window_views.cc
[modify] https://crrev.com/f68821d3be6513022c5b2c205bd122958321c546/chrome/test/data/media/picture-in-picture/window-size.html
[modify] https://crrev.com/f68821d3be6513022c5b2c205bd122958321c546/content/browser/picture_in_picture/picture_in_picture_window_controller_impl.cc
[modify] https://crrev.com/f68821d3be6513022c5b2c205bd122958321c546/content/browser/picture_in_picture/picture_in_picture_window_controller_impl.h
[modify] https://crrev.com/f68821d3be6513022c5b2c205bd122958321c546/content/public/browser/picture_in_picture_window_controller.h

Project Member

Comment 45 by bugdroid1@chromium.org, Jun 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f832578e38ffcb735cb1a414ac580ea781b809b9

commit f832578e38ffcb735cb1a414ac580ea781b809b9
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Wed Jun 06 06:49:43 2018

[Media Controls] Add Exit Picture-in-Picture button.

This makes sure clicking the native Picture-in-Picture button (after
entering Picture-in-Picture) exits Picture-in-Picture and that video
controls are reflected when entering and exiting Picture-in-Picture.

Screenshot: https://i.imgur.com/081Xbmb.png

Bug:  840516 ,  806249 
Change-Id: I410a4a06cc4eea62dae8e1d368e4d05394f13c86
Reviewed-on: https://chromium-review.googlesource.com/1084833
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Reviewed-by: apacible <apacible@chromium.org>
Cr-Commit-Position: refs/heads/master@{#564807}
[modify] https://crrev.com/f832578e38ffcb735cb1a414ac580ea781b809b9/content/app/strings/content_strings.grd
[modify] https://crrev.com/f832578e38ffcb735cb1a414ac580ea781b809b9/content/child/blink_platform_impl.cc
[modify] https://crrev.com/f832578e38ffcb735cb1a414ac580ea781b809b9/third_party/WebKit/LayoutTests/media/picture-in-picture/controls/picture-in-picture-button.html
[modify] https://crrev.com/f832578e38ffcb735cb1a414ac580ea781b809b9/third_party/WebKit/LayoutTests/media/picture-in-picture/picture-in-picture-interstitial.html
[modify] https://crrev.com/f832578e38ffcb735cb1a414ac580ea781b809b9/third_party/blink/public/platform/web_localized_string.h
[modify] https://crrev.com/f832578e38ffcb735cb1a414ac580ea781b809b9/third_party/blink/renderer/core/frame/picture_in_picture_controller.h
[modify] https://crrev.com/f832578e38ffcb735cb1a414ac580ea781b809b9/third_party/blink/renderer/modules/accessibility/ax_media_controls.cc
[modify] https://crrev.com/f832578e38ffcb735cb1a414ac580ea781b809b9/third_party/blink/renderer/modules/media_controls/elements/media_control_element_type.h
[modify] https://crrev.com/f832578e38ffcb735cb1a414ac580ea781b809b9/third_party/blink/renderer/modules/media_controls/elements/media_control_picture_in_picture_button_element.cc
[modify] https://crrev.com/f832578e38ffcb735cb1a414ac580ea781b809b9/third_party/blink/renderer/modules/media_controls/elements/media_control_picture_in_picture_button_element.h
[modify] https://crrev.com/f832578e38ffcb735cb1a414ac580ea781b809b9/third_party/blink/renderer/modules/media_controls/media_controls_impl.cc
[modify] https://crrev.com/f832578e38ffcb735cb1a414ac580ea781b809b9/third_party/blink/renderer/modules/media_controls/media_controls_impl.h
[modify] https://crrev.com/f832578e38ffcb735cb1a414ac580ea781b809b9/third_party/blink/renderer/modules/media_controls/media_controls_media_event_listener.cc
[add] https://crrev.com/f832578e38ffcb735cb1a414ac580ea781b809b9/third_party/blink/renderer/modules/media_controls/resources/ic_picture_in_picture_exit.svg
[modify] https://crrev.com/f832578e38ffcb735cb1a414ac580ea781b809b9/third_party/blink/renderer/modules/media_controls/resources/modernMediaControls.css
[modify] https://crrev.com/f832578e38ffcb735cb1a414ac580ea781b809b9/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_controller_impl.h

Project Member

Comment 46 by bugdroid1@chromium.org, Jun 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b458e9585aa974007a55312c542563542a958562

commit b458e9585aa974007a55312c542563542a958562
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Wed Jun 06 09:08:09 2018

[Picture-in-Picture] Remove Origin Trial.

Picture-in-Picture Origin Trial has been cancelled due to multiple risk
factors incl. surface layer memory regressions which require
investigating, as well as PiP related issues (crashes, resizing, etc.).

Bug:  806249 
Change-Id: I35d06042e949b6e931e16799ca7abb6f0ff36bfa
Reviewed-on: https://chromium-review.googlesource.com/1084451
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#564832}
[modify] https://crrev.com/b458e9585aa974007a55312c542563542a958562/third_party/WebKit/LayoutTests/TestExpectations
[delete] https://crrev.com/b15094a674a95da8308f9516d5e35fea26f55169/third_party/WebKit/LayoutTests/http/tests/origin_trials/webexposed/picture-in-picture-api-origin-trial-interfaces.html
[modify] https://crrev.com/b458e9585aa974007a55312c542563542a958562/third_party/blink/renderer/modules/picture_in_picture/document_picture_in_picture.idl
[modify] https://crrev.com/b458e9585aa974007a55312c542563542a958562/third_party/blink/renderer/modules/picture_in_picture/html_video_element_picture_in_picture.idl
[modify] https://crrev.com/b458e9585aa974007a55312c542563542a958562/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_window.idl
[modify] https://crrev.com/b458e9585aa974007a55312c542563542a958562/third_party/blink/renderer/modules/picture_in_picture/shadow_root_picture_in_picture.idl
[modify] https://crrev.com/b458e9585aa974007a55312c542563542a958562/third_party/blink/renderer/platform/feature_policy/feature_policy.cc
[modify] https://crrev.com/b458e9585aa974007a55312c542563542a958562/third_party/blink/renderer/platform/runtime_enabled_features.json5

Project Member

Comment 47 by bugdroid1@chromium.org, Jun 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4596eea736d27ba33efa2d8d81f806807c4d8228

commit 4596eea736d27ba33efa2d8d81f806807c4d8228
Author: Tommy Steimel <steimel@chromium.org>
Date: Wed Jun 06 18:20:12 2018

Revert "[Media Controls] Add Exit Picture-in-Picture button."

This reverts commit f832578e38ffcb735cb1a414ac580ea781b809b9.

Reason for revert: GetOverflowStringName is firing a DCHECK on audio elements. Note that audio elements have the picture-in-picture button (it's just hidden), so the code will need to handle that case

Original change's description:
> [Media Controls] Add Exit Picture-in-Picture button.
> 
> This makes sure clicking the native Picture-in-Picture button (after
> entering Picture-in-Picture) exits Picture-in-Picture and that video
> controls are reflected when entering and exiting Picture-in-Picture.
> 
> Screenshot: https://i.imgur.com/081Xbmb.png
> 
> Bug:  840516 ,  806249 
> Change-Id: I410a4a06cc4eea62dae8e1d368e4d05394f13c86
> Reviewed-on: https://chromium-review.googlesource.com/1084833
> Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
> Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
> Reviewed-by: Jochen Eisinger <jochen@chromium.org>
> Reviewed-by: apacible <apacible@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#564807}

TBR=beaufort.francois@gmail.com,mlamouri@chromium.org,apacible@chromium.org,jochen@chromium.org

Change-Id: Ie6373e9c2e77bb41ac6a5e9a32f59a2b6ce3bf03
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  840516 ,  806249 
Reviewed-on: https://chromium-review.googlesource.com/1089209
Reviewed-by: Tommy Steimel <steimel@chromium.org>
Commit-Queue: Tommy Steimel <steimel@chromium.org>
Cr-Commit-Position: refs/heads/master@{#564971}
[modify] https://crrev.com/4596eea736d27ba33efa2d8d81f806807c4d8228/content/app/strings/content_strings.grd
[modify] https://crrev.com/4596eea736d27ba33efa2d8d81f806807c4d8228/content/child/blink_platform_impl.cc
[modify] https://crrev.com/4596eea736d27ba33efa2d8d81f806807c4d8228/third_party/WebKit/LayoutTests/media/picture-in-picture/controls/picture-in-picture-button.html
[modify] https://crrev.com/4596eea736d27ba33efa2d8d81f806807c4d8228/third_party/WebKit/LayoutTests/media/picture-in-picture/picture-in-picture-interstitial.html
[modify] https://crrev.com/4596eea736d27ba33efa2d8d81f806807c4d8228/third_party/blink/public/platform/web_localized_string.h
[modify] https://crrev.com/4596eea736d27ba33efa2d8d81f806807c4d8228/third_party/blink/renderer/core/frame/picture_in_picture_controller.h
[modify] https://crrev.com/4596eea736d27ba33efa2d8d81f806807c4d8228/third_party/blink/renderer/modules/accessibility/ax_media_controls.cc
[modify] https://crrev.com/4596eea736d27ba33efa2d8d81f806807c4d8228/third_party/blink/renderer/modules/media_controls/elements/media_control_element_type.h
[modify] https://crrev.com/4596eea736d27ba33efa2d8d81f806807c4d8228/third_party/blink/renderer/modules/media_controls/elements/media_control_picture_in_picture_button_element.cc
[modify] https://crrev.com/4596eea736d27ba33efa2d8d81f806807c4d8228/third_party/blink/renderer/modules/media_controls/elements/media_control_picture_in_picture_button_element.h
[modify] https://crrev.com/4596eea736d27ba33efa2d8d81f806807c4d8228/third_party/blink/renderer/modules/media_controls/media_controls_impl.cc
[modify] https://crrev.com/4596eea736d27ba33efa2d8d81f806807c4d8228/third_party/blink/renderer/modules/media_controls/media_controls_impl.h
[modify] https://crrev.com/4596eea736d27ba33efa2d8d81f806807c4d8228/third_party/blink/renderer/modules/media_controls/media_controls_media_event_listener.cc
[delete] https://crrev.com/558635267b37db79b830022c78e209ab31a68c6c/third_party/blink/renderer/modules/media_controls/resources/ic_picture_in_picture_exit.svg
[modify] https://crrev.com/4596eea736d27ba33efa2d8d81f806807c4d8228/third_party/blink/renderer/modules/media_controls/resources/modernMediaControls.css
[modify] https://crrev.com/4596eea736d27ba33efa2d8d81f806807c4d8228/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_controller_impl.h

Project Member

Comment 48 by bugdroid1@chromium.org, Jun 8

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6ea68f4f226d09ca70efdfd4d63a9d98906c2326

commit 6ea68f4f226d09ca70efdfd4d63a9d98906c2326
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Fri Jun 08 22:40:10 2018

[Picture-in-Picture] Update virtual tests READMEs.

This removes PictureInPicture feature in README as it is not needed for
these virtual tests.

Bug:  806249 
Change-Id: Ie78767cc7261f7b2538f9849e3a2073261e091b6
Reviewed-on: https://chromium-review.googlesource.com/1092533
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Reviewed-by: apacible <apacible@chromium.org>
Cr-Commit-Position: refs/heads/master@{#565762}
[modify] https://crrev.com/6ea68f4f226d09ca70efdfd4d63a9d98906c2326/third_party/WebKit/LayoutTests/virtual/picture-in-picture/external/wpt/feature-policy/README.txt
[modify] https://crrev.com/6ea68f4f226d09ca70efdfd4d63a9d98906c2326/third_party/WebKit/LayoutTests/virtual/picture-in-picture/external/wpt/picture-in-picture/README.txt

Project Member

Comment 49 by bugdroid1@chromium.org, Jun 8

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a194a803417b76b20e8ab599895293843d74d373

commit a194a803417b76b20e8ab599895293843d74d373
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Fri Jun 08 23:44:33 2018

[Picture-in-Picture] Add DCHECK before exiting Picture-in-Picture.

This adds a DCHECK to make sure the Picture-in-Picture element is a
video element before exiting Picture-in-Picture.

Bug:  806249 
Change-Id: I86abdd37ce0375fc37eba0252a5235dc9899c1d0
Reviewed-on: https://chromium-review.googlesource.com/1092351
Reviewed-by: apacible <apacible@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#565779}
[modify] https://crrev.com/a194a803417b76b20e8ab599895293843d74d373/third_party/blink/renderer/modules/picture_in_picture/document_picture_in_picture.cc

Project Member

Comment 50 by bugdroid1@chromium.org, Jun 8

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e41b7c535994de0d415b4a2a13d4de93674f1c4e

commit e41b7c535994de0d415b4a2a13d4de93674f1c4e
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Fri Jun 08 23:53:27 2018

[Picture-in-Picture] Add browser test for disablePictureInPicture.

This adds a browser test to check that setting disablePictureInPicture
on video just after requesting Picture-in-Picture doesn't result in a
window opened.

Bug:  806249 
Change-Id: Idcc8c116f206a19ce3974c50ddff37b7bf2e8a50
Reviewed-on: https://chromium-review.googlesource.com/1092350
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Reviewed-by: apacible <apacible@chromium.org>
Cr-Commit-Position: refs/heads/master@{#565781}
[modify] https://crrev.com/e41b7c535994de0d415b4a2a13d4de93674f1c4e/chrome/browser/picture_in_picture/picture_in_picture_window_controller_browsertest.cc
[modify] https://crrev.com/e41b7c535994de0d415b4a2a13d4de93674f1c4e/chrome/test/data/media/picture-in-picture/window-size.html
[modify] https://crrev.com/e41b7c535994de0d415b4a2a13d4de93674f1c4e/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_controller_impl.cc

Project Member

Comment 51 by bugdroid1@chromium.org, Jun 12

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9cf2378b995e368366a1fc64df25e95f82cd54c9

commit 9cf2378b995e368366a1fc64df25e95f82cd54c9
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Tue Jun 12 01:43:25 2018

[Media Controls] Add Exit Picture-in-Picture button.

This makes sure clicking the native Picture-in-Picture button (after
entering Picture-in-Picture) exits Picture-in-Picture and that video
controls are reflected when entering and exiting Picture-in-Picture.

Screenshot: https://i.imgur.com/081Xbmb.png

Bug:  840516 ,  806249 
Change-Id: I9b07630c90323454a774ee147b67b5bb98ed7094
Reviewed-on: https://chromium-review.googlesource.com/1089332
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#566238}
[modify] https://crrev.com/9cf2378b995e368366a1fc64df25e95f82cd54c9/content/app/strings/content_strings.grd
[modify] https://crrev.com/9cf2378b995e368366a1fc64df25e95f82cd54c9/content/child/blink_platform_impl.cc
[modify] https://crrev.com/9cf2378b995e368366a1fc64df25e95f82cd54c9/third_party/WebKit/LayoutTests/media/picture-in-picture/controls/picture-in-picture-button.html
[modify] https://crrev.com/9cf2378b995e368366a1fc64df25e95f82cd54c9/third_party/WebKit/LayoutTests/media/picture-in-picture/picture-in-picture-interstitial.html
[modify] https://crrev.com/9cf2378b995e368366a1fc64df25e95f82cd54c9/third_party/blink/public/platform/web_localized_string.h
[modify] https://crrev.com/9cf2378b995e368366a1fc64df25e95f82cd54c9/third_party/blink/renderer/core/frame/picture_in_picture_controller.h
[modify] https://crrev.com/9cf2378b995e368366a1fc64df25e95f82cd54c9/third_party/blink/renderer/modules/accessibility/ax_media_controls.cc
[modify] https://crrev.com/9cf2378b995e368366a1fc64df25e95f82cd54c9/third_party/blink/renderer/modules/media_controls/elements/media_control_element_type.h
[modify] https://crrev.com/9cf2378b995e368366a1fc64df25e95f82cd54c9/third_party/blink/renderer/modules/media_controls/elements/media_control_picture_in_picture_button_element.cc
[modify] https://crrev.com/9cf2378b995e368366a1fc64df25e95f82cd54c9/third_party/blink/renderer/modules/media_controls/elements/media_control_picture_in_picture_button_element.h
[modify] https://crrev.com/9cf2378b995e368366a1fc64df25e95f82cd54c9/third_party/blink/renderer/modules/media_controls/media_controls_impl.cc
[modify] https://crrev.com/9cf2378b995e368366a1fc64df25e95f82cd54c9/third_party/blink/renderer/modules/media_controls/media_controls_impl.h
[modify] https://crrev.com/9cf2378b995e368366a1fc64df25e95f82cd54c9/third_party/blink/renderer/modules/media_controls/media_controls_media_event_listener.cc
[add] https://crrev.com/9cf2378b995e368366a1fc64df25e95f82cd54c9/third_party/blink/renderer/modules/media_controls/resources/ic_picture_in_picture_exit.svg
[modify] https://crrev.com/9cf2378b995e368366a1fc64df25e95f82cd54c9/third_party/blink/renderer/modules/media_controls/resources/modernMediaControls.css
[modify] https://crrev.com/9cf2378b995e368366a1fc64df25e95f82cd54c9/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_controller_impl.h

Project Member

Comment 52 by bugdroid1@chromium.org, Jun 13

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/26a709f833ae93273514a2057cb22423480bf25a

commit 26a709f833ae93273514a2057cb22423480bf25a
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Wed Jun 13 18:52:17 2018

Add exit Picture-in-Picture browser context menu.

This makes sure clicking the checked Picture-in-Picture browser context
menu (after entering Picture-in-Picture) exits Picture-in-Picture.

Screenshot: https://i.imgur.com/asJ1qgT.png

Bug:  840516 ,  806249 
Change-Id: Ic283ca8cb431bfcb56613067e0fec43db2bbf53b
Reviewed-on: https://chromium-review.googlesource.com/1086796
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Reviewed-by: apacible <apacible@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Reviewed-by: Brian White <bcwhite@chromium.org>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Cr-Commit-Position: refs/heads/master@{#566935}
[modify] https://crrev.com/26a709f833ae93273514a2057cb22423480bf25a/chrome/app/chrome_command_ids.h
[modify] https://crrev.com/26a709f833ae93273514a2057cb22423480bf25a/chrome/app/generated_resources.grd
[modify] https://crrev.com/26a709f833ae93273514a2057cb22423480bf25a/chrome/browser/renderer_context_menu/render_view_context_menu.cc
[modify] https://crrev.com/26a709f833ae93273514a2057cb22423480bf25a/chrome/browser/renderer_context_menu/render_view_context_menu_browsertest.cc
[modify] https://crrev.com/26a709f833ae93273514a2057cb22423480bf25a/chrome/browser/renderer_context_menu/render_view_context_menu_test_util.cc
[modify] https://crrev.com/26a709f833ae93273514a2057cb22423480bf25a/chrome/browser/renderer_context_menu/render_view_context_menu_test_util.h
[modify] https://crrev.com/26a709f833ae93273514a2057cb22423480bf25a/third_party/blink/public/web/web_context_menu_data.h
[modify] https://crrev.com/26a709f833ae93273514a2057cb22423480bf25a/third_party/blink/renderer/core/exported/web_view_impl.cc
[modify] https://crrev.com/26a709f833ae93273514a2057cb22423480bf25a/third_party/blink/renderer/core/page/context_menu_controller.cc
[modify] https://crrev.com/26a709f833ae93273514a2057cb22423480bf25a/third_party/blink/renderer/core/page/context_menu_controller_test.cc
[modify] https://crrev.com/26a709f833ae93273514a2057cb22423480bf25a/tools/metrics/actions/actions.xml

Project Member

Comment 53 by bugdroid1@chromium.org, Jun 14

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c14930db100f9db64f4c36305717c373099d0c6c

commit c14930db100f9db64f4c36305717c373099d0c6c
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Thu Jun 14 06:58:38 2018

Context menu shows audio if video has no video track but an audio track.

This makes sure Picture-in-Picture context menu does not show at all
(instead of disabled) for video elements with audio track only (e.g.
MediaDocument).
It also shows audio related items such as "Open audio in new tab"
insteaad of "Open video in new tab" for these cases.

Screenshots: https://imgur.com/a/1d1UNrg

Bug:  806249 
Change-Id: I6341f476557389521ab2b6f21e53c2bd6a5df34d
Reviewed-on: https://chromium-review.googlesource.com/1096759
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#567177}
[modify] https://crrev.com/c14930db100f9db64f4c36305717c373099d0c6c/third_party/blink/renderer/core/page/context_menu_controller.cc
[modify] https://crrev.com/c14930db100f9db64f4c36305717c373099d0c6c/third_party/blink/renderer/core/page/context_menu_controller_test.cc

Project Member

Comment 54 by bugdroid1@chromium.org, Jun 18

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/da3a9ac20c917bd01cb91d44ad847e072287e4ef

commit da3a9ac20c917bd01cb91d44ad847e072287e4ef
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Mon Jun 18 05:35:45 2018

[Picture-in-Picture] Resolve with current window if video is pipElement.

This make sures requestPictureInPicture is resolved with existing
Picture-in-Picture window when video is already pictureInPictureElement.

Bug:  806249 
Change-Id: I16e3fc2e8e19c2b623e8d2518fe4672a2a16b756
Reviewed-on: https://chromium-review.googlesource.com/1101686
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Cr-Commit-Position: refs/heads/master@{#567934}
[modify] https://crrev.com/da3a9ac20c917bd01cb91d44ad847e072287e4ef/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/picture-in-picture-window.html
[modify] https://crrev.com/da3a9ac20c917bd01cb91d44ad847e072287e4ef/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_controller_impl.cc

Project Member

Comment 55 by bugdroid1@chromium.org, Jun 21

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4b9611c3c144ba9ca845c865496291873385c56f

commit 4b9611c3c144ba9ca845c865496291873385c56f
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Thu Jun 21 08:02:33 2018

Enable PictureInPictureAPI feature on Desktop.

Picture-in-Picture API is now enabled by default on Chrome OS, Linux,
Mac, and Windows. Android will come later.

Intent to ship: https://groups.google.com/a/chromium.org/d/msg/blink-dev/ibVPbqBQapU/rUZIrPPLAQAJ

Bug:  806249 
Change-Id: I32fb2b491406e5592e57f64a5483bebf887ebdc0
Reviewed-on: https://chromium-review.googlesource.com/1090728
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#569186}
[modify] https://crrev.com/4b9611c3c144ba9ca845c865496291873385c56f/content/child/runtime_features.cc
[modify] https://crrev.com/4b9611c3c144ba9ca845c865496291873385c56f/third_party/WebKit/LayoutTests/virtual/stable/webexposed/element-instance-property-listing-expected.txt
[modify] https://crrev.com/4b9611c3c144ba9ca845c865496291873385c56f/third_party/WebKit/LayoutTests/virtual/stable/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/4b9611c3c144ba9ca845c865496291873385c56f/third_party/blink/public/platform/web_runtime_features.h
[modify] https://crrev.com/4b9611c3c144ba9ca845c865496291873385c56f/third_party/blink/renderer/platform/exported/web_runtime_features.cc
[modify] https://crrev.com/4b9611c3c144ba9ca845c865496291873385c56f/third_party/blink/renderer/platform/runtime_enabled_features.json5

Should this be closed given that we have a different bug for the Android follow-up?
Can we wait a week or so once PictureInPicture and SurfaceLayerForVideo are enabled by default as well in case we need to rollback?
Project Member

Comment 58 by bugdroid1@chromium.org, Jul 3

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f7ee3ca8fc80a633dfdaad534afb1205b8c572ee

commit f7ee3ca8fc80a633dfdaad534afb1205b8c572ee
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Tue Jul 03 16:55:43 2018

[Picture-in-Picture] Add missing [NewObject] to methods in IDL.

Updated spec says IDL for requestPictureInPicture and
exitPictureInPicture should specify that a new object is returned.

https://github.com/WICG/picture-in-picture/pull/76

Bug:  806249 
Change-Id: Iba50455ef30c97d87c3e22b9ac95bc4bc41d546d
Reviewed-on: https://chromium-review.googlesource.com/1122226
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#572257}
[modify] https://crrev.com/f7ee3ca8fc80a633dfdaad534afb1205b8c572ee/third_party/blink/renderer/modules/picture_in_picture/document_picture_in_picture.idl
[modify] https://crrev.com/f7ee3ca8fc80a633dfdaad534afb1205b8c572ee/third_party/blink/renderer/modules/picture_in_picture/html_video_element_picture_in_picture.idl

Project Member

Comment 59 by bugdroid1@chromium.org, Jul 20

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0515919c14fb875025f1327828a63a78c79ed520

commit 0515919c14fb875025f1327828a63a78c79ed520
Author: Robert Ma <robertma@chromium.org>
Date: Fri Jul 20 07:30:54 2018

[Picture-in-Picture] Fix web platform tests that time out.

This makes sure web platform tests for Picture-in-Picture do not time
out when Picture-in-Picture API is not available.

Besides, wpt/picture-in-picture/request-picture-in-picture is split
to work around a flaky timeout in WPT upstream that's related to
https://github.com/web-platform-tests/wpt/issues/10398

Note: based on https://github.com/web-platform-tests/wpt/pull/11329

Bug:  806249 
Change-Id: I6185253dfa4aae5111e87553581b8464032558d1
Reviewed-on: https://chromium-review.googlesource.com/1107626
Reviewed-by: Robert Ma <robertma@chromium.org>
Reviewed-by: Mounir Lamouri <mlamouri@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#576804}
[modify] https://crrev.com/0515919c14fb875025f1327828a63a78c79ed520/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/0515919c14fb875025f1327828a63a78c79ed520/third_party/WebKit/LayoutTests/external/wpt/feature-policy/picture-in-picture-default-feature-policy.https.sub.html
[modify] https://crrev.com/0515919c14fb875025f1327828a63a78c79ed520/third_party/WebKit/LayoutTests/external/wpt/feature-policy/picture-in-picture-disabled-by-feature-policy.https.sub.html
[modify] https://crrev.com/0515919c14fb875025f1327828a63a78c79ed520/third_party/WebKit/LayoutTests/external/wpt/feature-policy/resources/picture-in-picture.js
[add] https://crrev.com/0515919c14fb875025f1327828a63a78c79ed520/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/request-picture-in-picture-twice.html
[modify] https://crrev.com/0515919c14fb875025f1327828a63a78c79ed520/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/request-picture-in-picture.html
[modify] https://crrev.com/0515919c14fb875025f1327828a63a78c79ed520/third_party/WebKit/LayoutTests/external/wpt/picture-in-picture/resources/picture-in-picture-helpers.js

Project Member

Comment 60 by bugdroid1@chromium.org, Jul 21

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d4857e9b34b6bcb510d5601314aa08f07705dc5e

commit d4857e9b34b6bcb510d5601314aa08f07705dc5e
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Sat Jul 21 19:51:09 2018

Hide Picture-in-Picture button if video src is a MediaStream.

This CL makes sure native video controls don't show a Picture-in-Picture
button when video src is a MediaStream as backend is not implemented
yet.

Bug:  806249 
Change-Id: I04171b2ba73e3689334809c6419bcc8ff598196f
Reviewed-on: https://chromium-review.googlesource.com/1145076
Reviewed-by: apacible <apacible@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#577083}
[modify] https://crrev.com/d4857e9b34b6bcb510d5601314aa08f07705dc5e/third_party/blink/renderer/core/frame/picture_in_picture_controller.h
[modify] https://crrev.com/d4857e9b34b6bcb510d5601314aa08f07705dc5e/third_party/blink/renderer/modules/picture_in_picture/html_video_element_picture_in_picture.cc
[modify] https://crrev.com/d4857e9b34b6bcb510d5601314aa08f07705dc5e/third_party/blink/renderer/modules/picture_in_picture/picture_in_picture_controller_impl.cc

Labels: Pri-1
Status: Fixed (was: Assigned)

Sign in to add a comment