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

473 Commits

Author SHA1 Message Date
Gary Katsevman
e2c8c125a2 @gkatsev changed emulated tracks to in novtt to wait for vttjs to load or error before parsing. closes #3181 2016-03-17 14:53:00 -04:00
brandonocasey
c1112b74fe @BrandonOCasey updated text track unit tests to use full es6 syntax. closes #3148 2016-03-07 14:54:32 -05:00
Gary Katsevman
f77bcc95d0 @gkatsev cleared waiting/spinner on timeupdate. Fixes #3124. closes #3138 2016-03-07 14:48:15 -05:00
Erik Yuzwa
fc7a166705 @erikyuzwa added ability to add child component at specific index. closes #2540 2016-02-04 13:42:49 -05:00
jforbes
c8646aa02b @forbesjo updated emulated tracks to have listeners removed when they are removed. closes #3046 2016-02-02 14:29:31 -05:00
Owen Edwards
16f0179c07 @OwenEdwards added ClickableComponent. Fixed keyboard operation of buttons. closes #3032 2016-01-25 18:30:12 -05:00
Gary Katsevman
6977b0e3fe @gkasev updated vjs to correctly return already created player when given an element. closes #3006 2016-01-15 15:27:35 -05:00
Gary Katsevman
dcf2a300ef make sure that styleEl_ is in DOM before removing on dispose. closes #3004 2016-01-14 14:01:30 -05:00
Pat O'Neill
8ad286a768 @misteroneill exposed createEl on videojs. closes #2926 2016-01-07 23:03:23 -05:00
Carey Hinoki
8f2bc92412 @chemoish emulated HTMLTrackElement to enable track load events. closes #2804 2015-12-08 11:24:51 -05:00
Gary Katsevman
e78e26b8a4 @gkatsev added a Player#reset method. Fixes #2852. closes #2880 2015-12-07 17:45:50 -05:00
Gary Katsevman
0b7a2e41b3 @gkatsev added Player#tech. Fixes #2617. closes #2883 2015-12-07 16:27:33 -05:00
jrivera
69b89e51f4 @imbcmdth added sourceOrder option for source-first ordering in selectSource. closes #2847 2015-11-25 17:11:36 -05:00
jforbes
8acd28c15a @forbesjo updated formatTime to not go negative. closes #2821 2015-11-25 16:46:41 -05:00
Garrett Singer
72f77d77c9 @gesinger fixed handler explosion for cuechange events. closes #2849 2015-11-25 16:13:23 -05:00
Garrett Singer
7171ea8d42 @gesinger checked for track changes before tech started listening. closes #2835 2015-11-25 16:00:49 -05:00
Gary Katsevman
5f9095079e @gkatsev fixed clearing out errors. closes #2850 2015-11-24 15:37:34 -05:00
Violeta Marculescu
c0d5f471bc @bcvio fixed returning current source rather than blob url. closes #2833 2015-11-23 12:04:31 -05:00
Nathaniel Bibler
3a40b10fa6 @nbibler ensured classes begin with alpha characters. Fixes #2828. closes #2829 2015-11-20 17:38:05 -05:00
Gary Katsevman
d1316a39ab @gkatsev updated MediaLoader to check for techs in their registry. closes #2798 2015-11-10 15:53:14 -05:00
Gary Katsevman
0da23c1d8d @gkatsev fixed usage of textTracksToJson. closes #2797 2015-11-10 15:30:09 -05:00
Pat O'Neill
f2fa8f8687 @misteroneill exposed DOM helpers. closes #2754 2015-11-09 17:43:17 -05:00
Brian Deitte
4e395b6b02 Add unit test for new rtmp path changes 2015-11-09 14:31:15 -05:00
Gary Katsevman
5d754c911d @gkatsev made initListeners more general and added Tech.isTech. Fixes #2767. closes #2773 2015-11-06 16:42:19 -05:00
Pat O'Neill
51f1863adc @misteroneill added a modal dialog. closes #2668 2015-10-28 13:28:15 -04:00
Gary Katsevman
ab88bcdde3 @gkatsev fixes track tests and ignored empty properties in tracks converter. closes #2744 2015-10-27 15:54:48 -04:00
Nicky Gerritsen
589cab7fa7 @nickygerritsen added canPlayType method to player. closes #2709 2015-10-27 13:46:05 -04:00
Gary Katsevman
93e079718e @gkatsev removed unhelpful isCrossOrigin test. closes #2715 2015-10-26 16:57:21 -04:00
heff
cd6c568a03 @imbcmdth fix potential triggerReady infinite loop 2015-09-29 09:28:02 -07:00
heff
e225fbffc2 Merge branch 'master' into stable
Conflicts:
	dist/video-js/video-js.css
	dist/video-js/video-js.less
	dist/video-js/video-js.min.css
	dist/video-js/video-js.swf
	dist/video-js/video.dev.js
	dist/video-js/video.js
	dist/video-js/video.novtt.dev.js
	dist/video-js/video.novtt.js
	src/css/video-js.less
	src/js/control-bar/time-display.js
	src/js/exports.js
	src/js/lib.js
	src/js/media/flash.js
	src/js/media/flash.rtmp.js
	src/js/media/html5.js
	src/js/media/media.js
	src/js/player.externs.js
	test/unit/api.js
	test/unit/flash.js
	test/unit/media.html5.js
	test/unit/media.js
