Commit Graph

712 Commits

Author SHA1 Message Date
353e19e746 revert dist (brain fart earlier .. deleted instead of reverting) 2020-04-05 12:32:17 +10:00
c23b4576df remove dist 2020-04-04 14:21:59 +10:00
49ed2cac4e This is a PR to allow for contextual content to be included in fullscreen (or fallback) mode. This means arbitrary elements (extensions to the basic player UI) can be overlaid and remain visible when the player switches to fullscreen.
Example use-cases include:
 - display of video title or other metadata (see the included demo)
 - alternative access to menu items, such as a searchable captions list (in cases where many hundreds of languages are available)
 - custom share dialogs
 - integrated playlists with 'playing next' overlays

This approach / PR is just an example of how this feature could work and aims to keep Plyr complexity to a minimum (while enabling some fairly interesting integrations). It utilises a single config option, and does away with the need for injecting bespoke APIs or elements into the player context on a per-project basis. Or trying to mess with what is a pretty slick, but tightly coupled system.

For the user: A new `fullscreen.container` attribute is used to provide a container selector. The container must be an ancestor of the player, otherwise it's ignored. When toggling fullscreen mode, this container is now used in place of the player. Hovering over any children of the container is the same as hovering over the controls. The exception is where the player and the child share a common ancestor (that's not the fullscreen container) ... sounds complex but it's not. You can also gain pretty fine control this way with pointer events.

Under the hood: it adds a `utils/elements/closest` helper method to find the right ancestor. If found this is returned as the fullscreen target in place of the player container. Fullscreen is instantiated slightly earlier in the setup so this container is available for the `listeners.controls` call. In here we add some more 'mouseenter/mouseleave' listeners to any direct descendants of the container, that aren't also ancestors of the player. And that's it. No extra classes, nothing else. There are some style changes to the demo (top margin on the player) but these would be project specific.

