Support editing first frame of video from QR.

Because why not?
This commit is contained in:
ccd0 2015-10-26 11:20:20 -07:00
parent 0b1048c76a
commit 50e3e6dead

View File

@ -104,20 +104,22 @@ QR.oekaki =
cb = (e) -> cb = (e) ->
document.removeEventListener 'QRFile', cb, false document.removeEventListener 'QRFile', cb, false
return error 'No file to edit.' unless e.detail return error 'No file to edit.' unless e.detail
return error 'Not an image.' unless /^image\//.test e.detail.type return error 'Not an image.' unless /^(image|video)\//.test e.detail.type
img = new Image() isVideo = /^video\//.test e.detail.type
img.onerror = -> error 'Could not open image.' file = document.createElement(if isVideo then 'video' else 'img')
img.onload = -> file.addEventListener 'error', -> error 'Could not open file.', false
file.addEventListener (if isVideo then 'loadeddata' else 'load'), ->
Tegaki.destroy() if Tegaki.bg Tegaki.destroy() if Tegaki.bg
FCX.oekakiName = name FCX.oekakiName = name
Tegaki.open Tegaki.open
onDone: FCX.oekakiCB onDone: FCX.oekakiCB
onCancel: -> onCancel: ->
width: img.naturalWidth width: file.naturalWidth or file.videoWidth
height: img.naturalHeight height: file.naturalHeight or file.videoHeight
bgColor: 'transparent' bgColor: 'transparent'
Tegaki.activeCtx.drawImage img, 0, 0 Tegaki.activeCtx.drawImage file, 0, 0
img.src = URL.createObjectURL e.detail , false
file.src = URL.createObjectURL e.detail
if Tegaki.bg and Tegaki.onDoneCb is FCX.oekakiCB and source is FCX.oekakiLatest if Tegaki.bg and Tegaki.onDoneCb is FCX.oekakiCB and source is FCX.oekakiLatest
FCX.oekakiName = name FCX.oekakiName = name
Tegaki.resume() Tegaki.resume()