2015-09-29 09:14:50 -07:00
Benoit Tremblay
2de28927d7 @eXon added support for a tech-supplied poster. closes #2339 2015-09-28 11:23:25 -07:00
Gary Katsevman
0b7cf586c2 @gkatsev exposed isCrossOrigin and used it to enable CORS for textTrack XHRs. closes #2633 2015-09-24 19:58:25 -04:00
heff
81806d5725 @heff fixed timeranges deprecation warnings in tests. closes #2627 2015-09-23 12:34:59 -04:00
Pat O'Neill
61a00db7cb @misteroneill rename "extends" to "extend" for ie8. closes #2624 2015-09-22 11:19:04 -04:00
jrivera
24ad9841ac @imbcmdth extended createTimeRange to support multiple timeranges. closes #2604 2015-09-21 18:04:10 -04:00
heff
51bae4d7cf Fixed a double loadstart and added readyState catch up events
- Fixed some issue comments
 - Fixed a double ready event

closes #2605
fixes #2588
2015-09-18 10:28:16 -07:00
David LaPalomento
24cdbdefff Use Raynos/xhr for XMLHttpRequests
- Get rid of our custom XHR shim. Export it as videojs.xhr.
- Updated XHR to be stubbed everywhere in tests to prevent errors.
- Added npm install to the review process

closes #2318
closes #2594
2015-09-15 15:25:11 -07:00
heff
f7466af956 Made tech related functions clearly private in the player
This is important for enforcing the model that techs should
work the same for everything.

closes #2590
fixes #2060

- Made techGet and techCall private functions
- Made loadTech, techName, and unloadTech private
- Cleaned up all other private method naming in the player
- Removed some unneeded comments
2015-09-15 12:54:26 -07:00
heff
f10d8d0cb3 @heff added an attributes argument to createEl(). closes #2589
fixes #2176
2015-09-15 10:59:08 -07:00
heff
3fb786e271 @heff removed playerOptions from plugin options because it created an inconsistency in plugin inits. closes #2532 2015-09-02 15:47:10 -07:00
heff
f492450a01 Small fix to an IE9 broken test, introduced in #2513 2015-08-31 17:17:26 -07:00
heff
4d97dd4d29 Fixed a number of errors in the log after testing
- Fixed a console error in dom tests from loading a track source
- Switched to non-fetching poster urls in tests to prevent errors
- Stubbed XHR for TextTrack tests to prevent log errors
- Fixed text track console errors that stubbing async didn't catch
    because there's some async happening in tracks that makes it so
- XHR isn't even used until the test is complete
- Removed extra code
- Added player.dispose more places and fixed attributes test
2015-08-31 16:36:11 -07:00
Brandon Bay
fca885a62f @bc-bbay migrate seeking on replay to the flash tech. closes #2519 2015-08-31 15:02:19 -04:00
Gary Katsevman
98315b0e52 @dmlap @gkatsev improve Flash tech error property and add an error setter to the base tech. closes #2517 2015-08-31 14:21:53 -04:00
David LaPalomento
90c6890567 @dmlap move seek on replay into the flash tech. closes #2527 2015-08-31 14:12:12 -04:00
Gary Katsevman
de39cfc5ab @gkatsev improved tech controls listener handling.. closes #2511 2015-08-25 16:17:35 -04:00
heff
f7d1289593 @heff fixed cross-platform track tests by switching to a fake tech. closes #2496 2015-08-24 12:48:42 -07:00
Gary Katsevman
f3b5075bcd @gkatsev fixed nativeControlsForTouch handling. Defaults to native controls on iphone and native android browsers.. closes #2499 2015-08-21 17:43:07 -04:00
Gary Katsevman
76b5ffc7b5 @gkatsev moved default and player dimensions to style els at the top of HEAD. closes #2482 2015-08-19 14:13:58 -04:00
Gary Katsevman
4ec82d647d @gkatsev fixed text track errors on dispose and in cross-browser testing. closes #2466 2015-08-12 16:04:31 -07:00
David LaPalomento
fecf3a0f8a @dmlap switched global options back to an object at videojs.options. closes #2461 2015-08-12 13:51:43 -07:00
Gary Katsevman
2dfd315ac1 @gkatsev always use emulated TextTrackLists so tracks survive tech switches. closes #2425 2015-08-03 15:19:36 -04:00
heff
3bf415e522 @heff use a synchronous ready() internally. closes #2392 2015-07-30 15:38:01 -04:00
Pat O'Neill
8aa61d3b1a @misteroneill restore some 4.x utilities and remove deprecated functionality. closes #2406 2015-07-30 14:11:31 -04:00
David LaPalomento
a76b42d50c @misteroneill restore some properties on window.videojs. Closes #2395 2015-07-30 12:10:04 -04:00
heff
e0b1008225 Fix IE8 tests
- Removed incompatible module
- Added ie8 shim to qunit index.html
- Fixed extends() usage

