1
0
mirror of https://github.com/videojs/video.js.git synced 2024-11-24 08:42:25 +02:00
Commit Graph

3332 Commits

Author SHA1 Message Date
Brandon Casey
144907faeb chore: fix xvfb in travis config, patch safari karma launchers (#5755) 2019-01-15 16:13:43 -05:00
Pat O'Neill
b27f71347e fix: TextTrackMenuItem components should not disable text tracks of different kind(s). (#5741) 2019-01-10 14:24:15 -05:00
Henrique Lima
175f773253 feat: reset player ui on Player#reset (#5684)
Fixes #4683
2019-01-08 14:15:51 -05:00
dustin71728
dd63cf94d5 fix: remove child from old parent when moving to new parent via addChild (#5702)
A child component may have been assigned to another
parent before assigning that child component to the
new parent via "addChild" method. In this case, the
original parent should remove the child then it can
be safely added back to the new parent. This commit
will keep the parent's "children_" and its DOM
element's child nodes in the consistent state.
2019-01-08 14:14:46 -05:00
Gary Katsevman
f02fb1b801
fix(seekbar): don't disable if live tracker's seekable is infinity (#5721)
This was done to make the behavior on Android with HLS live streams better but the it's opening us up to too many potential issues, like a user not being able to properly disable the control bar, that we should just back it out.
2019-01-08 14:13:50 -05:00
Gary Katsevman
544ed9df34
fix(player): remove vjs-ended class on seeked (#5728)
Whenever we seek after the video has ended, we are no longer ended and
therefore we should remove the vjs-ended class.

Fixes #5654.
2019-01-08 11:28:44 -05:00
Gary Katsevman
2f00a68a51
fix(fs): make sure there's only one fullscreenchange event (#5686)
Before the fullscreen API was un-prefixed, we listened to triggered a
`fullscreenchange` event on the player manually. This worked fine
because a prefixed `fullscreenchange` event was triggered on the player
element itself. But when it was unprefixed, we ended up with two events
now, the unprefixed event and the one we triggered.

Instead, we should listen the event the browser supports and re-trigger
it as the unprefixed event as necessary.

We also make sure that the handler gets calls when the document level
fullscreenchange handler gets called so that it is cancelled properly.

Fixes #5685.
2019-01-07 16:38:47 -05:00
greenkeeper[bot]
513168f6d3 chore(package): update rollup-plugin-progress to version 1.0.0 🚀 (#5729) 2019-01-07 15:09:48 -05:00
greenkeeper[bot]
67a437b469 chore(package): update qunit to version 2.9.1 🚀 (#5735) 2019-01-07 14:42:10 -05:00
Beatriz Mendes
9a8376e1f4 fix(remaining-time-display): make the '-' be visual and not readable by screen readers (#5671)
Fixes #5168
2019-01-04 18:15:25 -05:00
Gary Katsevman
3e3387fbc6
chore(package): update rollup to version 1.0.1 (#5727)
Closes #5715
2019-01-04 12:38:47 -05:00
Pat O'Neill
4c9e09d460 fix: make sure sources, volume, and playback rate are reset along with the player (#5676)
Clear out the player cache_ on reset.

Fixes #5675
2019-01-03 15:14:54 -05:00
Tiago Fragoso
b02181b9fc feat: Add vjs-touch-enabled class for touch supporting devices (#5663)
Fixes #2999
2019-01-03 13:50:48 -05:00
Pat O'Neill
874cc21a4e feat: Add loadMedia and getMedia methods (#5652)
`loadMedia` accepts a MediaObject and an optional ready handler. It'll reset the player -- including text tracks, poster, and source -- before setting the new provided media, which include sources, poster, text tracks.
`getMedia` will return either the provided media object or the currently set values for sources, text tracks, and poster.

Fixes #4342
2019-01-03 13:49:34 -05:00
greenkeeper[bot]
3d093ede98 fix(package): update @videojs/http-streaming to version 1.6.0 🚀 (#5705) 2018-12-26 13:26:24 -05:00
Luis
0e69ce96c3 fix: css animation shorthand property order (#5687) 2018-12-26 13:04:16 -05:00
JoaoAlves
6ebc7727ef fix: Control-bar autohide when cursor placed over it #5258 (#5692)
Listen to 'mouseenter' and 'mouseleave' events when triggered in the control-bar and temporarily sets inactivity timeout to zero before restoring it.

Closes #5258
2018-12-26 13:03:36 -05:00
Grzegorz Blaszczyk
f38726e99a fix(lang): adds sv translation used by liveui component (#5704) 2018-12-26 13:02:19 -05:00
greenkeeper[bot]
f0ba1f5b2a chore(package): update rollup to version 0.68.0 🚀 (#5690) 2018-12-18 15:32:05 -05:00
Gary Katsevman
30d0b9812e
chore(package): update babel to version 7.2.2 (#5697)
Closes #5689
2018-12-18 11:38:10 -05:00
Brandon Casey
c1475819b2 docs(liveui): Add a guide for the live ui and live api (#5677)
Add documentation of the new line ui feature.
2018-12-18 11:12:12 -05:00
Gary Katsevman
bc7d530d3e 7.4.1 2018-12-11 16:52:24 -05:00
Brandon Casey
165c120db0 fix(a11y): make seek-to-live better announce itself to screen reader users (#5651)
To make the seek-to-live component more accessible, we hide the text that says "LIVE" from screen readers and make it be purely for sighted users. Then set the control text to be either "Seek to live, currently playing live" or "Seek to live, currently behind live" to indicate what this control does and be informative around whether we are at edge or not. Then use aria-disabled on control if we are at edge.
2018-12-11 16:40:56 -05:00
Brandon Casey
13b42ad05d test: verify null-checks with player and control bar children set to false (#5670) 2018-12-11 14:23:13 -05:00
Owen Edwards
70a71ae81e fix(a11y): fix hidden Control Text in Progress bar (Fixes #5251) (#5655)
- Update the Control Text in the load-progress-bar during loading, remove unnecessary Control Text from the play-progress-bar, and hide the time-tooltip feature from Assistive Technology using ARIA.
- Add a span around the vjs-control-text-loaded-percentage in load-progress-bar, and use that for the text to update.
- Hide the time-tooltip feature from Assistive Technology using ARIA

Fixes #5251
2018-12-11 11:26:12 -05:00
Alex Barstow
893261186b fix(a11y): current time and duration display accessibility with VoiceOver (#5653)
The desired behavior when navigating any of the TimeDisplay components (current time, duration, remaining time) with the arrow keys with a screen reader is for the singular parent div to receive focus, and the reader should announce the text of each child span in order, ex. "Current Time 0:17" and "Duration 1:10". This is how it works when using JAWS. However, with VoiceOver each individual child span element receives focus and the contents are announced separately.

According to the ARIA spec (see [here](https://www.w3.org/TR/html-aam-1.0/#details-id-124) and [example 8](https://www.w3.org/TR/wai-aria-1.1/#presentation)), there is no implicit role for span elements, so the contents should be exposed but the elements themselves should be invisible to screen readers. In other words, <span> Sample Content </span> should be the same as <span role="presentation"> Sample Content </span>. But this is not the case with VoiceOver. As far as I can tell, the desired behavior is only achieved with VoiceOver if each child span is explicitly made presentational, either by assigning each of them the presentation role, or by assigning the parent div a role that makes its children presentational (although there doesn't seem to be a role whose semantics fit the purpose of that div)

The first ARIA doc link above shows the Mac OS X Accessibility Protocol mapping for span elements is to the group role. I don't know enough about accessibility API mapping to confidently draw conclusions about root cause, but this seems like a possible explanation.

Changes:
* add role="presentation" to each of the two span elements inside TimeDisplay divs
* add aria-hidden="true to the TimeDivider (tangential improvement)
* fix inaccurate description of the TimeDisplay component (tangential improvement)
2018-12-11 11:08:28 -05:00
Grzegorz Blaszczyk
b9d8744170 fix(lang): improves sv lang file (#5673) 2018-12-11 10:45:00 -05:00
greenkeeper[bot]
d07b6c2136 chore(package): update rollup-plugin-node-resolve to version 4.0.0 🚀 (#5666) 2018-12-10 14:23:37 -05:00
Brandon Casey
dce4a2c7d4 fix(liveui): make edge detection less strict, add docs for option (#5661)
Use double the seekable increment for live edge detection.
Add liveui option.
2018-12-10 14:13:56 -05:00
Ognjen
98b4a1cf16 fix(lang): Update sr.json (#5657) 2018-12-10 13:43:16 -05:00
greenkeeper[bot]
8c9702a855 fix(package): update @videojs/http-streaming to version 1.5.1 🚀 (#5658) 2018-12-06 17:38:22 -05:00
Brandon Casey
831961b373 fix(liveui): seek to live should be immediate and other tweaks (#5650)
- Make sure that we seek to live playback on the first timeupdate
- Do not report that we are not live before playback has started (a timeupdate has been seen)
- Prevent negative seekable increments
- We can seek past the seekable value in the video element, so we use that to seek to live, rather than waiting for a seekable end change.
2018-12-06 15:15:18 -05:00
Gary Katsevman
62f9e78cf2
docs: remove grunt and update usage of build scripts (#5656) 2018-12-05 16:12:21 -05:00
Vitalii Tverdokhlib
b7aafdc718 fix(lang): append UKR translations and fix check translations command (#5642) 2018-12-05 15:03:03 -05:00
Gary Katsevman
19f346503c
chore(package): update autoprefixer to version 9.4.2 (#5647) 2018-12-04 11:06:33 -05:00
Gary Katsevman
ec3127dbd1 7.4.0 2018-12-03 16:08:27 -05:00
Brandon Casey
2974ad3db7 feat: support seeking during live playback via liveui option (#5511)
When liveui is enabled, allow seeking during the live window, add button that allows you to seek to the live edge and that indicates whether you are at the live edge or not.
2018-12-03 15:31:23 -05:00
Gary Katsevman
db1369a307
chore: update all the dev deps to their latest versions (#5645)
This was done via npx -p npm-check-updates ncu -x karma-browserify,xhr,qunit,sinon,webpack -a

Closes #5644, closes #5643.
2018-12-03 15:00:51 -05:00
Gary Katsevman
a8828cd76d
chore(netlify): make docs build properly (#5636)
Refactor of the clean task added docs/api, which didn't happen
previously. Re-order when things are generated to work around it.

Also, don't show rollup progress on netlify either.
2018-11-30 17:53:08 -05:00
Brandon Casey
d72786fc0c chore: remove grunt move to npm scripts (#5592) 2018-11-30 16:37:29 -05:00
Vitalii Tverdokhlib
0090b75672 fix(lang): add is loading ru translation (#5630) 2018-11-30 10:49:24 -05:00
Grzegorz Blaszczyk
e5e1e290fd feat: make menu background respect :focus-visible (#5558) 2018-11-30 10:47:25 -05:00
Quentí
484220173f fix(lang): Occitan: harmonisation plural/singular (#5602)
Everything in plural in the setting menus
2018-11-29 14:04:46 -05:00
Alex Barstow
8329e64e6f fix: default subtitles not enabled (#5608)
This is a follow-up to this fix in VHS, after which default in-manifest subtitles were still not being correctly enabled. The reason is because Video.js's text track preselection logic was running before the media groups were set up in VHS.

Text track preselection should happen on `loadedmetadata` instead of `loadstart`. According to the HTML spec, text track data is available on `loadedmetadata`, so we should be waiting until then to make preselection decisions.
2018-11-29 14:03:51 -05:00
Brandon Casey
6c1056b665 chore: fix travis build (#5627)
Disable running tests in Firefox on Travis for regular PRs as it wasn't the case previously and is broken for some reason. We'll follow up in the future in #5626.

Update .travis.yml based on their latest infrastructure and new npm caching method.

Silence logging of sourceset test sources.

Closes #5616
2018-11-28 17:25:59 -05:00
Gary Katsevman
3e52c4f931
chore(package): update npm-run-all to 4.1.5 to remove event-stream (#5614)
event-stream had unknown code added to it, npm-run-all 4.1.5 was updated
to fix that. https://github.com/dominictarr/event-stream/issues/116 for
more information
2018-11-26 12:19:01 -05:00
Owen Edwards
9cd73b3d6e
Fix typo 2018-11-20 14:20:56 -08:00
Gary Katsevman
ab740bcf09
chore: switch from cross-var to cross-env (#5600) 2018-11-16 12:28:44 -05:00
Brandon Casey
db6e3765c8 chore: Move a11y, lang, browserify, and webpack out of grunt (#5589) 2018-11-16 12:13:19 -05:00
Brandon Casey
be9e9a93db chore: fix lint on pre-commit with lint-staged, use npm-merge-driver (#5591)
run vjsstandard --fix on pre-commit on staged files via lint-staged.
Install npm-merge-driver to fix package-lock issues during merges and rebases.
2018-11-16 00:04:11 -05:00