Граф коммитов

61 Коммитов

Автор SHA1 Сообщение Дата
Andrew McCreight 38dac812ea Bug 1599175, part 1 - Remove unused 'browingContextId' message field in PictureInPictureChild. r=mconley
This field is misspelled. Don't worry though, it is also unused.

Differential Revision: https://phabricator.services.mozilla.com/D54565

--HG--
extra : moz-landing-system : lando
2019-11-25 18:19:01 +00:00
Ciure Andrei c24561eb05 Backed out 3 changesets (bug 1535437, bug 1591253) for causing browser_resizeVideo.js to permafail CLOSED TREE
Backed out changeset f7cc2f6d9640 (bug 1591253)
Backed out changeset bc637c20c7d4 (bug 1535437)
Backed out changeset 46b4eb05f2ae (bug 1535437)
2019-11-14 23:25:26 +02:00
Mark Striemer 54c97d535f Bug 1535437 - Part 2: Resize PiP window when video source resizes r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D50139

--HG--
extra : moz-landing-system : lando
2019-11-12 20:51:51 +00:00
Mike Conley 83b7a85186 Bug 1582600 - Make PiP code handle the case where sometimes calling .get() on a weak reference throws NS_ERROR_XPC_BAD_CONVERT_NATIVE (bug 800957). r=mstriemer
Differential Revision: https://phabricator.services.mozilla.com/D51939

--HG--
extra : moz-landing-system : lando
2019-11-07 18:31:42 +00:00
Gabriel Luong d1c32b6f80 Bug 1575075 - Add an audio toggle button in PiP to mute and unmute a video. r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D51413

--HG--
extra : moz-landing-system : lando
2019-11-04 21:14:50 +00:00
Teja Bayya d5ff37172c Bug 1576915 Port of Picture in Picture to JSWindowActors r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D49797

--HG--
extra : moz-landing-system : lando
2019-11-01 14:15:22 +00:00
Mike Conley 96bc42ea9f Bug 1592729 - Don't allow initting Picture-in-Picture for MediaStream videos. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D51159

--HG--
extra : moz-landing-system : lando
2019-10-31 14:37:26 +00:00
Mark Striemer 8098a9825a Bug 1590780 - Cleanup PiP video listeners when closed r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D50670

--HG--
extra : moz-landing-system : lando
2019-10-25 22:22:23 +00:00
dennisschagt 31a3f7f1d0 Bug 1568373 - Use black background for Picture-in-Picture window r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D49348

--HG--
extra : moz-landing-system : lando
2019-10-17 16:29:43 +00:00
Mike Conley 3c92d6087f Bug 1587362 - Make sure PiP toggle mouse button listeners are attached to the right WindowRoot after tab tear out / in. r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D48885

--HG--
extra : moz-landing-system : lando
2019-10-11 23:36:59 +00:00
shindli cc3e1c3110 Backed out 2 changesets (bug 1587362) for causing very frequent bc failures in toolkit/mozapps/extensions/test/browser/browser_about_debugging_link.js CLOSED TREE
Backed out changeset d3142d807c7f (bug 1587362)
Backed out changeset c71f9a59bdfe (bug 1587362)
2019-10-12 02:32:13 +03:00
Mike Conley 8db106d422 Bug 1587362 - Make sure PiP toggle mouse button listeners are attached to the right WindowRoot after tab tear out / in. r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D48885

--HG--
extra : moz-landing-system : lando
2019-10-11 21:00:15 +00:00
Mike Conley 51b7a87654 Bug 1585769 - Create a fresh <video> element for the Picture-in-Picture player window rather than cloning the original element. r=JSON_voorhees
Cloning the original node was needed when we needed the MediaInfo copied over, but
HTMLVideoElement::CloneElementVisually copies it over for us, so we can create a
fresh <video> element. This should also be a much healthier thing to do
security-wise, since we're not cloning strange nodes from the web.

Differential Revision: https://phabricator.services.mozilla.com/D48123

--HG--
extra : moz-landing-system : lando
2019-10-10 13:57:48 +00:00
Mike Conley 7429e303ed Bug 1582502 - Don't interpret a click at 0,0 of a fullscreen video as a click on the Picture-in-Picture toggle. r=JSON_voorhees
We weren't handling the case where the toggle has no dimensions, so its X and Y
coordinate would be at 0,0, which would match a click in the top-left corner of
the screen for a video that was fullscreened.

This adds a check that ensures that the toggle has both width and height before
checking whether or not a mouse event occurred within it.

Differential Revision: https://phabricator.services.mozilla.com/D47789