--skip-ci
2015-07-24 09:20:43 -07:00
Pat O'Neill
456ee4e84f @misteroneill fixed internal extends usage and added a deprecation warning. closes #2390 2015-07-24 09:07:58 -07:00
jrivera
69dde46aa2 @imbcmdth fix potential triggerReady infinite loop. closes #2398 2015-07-23 11:28:34 -04:00
David LaPalomento
4ad45ef9a8 @dmlap fire seeking in the flash tech, not the SWF. closes #2372 2015-07-21 17:31:51 -04:00
David LaPalomento
d3d5d032fc @dmlap use seekable on source handlers when defined. closes #2376 2015-07-21 17:12:24 -04:00
David LaPalomento
1102452ca3 @dmlap export a basic played() on techs. closes #2384 2015-07-21 16:56:23 -04:00
jrivera
d2de00cae1 @imbcmdth updated source handlers to use bracket notation so they wont break when using minified videojs. closes #2348 2015-07-16 13:48:34 -04:00
David LaPalomento
ccd6ed44b8 Don't track progress until ready
Delay manual progress checks until the tech is ready to avoid errors.
The Flash tech errors if buffered() is called before the SWF has loaded,
for instance.

closes #2316
fixes #2288
rel #2289
2015-07-10 12:22:20 -07:00
Pavel Horal
f9316fcda0 @pavelhoral fixed subclassing without a constructor. closes #2308 2015-07-10 11:42:29 -07:00
Michelle Anderson
3479a545aa Checking on the event the relatedTarget exists before setting its property
Fixes a bug where relatedTarget was undefined in Firefox

fixes #2024
closes #2025
2015-07-09 15:41:07 -07:00
David LaPalomento
c2820e9e38 @dmlap fixed an error caused by calling vjs_getProperty on the swf too early. closes #2289 2015-07-09 11:52:52 -07:00
Thijs Triemstra
56be47b80a Log an error when a plugin can't be found
closes #1931
closes #1928
2015-07-08 14:51:00 -07:00
jrivera
56d4861bb0 src() should not return blob URLs with MSE source handlers. closes #2271 2015-06-23 16:28:23 -04:00
jrivera
463ba4ea44 @imbcmdth fixed async currentSrc behavior. closes #2256 2015-06-15 16:26:07 -04:00
jrivera
20b46b9fb9 @imbcmdth updated currentSrc to return src instead of blob urls in html5 tech. Fixes #2232. closes #2232 2015-06-10 14:14:54 -04:00
heff
05b6bb2ae4 Removed swf creation from tests
- Broke out RTMP tests into their own file.
- Cleaned up the currentTime test to not create the swf
- Cleaned up the flash dispose test
- Cleaned up formatting for additional flash tests

--skip-ci
2015-06-09 12:49:12 -07:00
David LaPalomento
0be74e51ff @dmlap added support for the seekable property. closes #2208 2015-06-08 13:47:04 -07:00
Carlos
55a391b54a @carpasse enhanced events to allow passing a second data argument. closes #2163 2015-06-05 10:36:59 -07:00
Matthew McClure
42f00f2bfc @mmcc deprecated the options() function and removed internal uses. closes #2229 2015-06-04 17:33:34 -07:00
David LaPalomento
1c35bfafc2 @dmlap add the seekable property. closes #2207 2015-06-01 17:40:40 -04:00
Matthew McClure
9c33bd72c7 @mmcc switched to using button elements for button components. closes #2209 2015-05-29 15:56:45 -07:00
heff
a5758019e5 Updated the ready event to always be async
closes #1667

Fix text track tests.
Now that ready is async, we need to tick the clock so the ready handler
fires.

Remove unneeded ready test
2015-05-22 17:27:15 -07:00
45aff0062cf1b0e55a6532b0a513db6be3952d17
6b2dca32fc Normalise lang codes to lowercase for insensitive match
Use primary code ('en') if specific code ('en-us') doesn not match
Always re-merge languages

closes #2177

Updated language function to lowercase internally

Updated component.localize to not require stubbing
2015-05-21 17:07:13 -07:00
heff
1bfe0b4fed Clean up and documentation of src/js/video.js and DOM functions
Preparing to export utility functions on the videojs object

closes #2182

Change el() to getEl() for consistency

Cleaned up DOM functions library

Clean up and document videojs object API

Fixed mergeOptions to modify the first object instead of a copy

More cleanup of the main video.js file and documentation

Fixed issues with mergeOptions

Cleaned up the addLanguage function

Removed unnecessary underscores in private module vars
2015-05-21 11:33:12 -07:00
eXon
5d550ffada Additional tech 2.0 improvements from #2126
closes #2166
closes #2126

this.tech.emitTapEvents(); should be handled by the tech

De-dupe the bufferedPercent code in both Tech and Player

Have the player generate the tech ID

Added autoplay/preload/loop/muted to tech option

Remove the watch for native timeupdates

