summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/html/editing/dnd/media/001.xhtml
blob: 28984b54482577a4ca89de089bf79c7b816a9b0f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?xml version="1.0" encoding="utf-8"?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Video drag and drop</title>
<style type="text/css">
canvas
  {background-color:silver;}
</style>
<script type="application/ecmascript">
var draggedFrame = 'data:text/plain,FAIL';
function dropIt(event)
  {document.querySelector('p + p').firstChild.nodeValue = (draggedFrame == event.dataTransfer.getData('text/uri-list'))?'PASS':'FAIL';}
function start(event)
  {event.dataTransfer.effectAllowed = 'copy';
  var canvas = document.querySelector('canvas'),
  c = canvas.getContext('2d');
  c.drawImage(document.querySelector('video'),0,0,640,360);
  draggedFrame = canvas.toDataURL('image/png');
  event.dataTransfer.setData('text/uri-list',draggedFrame);}
</script>
<script src="/common/media.js"></script>
</head>
<body dropzone="copy string:text/uri-list" ondrop="dropIt(event)">
<p>
  <video draggable="true" ondragstart="start(event)" controls="true"/>
  <script>
    var video = document.querySelector('video');
    video.src = getVideoURI('/media/movie_5');
  </script>
</p>
<p>Drag video and drop it somewhere on the page. Dragged frame should be copied to the canvas below and you should see word PASS once you drop video.</p>
<p>
  <canvas width="640" height="360">Canvas</canvas>
</p>
</body>
</html>