--HG--
extra : moz-landing-system : lando
2019-10-01 18:07:14 +00:00
Mike Conley 5794ef1442 Bug 1549442 - Make sure to hide the Picture-in-Picture toggle when the mouse cursor leaves the window. r=JSON_voorhees
Originally, we were using the :hover pseudoclass to show the Picture-in-Picture toggle,
and using the DevTools InspectorUtils module to manually apply that :hover pseudoclass
in PictureInPictureToggleChild in the event that the <video> element wasn't able to get
the :hover element "naturally".

Removing this pseudoclass when the mouse leaves the browser window (without first
leaving the toggle) doesn't work, since the mouseout event (which we use to detect
the mouse leaving the window) fires _after_ :hover states would normally be cleared,
so it's too late to "unlock" it.

The solution ended up being replacing the :hover pseudoclass with a .hovering class
that PictureInPictureToggleChild continues to manage on its own.

Differential Revision: https://phabricator.services.mozilla.com/D47677

--HG--
extra : moz-landing-system : lando
2019-10-01 18:09:43 +00:00
Mike Conley cf8d0284a0 Bug 1583882 - Close Picture-in-Picture player window if the originating <video> is removed from the DOM. r=JSON_voorhees
Differential Revision: https://phabricator.services.mozilla.com/D47613

--HG--
extra : moz-landing-system : lando
2019-10-01 16:20:51 +00:00
Mike Conley 376b551e6b Bug 1543810 - Regression test to ensure that the Picture-in-Picture works with videos that have pointer-events: none. r=JSON_voorhees
Differential Revision: https://phabricator.services.mozilla.com/D45232

--HG--
extra : moz-landing-system : lando
2019-09-14 14:27:37 +00:00
Mike Conley ef4806bc17 Bug 1543810 - Make sure Picture-in-Picture toggle works on videos that have pointer-events: none. r=JSON_voorhees
Differential Revision: https://phabricator.services.mozilla.com/D45231

--HG--
extra : moz-landing-system : lando
2019-09-11 18:38:30 +00:00
Noemi Erli f74e07d847 Backed out 2 changesets (bug 1543810) for failing in browser_togglePointerEventsNone.js CLOSED TREE
Backed out changeset a0c079f40c78 (bug 1543810)
Backed out changeset 5aec6172783d (bug 1543810)
2019-09-11 19:04:59 +03:00
Mike Conley b87f19be5a Bug 1543810 - Make sure Picture-in-Picture toggle works on videos that have pointer-events: none. r=JSON_voorhees
Differential Revision: https://phabricator.services.mozilla.com/D45231

--HG--
extra : moz-landing-system : lando
2019-09-11 00:11:22 +00:00
Mike Conley 3d0ca8182e Bug 1566183 - Add a keyboard shortcut to enter Picture-in-Picture for first video of focused window. r=NeilDeakin,JSON_voorhees,flod
Differential Revision: https://phabricator.services.mozilla.com/D40082

--HG--
extra : moz-landing-system : lando
2019-09-05 17:40:02 +00:00
Razvan Maries 1ad3f5b235 Backed out changeset bb08767934a8 (bug 1566183) for causing perma fails on browser_duplicateIDs.js. CLOSED TREE 2019-09-05 20:30:40 +03:00
Mike Conley 61209ad7a6 Bug 1566183 - Add a keyboard shortcut to enter Picture-in-Picture for first video of focused window. r=NeilDeakin,JSON_voorhees,flod
Differential Revision: https://phabricator.services.mozilla.com/D40082

--HG--
extra : moz-landing-system : lando
2019-09-05 14:09:25 +00:00
Mike Conley db96277530 Bug 1548296 - Attach Picture-in-Picture toggle on UAWidgetSetupOrChange event rather than canplay. r=JSON_voorhees
Videos can fire their "canplay" events even when they're not part of the DOM. This
means that videos that have already fired that event won't get the
PictureInPictureToggleChild properly attached after being inserted.

The UAWidgetSetupOrChange event, however, is fired for video events once they've
been bound to the DOM, so we can use that instead.

Differential Revision: https://phabricator.services.mozilla.com/D44541

--HG--
extra : moz-landing-system : lando
2019-09-04 21:06:26 +00:00
Mike Conley 50fbe8f5cb Bug 1571214 - Make sure to strip any element styles on the cloned <video> before inserting into the Picture-in-Picture player window. r=JSON_voorhees
Differential Revision: https://phabricator.services.mozilla.com/D42006

