6.0.0 (2017-04-03)
Features
videojs.getTech
works withTitleCase
orcamelCase
names (#4010) (a8f2e43), closes #3986- add a controlText function to MenuButton (#4125) (4388bea)
- Advanced Class-based Plugins for 6.0 (#3690) (8d1653a)
- allow seeking in full height of progress control (#4004) (29c6141)
- allow tokens in localize, localize progress bar time (#4060) (db01120), closes #4024
- Combine captions and subtitles tracks control (#4028) (74eb5d4)
- don't throw when re-registering a plugin unless it's a player method (#4140) (326398d)
- Expose Tech#resize event as Player#resize (#3979) (e176b56)
- lang: Update tr.json (#3989) (37a6811)
- fix accessibility of the captions setting dialog (#4050) (0d0dea4), closes #2746 #2746
- localize all strings in captions settings (#3974) (8e7d8cc)
- Log Levels (#3853) (844e4f0)
- make
registerTech
add that tech to the defaulttechOrder
(#3985) (c2545dd) - Make pause on open optional for ModalDialog via options (#4186) (90030d5)
- lang: update Vietnamese lang file (#3964) (1463e50)
- Make text tracks settings more responsive (#4236) (9274457)
- middleware (#3788) (34aab3f)
- modal dialog accessibility updates (#4025) (eddc1d7)
- remove flash tech (#3956) (b387437)
- Replay at ended (#3868) (ce6acc8)
- Restore all outlines for greater accessibility (#3829) (29ffbfb)
- Return the native Promise from play() (#3907) (091bdf9)
- Stateful Components (#3960) (d7d7cfe)
- Time Tooltips (#3836) (1ba1f5a)
- time tooltips will not be added to a player on mobile devices (#4185) (d79b8a7)
- toggle playback with space when focused on seekbar (#4005) (516c9f9)
- unmute goes back to previously selected volume (#3942) (cb42fcf), closes #3909
- Update MW to require a factory, add *-mw (#3969) (0352916)
- update videojs-vtt.js and wrap native cues in TextTrack (#4115) (96a387f), closes #4093
- wrap menu item text in a span (#4026) (5748c36), closes #4017
- lang: add European Portuguese translation (#3955) (8888e2b)
- lang: DE and FR translations of replay (#3963) (a0ba8e2)
- lang: French translation update (#4118) (8c1302e)
- lang: update es.json (#3984) (70d2eb1)
- player: add played(), defaultMuted(), defaultPlaybackRate() (#3845) (2037e18), closes #523
- volume panel: accessibly volume control (#3957) (524f868)
Bug Fixes
- accessibility bugs with the VolumeBar (#4023) (da2a1e0), closes #4021 #4022
- add buildWrapperCSSClass methods to all menu buttons (#4147) (61d427c)
- Add lang attribute to player el, so that css :lang() is correct (#4046) (17143fd)
- addChild instance names should be toTitleCased (#4116) (576ac19)
- allow changing volume in full height of volume control (#3987) (f87ada1)
- copy basic plugin properties onto the wrapper (#4100) (127cd78)
- cues at startTime 0 do not fire (#4152) (a2b1a33)
- Disable all time tooltips in IE8, as they are broken (#4029) (60bcc99)
- disable title attribute on menu items (#4019) (04f23c1), closes #3699
- Do not create element for MediaLoader (#4097) (1cb0a97)
- early play should wait for player ready, even if source is available (#4134) (3bbf019), closes #4057
- EventTarget is also evented (#3990) (e34335b)
- fix the structure of elements in menus to comply with ARIA requirements (#4034) (1b1ba04)
- focus play toggle from Big Play Btn on play (#4018) (4f79e1e), closes #2729
- hide font-icons from assitive technology (#4006) (24d2e7b), closes #3982
- improve French translation (#4062) (dc4c1eb)
- keep minimum volume after unmuting above 0.1 (#4227) (16c1e0a), closes #4054
- localize aria-labels (#4027) (0ac1269), closes #2728
- Make
Player#techCall_()
synchronous again (#3988) (3585af0) - make load progress buffered regions height 100% (#4190) (424fa51)
- make mergeOptions behave the same across browsers (#4088) (0da9324)
- make sure audio track hides with one item (#4202) (0fd7aad)
- Muting with
MuteToggle
sets ARIA value ofVolumeBar
to 0 (#4099) (181a19f), closes #4064 - not showing default text tracks over video (#4216) (dbfba28)
- Patch a memory leak caused by un-removed track listener(s). (#3976) (4979ea7)
- Progress holder gaps cause tooltips misalignment and time tooltip outlines (#4031) (be27f2a), closes #3645
- remaining time display width on IE8 and IE9 (#3983) (866a3f3)
- MenuButton: Unify behavior of showing/hiding (#4157) (c611f9f)
- remove focus ring from player itself (#4237) (e98c65d)
- audio-tracks-button: add wrapper CSS builder to audio tracks menu button (#4163) (d9ec7bc)
- cues: only copy cue props that don't exist (#4145) (0f57341)
- dom: getBoundingClientRect check that el is defined (#4139) (fb88ae2)
- icon-placeholder: align icons on ie8 properly (#4174) (1770f00)
- ie8: various minor ie8 fixes (#4175) (cb890a9)
- package: update xhr to version 2.4.0 (#4101) (5265624)
- playback rate menu: playback rate menu items should be selectable (#4149) (a9f8fcb)
- sass: import path has cwd once again (#4061) (caff93f)
- sass: import path no longer has cwd (#4001) (19b429b), closes #3998
- subs-caps-button: add hide threshold to subs-caps button (#4171) (88ee6af)
- remove redundant Html5#play() (405b29b)
- removeCue should work with native passed in cue (#4208) (f2b5a05)
- Set MuteButton controlText correctly (#4056) (3c1108c)
- silence play promise error (#4247) (0908d91)
- Solve a typo in translation files (#4063) (5540868)
- support empty src in
Player#src
(#4030) (6541467) - synchronously shim vtt.js when possible (#4083) (e1b4804)
- trap tab focus in modal when hitting s-tab (#4075) (1f7a842), closes #4049
- updating time tooltips when player not in DOM (#3991) (22aade1)
- subs-caps-button: add wrapper CSS builder to subs caps button (#4156) (e5af0a5)
- subs-caps-button: captions items should hide icon from SR (#4158) (2ee133f)
- text track settings: focus subs-caps button if exists over CC button (#4155) (db901c5)
- tracks: allow forcing native text tracks on or off (#4172) (67634cf)
- vttjs: wait till tech el in DOM before loading vttjs (#4177) (ddde644)
Chores
- 6.x build updates (#4228) (6d876ee)
- Add flash as a dev dependency for testing (#4016) (4949619)
- change accessibility test in grunt.js to remove unnecessary warning message. (#4143) (dacf0ca)
- package: update remark-validate-links to version 6.0.0 (#4128) (1395677)
- ignore qunit and sinon from greenkeeper (#4242) (29d733d)
- increase browserstack/karma timeouts, dispose player in tests (#4135) (6874fa2)
- only report errors during linting in the build process, not warnings (#4041) (6208e4b)
- remove bower.json (#4238) (0d19a05), closes #4012
- package: update webpack to version 2.3.0 (#4219) (0223057)
- Remove component.json and remove references to it (#3866) (0bba319)
- docs: Use Elephants Dream video files from CDN for docs/examples/elephantsdream/ (#4181) (af1c6e3)
- package: pin karma to 1.3.0 (#4002) (5b8b41e)
- package: update remark-cli to version 3.0.0 (#4126) (dc9ed1c)
- package: update remark-lint to version 6.0.0 (#4129) (9ef2d07)
- package: update remark-toc to version 4.0.0 (#4127) (d5a619d)
- package: update uglify-js to version 2.8.8 (#4170) (bf787bd), closes #4138
- package: update videojs-vtt.js to version 0.12.3 (#4221) (7d12c9e)
- package: update xhr to version 2.3.3 (#3914) (924fb27)
- switch from ghooks to husky (#4074) (c3b1d68)
- sandbox: Fix poster image to match the video in the 'combined-tracks.html' example in sandbox (#4164) (5ffe1cd)
- sandbox: Use Elephants Dream video files from CDN for the sandbox/descriptions.html.example. (#4137) (715f584)
- test: silence plugin warning from test (#4173) (05e6494)
- tests: make tests not print out errors (#4141) (f95815b)
Code Refactoring
- Buttons will always use a button element (#3828) (c340dbc)
- do not allow adding children with options passed in as a boolean (#3872) (b07143d)
- Evented Components (#3959) (4c3b60c)
- expose tech but warn without safety var (#3916) (8622b26)
- Make registerComponent only work with Components (#3802) (57af15c)
- move most volume panel functionality into css state (#3981) (2e2ac6f)
- MuteToggle#update (#4058) (a04f387)
- Remove custom UMD (#3826) (2014120)
- Remove deprecated features of extend/Component#extend (#3825) (f8aed4d)
- Remove method Chaining from videojs (#3860) (8f07f5d)
- remove special loadstart handling (#3906) (73b6316)
- Remove TimeRanges without an index deprecation warning (#3827) (e12bedb)
- Remove unused defaultVolume option default (#3915) (5377ffc)
- unify all Track and TrackList APIs (#3783) (49bed07)
Documentation
- Add MediaLoader to components list (#4070) (65dc81a)
- Expand testing info in
CONTRIBUTING.md
(#4020) (2da4e76) - fix broken links to guides in the faq (#3973) (58f2349)
- fix links in generated docs (#4200) (61e2078)
- fixup global jsdoc members (#4015) (6ad1e5c)
- minor fix to currentTime() comment: "setting" not "getting" (#3944) (6578ed9)
- coc: introduce CODE_OF_CONDUCT.md (#4160) (312b10c)
- ran
npm run docs:fix
to update TOC on guides (#3971) (de3945d) - guide: Add a
ModalDialog
guide (#3961) (7b0d738) - guides: Add a basic ReactJS guide and update the FAQ (#3972) (05b39fe)
- replace 'autoPlay' by 'autoplay' (#4080) (7ab52d1), closes #3995
- tech order will only have html5 by default (#4188) (41be5dc)
- guides: fix typos in faq guide (#4067) (2433915)
- guides: fix typos in functions guide (#4035) (0fc2c1c)
- jsdoc: introduce a jsdoc template and build on publish (#3910) (e642295)
Tests
- ie8: only run mute toggle tests in html5 env (#4003) (5bde16a)
- add tests for obj.assign util (#4014) (fcb5aa8)
- fix IE9 rounding issue with lastvolume test (#4230) (46dd0aa)
- fix tests (#3953) (7bafcc2)
BREAKING CHANGES
- setting the source is now asynchronous.
sourceOrder
option removed and made the default. - remove deprecated features.
- volume panel: remove VolumeMenuButton, introduce a new default volume control: VolumePanel.
- removal of
keepTooltipsInside
option. - some externally accessibly functions for tracks are now private.
- player methods no longer return a player instance when called. Fixes #3704.
- removal of component.json
- remove flash tech from core.
- restoring the outlines changes the skin slightly and potentially break users. Fixes #3200.
- registerComponent now throws if no name or not a component is passed in.
- remove the double loadstart handlers that dispose the tech/source handlers if a secondary loadstart event is heard.
- remove ability to add children with options as a boolean.
- removing ability to use TimeRange methods without an index.
- button component will always use a button element.
play()
no longer returns the player object but instead the native Promise or nothing.