1 | <!DOCTYPE html> |
---|
2 | <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> |
---|
3 | <head> |
---|
4 | <title>xpra clipboard test page</title> |
---|
5 | <meta charset="utf-8"> |
---|
6 | <link rel="shortcut icon" type="image/png" href="./favicon.png" id="favicon"> |
---|
7 | |
---|
8 | <script> |
---|
9 | function set_clipboard_image() { |
---|
10 | //This one causes a DOMException: |
---|
11 | //var string = "89504e470d0a1a0a0000000d49484452000000010000000108060000001f15c4890000000d49444154789c6360606060000000050001a5f645400000000049454e44ae426082"; |
---|
12 | var string = "89504e470d0a1a0a0000000d49484452000000300000003008060000005702f9870000026949444154789cedd8bf6b144118c6f1cf6a10494844510b45c4c62022c14204318a20288a58d8d86967e57f2056e21f606cecc44e2cc50411d12eadd89840b0908806b548448c423c8bc9e1e5727b77b33f6e55ee0bc32decde3bcf3333ef3bb34b9f3e7dfe6992aa05b4600ff6e1308ee314bee132a62bd4b58e041b3028889bc20a6a29ed5d5a905eb219e7714118e15dd81ef1ff757a078ad1d592ad18c5419cc06941f05fc980b0148ee20e3e495f0a795a291cc1c79204773490370736e20bb6e48cd32debf4c618a88f40d2703d2494b85e52d75c2394b1bcc19672c688a57120a30cac716eed4c5446113350e96e1e6b2069faad61b83839511a32e740f388f7320792a6eb24ef122a929ab001cee03ecef5a2d3412ccabe31fdc4c355b143d8a4754e7d955230ca3c0b35b3841778895798c587bc41cb32b088f782c8493cc642497de5a271094de31a7608c5a1c8f29aba84f25237f0a68ce00d949e034554b311e1fd6104cb78ab801ce9447d066673c6b9a575957ab27abff42594d54082d7da97da057cf71794d1564ce250876776b6bb59e54e7c1267f306a9d2c0c5228274b384f6e3aa3062db84caf04c38af7cced177a7a5530837b44fb02bb227f1f30eb19bdb726c07135d06fe95d1c0dd4803519f15c72283673170c69f1369bb4f8af5763d2678b7a39fc700e1085237d12efe0f21ffba66ae470686757e9f58c1ded8c0dd4c69639bc96880b09bdf4b89fb54a882a9a41d79e7b13b42c4348e453c9fc6251c103e553e126627130fc4cdc0ed3caacb605c9c81d16a64b6674a77e26f5625b01389705a6c277ea23275118c0b39312f54a73961171dab52549f3e7dfe137e035dc84ced973ad5f00000000049454e44ae426082"; |
---|
13 | var bytes = new Uint8Array(Math.ceil(string.length / 2)); |
---|
14 | for (var i = 0; i < bytes.length; i++) { |
---|
15 | bytes[i] = parseInt(string.substr(i * 2, 2), 16); |
---|
16 | } |
---|
17 | var blob = new Blob(bytes, {type: "image/png"}); |
---|
18 | console.log("created blob", blob); |
---|
19 | var item = new ClipboardItem({"image/png": blob}); |
---|
20 | console.log("created ClipboardItem", item); |
---|
21 | var items = [item]; |
---|
22 | navigator.clipboard.write(items).then(function() { |
---|
23 | console.log("copied png image to clipboard"); |
---|
24 | }) |
---|
25 | .catch(function(err) { |
---|
26 | console.log("failed to set png image", err); |
---|
27 | }); |
---|
28 | } |
---|
29 | </script> |
---|
30 | </head> |
---|
31 | |
---|
32 | <body onload="set_clipboard_image();"> |
---|
33 | </body> |
---|
34 | </html> |
---|