1
0
mirror of https://github.com/videojs/video.js.git synced 2024-12-23 02:04:34 +02:00
Commit Graph

59 Commits

Author SHA1 Message Date
Gary Katsevman
102c6fb197 @gkatsev added a sensible toJSON function. closes #2114 2015-05-01 14:16:19 -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
heff
a02ee27802 @heff converted all classes to use ES6 classes. closes #1993 2015-04-14 13:08:32 -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
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
45aff0062cf1b0e55a6532b0a513db6be3952d17
3742afe607 Add vjs-ended class when playback reaches the end of the timeline. closes #1857 2015-02-12 18:15:44 -05:00
David LaPalomento
f980cdb1fb Hide the poster when play fires. closes #1834 2015-02-09 12:11:00 -05: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
Matthew McClure
1f6c5179d8 @mmcc added functions for better timeout and interval handling. closes #1642 2014-12-03 11:31:39 -08: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
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
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
Matthew McClure
e72d682028 added timeout fix and tests. 2014-09-02 12:39:08 -07:00
Steve Heffernan
82aa55795e Removed html5Mock var declarations and fixed whitespace 2014-09-02 11:04:30 -07:00
Andreas Knab
c4b4ebea4a Remove unneeded html5Mock 2014-08-28 12:28:07 +02: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
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
Gary Katsevman
c9b1217e10 Copy over data attrs from video el to wrapper el. 2014-07-01 15:10:45 -04: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
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
Matthew McClure
95c29e684f Reset player on source change. closes #1050 closes #1124 2014-04-03 11:16:09 -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
e9da3350d4 Made the src method return the player when setting, and made Flash return the current srouce for flash.src() 2014-02-27 17:34:01 -08:00
David LaPalomento
7184cb4b49 src() called as a getter should return the video src
It can be handy that src() returns the player object when it is invoked but it does not match the behavior of the corresponding property on the video element. Ignoring the spec however, while the video element is running the resource selection algorithm, currentSrc may be undefined. If the video source has been specified through an attribute on the video element, src() is the natural way to expose that URL programmatically. Without this change, it's necessary to bypass the player and interact with the tech directly to determine the value of the src attribute.
2014-01-25 23:16:35 -05:00
Steve Heffernan
166cc9c1ef Close GH-878: Moved player exports to externs. 2013-12-09 16:16:09 -08:00
David LaPalomento
1cab78347d Close GH-845: Move player id generation. 2013-12-02 15:29:41 -08:00
Steve Heffernan
ef0d63b5ba Modified tests for #838 and updated changelog. closes #838 2013-11-26 16:53:23 -08:00
David LaPalomento
875fc2ff32 Allow poster to be changed after init. Fixes #525
When poster() is called with a URL, fire a `posterchange` event to update the PosterImage source and update the video element attribute.

Trigger posterchange after updating the tech
Wait until the tech has updated its poster image before alerting components so they don't see the intermediate state in event handlers. Remove unused variable from PosterImage.createEl.

Don't create new img elements each time the poster is set on ie8
Create the img fallback for the poster during PosterImage initialization on ie8 so we can avoid having to check and possibly create it each time the src is set. Add a test to ensure that new elements are not appended to the poster component when the img fallback is in use and the src attribute is modified.

fixing a broken IE8 test, and adding a negative test, for poster switching.

modified the poster-switching test to accomodate IE8
added a negative test for an undefined poster

fixed the assertion message in the 'undefined' image case

fixed test breakage in Firefox and IE10 (quotes were not being handled properly in the test data)

testing:
ran the tests at the command line, and in Chrome, Firefox, IE8, IE10, Firefox and Safari
all passed
2013-11-25 14:49:49 -08:00
Steve Heffernan
efe7a12ccb Fixed IE8 tests and flaky fonts 2013-09-04 11:48:19 -07:00
Steve Heffernan
72bf48cf36 Fixed the custom fallback message test which would break when ie8 capitalized tag names 2013-09-03 10:48:48 -07:00
Steve Heffernan
4772e4680b Merge branch '636-incompatible' of git://github.com/jelbourn/video.js into jelbourn-636-incompatible
Conflicts:
	test/unit/player.js
2013-08-27 10:26:32 -07:00
Andy Niccolai
02de927043 Close GH-672: Control bar updates. Fixes #556, Fixes #500, Fixes #374, Fixes #403, Fixes #441, Fixes #193, Fixes #602, Fixes #561, Fixes #281 2013-08-09 14:29:22 -07:00
Jeremy Elbourn
918ee040e1 Allow setting a custom incompatible video message. fixes #636 2013-07-12 16:05:25 -04:00
Steve Heffernan
9f647ef081 Fixed an issue where the tag player reference wasn't getting killed in the minified version 2013-06-28 15:42:47 -07:00
Steve Heffernan
1ddef27903 Close GH-588: Export bufferedPercent. 2013-06-24 12:47:47 -07:00
Steve Heffernan
753ce48e21 Close GH-546: Fix for exit-fullscreen bug in 4.0. fixes #497. 2013-05-28 15:29:42 -07:00
Steve Heffernan
d54f473670 Wrote a test for controls changes. 2013-05-02 17:15:37 -07:00
Steve Heffernan
3b48be921e First pass at automated multi-browser/device testing. closes #419
I've got a way to run tests across every browser and device out there except for IE8, and IE8 should work except I'm running into a Browserstack bug that I've let them know about.

It uses a project called bunyip, which internallt uses Yeti (YUI), Pagekite, and Browserstack.

Next steps include:
  - Making it all automatic. Right now you have to wait for browsers to connect and then manually hit enter when they have.
  - Make it a grunt task
  - Document it all so others can use it

I think this is close enough for me to close the milestone 4.0 issue.
2013-04-12 16:51:04 -07:00
Steve Heffernan
dbd02fb05a Close GH-437: Made IE updates from CorwinT. Closes #309. Closes #364.. 2013-04-08 16:23:41 -07:00
Steve Heffernan
78a74536e5 Merge pull request #360 from mente/minified
correctly expose ready and dispose in minified version
2013-04-05 15:04:21 -07:00
David LaPalomento
99a973e529 Do not remove poster attribute when creating the player
We use a div with a background image to simulate the poster image so that we can use a single poster implementation for flash and html. It may be desirable on some platforms to use the native poster image, however. On iPhones for instance, the simulated poster image covers up the native play button and can make it difficult to figure out where to touch to initiate playback. By keeping the poster attribute on the underlying video element, you can hide the simulated poster to get a native look-and-feel on that platform.
2013-04-04 09:55:27 -04:00