Fixed the JSDoc for bufferedPercent

Removed the unit test for native timeupdate

Added cute whitespaces

buffer should always return a TimeRange
2015-05-21 11:19:33 -07:00
heff
1ffb13a799 Fixed all uses of registerComponent that relied on __proto__ inheritance 2015-05-18 17:35:21 -07:00
heff
a8ff970d4a Broke up Lib and Util into smaller libraries of functions
Broke out bind, guid, and element data functions from Lib

Separated out more dom functions in to dom.js

Broke out URL functions into url.js

Removed setLocalStorage since it wasn't being used

Moved browser tests out of lib

Moved log functions into their own file

Removed trim() since it wasn't being used

Moved formatTime into its own file

Moved round into its own file and renamed roundFloat()

Moved capitalize into its own file and renamed as toTitleCase()

Moved createTimeRange into its own file

Removed Lib.arr.forEach infavor of the native forEach

Removed Lib.obj.create in favor of native Object.create (ES6-sham)

Removed obj.each in favor of native Object.getOwnPropertyNames().forEach()

Removed obj.merge and copy. Using lodash.assign instead.

Replaced Lib.obj.isPlain with lodash.isPlainObject

Removed Lib.obj.isArray in favor of the native Array.isArray

Also removed the lib.js tests file as all tests have been moved
or removed.

Removed Lib.isEmpty in favor of !Object.getOwnPropertyNames().length

Switched Util.mergeOptions and deepMerge to use new mergeOptions()

Moved Lib.TEST_VID to Html5.TEST_VID

Removed Lib references everywhere. Woo!

Attempting to fix sourcemap test errors by setting grunt-browserify version

Switched to object.assign from lodash.assign

Removed unused 'inherits' dependency

Reorganzied test files and added '.test' to file names

Combined js/core.js and js/video.js

Moved events.js into the utils directory
2015-05-15 18:20:35 -07:00
heff
2fc8968002 @heff added support for fluid widths, aspect ratios, and metadata defaults. closes #1952 2015-05-13 22:45:01 -07:00
Brandon Bay
652a44026f @bc-bbay fixed a bug where the player would try to autoplay when there was no source. closes #2127 2015-05-13 15:10:55 -07:00
Gaurav Saxena
36956e20df @saxena-gaurav fixed a bug from disposing after changing techs. closes #2125 2015-05-06 14:45:50 -04:00
eXon
e5595b1e38 @eXon began Tech 2.0 work, improved how tech events are handled by the player. closes #2057
closes #1485
2015-05-06 14:02:01 -04:00
Gary Katsevman
102c6fb197 @gkatsev added a sensible toJSON function. closes #2114 2015-05-01 14:16:19 -07:00
Deirdre Connolly
f84632e057 @dconnolly exported the missing videojs.plugin function. closes #2103 2015-04-30 14:49:22 -07:00
David LaPalomento
b5968f13e2 @dmlap added an error message if techOrder is not in options. closes #2097 2015-04-29 14:05:22 -07:00
Brandon Bay
bb9fde0f82 @bc-bbay rename onEvent methods to handleEvent. closes #2093 2015-04-29 10:17:46 -07:00
jforbes
69738a86dc @forbesjo added the `scrubbing` property. closes #2080 2015-04-28 13:33:55 -07:00
Deirdre Connolly
c62aa10637 @dconnolly replaced JSON.parse with a safe non-eval JSON parse. closes #2077 2015-04-27 17:05:39 -07:00
Matthew McClure
e1e69941a1 @mmcc added ES6 default args and template strings. closes #2015 2015-04-22 15:26:37 -07:00
heff
a02ee27802 @heff converted all classes to use ES6 classes. closes #1993 2015-04-14 13:08:32 -07:00
Matthew McClure
f3036dd528 cleanup and fixed options shadowing in player 2015-04-03 15:25:58 -07:00
heff
6e5fc8d687 More build and testing cleanup. Also some reorganization. 2015-04-02 11:33:51 -07:00
Matthew McClure
0c9d53321f Report test coverage analytics during test runs 2015-04-02 11:33:50 -07:00
heff
f298d18023 Most of test conversion for es6ification 2015-04-02 11:33:50 -07:00
Matthew McClure
2e689f85e5 Starting ES6 conversion up to functional player 2015-04-02 11:33:50 -07:00
Carlos Pastor
f69a229224 Extended getFileExtension test cases 2015-03-25 12:40:10 +01:00
Carlos Pastor
213c23d097 Added getFileExtension to libs. Extended canHandleSource in media files to consistently guess mime types. Fixes #1833 2015-03-24 19:52:04 +01:00
heff
20a4184ea7 @heff fixed setting the source to an empty string. closes #1905 2015-02-27 15:50:13 -08:00
Gary Katsevman
8b0966c1b4 Store text tracks on player not tech
Test keeping text tracks between tech loads.
This does break without the previous commit.

