aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Fixing "missing code in detail" for PlyrEvent typeakuma062020-05-051-40/+70
| | | | | When using typescript and listening for youtube statechange event, it is missing the code property definition inside the event (even though it is provided in the code). By making events a map of key-value, we can add easily custom event type for specific event name. Since YouTube "statechange" event differs from the basic PlyrEvent, I added a new Event Type "PlyrStateChangeEvent" having a code property corresponding to a YoutubeState enum defined by the YouTube API documentation. This pattern follows how addEventListener in the lib.dom.d.ts is defined.
* force fullscreen events to trigger on plyr element (media element in iOS) ↵Som Meaden2020-05-051-1/+3
| | | | and not fullscreen container
* Merge pull request #1818 from Bashev/patch-1Sam Potts2020-05-041-1/+2
|\ | | | | Update tooltips.scss
| * Update tooltips.scssKostadin Bashev2020-05-011-1/+2
| |
* | Merge pull request #1819 from Bashev/patch-2Sam Potts2020-05-041-1/+2
|\ \ | | | | | | Update controls.scss
| * | Update controls.scssKostadin Bashev2020-05-011-1/+2
| |/
* | add missing previewThumbnails optionstaylorchu2020-04-281-0/+10
| |
* | Merge pull request #1811 from taylorchu/better-control-2Sam Potts2020-04-292-5/+3
|\ \ | |/ |/| allow custom control as element
| * allow custom control as elementtaylorchu2020-04-282-5/+3
| |
* | v3.6.1Sam Potts2020-04-284-4/+4
|/
* HousekeepingSam Potts2020-04-241-1/+1
|
* Fix linting issuesSam Potts2020-04-242-1/+3
|
* Merge branch 'develop' into css-variablesSam Potts2020-04-246-8/+59
|\ | | | | | | | | | | | | | | | | # Conflicts: # src/js/captions.js # src/js/config/defaults.js # src/js/fullscreen.js # src/js/listeners.js # src/js/plyr.js
| * This commit addresses preloading TextTracks as outlined in feature request #1791Som Meaden2020-04-231-1/+13
| | | | | | | | | | | | These changes bring Plyr captions download behaviour in line with that of the default video element in major browsers. Specifically text tracks only download as they are required for display. Previously all text tracks would download when the Plyr instance was instantiated - which could become an issue when e.g. many translations are available. For a track to be downloaded it must either be the default track, the active track when captions are toggled on, or selected from the captions menu.
| * convert fullscreen children listeners logic to ~ES6Som Meaden2020-04-041-5/+5
| | | | | | | | remove gulp serve shortcut
| * This is a PR to allow for contextual content to be included in fullscreen ↵Som Meaden2020-04-045-5/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (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.
* | More work on custom properties and documentationSam Potts2020-04-2416-67/+63
| |
* | Migrate custom properties from media to parentSam Potts2020-04-232-0/+23
| |
* | Poster image fix (fixes #1763)Sam Potts2020-04-195-18/+11
| |
* | Vimeo ratio fixesSam Potts2020-04-196-42/+51
| |
* | Converted to 2 space indentationSam Potts2020-04-1175-9344/+9323
| |
* | Formatting fixesSam Potts2020-03-304-12/+24
| |
* | Merge branch 'develop' into css-variablesSam Potts2020-03-3054-666/+1421
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | # Conflicts: # demo/dist/demo.css # demo/dist/demo.min.js.map # demo/index.html # dist/plyr.css # dist/plyr.min.js.map # dist/plyr.min.mjs.map # dist/plyr.polyfilled.min.js.map # dist/plyr.polyfilled.min.mjs.map # gulpfile.js # src/sass/base.scss # src/sass/components/control.scss # src/sass/settings/colors.scss # src/sass/settings/controls.scss
| * Added prettier scriptSam Potts2020-03-291-4/+23
| |
| * Merge branch 'develop' of github.com:sampotts/plyr into developSam Potts2020-03-2913-38/+109
| |\ | | | | | | | | | | | | | | | # Conflicts: # package.json # yarn.lock
| | * Merge pull request #1686 from lawchihon/masterSam Potts2020-03-291-0/+1
| | |\ | | | | | | | | Added missing full screen options for type definition
| | | * Added missing full screen options for type definitionJohn Law2020-02-121-0/+1
| | | |
| | * | Merge pull request #1697 from hug963/fix-vimeo-playback-rateSam Potts2020-03-291-0/+3
| | |\ \ | | | | | | | | | | Fix vimeo playback rate
| | | * | catch error in setPlaybackRate on VimeoHugues2020-02-201-0/+3
| | | | |
| | * | | Merge pull request #1724 from Steejo/ads-plugin-fixesSam Potts2020-03-291-12/+21
| | |\ \ \ | | | | | | | | | | | | Ads plugin fixes to allow multiple VAST requests
| | | * | | Ads plugin fixes to allow multiple VAST requestsSteejo2020-03-091-12/+21
| | | | | |
| | * | | | Merge pull request #1705 from doublex/masterSam Potts2020-03-291-7/+22
| | |\ \ \ \ | | | | | | | | | | | | | | preview-thumbnails via src:callback()
| | | * | | | Fixes2max2020-02-261-4/+4
| | | | | | |
| | | * | | | Fixesmax2020-02-261-6/+9
| | | | | | |
| | | * | | | preview-thumbnails via src:callback()max2020-02-251-7/+19
| | |/ / / / | |/| | | |
| | * | | | Merge pull request #1739 from ydylla/ignore-internal-play-promisesSam Potts2020-03-296-10/+42
| | |\ \ \ \ | | | | | | | | | | | | | | Ignore internal play promises
| | | * | | | silence all internal play promisesydylla2020-03-236-10/+42
| | | |/ / /
| | * | | | Merge pull request #1727 from jnoordsij/fix_shadowrootSam Potts2020-03-292-2/+2
| | |\ \ \ \ | | | |/ / / | | |/| | | Fix shadowroot
| | | * | | Compare fullscreenElement with shadowroot host if player is in shadow DOMJesper2020-03-101-1/+1
| | | | | |
| | | * | | Fix prototype used for selector matcher functionJesper2020-03-101-1/+1
| | | | | |
| | * | | | Merge pull request #1706 from sampotts/masterSam Potts2020-02-261-4/+3
| | |\| | | | | | | | | | | | | | | Merge back
| | | * | | Use number instead of string in TS quality definitionsMorgan Zolob2020-02-241-4/+3
| | |/ / / | |/| | | | | | | | Using strings for the quality doesn't work, plyr expects numbers, so this fixes the definitions.
| | * | | Merge pull request #1704 from hug963/add-missing-ts-typesSam Potts2020-02-261-0/+25
| | |\ \ \ | | | | | | | | | | | | Add missing Typescripts types and options
| | | * | | Add missing Typescripts types and optionsHugues2020-02-251-0/+25
| | | |/ /
| | * / / Completely hide SVG icons to screen readersBenoît Burgener2020-02-251-1/+1
| | |/ / | | | | | | | | | | | | SVG icons should be ignored by screen readers since they have complimentary labels (aria-label or plyr__sr-only). The current « presentation » role simply makes the element behave like a « span » which is incorrect, aria-hidden prevents screen readers from taking care of these elements at all.
| | * / Fix issue when controls config is string or elementCzBiX2020-02-171-1/+2
| |/ /
| * | v3.5.10Sam Potts2020-02-143-3/+3
| | |
| * | v3.5.10Sam Potts2020-02-141-0/+6
| | | | | | | | | | | | - iOS volume display fix
| * | v3.5.9 deployedSam Potts2020-02-143-3/+3
| | |
| * | Merge branch 'master' into developSam Potts2020-02-142-8/+8
| |\ \