@@ -311,13 +311,32 @@ var Video = React.createClass({
311
311
ref = { ( el ) => {
312
312
this . videoEl = el ;
313
313
} }
314
- onPlay = { this . _updateStateFromVideo }
314
+ // We have throttled `_updateStateFromVideo` so listen to
315
+ // every available Media event that React allows and
316
+ // infer the Video state in that method from the Video properties.
317
+ onAbort = { this . _updateStateFromVideo }
318
+ onCanPlay = { this . _updateStateFromVideo }
319
+ onCanPlayThrough = { this . _updateStateFromVideo }
320
+ onDurationChange = { this . _updateStateFromVideo }
321
+ onEmptied = { this . _updateStateFromVideo }
322
+ onEncrypted = { this . _updateStateFromVideo }
323
+ onEnded = { this . _updateStateFromVideo }
324
+ onError = { this . _updateStateFromVideo }
325
+ onLoadedData = { this . _updateStateFromVideo }
326
+ onLoadedMetadata = { this . _updateStateFromVideo }
327
+ onLoadStart = { this . _updateStateFromVideo }
315
328
onPause = { this . _updateStateFromVideo }
316
- onVolumeChange = { this . _updateStateFromVideo }
317
- onTimeUpdate = { this . _updateStateFromVideo }
329
+ onPlay = { this . _updateStateFromVideo }
330
+ onPlaying = { this . _updateStateFromVideo }
318
331
onProgress = { this . _updateStateFromVideo }
319
- onCanPlay = { this . _updateStateFromVideo }
320
- onCanPlayThrough = { this . _updateStateFromVideo } >
332
+ onRateChange = { this . _updateStateFromVideo }
333
+ onSeeked = { this . _updateStateFromVideo }
334
+ onSeeking = { this . _updateStateFromVideo }
335
+ onStalled = { this . _updateStateFromVideo }
336
+ onSuspend = { this . _updateStateFromVideo }
337
+ onTimeUpdate = { this . _updateStateFromVideo }
338
+ onVolumeChange = { this . _updateStateFromVideo }
339
+ onWaiting = { this . _updateStateFromVideo } >
321
340
{ this . renderSources ( ) }
322
341
</ video >
323
342
{ controls ? this . renderControls ( ) : '' }
0 commit comments