--HG--
extra : moz-landing-system : lando
2019-08-21 16:48:49 +00:00
Mike Conley d64c589ac1 Bug 1568320 - Add a context menu to the Picture-in-Picture toggle to allow for easy hiding. r=NeilDeakin,JSON_voorhees
Differential Revision: https://phabricator.services.mozilla.com/D40305

--HG--
extra : moz-landing-system : lando
2019-08-13 18:29:29 +00:00
Mike Conley 1d62a12e08 Bug 1568320 - Make Picture-in-Picture toggle preference live-updating. r=NeilDeakin,JSON_voorhees
Differential Revision: https://phabricator.services.mozilla.com/D40303

--HG--
extra : moz-landing-system : lando
2019-08-13 13:19:06 +00:00
Mike Conley 5c745b9ffa Bug 1557994 - Picture-in-Picture player video element should not try decoding its own version of the originating video. r=JSON_voorhees
Differential Revision: https://phabricator.services.mozilla.com/D39697

--HG--
extra : moz-landing-system : lando
2019-08-02 18:09:24 +00:00
Mike Conley 681b8ccd2e Bug 1570406 - Ensure that we properly detach window root event listeners in PictureInPictureToggleChild. r=JSON_voorhees
We were using the pagehide event before incorrectly: the pagehide event target
was being inspected to see if it was the top-level frame, and only then, would
we remove the mouse event handlers on the window root.

The problem is that event.target.top on a pagehide event is undefined, since the
event target is a Document.

Further, we probably want to remove any window root event listeners that were
registered for subframes as well. I'm not sure why I decided to try to filter
out subframes, but that definitely can keep windows alive.

So instead, I'm using the "cleanup" method that ActorManagerChild calls if
defined on an ActorChild, which runs when the associated frame unloads. This
way, if a subframe happened to have registered a window root event listener,
it'll get unregistered.

Differential Revision: https://phabricator.services.mozilla.com/D40090

--HG--
extra : moz-landing-system : lando
2019-08-01 16:53:02 +00:00
Mike Conley 9a7584fcf6 Bug 1566152 - Hide the Picture-in-Picture toggle after a period of no mousemove activity. r=JSON_voorhees
Differential Revision: https://phabricator.services.mozilla.com/D38378

--HG--
extra : moz-landing-system : lando
2019-07-18 00:50:08 +00:00
Mike Conley 4cad3b16a2 Bug 1566906 - Make Picture-in-Picture toggle only listen for clicks from the primary mouse button. r=JSON_voorhees
Differential Revision: https://phabricator.services.mozilla.com/D38376

--HG--
extra : moz-landing-system : lando
2019-07-18 00:47:53 +00:00
Victor Porof d3a1b5aeaa Bug 1561435 - Format toolkit/actors, a=automatic-formatting
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D36050

--HG--
extra : source : 2540803fff7587f65dd5d6253b6fb544647e5e20
2019-07-05 11:04:56 +02:00
Mike Conley d38b3552f2 Bug 1560590 - Add Telemetry for Picture-in-Picture opening and closing mechanisms. data-review=chutten,r=JSON_voorhees
Depends on D36358

Differential Revision: https://phabricator.services.mozilla.com/D36359

--HG--
extra : moz-landing-system : lando
2019-07-02 18:08:16 +00:00
Mike Conley b6719b756f Bug 1545296 - Suppress mouse button events firing in content when clicking on the Picture-in-Picture toggle. r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D29422

--HG--
extra : moz-landing-system : lando
2019-05-02 17:51:30 +00:00
Mike Conley b851e61ae7 Bug 1548096 - Make PictureInPictureChild process trusted events only. r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D29403

--HG--
extra : moz-landing-system : lando
2019-05-01 13:48:02 +00:00
Mike Conley 27357bc0b7 Bug 1540835 - Add some automated tests for the Picture-in-Picture toggle. r=Felipe
Depends on D27001

Differential Revision: https://phabricator.services.mozilla.com/D27002

--HG--
extra : moz-landing-system : lando
2019-04-25 03:35:29 +00:00
Mike Conley f2dd484a37 Bug 1540835 - Make Picture-in-Picture window closing more resilient to races. r=Felipe
We needed to handle the case where closePictureInPicture was being called on a window
that had already been closed but not yet GC'd.

Depends on D26807

Differential Revision: https://phabricator.services.mozilla.com/D27001

--HG--
extra : moz-landing-system : lando
2019-04-25 03:35:09 +00:00
Mike Conley 6f2e110ae1 Bug 1544969 - Show the Picture-in-Picture flyout when hovering the toggle. r=jaws,flod
Differential Revision: https://phabricator.services.mozilla.com/D27835

