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.
Squashed commit of the following:
commit d5957da3b2
Author: David LaPalomento <dlapalomento@gmail.com>
Date: Mon Mar 31 16:22:43 2014 -0400
Peg the volume control to 1.0 on init
Setup styles so that the volume control initially renders at full volume. This matches browser behavior where volume is available and saves Javascript from having to manually update the volume control on init. After the initial draw, the volume control is updated dynamically the same way it was before.
commit 8bc861fb86
Author: David LaPalomento <dlapalomento@gmail.com>
Date: Wed Mar 12 17:16:30 2014 -0400
Don't force sliders to get evaluated on load
Since the load and play progress sliders are guaranteed to start from zero, set that through CSS. Calling Slider.prototype.update forces a re-flow because element dimensions are queried and style rules changed. That reflow consistently took around 60ms on my laptop which would mean dropped frames and "jerkiness" on initialization.
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
Squashed commit of the following:
commit 2c5d4d523e
Author: Tom Johnson <seniorflexdeveloper@gmail.com>
Date: Tue Apr 1 15:02:37 2014 -0700
update control text for liveDisplay component
commit 10f21cc2a0
Author: Tom Johnson <seniorflexdeveloper@gmail.com>
Date: Tue Apr 1 12:23:20 2014 -0700
whitespace fix
commit 6a093d6798
Author: Tom Johnson <seniorflexdeveloper@gmail.com>
Date: Tue Apr 1 12:21:42 2014 -0700
remove window scope of infinity
commit 2dd8284bd3
Author: Tom Johnson <seniorflexdeveloper@gmail.com>
Date: Tue Apr 1 12:12:13 2014 -0700
update to fix infinity capitalization. only do css logic on valid duration. set any duration of less than zero to window.Infinity
commit f940bef8b5
Author: Tom Johnson <seniorflexdeveloper@gmail.com>
Date: Tue Apr 1 10:01:27 2014 -0700
update to less than zero on player durationChange
commit 554c003dac
Author: Tom Johnson <seniorflexdeveloper@gmail.com>
Date: Mon Mar 31 17:26:13 2014 -0700
update exports, fix tests
commit 2fb10cb06a
Author: Tom Johnson <seniorflexdeveloper@gmail.com>
Date: Mon Mar 31 13:39:00 2014 -0700
fix tests, remove update display list in LiveDisplay
commit bc47c5ed67
Author: Tom Johnson <seniorflexdeveloper@gmail.com>
Date: Mon Mar 31 13:13:43 2014 -0700
Basic UI for Live
It looks like GCC was mangling `rtmpConnection` and `rtmpStream` before invoking them. Unfortunately, we define those methods as string literals so they do not have mangled equivalents. Invoke them using string literals so GCC never mangles the method names.
patchCanPlayType is called on load.
It patched video#canPlayType if needed.
unpatchCanPlayType will revert the patch and return the patch function.
There are also corresponding tests that test patchCanPlayType,
unpatchCanPlayType and also whether the patch functions themselves work
correctly.
Android devices starting with 4.0 can play HLS natively to some extent.
However, they do not say so in the canPlayType method. This commit
monkey patches canPlayType to respond with "maybe" for
"application/x-mpegURL" and "application/vnd.apple.mpegURL". Otherwise,
it'll fallback to the original canPlayType method.
Some platforms produce frequent mousemove events whether or not the mouse has moved. This causes the UI to always be displayed since userActive_ is always `true`. By keeping track of the last mouse position and only firing if the new position is different, we can eleminate the event spam.
Make components listen to touch events themselves.
Components can have a "listenToTouchMove" property that would report
user activity on touch moves.
Currently, the only problem left is that the MediaTechController emits
tap events to show/hide the controlbar but that causes the control bar
to not be hidden via a tap.
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.
Instead of caching the last seek time at the player level, cache it in the Flash tech. The only place this value was used was in the progress controls when Flash was loaded, so this simplifies the logic in that component and pushes the hack down into a single location at least.