closes #1874
2015-02-19 12:28:26 -08:00
heff
f27df10920 Fixed a controls test on the iPhone
On the iphone the controls attribute of the video element is always true.
2015-02-17 13:49:32 -08:00
heff
f96803a806 Fixed a poster test for IE11 2015-02-17 13:09:19 -08:00
Gary Katsevman
4e5c28cc56 @gkatsev greatly improved text track support and implemented vtt.js as the webvtt parser. closes #1749 2015-02-13 15:19:02 -08:00
David LaPalomento
5e371b4625 @dmlap Add network and ready state properties. closes #1854 2015-02-12 18:26:32 -05:00
45aff0062cf1b0e55a6532b0a513db6be3952d17
3742afe607 Add vjs-ended class when playback reaches the end of the timeline. closes #1857 2015-02-12 18:15:44 -05:00
Matthew McClure
fd24c5c7a3 lowered tap movement and tap time thresholds
or, you know, actually change the threshold

updated component test to account for smaller touchmove threshold

closes #1830
2015-02-12 14:34:07 -08:00
Steve Randy Tantra
fbb2197dfa @steverandy fixed an issue with scrolling over the player on touch devices. closes #1809 2015-02-12 12:01:20 -08:00
David LaPalomento
f980cdb1fb Hide the poster when play fires. closes #1834 2015-02-09 12:11:00 -05:00
heff
2489cc1c10 Merge branch 'stable'
Conflicts:
	dist/video-js/video-js.css
	dist/video-js/video-js.min.css
	dist/video-js/video-js.swf
	dist/video-js/video.dev.js
	dist/video-js/video.js
2015-01-23 10:50:49 -08:00
Artem Suschev
c8781cf51b @H1D fixed an issue with file extension type detection. closes #1818 2015-01-21 17:55:35 -08:00
David LaPalomento
4bde5c8928 Don't always add controls to the video element
Fix for #1561. If the HTML tech is being constructed without a video element to work off of, make sure that the controls attribute is only added under the same circumstances it would be at player init. Before this fix, if you loaded the Flash tech and then switched to the HTML tech, you would see the native controls underneath the video.js controls.

Fix controls attribute test on iOS
iOS uses native controls by default and so was failing the assertions that native controls weren't used. Force custom controls for this test case to make it work like everywhere else.

Update nativeControlsForTouch default
The default value changed so fix the predicate that tested for whether it was in use.

closes #1811, closes #1564, closes #1561
2015-01-21 17:35:55 -08:00
Gary Katsevman
1c17a67f39 Fixed issue where ManualTimeUpdatesOff was not de-registering events. closes #1793 2015-01-16 12:05:21 -08:00
heff
e8235c9022 Fixed type support checking for an empty src string. closes #1797 2015-01-16 11:43:58 -08:00
heff
a3b12d9d03 Exported missing source handler functions. closes #1787 2015-01-12 14:28:22 -08:00
David LaPalomento
c939ab86ca @dmlap fixed URL parsing in IE9. closes #1765 2014-12-23 08:25:49 -08:00
Matthew McClure
a67201f913 @mmcc updated the hide/show functions to use a class instead of inline styles. closes #1681 2014-12-22 09:38:54 -08:00
Matthew McClure
1f6c5179d8 @mmcc added functions for better timeout and interval handling. closes #1642 2014-12-03 11:31:39 -08:00
Steve Heffernan
76e662a756 @heff added the Source Handler interface for handling advanced formats including adaptive streaming. closes #1560 2014-12-02 14:22:34 -08:00
Steve Heffernan
1325722447 @heff fixed checking for child options in the parent options to allow for `false`. closes #1630 2014-10-30 13:19:01 -07:00
Steve Heffernan
f27bdd27ca @heff Added the ability to set options for child components directly in the parent options. closes #1599 2014-10-28 11:45:32 -07:00
Steve Heffernan
4b818d9ebf @heff enhanced the event listener API to allow for auto-cleanup of listeners on other componenets and elements. closes #1588 2014-10-28 11:16:56 -07:00
Steve Heffernan
af02d158da @heff updated the poster to use CSS styles to display; fixed the poster not showing if not originally set. closes #1568 2014-10-16 12:59:41 -07:00
Matthew McClure
18b6d25bc7 @mmcc added support for audio tags (html5 audio only). closes #1540 2014-09-30 18:34:51 -07:00
Craig Rogers
9b7882e395 @twentyrogersc fixed the return value when setting the poster source. closes #1552 2014-09-30 15:38:22 -07:00
Ryo Chikazawa
f47bf26e49 @chikathreesix fixed an issue where data-setup options could be missed. closes #1514 2014-09-29 16:13:07 -07:00
baloneysandwiches
fd181aa9cd @baloneysandwiches added a hasClass method. closes #1464 2014-09-29 15:46:18 -07:00
Gary Katsevman
53ea60cd06 fixes #1512, fixes #1507
On ended, pause player if not paused or looping
IE11 (and maybe other browsers as well) only fire 'ended' event when the
video ends and doesn't fire pause. This makes IE11 not reset it's state
into a paused state that allows a user to replay immediately. However, a
two clicks on the play/pause button will allow you to replay.
In Chrome, we get first a pause event and then an ended event. When
'loop' is set, neither the last pause nor ended fire.
In the flash tech, the pause and ended events fire like in chrome in all
browsers.

