1
0
mirror of https://github.com/videojs/video.js.git synced 2024-11-30 09:06:49 +02:00
Commit Graph

3324 Commits

Author SHA1 Message Date
Gary Katsevman
2a028ba83b 7.4.2 2019-01-08 16:09:37 -05:00
dustin71728
8a3e2a72a9 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 15:12:12 -05:00
Gary Katsevman
7f507dfc6e 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 15:12:05 -05:00
Gary Katsevman
f1637cddaa 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 15:11:56 -05:00
Gary Katsevman
2bc90a1899 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-08 15:11:40 -05:00
Beatriz Mendes
05513f8d2b fix(remaining-time-display): make the '-' be visual and not readable by screen readers (#5671)
Fixes #5168
2019-01-08 15:10:21 -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
greenkeeper[bot]
2162239497 chore(package): update videojs-generate-karma-config to version 5.0.0 🚀 (#5595)
This removes testing in IE11 Win7 and pins QUnit to ~2.5.1 to prevent a weird stack trace issue.
2018-11-15 17:34:03 -05:00
Gary Katsevman
287b267305
docs: update starter template (#5570)
Use a codepen template for the starter template that includes the latest version of Video.js.

The template is at https://codepen.io/gkatsev/pen/GwZegv?editors=1000#0

Fixes #5562
2018-11-14 13:45:20 -05:00
greenkeeper[bot]
d95ef6ff15 fix(package): update @videojs/http-streaming to version 1.5.0 🚀 (#5587) 2018-11-14 13:44:06 -05:00
Gary Katsevman
b5e6bdcf7a
chore(player): fix linting for a comment (#5588) 2018-11-14 13:15:39 -05:00
Brandon Casey
b67fe271ba feat: responsive caption settings (#5534)
When responsive mode is set, make the caption settings dialog be more responsive to the size of the player.
Make whitespace and sizing a bit more consistent across elements.
2018-11-14 12:12:34 -05:00
fketchakeu
ab0e29a431 fix: duration reset and allow duration NaN or 0 for duration display (#5348)
This allows the duration NaN or 0 to update the duration display.
This also resets the duration display when a new media item is loaded with `preload` set to 'none'.

Fixes #5347
2018-11-14 12:09:55 -05:00
Quentí
0fb637d16f feat(lang): Add the Occitan locale (#5578) 2018-11-14 12:09:11 -05:00
Gary Katsevman
dec31e47b1
chore: use relative urls in index.html (#5586)
Using a relative url will make this page work whether run via the server
of npm start or a third party server that serves other things as well.
2018-11-14 12:06:55 -05:00