[PIP] Add media controls to the window. |
||||||||
Issue descriptionThis should include: - Addition of play/pause and close icons. - Should appear when mouseover or window is focused. Should disappear otherwise. - Icons should be vectorized. - Should determine final sizing and scaling (if any) of icons. - Clip the clickable areas to where the button areas are drawn. - Should allow for tabbing and touch screeens. - Check for any performance hits.
,
Apr 25 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/3ac20c707bb25ba7925cb212f15c8ba08be6b84e commit 3ac20c707bb25ba7925cb212f15c8ba08be6b84e Author: Jennifer Apacible <apacible@chromium.org> Date: Wed Apr 25 20:50:11 2018 [Picture in Picture] Add media controls on window. This change adds media controls (play/pause, close) on the Picture-in-Picture window for desktop (OverlayWindowViews). This adds three vectorized icons used for these controls. These are currently rendered as white when the user mouses over the window, and disappears when the mouse is not hovering over the window. The intended sizes of the icons are currently hardcoded. They will be updated when we've determined how we want them to be sized or scaled. Future work includes making the controls accessible and handling events triggered by keyboard or touch inputs. BUG: 836389 Change-Id: I37987286b531c1ce1ddcf867f72510194657053d Reviewed-on: https://chromium-review.googlesource.com/1026519 Reviewed-by: Michael Wasserman <msw@chromium.org> Reviewed-by: Mounir Lamouri <mlamouri@chromium.org> Reviewed-by: Kinuko Yasuda <kinuko@chromium.org> Commit-Queue: apacible <apacible@chromium.org> Cr-Commit-Position: refs/heads/master@{#553732} [modify] https://crrev.com/3ac20c707bb25ba7925cb212f15c8ba08be6b84e/chrome/browser/ui/views/overlay/overlay_window_views.cc [modify] https://crrev.com/3ac20c707bb25ba7925cb212f15c8ba08be6b84e/chrome/browser/ui/views/overlay/overlay_window_views.h [modify] https://crrev.com/3ac20c707bb25ba7925cb212f15c8ba08be6b84e/content/browser/picture_in_picture/overlay_surface_embedder.cc [modify] https://crrev.com/3ac20c707bb25ba7925cb212f15c8ba08be6b84e/content/browser/picture_in_picture/overlay_surface_embedder.h [modify] https://crrev.com/3ac20c707bb25ba7925cb212f15c8ba08be6b84e/content/browser/picture_in_picture/picture_in_picture_window_controller_impl.cc [modify] https://crrev.com/3ac20c707bb25ba7925cb212f15c8ba08be6b84e/content/browser/picture_in_picture/picture_in_picture_window_controller_impl.h [modify] https://crrev.com/3ac20c707bb25ba7925cb212f15c8ba08be6b84e/content/public/browser/overlay_window.h [modify] https://crrev.com/3ac20c707bb25ba7925cb212f15c8ba08be6b84e/content/public/browser/picture_in_picture_window_controller.h [modify] https://crrev.com/3ac20c707bb25ba7925cb212f15c8ba08be6b84e/ui/views/BUILD.gn [add] https://crrev.com/3ac20c707bb25ba7925cb212f15c8ba08be6b84e/ui/views/vector_icons/picture_in_picture_close.icon [add] https://crrev.com/3ac20c707bb25ba7925cb212f15c8ba08be6b84e/ui/views/vector_icons/picture_in_picture_pause.icon [add] https://crrev.com/3ac20c707bb25ba7925cb212f15c8ba08be6b84e/ui/views/vector_icons/picture_in_picture_play.icon
,
May 4 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/4081cb6bf7edc9cb2aaf816c5aa95f9dee998710 commit 4081cb6bf7edc9cb2aaf816c5aa95f9dee998710 Author: Jennifer Apacible <apacible@chromium.org> Date: Fri May 04 01:34:45 2018 [Picture in Picture] Show correct media controls when window is opened. Currently, the initial media control shown is always the play (untoggled) icon. This change checks for whether or not the play is currently active, or playing, when entering Picture-in-Picture mode. This change also updates how media player state (active / inactive) and other relevant information (e.g. media player id) is retrieved. The MediaWebContentsObserver and MediaPlayerId are not updated after entering Picture-in-Picture mode. BUG: 836389 Change-Id: I64baafebc20bf91fd457866237d1ec8dd526fd68 Reviewed-on: https://chromium-review.googlesource.com/1034158 Commit-Queue: apacible <apacible@chromium.org> Reviewed-by: Mounir Lamouri <mlamouri@chromium.org> Reviewed-by: Alex Moshchuk <alexmos@chromium.org> Reviewed-by: Dale Curtis <dalecurtis@chromium.org> Cr-Commit-Position: refs/heads/master@{#555952} [modify] https://crrev.com/4081cb6bf7edc9cb2aaf816c5aa95f9dee998710/chrome/browser/ui/views/overlay/overlay_window_views.cc [modify] https://crrev.com/4081cb6bf7edc9cb2aaf816c5aa95f9dee998710/content/browser/picture_in_picture/picture_in_picture_window_controller_impl.cc [modify] https://crrev.com/4081cb6bf7edc9cb2aaf816c5aa95f9dee998710/content/browser/picture_in_picture/picture_in_picture_window_controller_impl.h [modify] https://crrev.com/4081cb6bf7edc9cb2aaf816c5aa95f9dee998710/content/public/browser/picture_in_picture_window_controller.h [modify] https://crrev.com/4081cb6bf7edc9cb2aaf816c5aa95f9dee998710/media/blink/webmediaplayer_impl.cc
,
May 4 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c216afb28ea023b3d614c90975984ecc3cc864de commit c216afb28ea023b3d614c90975984ecc3cc864de Author: Jennifer Apacible <apacible@chromium.org> Date: Fri May 04 18:10:04 2018 [Picture in Picture] Update play/pause icon size. This change makes the icon.. less overwhelming. It will be smaller than the minimum window size. Also, as many screen sizes are not very large (e.g. 13-15'' laptops or 24'' monitors), and the non-scaled control appears much more prominent than needed. We've received some initial feedback that the icon appears very in-your-face. BUG: 836389 Change-Id: I593cecf2bfe167765319ee2c35920d7f224fafe6 Reviewed-on: https://chromium-review.googlesource.com/1043650 Commit-Queue: apacible <apacible@chromium.org> Reviewed-by: Mounir Lamouri <mlamouri@chromium.org> Cr-Commit-Position: refs/heads/master@{#556117} [modify] https://crrev.com/c216afb28ea023b3d614c90975984ecc3cc864de/chrome/browser/ui/views/overlay/overlay_window_views.cc
,
May 8 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ebd76a8ccc62496cb23bd31ffe81514d88280fac commit ebd76a8ccc62496cb23bd31ffe81514d88280fac Author: Jennifer Apacible <apacible@chromium.org> Date: Tue May 08 03:16:51 2018 [Picture in Picture] Update hit test point value for OverlayWindowFrame. This change allows the user to interact with the window contents, most notably the media controls. This also disables dragging on the window, which is a lower priority to have compared to working media controls. Previously, we were unable to interact with Mac controls. Other platforms, such as Linux, required a double click to interact with them. Manually tested on Mac OSX and Linux. Enabling dragging will be done in a future patch. BUG: 839721 836389 Change-Id: Iddaa83d244c0b76760688d12e469afc9265d93a8 Reviewed-on: https://chromium-review.googlesource.com/1048394 Reviewed-by: Becca Hughes <beccahughes@chromium.org> Commit-Queue: apacible <apacible@chromium.org> Cr-Commit-Position: refs/heads/master@{#556669} [modify] https://crrev.com/ebd76a8ccc62496cb23bd31ffe81514d88280fac/chrome/browser/ui/views/overlay/overlay_window_views.cc
,
May 8 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/b9379250a2202dda4d87d3637ae63e14cf8506a9 commit b9379250a2202dda4d87d3637ae63e14cf8506a9 Author: Jennifer Apacible <apacible@chromium.org> Date: Tue May 08 23:41:41 2018 [Picture in Picture] Darken video when media controls are shown. On light colored videos, the white media controls are hard to see or invisible. This change adds a transparent, dark layer between the video and the media controls to make them more visible. BUG: 836389 Change-Id: I3f0a959c2d0a9fec83dbc71ae1cbcf2335a24566 Reviewed-on: https://chromium-review.googlesource.com/1045091 Commit-Queue: apacible <apacible@chromium.org> Reviewed-by: Alex Moshchuk <alexmos@chromium.org> Reviewed-by: Mounir Lamouri <mlamouri@chromium.org> Cr-Commit-Position: refs/heads/master@{#557010} [modify] https://crrev.com/b9379250a2202dda4d87d3637ae63e14cf8506a9/chrome/browser/ui/views/overlay/overlay_window_views.cc [modify] https://crrev.com/b9379250a2202dda4d87d3637ae63e14cf8506a9/chrome/browser/ui/views/overlay/overlay_window_views.h [modify] https://crrev.com/b9379250a2202dda4d87d3637ae63e14cf8506a9/content/browser/picture_in_picture/overlay_surface_embedder.cc [modify] https://crrev.com/b9379250a2202dda4d87d3637ae63e14cf8506a9/content/browser/picture_in_picture/overlay_surface_embedder.h [modify] https://crrev.com/b9379250a2202dda4d87d3637ae63e14cf8506a9/content/public/browser/overlay_window.h
,
May 16 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/37f2b6ec3b0a29055738cb4f216fffe57de92d42 commit 37f2b6ec3b0a29055738cb4f216fffe57de92d42 Author: Jennifer Apacible <apacible@chromium.org> Date: Wed May 16 00:17:41 2018 [Picture in Picture] Show correct media controls on window open. Currently, the initial media control state for play/pause is incorrect. It shows the opposite control than intended. Tests forthcoming in a future patch once we have test infrastructure set up. BUG: 836389 Change-Id: Ie7be9bfb384f62ac925d6cb1c1ee30cc6baf2cfc Reviewed-on: https://chromium-review.googlesource.com/1060244 Reviewed-by: Becca Hughes <beccahughes@chromium.org> Commit-Queue: apacible <apacible@chromium.org> Cr-Commit-Position: refs/heads/master@{#558894} [modify] https://crrev.com/37f2b6ec3b0a29055738cb4f216fffe57de92d42/chrome/browser/ui/views/overlay/overlay_window_views.cc
,
May 16 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/3ad2f6bb02ea1c8a8f5996806fed772083d53cab commit 3ad2f6bb02ea1c8a8f5996806fed772083d53cab Author: Jennifer Apacible <apacible@chromium.org> Date: Wed May 16 03:50:42 2018 [Picture in Picture] Add DCHECK for controls layers. BUG: 836389 Change-Id: If3594fb0ca51a066c54c65ff2f82ed34d3d31802 Reviewed-on: https://chromium-review.googlesource.com/1060029 Reviewed-by: Becca Hughes <beccahughes@chromium.org> Commit-Queue: apacible <apacible@chromium.org> Cr-Commit-Position: refs/heads/master@{#558963} [modify] https://crrev.com/3ad2f6bb02ea1c8a8f5996806fed772083d53cab/content/browser/picture_in_picture/overlay_surface_embedder.cc [modify] https://crrev.com/3ad2f6bb02ea1c8a8f5996806fed772083d53cab/content/browser/picture_in_picture/overlay_surface_embedder.h
,
May 23 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d879495cd3dd436015df8608b68ab2e51ce8cdf4 commit d879495cd3dd436015df8608b68ab2e51ce8cdf4 Author: Jennifer Apacible <apacible@chromium.org> Date: Wed May 23 00:37:43 2018 [Picture in Picture] Make controls focusable and add relevant text. This makes the controls on the Picture-in-Picture window focusable. This also adds accessible names and tooltip texts for each of the controls. Since the play/pause button is a ToggleImageButton, when the button is toggled it will switch between showing play or pause assets / text. BUG: 836389 Change-Id: Ie95afc1d9096e0860427c2498ddf0d319adb8df8 Reviewed-on: https://chromium-review.googlesource.com/1068125 Commit-Queue: apacible <apacible@chromium.org> Reviewed-by: Mounir Lamouri <mlamouri@chromium.org> Reviewed-by: Carlos Pizano <cpu@chromium.org> Cr-Commit-Position: refs/heads/master@{#560856} [modify] https://crrev.com/d879495cd3dd436015df8608b68ab2e51ce8cdf4/chrome/app/generated_resources.grd [modify] https://crrev.com/d879495cd3dd436015df8608b68ab2e51ce8cdf4/chrome/browser/ui/views/overlay/overlay_window_views.cc
,
May 24 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/4a4e43a7c99c5d7925dbc71d320b45ba8688c9e4 commit 4a4e43a7c99c5d7925dbc71d320b45ba8688c9e4 Author: Jennifer Apacible <apacible@chromium.org> Date: Thu May 24 22:24:04 2018 [Picture in Picture] Update controls to reflect modern style. This utilizes the ic_play_arrow.svg and ic_pause.svg used for the modern media controls. The SVGs are skiafied before replacing the previous controls; the new controls do not have a white circular background behind them. This change also adds a way to specify the horizontal and vertical alignment for images and background images separately for ImageButton. Previously, the image and background image had the same alignment. No other ImageButton that sets the background image currently specifies alignment. Part 1 of multiple diffs to move to modern styling. BUG: 836389 Change-Id: I5d01fb237c262e0610907c580a12914d30500443 Reviewed-on: https://chromium-review.googlesource.com/1069265 Commit-Queue: apacible <apacible@chromium.org> Reviewed-by: Mounir Lamouri <mlamouri@chromium.org> Reviewed-by: Evan Stade <estade@chromium.org> Reviewed-by: Scott Violet <sky@chromium.org> Cr-Commit-Position: refs/heads/master@{#561653} [modify] https://crrev.com/4a4e43a7c99c5d7925dbc71d320b45ba8688c9e4/chrome/app/vector_icons/BUILD.gn [add] https://crrev.com/4a4e43a7c99c5d7925dbc71d320b45ba8688c9e4/chrome/app/vector_icons/pause.icon [rename] https://crrev.com/4a4e43a7c99c5d7925dbc71d320b45ba8688c9e4/chrome/app/vector_icons/picture_in_picture_control_background.icon [add] https://crrev.com/4a4e43a7c99c5d7925dbc71d320b45ba8688c9e4/chrome/app/vector_icons/play_arrow.icon [modify] https://crrev.com/4a4e43a7c99c5d7925dbc71d320b45ba8688c9e4/chrome/browser/ui/views/overlay/overlay_window_views.cc [modify] https://crrev.com/4a4e43a7c99c5d7925dbc71d320b45ba8688c9e4/ui/views/BUILD.gn [modify] https://crrev.com/4a4e43a7c99c5d7925dbc71d320b45ba8688c9e4/ui/views/controls/button/image_button.cc [modify] https://crrev.com/4a4e43a7c99c5d7925dbc71d320b45ba8688c9e4/ui/views/controls/button/image_button.h [modify] https://crrev.com/4a4e43a7c99c5d7925dbc71d320b45ba8688c9e4/ui/views/controls/button/image_button_unittest.cc [delete] https://crrev.com/5dab43b7c18fb23e13ff122a02571ba29dffdf71/ui/views/vector_icons/picture_in_picture_close.icon [delete] https://crrev.com/5dab43b7c18fb23e13ff122a02571ba29dffdf71/ui/views/vector_icons/picture_in_picture_pause.icon
,
May 25 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/0c9e7fa97fffee5e796c009e1b2bf3f02ea985d0 commit 0c9e7fa97fffee5e796c009e1b2bf3f02ea985d0 Author: Jennifer Apacible <apacible@chromium.org> Date: Fri May 25 20:57:33 2018 [Picture in Picture] Add margin to close button. Per UX feedback, add some space between the close button and the edge of the window. BUG: 836389 Change-Id: Id527c868b6beef25e7278e737faa2e0aff4ea469 Reviewed-on: https://chromium-review.googlesource.com/1071233 Commit-Queue: apacible <apacible@chromium.org> Reviewed-by: Mounir Lamouri <mlamouri@chromium.org> Cr-Commit-Position: refs/heads/master@{#562004} [modify] https://crrev.com/0c9e7fa97fffee5e796c009e1b2bf3f02ea985d0/chrome/browser/ui/views/overlay/overlay_window_views.cc
,
May 25 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/07eb80b1198cf5f80d4adae1d1c9da9ebcde0572 commit 07eb80b1198cf5f80d4adae1d1c9da9ebcde0572 Author: Jennifer Apacible <apacible@chromium.org> Date: Fri May 25 22:13:23 2018 [Picture in Picture] Support tabbing through window. This change adds support for tabbing through the controls in the window. Previously, the user can only utilise mouse clicks to interact with the controls. ControlButton will likely be updated to accommodate the addition of a non-constant number of custom actions in the future. UI affordances for the currently focused control will be added in a separate patch. BUG: 836389 Change-Id: Ic25524cfab9ceeba1d17ef00975347f6e3d562e6 Reviewed-on: https://chromium-review.googlesource.com/1072516 Commit-Queue: apacible <apacible@chromium.org> Reviewed-by: Mounir Lamouri <mlamouri@chromium.org> Cr-Commit-Position: refs/heads/master@{#562034} [modify] https://crrev.com/07eb80b1198cf5f80d4adae1d1c9da9ebcde0572/chrome/browser/ui/views/overlay/overlay_window_views.cc [modify] https://crrev.com/07eb80b1198cf5f80d4adae1d1c9da9ebcde0572/chrome/browser/ui/views/overlay/overlay_window_views.h
,
May 26 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c976a8ebabd49a1f48e481c10db76a7c801060a8 commit c976a8ebabd49a1f48e481c10db76a7c801060a8 Author: Jennifer Apacible <apacible@chromium.org> Date: Sat May 26 02:45:16 2018 [Picture in Picture] Reflect current control states in window. This change updates the Picture-in-Picture window's play/pause control to reflect the initiator media player's playback state. Previously, the control is updated only when the user interacts with the window. BUG: 836389 Change-Id: Ibd01196f5b1b0beef9903653df1174e57e727f3d Reviewed-on: https://chromium-review.googlesource.com/1065134 Commit-Queue: apacible <apacible@chromium.org> Reviewed-by: Dale Curtis <dalecurtis@chromium.org> Reviewed-by: Mounir Lamouri <mlamouri@chromium.org> Reviewed-by: Kinuko Yasuda <kinuko@chromium.org> Cr-Commit-Position: refs/heads/master@{#562105} [modify] https://crrev.com/c976a8ebabd49a1f48e481c10db76a7c801060a8/chrome/browser/ui/views/overlay/overlay_window_views.cc [modify] https://crrev.com/c976a8ebabd49a1f48e481c10db76a7c801060a8/chrome/browser/ui/views/overlay/overlay_window_views.h [modify] https://crrev.com/c976a8ebabd49a1f48e481c10db76a7c801060a8/content/browser/media/media_web_contents_observer.cc [modify] https://crrev.com/c976a8ebabd49a1f48e481c10db76a7c801060a8/content/browser/picture_in_picture/picture_in_picture_window_controller_impl.cc [modify] https://crrev.com/c976a8ebabd49a1f48e481c10db76a7c801060a8/content/browser/picture_in_picture/picture_in_picture_window_controller_impl.h [modify] https://crrev.com/c976a8ebabd49a1f48e481c10db76a7c801060a8/content/browser/web_contents/web_contents_impl_unittest.cc [modify] https://crrev.com/c976a8ebabd49a1f48e481c10db76a7c801060a8/content/public/browser/overlay_window.h [modify] https://crrev.com/c976a8ebabd49a1f48e481c10db76a7c801060a8/content/public/browser/picture_in_picture_window_controller.h [modify] https://crrev.com/c976a8ebabd49a1f48e481c10db76a7c801060a8/content/shell/browser/layout_test/layout_test_content_browser_client.cc [modify] https://crrev.com/c976a8ebabd49a1f48e481c10db76a7c801060a8/content/shell/browser/layout_test/layout_test_content_browser_client.h
,
May 29 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d2e44900508f503e278a00350eaa0c2615493573 commit d2e44900508f503e278a00350eaa0c2615493573 Author: Jennifer Apacible <apacible@chromium.org> Date: Tue May 29 21:21:52 2018 [Picture in Picture] Support tapping on window. This change adds support for tapping on the Picture-in-Picture window. Previously, the user can only utilise mouse and keyboard input to interact with the controls. Bug: 836389 Change-Id: I1dafe2fae098003196c383fd2f7cd5e270e384d3 Reviewed-on: https://chromium-review.googlesource.com/1075559 Reviewed-by: Mounir Lamouri <mlamouri@chromium.org> Commit-Queue: apacible <apacible@chromium.org> Cr-Commit-Position: refs/heads/master@{#562593} [modify] https://crrev.com/d2e44900508f503e278a00350eaa0c2615493573/chrome/browser/ui/views/overlay/overlay_window_views.cc [modify] https://crrev.com/d2e44900508f503e278a00350eaa0c2615493573/chrome/browser/ui/views/overlay/overlay_window_views.h
,
May 31 2018
Requesting merge #11 - 14.
,
May 31 2018
This bug requires manual review: There is .grd file changes and we are only 53 days from stable. Please contact the milestone owner if you have questions. Owners: cmasso@(Android), kariahda@(iOS), bhthompson@(ChromeOS), abdulsyed@(Desktop) For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
May 31 2018
There are no .grd file changes in the requested patches.
,
May 31 2018
,
May 31 2018
Approving merge for M68 - branch:3440
,
Jun 4 2018
This issue has been approved for a merge. Please merge the fix to any appropriate branches as soon as possible! If all merges have been completed, please remove any remaining Merge-Approved labels from this issue. Thanks for your time! To disable nags, add the Disable-Nags label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Jun 8 2018
This issue has been approved for a merge. Please merge the fix to any appropriate branches as soon as possible! If all merges have been completed, please remove any remaining Merge-Approved labels from this issue. Thanks for your time! To disable nags, add the Disable-Nags label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Jun 12 2018
,
Jun 12 2018
,
Jun 22 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/4101a17aa658b25e0b6c100e507cd7477259ead0 commit 4101a17aa658b25e0b6c100e507cd7477259ead0 Author: François Beaufort <beaufort.francois@gmail.com> Date: Fri Jun 22 10:34:25 2018 Fix Picture-in-Picture window close icon. This make sures the close icon in the Picture-in-Picture window is centered properly. Screenshot: https://imgur.com/a/3n6fNDW Bug: 836389 Change-Id: Id3418ad003440ab60c28ba748096237b853d2c61 Reviewed-on: https://chromium-review.googlesource.com/1109937 Reviewed-by: apacible <apacible@chromium.org> Commit-Queue: François Beaufort <beaufort.francois@gmail.com> Cr-Commit-Position: refs/heads/master@{#569572} [modify] https://crrev.com/4101a17aa658b25e0b6c100e507cd7477259ead0/chrome/browser/ui/views/overlay/overlay_window_views.cc |
||||||||
►
Sign in to add a comment |
||||||||
Comment 1 by apaci...@chromium.org
, Apr 24 2018