--HG--
extra : moz-landing-system : lando
2019-04-18 17:29:39 +00:00
Mike Conley 50caaa08a3 Bug 1543128 - Have PictureInPictureChild detect clicks on Picture-in-Picture toggle if visible. r=jaws
Depends on D26806

Differential Revision: https://phabricator.services.mozilla.com/D26807

--HG--
extra : moz-landing-system : lando
2019-04-15 01:09:46 +00:00
Mike Conley 416db4aeac Bug 1543128 - Have PictureInPictureToggleChild set hover states on the no-controls <video> widget manually. r=jaws
Depends on D26805

Differential Revision: https://phabricator.services.mozilla.com/D26806

--HG--
extra : moz-landing-system : lando
2019-04-15 01:09:26 +00:00
Mike Conley 559f6fe0f2 Bug 1543128 - Get rid of most of the AnonymousContent toggle implementation, but leave some things stubbed out for a later patch. r=jaws,zbraniecki
Depends on D26804

Differential Revision: https://phabricator.services.mozilla.com/D26805

--HG--
extra : moz-landing-system : lando
2019-04-15 01:09:12 +00:00
Mike Conley 189f9c4505 Bug 1542756 - Bug 1543128 - Add option to only return visible nodes from nsIDOMWindowUtils.nodesFromRect. r=emilio
Depends on D26778

Differential Revision: https://phabricator.services.mozilla.com/D26809

--HG--
extra : moz-landing-system : lando
2019-04-15 01:08:12 +00:00
Mike Conley c0298fe7f6 Bug 1543122 - Add the simple Picture-in-Picture toggle to the <video controls/> binding, still preffed off by default. r=jaws
This also stops the PictureInPictureToggleChild from tracking videos with controls for now.

Depends on D26777

Differential Revision: https://phabricator.services.mozilla.com/D26778

--HG--
extra : moz-landing-system : lando
2019-04-15 01:07:53 +00:00
Csoregi Natalia 9e8043e236 Backed out 10 changesets (bug 1542756, bug 1543128, bug 1543122) for multiple media failures /test_setSinkId.html. CLOSED TREE
Backed out changeset ce3a15e1b737 (bug 1543128)
Backed out changeset cea8c1af70ad (bug 1543128)
Backed out changeset aeb23f8f45fb (bug 1543128)
Backed out changeset a2e73d143aba (bug 1543128)
Backed out changeset 1692fc6491a0 (bug 1543128)
Backed out changeset 9fbce4274cfd (bug 1542756)
Backed out changeset 20092bcebe6a (bug 1543122)
Backed out changeset 1645d577016c (bug 1543122)
Backed out changeset 3fce0b7586c1 (bug 1543122)
Backed out changeset aab68db4131b (bug 1543122)
2019-04-13 06:22:47 +03:00
Mike Conley 33058a6bbd Bug 1543128 - Have PictureInPictureChild detect clicks on Picture-in-Picture toggle if visible. r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D26807

--HG--
extra : moz-landing-system : lando
2019-04-13 01:24:23 +00:00
Mike Conley a4cf1cd87c Bug 1543128 - Have PictureInPictureToggleChild set hover states on the no-controls <video> widget manually. r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D26806

--HG--
extra : moz-landing-system : lando
2019-04-13 01:24:05 +00:00
Mike Conley 326dd681a9 Bug 1543128 - Get rid of most of the AnonymousContent toggle implementation, but leave some things stubbed out for a later patch. r=jaws,zbraniecki
Differential Revision: https://phabricator.services.mozilla.com/D26805

--HG--
extra : moz-landing-system : lando
2019-04-13 01:23:48 +00:00
Mike Conley 0d5744162f Bug 1542756 - Bug 1543128 - Add option to only return visible nodes from nsIDOMWindowUtils.nodesFromRect. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D26809

--HG--
extra : moz-landing-system : lando
2019-04-13 01:22:58 +00:00
Mike Conley ab6c5e1a60 Bug 1543122 - Add the simple Picture-in-Picture toggle to the <video controls/> binding, still preffed off by default. r=jaws
This also stops the PictureInPictureToggleChild from tracking videos with controls for now.

Differential Revision: https://phabricator.services.mozilla.com/D26778

--HG--
extra : moz-landing-system : lando
2019-04-13 01:22:40 +00:00
Mike Conley c4e69ae516 Bug 1535354 - Add a toggle to trigger Picture-in-Picture that appears over top of <video> elements. Disabled by default. r=jaws,flod
Differential Revision: https://phabricator.services.mozilla.com/D25658

--HG--
extra : moz-landing-system : lando
2019-04-05 15:51:58 +00:00