improved server-whisper, user join/leave messages, layout/UI overhaul
This commit is contained in:
parent
e7adec32d7
commit
5f97baffc6
23 changed files with 729 additions and 917 deletions
|
|
@ -48,5 +48,8 @@ window.Player = class Player
|
|||
|
||||
getVolume: (cb) ->
|
||||
cb(VOLUME)
|
||||
|
||||
getRes: (cb) ->
|
||||
cb();
|
||||
|
||||
destroy: ->
|
||||
|
|
|
|||
|
|
@ -36,6 +36,7 @@ window.DailymotionPlayer = class DailymotionPlayer extends Player
|
|||
|
||||
@dm.addEventListener('pause', =>
|
||||
@paused = true
|
||||
setMini();
|
||||
if CLIENT.leader
|
||||
sendVideoUpdate()
|
||||
else
|
||||
|
|
@ -44,6 +45,7 @@ window.DailymotionPlayer = class DailymotionPlayer extends Player
|
|||
|
||||
@dm.addEventListener('playing', =>
|
||||
@paused = false
|
||||
setMini();
|
||||
if CLIENT.leader
|
||||
sendVideoUpdate()
|
||||
|
||||
|
|
@ -57,6 +59,19 @@ window.DailymotionPlayer = class DailymotionPlayer extends Player
|
|||
@unlatch()
|
||||
)
|
||||
|
||||
@dm.addEventListener('timeupdate', =>
|
||||
setDur();
|
||||
)
|
||||
|
||||
@dm.addEventListener('volumechange', =>
|
||||
setMini();
|
||||
)
|
||||
|
||||
@player.on('canplay', =>
|
||||
handleVideoResize()
|
||||
console.log(@player.children)
|
||||
)
|
||||
|
||||
# Once the video stops, the internal state of the player
|
||||
# becomes unusable and attempting to load() will corrupt it and
|
||||
# crash the player with an error. As a short–medium term
|
||||
|
|
@ -67,6 +82,8 @@ window.DailymotionPlayer = class DailymotionPlayer extends Player
|
|||
)
|
||||
@dm.addEventListener('playback_ready', =>
|
||||
@dmReady = true
|
||||
handleVideoResize()
|
||||
|
||||
if @playbackReadyCb
|
||||
@playbackReadyCb()
|
||||
@playbackReadyCb = null
|
||||
|
|
@ -79,10 +96,13 @@ window.DailymotionPlayer = class DailymotionPlayer extends Player
|
|||
if @dm and @dmReady
|
||||
@dm.load(data.id)
|
||||
@dm.seek(data.currentTime)
|
||||
|
||||
else if @dm
|
||||
# TODO: Player::load() needs to be made asynchronous in the future
|
||||
console.log('Warning: load() called before DM is ready, queueing callback')
|
||||
@playbackReadyCb = () =>
|
||||
handleVideoResize()
|
||||
|
||||
@dm.load(data.id)
|
||||
@dm.seek(data.currentTime)
|
||||
else
|
||||
|
|
@ -127,6 +147,11 @@ window.DailymotionPlayer = class DailymotionPlayer extends Player
|
|||
else
|
||||
cb(VOLUME)
|
||||
|
||||
getRes: (cb) ->
|
||||
if @dm and @dmReady
|
||||
cb([@dm.width, @dm.height])
|
||||
else
|
||||
cb()
|
||||
mapQuality: (quality) ->
|
||||
switch String(quality)
|
||||
when '240', '480', '720', '1080' then String(quality)
|
||||
|
|
|
|||
|
|
@ -40,8 +40,6 @@ window.loadMediaPlayer = (data) ->
|
|||
window.handleMediaUpdate = (data) ->
|
||||
PLAYER = window.PLAYER
|
||||
|
||||
#bodge for fcyp.js layout
|
||||
#handleWindowResize()
|
||||
|
||||
#update airdate
|
||||
dispSTimes();
|
||||
|
|
|
|||
|
|
@ -141,6 +141,7 @@ window.VideoJSPlayer = class VideoJSPlayer extends Player
|
|||
|
||||
@player.on('pause', =>
|
||||
@paused = true
|
||||
setMini();
|
||||
if CLIENT.leader
|
||||
sendVideoUpdate()
|
||||
else
|
||||
|
|
@ -150,9 +151,14 @@ window.VideoJSPlayer = class VideoJSPlayer extends Player
|
|||
|
||||
@player.on('play', =>
|
||||
@paused = false
|
||||
setMini();
|
||||
if CLIENT.leader
|
||||
sendVideoUpdate()
|
||||
)
|
||||
|
||||
@player.on('volumechange', =>
|
||||
setMini();
|
||||
)
|
||||
|
||||
# Workaround for IE-- even after seeking completes, the loading
|
||||
# spinner remains.
|
||||
|
|
@ -163,6 +169,16 @@ window.VideoJSPlayer = class VideoJSPlayer extends Player
|
|||
|
||||
)
|
||||
|
||||
|
||||
@player.on('canplay', =>
|
||||
handleVideoResize()
|
||||
console.log(@player.children)
|
||||
)
|
||||
|
||||
@player.on('timeupdate', =>
|
||||
setDur();
|
||||
)
|
||||
|
||||
# Workaround for Chrome-- it seems that the click bindings for
|
||||
# the subtitle menu aren't quite set up until after the ready
|
||||
# event finishes, so set a timeout for 1ms to force this code
|
||||
|
|
@ -241,6 +257,12 @@ window.VideoJSPlayer = class VideoJSPlayer extends Player
|
|||
else
|
||||
cb(VOLUME)
|
||||
|
||||
getRes: (cb) ->
|
||||
if @player
|
||||
cb([@player.videoWidth(), @player.videoHeight()])
|
||||
else
|
||||
cb()
|
||||
|
||||
destroy: ->
|
||||
removeOld()
|
||||
if @player
|
||||
|
|
|
|||
|
|
@ -4,6 +4,8 @@ window.VimeoPlayer = class VimeoPlayer extends Player
|
|||
return new VimeoPlayer(data)
|
||||
|
||||
@load(data)
|
||||
@resx = 0
|
||||
@resy = 0
|
||||
|
||||
load: (data) ->
|
||||
@setMediaProperties(data)
|
||||
|
|
@ -31,6 +33,7 @@ window.VimeoPlayer = class VimeoPlayer extends Player
|
|||
|
||||
@vimeo.on('pause', =>
|
||||
@paused = true
|
||||
setMini();
|
||||
if CLIENT.leader
|
||||
sendVideoUpdate()
|
||||
else
|
||||
|
|
@ -40,6 +43,8 @@ window.VimeoPlayer = class VimeoPlayer extends Player
|
|||
|
||||
@vimeo.on('play', =>
|
||||
@paused = false
|
||||
setMini();
|
||||
handleVideoResize()
|
||||
if CLIENT.leader
|
||||
sendVideoUpdate()
|
||||
)
|
||||
|
|
@ -49,8 +54,30 @@ window.VimeoPlayer = class VimeoPlayer extends Player
|
|||
@unlatch()
|
||||
)
|
||||
|
||||
@vimeo.on('timeupdate', =>
|
||||
setDur();
|
||||
)
|
||||
|
||||
@vimeo.on('volumechange', =>
|
||||
setMini();
|
||||
)
|
||||
|
||||
|
||||
@play()
|
||||
@setVolume(VOLUME)
|
||||
|
||||
@vimeo.getVideoWidth().then((wid) ->
|
||||
window.PLAYER.resx = wid
|
||||
).catch((error) ->
|
||||
console.error('vimeo::getVideoWidth():', error)
|
||||
)
|
||||
|
||||
@vimeo.getVideoHeight().then((hgt) ->
|
||||
window.PLAYER.resy = hgt
|
||||
).catch((error) ->
|
||||
console.error('vimeo::getVideoHeight():', error)
|
||||
)
|
||||
|
||||
)
|
||||
|
||||
play: ->
|
||||
|
|
@ -98,3 +125,9 @@ window.VimeoPlayer = class VimeoPlayer extends Player
|
|||
)
|
||||
else
|
||||
cb(VOLUME)
|
||||
|
||||
getRes: (cb) ->
|
||||
if @vimeo
|
||||
cb([@resx,@resy])
|
||||
else
|
||||
cb()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue