November 17th marked the pre-release of Video.js 6.5.0. It comes shortly after the release of 6.4.0, which has now been promoted to latest! This is a pretty exciting release because we finally got our own element! I like to call it the I Can’t Believe It’s Not Custom Elements because it isn’t an actual custom element but it’s not a standard HTML element either. Also, a nice and smooth progress bar thanks to a first time contributor; thanks @vhmth!. A pretty major memory leak fix, and many code refactors and bug fixes.
I’d like to thank everyone who contributed and the four first time contributors to Video.js: @vhmth, @FirefoxMetzger, @EhsanCh, and @shahlabs.
This post comes a week late because it was Thanksgiving week in the US after release and I was on break, if you celebrate Turkey day 🦃, hope you had a good one!
- I Can’t Believe It’s Not Custom Elements with a
<video-js>element. It works exactly like the
<video>embed but without requiring you to use the
<video>element and the benefits and drawbacks that come with it. It also adds the
video-jsclass name automatically for you, so, there’s no need to add it.
- A smooth progress bar!
- After much spelunking in the code base and developer tools, we’ve plugged most of the memory leaks with retained DOM elements in Video.js!
- Many code refactorings from our old code style to the new one by @kocoten1992!
- Previously, you could accidentally seek or toggle playback using the middle or right clicks. Now, just go ahead and try it!
- An accessibility fix with regards to title tooltips and menu items.
- Better handling of
play()in our new asynchronous world, especially immediately after changing the source.
- Vinay @vhmth First PR
- Ilya Piatrenka @odisei369
- Brandon Casey @brandonocasey
- @FirefoxMetzger First PR
- Ehsan Chavoshi @EhsanCh First PR
- Chuong @kocoten1992
- Martin Bachwerk @arski
- Pat O’Neill @misteroneill
- Labdhi Shah @shahlabs First PR
- add a version method to all advanced plugin instances (#4714) (acf4153)
- allow embeds via
element (#4640) (d8aadd5)
- Avoid empty but shown title attribute with menu items and clickable components (#4746) (dc588dd)
- Player#play: Wait for loadstart in play() when changing sources instead of just ready. (#4743) (26b0d2c)
- being able to toggle playback with middle click (#4756) (7a776ee), closes #4689
- make the progress bar progress smoothly (#4591) (acc641a)
- only allow left click dragging on progress bar and volume control (#4613) (79b4355)
- only print element not in DOM warning on player creation (#4755) (bbea5cc)
- trigger timeupdate during seek (#4754) (1fcd5ae)
- player.controls() (#4731) (d447e9f)
- player.listenForUserActivity (#4719) (c16fedf)
- player.userActive() (#4716) (6cbe3ed)
- player.usingNativeControls() (#4749) (eb909f0)