Add tests for onEnded change

Appease jshint.
2014-09-16 14:53:46 -07:00
Steve Heffernan
5abff360cc Added back missing deprecated fullscreen functions, and fixed a warning from using a deprecated method internally.
fixes #1451
2014-09-05 14:33:27 -07:00
David LaPalomento
eec1fc13fe Move language methods into externs
Trying to create a player-like subclass of component requires overriding languages() but that method was being minified. Add it to externs so that it can be overridden after minification. Fixes #1420.
2014-09-05 13:50:13 -07:00
David LaPalomento
b9181ee55b Make sure the error property is set before proxying through the tech.
Some error events don't cause the error property on the video element to be set. In that case, handle the event like any other. Fixes #1465.
2014-09-05 13:36:50 -07:00
David LaPalomento
d385f8257f Fixes #1481
Clear out pending errors on player disposal.
Source selection errors are dispatched asynchronously so that there is an opportunity to override the error message. If the player is disposed during that period, the error timeout wasn't being cleared properly. Fix for #1480.

Fix whitespace
When defining variables inline with declarations, stick to one variable per line.
2014-09-05 13:32:15 -07:00
Steve Heffernan
7d4b26625f Fixed a broken playbackRate test on Android 2.3 2014-09-02 17:38:11 -07:00
Steve Heffernan
16640274d7 Merge branch 'hotfix/error-timeout-squashed' of github.com:mmcc/video.js into mmcc-hotfix/error-timeout-squashed 2014-09-02 16:43:01 -07:00
Steve Heffernan
f3925c7364 Changed to feature prefix over suffix to make it read more as a boolean 2014-09-02 16:22:43 -07:00
Steve Heffernan
c90d7d36f6 Merge branch 'media-tech-features2' of github.com:gkatsev/video.js into gkatsev-media-tech-features2 2014-09-02 16:11:26 -07:00
Steve Heffernan
a6fa0dcc80 Merge branch 'the-N-Zone' of github.com:gkatsev/video.js into gkatsev-the-N-Zone 2014-09-02 12:50:10 -07:00
Matthew McClure
e72d682028 added timeout fix and tests. 2014-09-02 12:39:08 -07:00
Gary Katsevman
599217f158 Update tests to grab/restore progressEventsFeature 2014-09-02 14:57:29 -04:00
Gary Katsevman
7caa2fc1a7 Append Feature to 'features'. Update tests. 2014-09-02 14:46:19 -04:00
Gary Katsevman
df1944e9ff NaN & null should be treated as 0 in dimension()
When dimension() receives a NaN or null value for the number, it will
treat it as zero.
Updated tests to reflect that as well.
2014-09-02 14:37:42 -04:00
Steve Heffernan
82aa55795e Removed html5Mock var declarations and fixed whitespace 2014-09-02 11:04:30 -07:00
Steve Heffernan
7c27add29d Merge branch 'issue-1408' of github.com:glencoesoftware/video.js into glencoesoftware-issue-1408 2014-09-02 11:00:36 -07:00
Andreas Knab
c4b4ebea4a Remove unneeded html5Mock 2014-08-28 12:28:07 +02:00
Steve Heffernan
537ae2b805 Merge pull request #1435 from dmlap/test-manual-tracking
Add test for manual time tracking and dispose
2014-08-27 13:26:48 -07:00
Gary Katsevman
68ad48d8e8 Ignore null, undefined, and NaN is dimension()
Add vjs.isNaN to have a better cross browser isNaN checker.
Previously, only undefined was ignored, so, it tried setting the
dimension using null and NaN as values. In most browsers this isn't a
problem, but in particular on IE8, things break.
With this PR, all three of those values will be ignored.
2014-08-25 18:41:33 -04:00
Andreas Knab
49f58e0bbd Switch to sinon fake timers 2014-08-25 16:42:58 +02:00
Andreas Knab
f716807852 Add test cases for default and disabled timeout 2014-08-25 11:35:06 +02:00
Andreas Knab
6d65871cb0 Add simple inactivityTimeout test 2014-08-25 11:28:52 +02:00
Tom Johnson
c19a3f3f48 add fix for localization of not supported message
add base documentation for language support

typo fix

added utility function for adding languages per conversation with @heff. Includes test.

move addLanguage to core. update both core and util tests. added export property

added language sandbox for demo

fix comment

doc udpate

remove build instructions

add addLanguage API to doc

fix deep merge in test

test update