Thanks for reading.
2020-04-04 13:43:51 +10:00
ad63af5096 Added prettier script 2020-03-29 12:13:24 +11:00
09598f07bf Merge branch 'develop' of github.com:sampotts/plyr into develop
# Conflicts:
#	package.json
#	yarn.lock
2020-03-29 12:02:59 +11:00
3509995756 Build 2020-03-27 23:50:40 +11:00
206e3b57d1 v3.5.10 2020-02-14 17:37:32 +00:00
6350b7b9e4 v3.5.10
- iOS volume display fix
2020-02-14 17:33:09 +00:00
04d06f2242 v3.5.9 deployed 2020-02-14 17:00:33 +00:00
442427ebd5 v3.5.9
-   Fix for regression with volume control width
-   Ensure poster image is not downloaded again for HTML5 videos
2020-02-14 16:54:22 +00:00
2e2c5ad72a Styles 2020-02-13 15:06:38 +00:00
a6ff0274a9 v3.5.8 deployed 2020-02-10 18:38:54 +00:00
bb7f7d5e2a 3.5.7 2020-02-09 21:59:40 +00:00
818e1efd43 Deployed 3.5.7-beta.0 2020-01-30 14:56:52 +00:00
fefcca7805 Prepare for 3.5.7 release 2020-01-30 11:34:07 +00:00
4f263ebb1a Added local server, package upgrades 2020-01-13 15:49:29 +00:00
7c442c9357 3.5.6 2019-06-21 12:35:47 +10:00
dfc09b8e04 v3.5.5 deployed 2019-06-21 00:24:28 +10:00
8fc6c2ba52 File rename and clean up 2019-06-21 00:19:37 +10:00
c4b3e0672e Clean up 2019-06-21 00:10:57 +10:00
e8e2b8ba39 Merge branch 'master' into develop
# Conflicts:
#	.eslintrc
#	demo/dist/demo.css
#	demo/dist/demo.js
#	demo/dist/demo.min.js
#	demo/dist/demo.min.js.map
#	dist/plyr.css
#	dist/plyr.js
#	dist/plyr.min.js
#	dist/plyr.min.js.map
#	dist/plyr.min.mjs
#	dist/plyr.min.mjs.map
#	dist/plyr.mjs
#	dist/plyr.polyfilled.js
#	dist/plyr.polyfilled.min.js
#	dist/plyr.polyfilled.min.js.map
#	dist/plyr.polyfilled.min.mjs
#	dist/plyr.polyfilled.min.mjs.map
#	dist/plyr.polyfilled.mjs
#	package.json
#	readme.md
#	src/js/listeners.js
#	yarn.lock
2019-06-20 23:56:19 +10:00
2e40b91ec1 Styling tweaks for demo 2019-06-20 23:50:46 +10:00
0249772f01 Clean up 2019-06-01 19:50:29 +10:00
c9055f391b Linting changes 2019-06-01 18:45:07 +10:00
80aa6ffe43 Linting changes 2019-04-30 23:44:05 +10:00
0694e58650 v3.5.4 2019-04-25 12:14:48 +10:00
2bd08cdc28 3.5.3 2019-04-12 18:44:05 +10:00
5b7a025d26 Housekeeping 2019-03-16 11:57:15 +11:00
4c3bf25b8a Fixed issue where the preview thumbnail was present while scrubbing 2019-02-24 12:10:20 +11:00
215fc3677a v3.5.1 2019-02-23 13:14:01 +11:00
80990c98c8 Deployed v3.5.0 2019-02-19 01:25:39 +11:00
44d3a17870 Fix links 2019-02-19 01:17:08 +11:00
54110f8358 Update build process 2019-02-19 01:05:59 +11:00
153b8dc6bb Added RangeTouch, updated Shr lib in demo 2019-02-19 00:19:25 +11:00
0189e90fce Fix deployment 2019-02-12 13:55:45 +11:00
dbd2136bac Fix for cue points missing 2019-02-07 23:45:19 +11:00
eb628c8e4f Ads bug fixes 2019-02-01 00:24:48 +11:00
fa4868a26d Fix listeners for preview thumbs when changing source 2019-01-29 21:33:16 +11:00
c125c1a2c0 Added ES builds 2019-01-27 01:08:39 +11:00
1d51b28701 Tweaks 2019-01-26 22:45:47 +11:00
8b57104f83 Docs for preview thumbs 2019-01-26 17:17:27 +11:00
44739a17d0 Merge branch 'master' into develop
# Conflicts:
#	changelog.md
#	demo/dist/demo.js.map
#	demo/dist/demo.min.js
#	demo/dist/demo.min.js.map
#	demo/index.html
#	dist/plyr.js.map
#	dist/plyr.min.js
#	dist/plyr.min.js.map
#	dist/plyr.polyfilled.js
#	dist/plyr.polyfilled.js.map
#	dist/plyr.polyfilled.min.js
#	dist/plyr.polyfilled.min.js.map
#	package.json
#	readme.md
#	yarn.lock
2019-01-26 16:50:37 +11:00
464acd1a36 Package upgrades 2019-01-26 16:45:30 +11:00
c44351507f Plugin tweaks for ads and previews 2019-01-26 16:31:47 +11:00
c577eb01ce Style tweaks for preview plugin 2019-01-22 16:24:46 +11:00
263e88f6b3 Comments 2019-01-21 00:39:28 +11:00
4ab8a54a11 Preview design tweaks 2019-01-21 00:32:20 +11:00
f927d26ce7 v3.4.8
- Calling customized controls function with proper arguments (thanks @a60814billy)
2019-01-17 11:37:19 +11:00
6782737009 Fullscreen fixes 2019-01-14 00:33:48 +11:00
2c8a337f26 v3.4.7
-   Fix for Vimeo fullscreen with non native aspect ratios (fixes #854)
2018-11-08 23:34:10 +11:00