update local reference to string for compiled tests
2014-08-20 15:04:30 -07:00
David LaPalomento
a1eb8dd975 Add test for manual time tracking and dispose
Make sure time and progress event synthesis is turned off after the tech is disposed.For #1431.
2014-08-20 14:39:02 -04:00
Steve Heffernan
487c05628c Fixed console log tests that were breaking in IE8 2014-08-14 16:15:13 -07:00
David LaPalomento
f037818656 Don't dynamically turn off progress events
The major browsers that support HTML video now reliably support progress events, so don't worry about synthesizing them for HTML anymore.
2014-08-14 15:08:54 -07:00
David LaPalomento
f4ce62d4b1 Move manual events into tech controller
Migrate the timers that manage creating timeupdate and progress events when the tech doesn't support them natively. Now, techs that extend MediaTechController will continue to automatically pick up synthetic playback and buffering events but they're scoped much more closely to the entity that needs them. In addition, time and progress tracking have been moved much earlier into the component initialization which fixes #1414.
2014-08-14 15:08:37 -07:00
Steve Heffernan
7ea1d8f544 Modified language json structure to not include the code.
Also removed languages from being combined with core until we add the ability to choose languages.
2014-08-05 17:48:00 -07:00
Tom Johnson
6b612d8cdc Added localization support. closes #1360 2014-08-05 17:48:00 -07:00
Steve Heffernan
527a33a252 Maded some revisions to videojs/video.js#1369
closes #1369
2014-08-04 15:53:28 -07:00
Steve Heffernan
b3bbb17dd4 Restore the original video tag attributes on a tech change
set attributes of video tag and not only values

add unsupported attribute to the video tag - test failing

helper to set attributes on an element from a map of values

dummy compare of html content with a sort of the attributes

ignore html attributes order for comparition

save original tag attributes

restore original tag attributes n creation and overwrite if required by settings

replace object.keys with vjs.obj.each for ie<9

fix spacing

API consistency, getAttributeValues renamed to getElementAttributes

clear variable naming

move setElementAttributes close to getElementAttributes
2014-08-04 15:47:56 -07:00
Steve Heffernan
624bf16070 Merge branch 'master' into fix-flash-ready
Conflicts:
	src/js/media/flash.js
	test/unit/flash.js
2014-07-28 17:27:29 -07:00
Steve Heffernan
ae90526f2c Merge branch 'hotfix/flash-dispose' of github.com:dmlap/video-js into dmlap-hotfix/flash-dispose 2014-07-28 16:10:47 -07:00
Steve Heffernan
34ad720626 Merge branch 'data-attributes' of github.com:gkatsev/video.js into gkatsev-data-attributes 2014-07-28 15:00:09 -07:00
Steve Heffernan
f6ba25ddf6 Made the swf account for being ready after the tech was disposed 2014-07-16 14:01:01 -07:00
David LaPalomento
a77e39f342 Set this.el_ directly instead of using another variable
The flash tech doesn't need to hold onto a reference to the placeholder element after the embed code has been generated. Set this.el_ to the embed code immediately instead of using another property to track it during init. Tested in IE8.
2014-07-10 17:17:53 -04:00
David LaPalomento
da19fa3ead Track the object element during init and remove it if the tech is disposed before onReady. For #1339.
If dispose() was called before the SWF triggered onReady(), the placeholder div would be cleaned up but the actual object element would be left behind to mess things up in the future. Keep track of the object element during initialization and make sure it is removed if flash is unloaded early.
2014-07-09 16:29:30 -04:00
themicp
392cbda095 Added support for listening to multiple events through a types array. closes #1231 2014-07-08 11:51:47 -07:00
Gary Katsevman
c9b1217e10 Copy over data attrs from video el to wrapper el. 2014-07-01 15:10:45 -04:00
Steve Heffernan
595a6131c1 Added tests for cue times with flags 2014-06-13 13:41:23 -07:00
Troy Brandt
bb50466733 Fixed issues around webvtt cue time parsing. Fixed #877, fixed #183.. closes #1236 2014-06-13 13:30:16 -07:00
shmulik
6d78c95bb4 Added cross-browser isArray for cross-frame support. fixes #1195. closes #1218 2014-06-12 15:24:46 -07:00
Steve Heffernan
9d311640b1 Merge branch 'stable'
Conflicts:
	dist/video-js/video-js.css
	dist/video-js/video-js.min.css
	dist/video-js/video.dev.js
	dist/video-js/video.js
2014-06-10 16:59:17 -07:00
Steve Heffernan
71c0a72717 Fixed an issue with the firstplay event not firing when autoplaying. closes #1271 2014-06-10 16:55:08 -07:00
Steve Heffernan
aedaa17e3c Added tests for cue time parsing, including for #183 (test-only) 2014-05-21 17:28:18 -07:00
Steve Heffernan
e3e836f41e Added tests for cue parsing, including tests for #877 2014-05-21 16:50:58 -07:00
Gary Katsevman
3189ec1a0b Added cross-browser testing with SauceLabs, and added Karma as the default test runner. closes #1187 2014-05-16 14:48:05 -07:00
Steve Heffernan
46aa551e1e Modernized the fullscreen API and added support for IE11. fixes #1155 closes #1205 2014-05-15 14:46:28 -07:00
Artem Suschev
8dfe0a4d06 Added support for playbackRate switching. closes #1132 2014-05-13 14:02:02 -07:00
Erik Skogby
047bd8f618 Made vjs.get work with xDomain in IE < 10. closes #1095 2014-05-13 12:35:40 -07:00
Steve Heffernan
d7f840a969 Better error handling. closes #1197
Squashed commit of the following:

commit 81d785980d
Author: Steve Heffernan <steve@zencoder.com>
Date:   Mon May 12 12:53:59 2014 -0700

    Removed unneeded comments

commit c7ad7322e4
Author: Steve Heffernan <steve@zencoder.com>
Date:   Fri May 9 14:29:31 2014 -0700

    Addressed comments in #1191
    Now clearing errors on loadstart events.
    Added some default error messages.

commit a742239d0e
Author: Steve Heffernan <steve@zencoder.com>
Date:   Wed May 7 15:38:31 2014 -0700

    Fixed the error display to hide by default

commit 561c3f8449
Author: Steve Heffernan <steve@zencoder.com>
Date:   Mon May 5 10:44:47 2014 -0700

    Added support for displaying a message for the error.

commit 2214207842
Author: Steve Heffernan <steve@zencoder.com>
Date:   Fri May 2 17:18:22 2014 -0700

    Updated spinner to hide on all errors

commit 95d7e70274
Author: Steve Heffernan <steve@zencoder.com>
Date:   Fri May 2 15:37:44 2014 -0700

    Exported ErrorDisplay

commit 11ca9cdd8d
Author: Steve Heffernan <steve@zencoder.com>
Date:   Fri May 2 15:35:46 2014 -0700

    Updated flash tech to support new errors

commit 56cbe66f42
Author: Steve Heffernan <steve@zencoder.com>
Date:   Fri May 2 13:06:49 2014 -0700

    Started on better error handling and displaying in the UI when an error has occurred.

commit 740014c57b
Author: Steve Heffernan <steve@zencoder.com>
Date:   Wed Apr 30 16:11:33 2014 -0700

    Added better global log/error/warn functions.
    Added sinon.js for stubs in tests.
    Updated grunt version to satisfy peer dependency warning.
2014-05-12 17:08:48 -07:00
Chris Fung
1df28ff311 Fixed the default flag for captions/subtitles tracks. closes #1153 closes #656 2014-05-07 14:59:01 -07:00
Jon Zepernick
dbff62e3f0 Made tap events on mobile less sensitive to touch moves. closes #1111 2014-05-06 17:22:29 -07:00
Steve Heffernan
27f0f789e0 Updated to match comments in #1093 2014-05-05 17:11:14 -07:00
Steve Heffernan
3e5ef19212 Merge branch 'master' of github.com:Akkuma/video.js into Akkuma-master
Conflicts:
	src/js/lib.js
2014-05-05 16:34:15 -07:00
Steve Heffernan
46605739e2 Merge branch 'feature/fix-menu-title' of github.com:coursera/video.js into coursera-feature/fix-menu-title 2014-04-17 22:55:16 -07:00
Jon Wong
9d258742c5 Adjusting menu to use title given in options 2014-04-03 23:35:15 -07:00
Jon Wong
35d7258973 Merge branch 'feature/fix-menu-title' of git://github.com/coursera/video.js into coursera-feature/fix-menu-title 2014-04-03 14:26:38 -07:00
Matthew McClure
95c29e684f Reset player on source change. closes #1050 closes #1124 2014-04-03 11:16:09 -07:00
Jon Wong
c7e35e51de Making sure that the title element gets placed into the UL element
Included are two sanity check tests for the two areas being checked
to make sure that the menu title items are being correctly placed
in the actual UL element of the menu.

Fixes #1107
2014-04-01 22:32:14 -07:00
Steve Heffernan
af50b8ee29 Fixed canPlaySource export that got lost in last release 2014-03-27 14:25:58 -07:00
Steve Heffernan
e8d36e0fab Exported upatchCanPlayType and moved tests to api.js 2014-03-27 13:24:03 -07:00
Steve Heffernan
a9ad77aa00 Removed a low value test that was causing a hang in testing 2014-03-27 11:53:06 -07:00
Steve Heffernan
88403221a9 Fixed canPlayType patch tests on Android 2014-03-27 11:19:21 -07:00
Steve Heffernan
74c73969cd Merge branch 'gkatsev-defaultprevented' 2014-03-26 14:45:53 -07:00
Steve Heffernan
2c12ed98a7 Merge branch 'defaultprevented' of git://github.com/gkatsev/video-js into gkatsev-defaultprevented 2014-03-26 14:32:50 -07:00
Gary Katsevman
e39557e790 Always unpatch canPlayType.
Fix up tests to not ignore some if canPlayType is not available since
unpatch is no longer broken.
2014-03-26 16:59:04 -04:00
Gary Katsevman
e2a1cac136 fix typo for unpatchCanPlayType 2014-03-26 16:58:49 -04:00
Gary Katsevman
d21019ad78 add existence test for patch and unpatch methods 2014-03-26 16:39:11 -04:00
Gary Katsevman
94ec725a66 update for IE8 and fixup stupid tests 2014-03-26 14:58:36 -04:00
Gary Katsevman
fef6282d55 remove unused var 2014-03-26 13:49:21 -04:00