@supraio/client-daemon-js 0.0.0-master.232 → 0.0.0-mzmacos.237

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10079,7 +10079,7 @@ $packages["math/bits"] = (function() {
10079
10079
  return $pkg;
10080
10080
  })();
10081
10081
  $packages["math"] = (function() {
10082
- var $pkg = {}, $init, js, bits, arrayType, arrayType$1, arrayType$2, structType, math, _zero, posInf, negInf, nan, buf, Exp, Frexp, Inf, IsInf, IsNaN, Log, Log2, NaN, init, Float32bits, Float32frombits, Float64bits, Float64frombits, Abs, normalize, frexp, log2;
10082
+ var $pkg = {}, $init, js, bits, arrayType, arrayType$1, arrayType$2, structType, math, _zero, posInf, negInf, nan, buf, Exp, Frexp, Inf, IsInf, IsNaN, Log, Log2, NaN, init, Float32bits, Float32frombits, Float64bits, Float64frombits, Abs, normalize, Round, frexp, log2;
10083
10083
  js = $packages["github.com/gopherjs/gopherjs/js"];
10084
10084
  bits = $packages["math/bits"];
10085
10085
  arrayType = $arrayType($Uint32, 2);
@@ -10199,6 +10199,23 @@ $packages["math"] = (function() {
10199
10199
  exp$1 = _tmp$3;
10200
10200
  return [y, exp$1];
10201
10201
  };
10202
+ Round = function(x) {
10203
+ var bits$1, e, x, x$1, x$2, x$3, x$4;
10204
+ bits$1 = Float64bits(x);
10205
+ e = ((($shiftRightUint64(bits$1, 52).$low >>> 0)) & 2047) >>> 0;
10206
+ if (e < 1023) {
10207
+ bits$1 = (x$1 = new $Uint64(2147483648, 0), new $Uint64(bits$1.$high & x$1.$high, (bits$1.$low & x$1.$low) >>> 0));
10208
+ if (e === 1022) {
10209
+ bits$1 = (x$2 = new $Uint64(1072693248, 0), new $Uint64(bits$1.$high | x$2.$high, (bits$1.$low | x$2.$low) >>> 0));
10210
+ }
10211
+ } else if (e < 1075) {
10212
+ e = e - (1023) >>> 0;
10213
+ bits$1 = (x$3 = $shiftRightUint64(new $Uint64(524288, 0), e), new $Uint64(bits$1.$high + x$3.$high, bits$1.$low + x$3.$low));
10214
+ bits$1 = (x$4 = $shiftRightUint64(new $Uint64(1048575, 4294967295), e), new $Uint64(bits$1.$high & ~x$4.$high, (bits$1.$low & ~x$4.$low) >>> 0));
10215
+ }
10216
+ return Float64frombits(bits$1);
10217
+ };
10218
+ $pkg.Round = Round;
10202
10219
  frexp = function(f) {
10203
10220
  var _tmp, _tmp$1, _tmp$2, _tmp$3, _tuple, exp$1, f, frac, x, x$1, x$2, x$3;
10204
10221
  frac = 0;
@@ -136343,12 +136360,12 @@ $packages["github.com/nuberu/webgl"] = (function() {
136343
136360
  /* */ if ($assertType(_ref, sliceType$9, true)[1]) { $s = 10; continue; }
136344
136361
  /* */ $s = 11; continue;
136345
136362
  /* if ($assertType(_ref, sliceType, true)[1]) { */ case 1:
136346
- s$6[0] = _ref.$val;
136347
- h = ($pointerOfStructConversion(((s$6.$ptr || (s$6.$ptr = new ptrType$1(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, s$6)))), ptrType));
136363
+ s$1[0] = _ref.$val;
136364
+ h = ($pointerOfStructConversion(((s$1.$ptr || (s$1.$ptr = new ptrType$1(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, s$1)))), ptrType));
136348
136365
  $s = -1; return ((h)).$get();
136349
136366
  /* } else if ($assertType(_ref, sliceType$1, true)[1]) { */ case 2:
136350
- s$8[0] = _ref.$val;
136351
- h$1 = ($pointerOfStructConversion(((s$8.$ptr || (s$8.$ptr = new ptrType$2(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, s$8)))), ptrType));
136367
+ s$6[0] = _ref.$val;
136368
+ h$1 = ($pointerOfStructConversion(((s$6.$ptr || (s$6.$ptr = new ptrType$2(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, s$6)))), ptrType));
136352
136369
  h$1.Len = $imul(h$1.Len, (2));
136353
136370
  h$1.Cap = $imul(h$1.Cap, (2));
136354
136371
  $s = -1; return ((h$1)).$get();
@@ -136359,8 +136376,8 @@ $packages["github.com/nuberu/webgl"] = (function() {
136359
136376
  h$2.Cap = $imul(h$2.Cap, (4));
136360
136377
  $s = -1; return ((h$2)).$get();
136361
136378
  /* } else if ($assertType(_ref, sliceType$3, true)[1]) { */ case 4:
136362
- s$1[0] = _ref.$val;
136363
- h$3 = ($pointerOfStructConversion(((s$1.$ptr || (s$1.$ptr = new ptrType$4(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, s$1)))), ptrType));
136379
+ s$2[0] = _ref.$val;
136380
+ h$3 = ($pointerOfStructConversion(((s$2.$ptr || (s$2.$ptr = new ptrType$4(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, s$2)))), ptrType));
136364
136381
  h$3.Len = $imul(h$3.Len, (8));
136365
136382
  h$3.Cap = $imul(h$3.Cap, (8));
136366
136383
  $s = -1; return ((h$3)).$get();
@@ -136368,14 +136385,14 @@ $packages["github.com/nuberu/webgl"] = (function() {
136368
136385
  s$10 = _ref.$val;
136369
136386
  $s = -1; return s$10;
136370
136387
  /* } else if ($assertType(_ref, sliceType$5, true)[1]) { */ case 6:
136371
- s$2[0] = _ref.$val;
136372
- h$4 = ($pointerOfStructConversion(((s$2.$ptr || (s$2.$ptr = new ptrType$5(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, s$2)))), ptrType));
136388
+ s$3[0] = _ref.$val;
136389
+ h$4 = ($pointerOfStructConversion(((s$3.$ptr || (s$3.$ptr = new ptrType$5(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, s$3)))), ptrType));
136373
136390
  h$4.Len = $imul(h$4.Len, (2));
136374
136391
  h$4.Cap = $imul(h$4.Cap, (2));
136375
136392
  $s = -1; return ((h$4)).$get();
136376
136393
  /* } else if ($assertType(_ref, sliceType$6, true)[1]) { */ case 7:
136377
- s$3[0] = _ref.$val;
136378
- h$5 = ($pointerOfStructConversion(((s$3.$ptr || (s$3.$ptr = new ptrType$6(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, s$3)))), ptrType));
136394
+ s$8[0] = _ref.$val;
136395
+ h$5 = ($pointerOfStructConversion(((s$8.$ptr || (s$8.$ptr = new ptrType$6(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, s$8)))), ptrType));
136379
136396
  h$5.Len = $imul(h$5.Len, (4));
136380
136397
  h$5.Cap = $imul(h$5.Cap, (4));
136381
136398
  $s = -1; return ((h$5)).$get();
@@ -136386,14 +136403,14 @@ $packages["github.com/nuberu/webgl"] = (function() {
136386
136403
  h$6.Cap = $imul(h$6.Cap, (8));
136387
136404
  $s = -1; return ((h$6)).$get();
136388
136405
  /* } else if ($assertType(_ref, sliceType$8, true)[1]) { */ case 9:
136389
- s$9[0] = _ref.$val;
136390
- h$7 = ($pointerOfStructConversion(((s$9.$ptr || (s$9.$ptr = new ptrType$8(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, s$9)))), ptrType));
136406
+ s$5[0] = _ref.$val;
136407
+ h$7 = ($pointerOfStructConversion(((s$5.$ptr || (s$5.$ptr = new ptrType$8(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, s$5)))), ptrType));
136391
136408
  h$7.Len = $imul(h$7.Len, (4));
136392
136409
  h$7.Cap = $imul(h$7.Cap, (4));
136393
136410
  $s = -1; return ((h$7)).$get();
136394
136411
  /* } else if ($assertType(_ref, sliceType$9, true)[1]) { */ case 10:
136395
- s$5[0] = _ref.$val;
136396
- h$8 = ($pointerOfStructConversion(((s$5.$ptr || (s$5.$ptr = new ptrType$9(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, s$5)))), ptrType));
136412
+ s$9[0] = _ref.$val;
136413
+ h$8 = ($pointerOfStructConversion(((s$9.$ptr || (s$9.$ptr = new ptrType$9(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, s$9)))), ptrType));
136397
136414
  h$8.Len = $imul(h$8.Len, (8));
136398
136415
  h$8.Cap = $imul(h$8.Cap, (8));
136399
136416
  $s = -1; return ((h$8)).$get();
@@ -140192,12 +140209,13 @@ $packages["github.com/nuberu/webgl"] = (function() {
140192
140209
  return $pkg;
140193
140210
  })();
140194
140211
  $packages["golang.org/x/exp/shiny/driver/internal/dom"] = (function() {
140195
- var $pkg = {}, $init, focus, key, mouse, size, geom, strings, js, DomEvents, funcType, sliceType, sliceType$1, sliceType$2, chanType, ptrType, keyCodesMap, keyCodesByKeyMap, NewDomEvents, getMouseDirection, getWheelButton, getMouseButton, getEventModifiers, isFocusIn, getKeyRune, getKeyDirection, getKeyCode, GetDocWidth, GetDocHeight, GetOrientation;
140212
+ var $pkg = {}, $init, focus, key, mouse, size, geom, math, strings, js, DomEvents, funcType, sliceType, sliceType$1, sliceType$2, chanType, ptrType, keyCodesMap, keyCodesByKeyMap, NewDomEvents, getMouseDirection, getWheelButton, getMouseButton, getEventModifiers, isFocusIn, getKeyRune, getKeyDirection, getKeyCode, GetDocWidth, GetDocHeight, GetScreenWidth, GetScreenHeight, GetBrowserZoomRatio, SetWindowWidth, SetWindowHeight, GetOrientation;
140196
140213
  focus = $packages["golang.org/x/mobile/event/focus"];
140197
140214
  key = $packages["golang.org/x/mobile/event/key"];
140198
140215
  mouse = $packages["golang.org/x/mobile/event/mouse"];
140199
140216
  size = $packages["golang.org/x/mobile/event/size"];
140200
140217
  geom = $packages["golang.org/x/mobile/geom"];
140218
+ math = $packages["math"];
140201
140219
  strings = $packages["strings"];
140202
140220
  js = $packages["syscall/js"];
140203
140221
  DomEvents = $pkg.DomEvents = $newType(0, $kindStruct, "dom.DomEvents", true, "golang.org/x/exp/shiny/driver/internal/dom", true, function(eventChan_, releases_) {
@@ -140541,6 +140559,62 @@ $packages["golang.org/x/exp/shiny/driver/internal/dom"] = (function() {
140541
140559
  return $clone($clone(js.Global(), js.Value).Get("innerHeight"), js.Value).Int();
140542
140560
  };
140543
140561
  $pkg.GetDocHeight = GetDocHeight;
140562
+ GetScreenWidth = function() {
140563
+ return $clone($clone($clone(js.Global(), js.Value).Get("screen"), js.Value).Get("width"), js.Value).Int();
140564
+ };
140565
+ $pkg.GetScreenWidth = GetScreenWidth;
140566
+ GetScreenHeight = function() {
140567
+ return $clone($clone($clone(js.Global(), js.Value).Get("screen"), js.Value).Get("height"), js.Value).Int();
140568
+ };
140569
+ $pkg.GetScreenHeight = GetScreenHeight;
140570
+ GetBrowserZoomRatio = function() {
140571
+ var chromeZoom1, chromeZoom2, chromeZoom3, docElClientWidth, scrollerWidthInNoZoom, scrollerWidthInZoom1, scrollerWidthInZoom2, windowInnerWidth, windowOuterWidth;
140572
+ windowInnerWidth = $clone($clone(js.Global(), js.Value).Get("innerWidth"), js.Value).Float();
140573
+ windowOuterWidth = $clone($clone(js.Global(), js.Value).Get("outerWidth"), js.Value).Float();
140574
+ docElClientWidth = $clone($clone($clone($clone(js.Global(), js.Value).Get("document"), js.Value).Get("documentElement"), js.Value).Get("clientWidth"), js.Value).Float();
140575
+ scrollerWidthInNoZoom = windowInnerWidth - docElClientWidth;
140576
+ chromeZoom1 = (windowOuterWidth - scrollerWidthInNoZoom) / windowInnerWidth;
140577
+ scrollerWidthInZoom1 = math.Round(scrollerWidthInNoZoom * chromeZoom1);
140578
+ chromeZoom2 = (windowOuterWidth - scrollerWidthInZoom1) / windowInnerWidth;
140579
+ scrollerWidthInZoom2 = math.Round(scrollerWidthInNoZoom * chromeZoom2);
140580
+ chromeZoom3 = (windowOuterWidth - scrollerWidthInZoom2) / windowInnerWidth;
140581
+ return chromeZoom3;
140582
+ };
140583
+ $pkg.GetBrowserZoomRatio = GetBrowserZoomRatio;
140584
+ SetWindowWidth = function(newInnerWidth) {
140585
+ var _r, innerWidth, newInnerWidth, newOuterWidth, outerHeight, outerWidth, screenWidth, $s, $r;
140586
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r = $f._r; innerWidth = $f.innerWidth; newInnerWidth = $f.newInnerWidth; newOuterWidth = $f.newOuterWidth; outerHeight = $f.outerHeight; outerWidth = $f.outerWidth; screenWidth = $f.screenWidth; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
140587
+ innerWidth = $clone($clone(js.Global(), js.Value).Get("innerWidth"), js.Value).Int();
140588
+ outerWidth = $clone($clone(js.Global(), js.Value).Get("outerWidth"), js.Value).Int();
140589
+ outerHeight = $clone($clone(js.Global(), js.Value).Get("outerHeight"), js.Value).Int();
140590
+ newOuterWidth = newInnerWidth + ((outerWidth - innerWidth >> 0)) >> 0;
140591
+ screenWidth = GetScreenWidth();
140592
+ if (newOuterWidth > screenWidth) {
140593
+ newOuterWidth = screenWidth;
140594
+ }
140595
+ _r = $clone(js.Global(), js.Value).Call("resizeTo", new sliceType$1([new $Int(newOuterWidth), new $Int(outerHeight)])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
140596
+ _r;
140597
+ $s = -1; return;
140598
+ /* */ } return; } if ($f === undefined) { $f = { $blk: SetWindowWidth }; } $f._r = _r; $f.innerWidth = innerWidth; $f.newInnerWidth = newInnerWidth; $f.newOuterWidth = newOuterWidth; $f.outerHeight = outerHeight; $f.outerWidth = outerWidth; $f.screenWidth = screenWidth; $f.$s = $s; $f.$r = $r; return $f;
140599
+ };
140600
+ $pkg.SetWindowWidth = SetWindowWidth;
140601
+ SetWindowHeight = function(newInnerHeight) {
140602
+ var _r, innerHeight, newInnerHeight, newOuterHeight, outerHeight, outerWidth, screenHeight, $s, $r;
140603
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r = $f._r; innerHeight = $f.innerHeight; newInnerHeight = $f.newInnerHeight; newOuterHeight = $f.newOuterHeight; outerHeight = $f.outerHeight; outerWidth = $f.outerWidth; screenHeight = $f.screenHeight; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
140604
+ innerHeight = $clone($clone(js.Global(), js.Value).Get("innerHeight"), js.Value).Int();
140605
+ outerHeight = $clone($clone(js.Global(), js.Value).Get("outerHeight"), js.Value).Int();
140606
+ outerWidth = $clone($clone(js.Global(), js.Value).Get("outerWidth"), js.Value).Int();
140607
+ newOuterHeight = newInnerHeight + ((outerHeight - innerHeight >> 0)) >> 0;
140608
+ screenHeight = GetScreenHeight();
140609
+ if (newOuterHeight > screenHeight) {
140610
+ newOuterHeight = screenHeight;
140611
+ }
140612
+ _r = $clone(js.Global(), js.Value).Call("resizeTo", new sliceType$1([new $Int(outerWidth), new $Int(newOuterHeight)])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
140613
+ _r;
140614
+ $s = -1; return;
140615
+ /* */ } return; } if ($f === undefined) { $f = { $blk: SetWindowHeight }; } $f._r = _r; $f.innerHeight = innerHeight; $f.newInnerHeight = newInnerHeight; $f.newOuterHeight = newOuterHeight; $f.outerHeight = outerHeight; $f.outerWidth = outerWidth; $f.screenHeight = screenHeight; $f.$s = $s; $f.$r = $r; return $f;
140616
+ };
140617
+ $pkg.SetWindowHeight = SetWindowHeight;
140544
140618
  GetOrientation = function() {
140545
140619
  var orientation, orientationType, $deferred;
140546
140620
  /* */ var $err = null; try { $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
@@ -140574,8 +140648,9 @@ $packages["golang.org/x/exp/shiny/driver/internal/dom"] = (function() {
140574
140648
  $r = mouse.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
140575
140649
  $r = size.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
140576
140650
  $r = geom.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
140577
- $r = strings.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
140578
- $r = js.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
140651
+ $r = math.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
140652
+ $r = strings.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
140653
+ $r = js.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
140579
140654
  keyCodesMap = $makeMap($String.keyFor, [{ k: "KeyA", v: 4 }, { k: "KeyB", v: 5 }, { k: "KeyC", v: 6 }, { k: "KeyD", v: 7 }, { k: "KeyE", v: 8 }, { k: "KeyF", v: 9 }, { k: "KeyG", v: 10 }, { k: "KeyH", v: 11 }, { k: "KeyI", v: 12 }, { k: "KeyJ", v: 13 }, { k: "KeyK", v: 14 }, { k: "KeyL", v: 15 }, { k: "KeyM", v: 16 }, { k: "KeyN", v: 17 }, { k: "KeyO", v: 18 }, { k: "KeyP", v: 19 }, { k: "KeyQ", v: 20 }, { k: "KeyR", v: 21 }, { k: "KeyS", v: 22 }, { k: "KeyT", v: 23 }, { k: "KeyU", v: 24 }, { k: "KeyV", v: 25 }, { k: "KeyW", v: 26 }, { k: "KeyX", v: 27 }, { k: "KeyY", v: 28 }, { k: "KeyZ", v: 29 }, { k: "Digit1", v: 30 }, { k: "Digit2", v: 31 }, { k: "Digit3", v: 32 }, { k: "Digit4", v: 33 }, { k: "Digit5", v: 34 }, { k: "Digit6", v: 35 }, { k: "Digit7", v: 36 }, { k: "Digit8", v: 37 }, { k: "Digit9", v: 38 }, { k: "Digit0", v: 39 }, { k: "Enter", v: 40 }, { k: "Escape", v: 41 }, { k: "Backspace", v: 42 }, { k: "Tab", v: 43 }, { k: "Space", v: 44 }, { k: "Minus", v: 45 }, { k: "Equal", v: 46 }, { k: "BracketLeft", v: 47 }, { k: "BracketRight", v: 48 }, { k: "Backslash", v: 49 }, { k: "Semicolon", v: 51 }, { k: "Quote", v: 52 }, { k: "Backquote", v: 53 }, { k: "Comma", v: 54 }, { k: "Period", v: 55 }, { k: "Slash", v: 56 }, { k: "CapsLock", v: 57 }, { k: "F1", v: 58 }, { k: "F2", v: 59 }, { k: "F3", v: 60 }, { k: "F4", v: 61 }, { k: "F5", v: 62 }, { k: "F6", v: 63 }, { k: "F7", v: 64 }, { k: "F8", v: 65 }, { k: "F9", v: 66 }, { k: "F10", v: 67 }, { k: "F11", v: 68 }, { k: "F12", v: 69 }, { k: "Pause", v: 72 }, { k: "Insert", v: 73 }, { k: "Home", v: 74 }, { k: "PageUp", v: 75 }, { k: "Delete", v: 76 }, { k: "End", v: 77 }, { k: "PageDown", v: 78 }, { k: "ArrowRight", v: 79 }, { k: "ArrowLeft", v: 80 }, { k: "ArrowDown", v: 81 }, { k: "ArrowUp", v: 82 }, { k: "NumLock", v: 83 }, { k: "NumpadDivide", v: 84 }, { k: "NumpadMultiply", v: 85 }, { k: "NumpadSubtract", v: 86 }, { k: "NumpadAdd", v: 87 }, { k: "NumpadEnter", v: 88 }, { k: "Numpad1", v: 89 }, { k: "Numpad2", v: 90 }, { k: "Numpad3", v: 91 }, { k: "Numpad4", v: 92 }, { k: "Numpad5", v: 93 }, { k: "Numpad6", v: 94 }, { k: "Numpad7", v: 95 }, { k: "Numpad8", v: 96 }, { k: "Numpad9", v: 97 }, { k: "Numpad0", v: 98 }, { k: "NumpadDecimal", v: 99 }, { k: "NumpadEqual", v: 103 }, { k: "F13", v: 104 }, { k: "F14", v: 105 }, { k: "F15", v: 106 }, { k: "F16", v: 107 }, { k: "F17", v: 108 }, { k: "F18", v: 109 }, { k: "F19", v: 110 }, { k: "F20", v: 111 }, { k: "F21", v: 112 }, { k: "F22", v: 113 }, { k: "F23", v: 114 }, { k: "F24", v: 115 }, { k: "Help", v: 117 }, { k: "ContextMenu", v: 118 }, { k: "VolumeMute", v: 127 }, { k: "VolumeUp", v: 128 }, { k: "VolumeDown", v: 129 }, { k: "ControlLeft", v: 224 }, { k: "ShiftLeft", v: 225 }, { k: "AltLeft", v: 226 }, { k: "MetaLeft", v: 227 }, { k: "ControlRight", v: 228 }, { k: "ShiftRight", v: 229 }, { k: "AltRight", v: 230 }, { k: "MetaRight", v: 231 }, { k: "PrintScreen", v: 0 }]);
140580
140655
  keyCodesByKeyMap = $makeMap($String.keyFor, [{ k: "AudioVolumeMute", v: 127 }, { k: "AudioVolumeUp", v: 128 }, { k: "AudioVolumeDown", v: 129 }]);
140581
140656
  /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
@@ -142190,12 +142265,10 @@ $packages["golang.org/x/exp/shiny/driver/webgldriver"] = (function() {
142190
142265
  }
142191
142266
  this.doc = doc_;
142192
142267
  });
142193
- windowImpl = $pkg.windowImpl = $newType(0, $kindStruct, "webgldriver.windowImpl", true, "golang.org/x/exp/shiny/driver/webgldriver", false, function(screen_, width_, height_, mutex_, canvasEl_, gl_, programRGBA_, imageTexRGBA_, programYUV420_, imageTexY_, imageTexU_, imageTexV_, vertexArray_, released_, domEvents_) {
142268
+ windowImpl = $pkg.windowImpl = $newType(0, $kindStruct, "webgldriver.windowImpl", true, "golang.org/x/exp/shiny/driver/webgldriver", false, function(screen_, mutex_, canvasEl_, gl_, programRGBA_, imageTexRGBA_, programYUV420_, imageTexY_, imageTexU_, imageTexV_, vertexArray_, released_, domEvents_, width_, height_) {
142194
142269
  this.$val = this;
142195
142270
  if (arguments.length === 0) {
142196
142271
  this.screen = ptrType.nil;
142197
- this.width = 0;
142198
- this.height = 0;
142199
142272
  this.mutex = ptrType$1.nil;
142200
142273
  this.canvasEl = new js.Value.ptr(null, false);
142201
142274
  this.gl = ptrType$4.nil;
@@ -142208,11 +142281,11 @@ $packages["golang.org/x/exp/shiny/driver/webgldriver"] = (function() {
142208
142281
  this.vertexArray = ptrType$6.nil;
142209
142282
  this.released = false;
142210
142283
  this.domEvents = ptrType$7.nil;
142284
+ this.width = 0;
142285
+ this.height = 0;
142211
142286
  return;
142212
142287
  }
142213
142288
  this.screen = screen_;
142214
- this.width = width_;
142215
- this.height = height_;
142216
142289
  this.mutex = mutex_;
142217
142290
  this.canvasEl = canvasEl_;
142218
142291
  this.gl = gl_;
@@ -142225,6 +142298,8 @@ $packages["golang.org/x/exp/shiny/driver/webgldriver"] = (function() {
142225
142298
  this.vertexArray = vertexArray_;
142226
142299
  this.released = released_;
142227
142300
  this.domEvents = domEvents_;
142301
+ this.width = width_;
142302
+ this.height = height_;
142228
142303
  });
142229
142304
  sliceType = $sliceType($Uint16);
142230
142305
  sliceType$1 = $sliceType($Float32);
@@ -142378,6 +142453,37 @@ $packages["golang.org/x/exp/shiny/driver/webgldriver"] = (function() {
142378
142453
  /* */ } return; } if ($f === undefined) { $f = { $blk: windowImpl.ptr.prototype.createTexture }; } $f._r = _r; $f.format = format; $f.height = height; $f.imageTex = imageTex; $f.unit = unit; $f.w = w; $f.width = width; $f.$s = $s; $f.$r = $r; return $f;
142379
142454
  };
142380
142455
  windowImpl.prototype.createTexture = function(unit, format, width, height) { return this.$val.createTexture(unit, format, width, height); };
142456
+ windowImpl.ptr.prototype.ensureRGBATextures = function(width, height) {
142457
+ var _r, _r$1, _tuple, err, height, w, width, $s, $r;
142458
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; err = $f.err; height = $f.height; w = $f.w; width = $f.width; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
142459
+ w = this;
142460
+ /* */ if (w.programRGBA === ptrType$3.nil) { $s = 1; continue; }
142461
+ /* */ $s = 2; continue;
142462
+ /* if (w.programRGBA === ptrType$3.nil) { */ case 1:
142463
+ err = $ifaceNil;
142464
+ _r = w.createAndLinkProgramRGBA(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
142465
+ _tuple = _r;
142466
+ w.programRGBA = _tuple[0];
142467
+ err = _tuple[1];
142468
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
142469
+ $panic(err);
142470
+ }
142471
+ /* } */ case 2:
142472
+ if ((w.width === width) && (w.height === height)) {
142473
+ $s = -1; return;
142474
+ }
142475
+ $r = w.ensureCanvasSize(width, height); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142476
+ _r$1 = w.createTexture(33984, 6408, width, height); /* */ $s = 5; case 5: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
142477
+ w.imageTexRGBA = _r$1;
142478
+ $r = w.gl.Enable(2929); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142479
+ $r = w.gl.Viewport(0, 0, width, height); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142480
+ w.width = width;
142481
+ w.height = height;
142482
+ $r = w.clear(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142483
+ $s = -1; return;
142484
+ /* */ } return; } if ($f === undefined) { $f = { $blk: windowImpl.ptr.prototype.ensureRGBATextures }; } $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.err = err; $f.height = height; $f.w = w; $f.width = width; $f.$s = $s; $f.$r = $r; return $f;
142485
+ };
142486
+ windowImpl.prototype.ensureRGBATextures = function(width, height) { return this.$val.ensureRGBATextures(width, height); };
142381
142487
  windowImpl.ptr.prototype.createAndLinkProgramRGBA = function() {
142382
142488
  var _arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, err, imageLoc, shaderProgram, w, $s, $r;
142383
142489
  /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _arg = $f._arg; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; err = $f.err; imageLoc = $f.imageLoc; shaderProgram = $f.shaderProgram; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
@@ -142416,22 +142522,58 @@ $packages["golang.org/x/exp/shiny/driver/webgldriver"] = (function() {
142416
142522
  var _arg, _arg$1, _arg$2, _arg$3, _arg$4, _r, _r$1, dp, sr, src, w, $s, $r;
142417
142523
  /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$2 = $f._arg$2; _arg$3 = $f._arg$3; _arg$4 = $f._arg$4; _r = $f._r; _r$1 = $f._r$1; dp = $f.dp; sr = $f.sr; src = $f.src; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
142418
142524
  w = this;
142419
- $r = w.gl.UseProgram(w.programRGBA); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142420
- $r = w.gl.BindTexture(3553, w.imageTexRGBA); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142525
+ $r = w.ensureRGBATextures(sr.Max.X, sr.Max.Y); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142526
+ $r = w.gl.UseProgram(w.programRGBA); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142527
+ $r = w.gl.BindTexture(3553, w.imageTexRGBA); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142421
142528
  _arg = dp.X;
142422
142529
  _arg$1 = dp.Y;
142423
142530
  _arg$2 = sr.Max.X;
142424
142531
  _arg$3 = sr.Max.Y;
142425
- _r = src.RGBA(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
142426
- _r$1 = webgl.TypedArrayOf(_r.Pix); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
142532
+ _r = src.RGBA(); /* */ $s = 4; case 4: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
142533
+ _r$1 = webgl.TypedArrayOf(_r.Pix); /* */ $s = 5; case 5: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
142427
142534
  _arg$4 = $clone(_r$1, js.Value);
142428
- $r = w.gl.TexSubImage2D(3553, 0, _arg, _arg$1, _arg$2, _arg$3, 6408, 5121, _arg$4); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142429
- $r = w.gl.BindVertexArray(w.vertexArray); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142430
- $r = w.gl.DrawElements(4, elementsIndices.$length, 5123, new $Int64(0, 0)); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142535
+ $r = w.gl.TexSubImage2D(3553, 0, _arg, _arg$1, _arg$2, _arg$3, 6408, 5121, _arg$4); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142536
+ $r = w.gl.BindVertexArray(w.vertexArray); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142537
+ $r = w.gl.DrawElements(4, elementsIndices.$length, 5123, new $Int64(0, 0)); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142431
142538
  $s = -1; return;
142432
142539
  /* */ } return; } if ($f === undefined) { $f = { $blk: windowImpl.ptr.prototype.drawBufferRGBA }; } $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$2 = _arg$2; $f._arg$3 = _arg$3; $f._arg$4 = _arg$4; $f._r = _r; $f._r$1 = _r$1; $f.dp = dp; $f.sr = sr; $f.src = src; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
142433
142540
  };
142434
142541
  windowImpl.prototype.drawBufferRGBA = function(dp, src, sr) { return this.$val.drawBufferRGBA(dp, src, sr); };
142542
+ windowImpl.ptr.prototype.ensureYUV420Textures = function(width, height) {
142543
+ var _q, _q$1, _q$2, _q$3, _r, _r$1, _r$2, _r$3, _tuple, err, height, w, width, $s, $r;
142544
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _q = $f._q; _q$1 = $f._q$1; _q$2 = $f._q$2; _q$3 = $f._q$3; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _tuple = $f._tuple; err = $f.err; height = $f.height; w = $f.w; width = $f.width; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
142545
+ w = this;
142546
+ /* */ if (w.programYUV420 === ptrType$3.nil) { $s = 1; continue; }
142547
+ /* */ $s = 2; continue;
142548
+ /* if (w.programYUV420 === ptrType$3.nil) { */ case 1:
142549
+ err = $ifaceNil;
142550
+ _r = w.createAndLinkProgramYUV420(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
142551
+ _tuple = _r;
142552
+ w.programYUV420 = _tuple[0];
142553
+ err = _tuple[1];
142554
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
142555
+ $panic(err);
142556
+ }
142557
+ /* } */ case 2:
142558
+ if ((w.width === width) && (w.height === height)) {
142559
+ $s = -1; return;
142560
+ }
142561
+ $r = w.ensureCanvasSize(width, height); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142562
+ _r$1 = w.createTexture(33985, 6409, width, height); /* */ $s = 5; case 5: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
142563
+ w.imageTexY = _r$1;
142564
+ _r$2 = w.createTexture(33986, 6409, (_q = width / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")), (_q$1 = height / 2, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero"))); /* */ $s = 6; case 6: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
142565
+ w.imageTexU = _r$2;
142566
+ _r$3 = w.createTexture(33987, 6409, (_q$2 = width / 2, (_q$2 === _q$2 && _q$2 !== 1/0 && _q$2 !== -1/0) ? _q$2 >> 0 : $throwRuntimeError("integer divide by zero")), (_q$3 = height / 2, (_q$3 === _q$3 && _q$3 !== 1/0 && _q$3 !== -1/0) ? _q$3 >> 0 : $throwRuntimeError("integer divide by zero"))); /* */ $s = 7; case 7: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
142567
+ w.imageTexV = _r$3;
142568
+ $r = w.gl.Enable(2929); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142569
+ $r = w.gl.Viewport(0, 0, width, height); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142570
+ w.width = width;
142571
+ w.height = height;
142572
+ $r = w.clear(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142573
+ $s = -1; return;
142574
+ /* */ } return; } if ($f === undefined) { $f = { $blk: windowImpl.ptr.prototype.ensureYUV420Textures }; } $f._q = _q; $f._q$1 = _q$1; $f._q$2 = _q$2; $f._q$3 = _q$3; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._tuple = _tuple; $f.err = err; $f.height = height; $f.w = w; $f.width = width; $f.$s = $s; $f.$r = $r; return $f;
142575
+ };
142576
+ windowImpl.prototype.ensureYUV420Textures = function(width, height) { return this.$val.ensureYUV420Textures(width, height); };
142435
142577
  windowImpl.ptr.prototype.createAndLinkProgramYUV420 = function() {
142436
142578
  var _arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, err, imageULoc, imageVLoc, imageYLoc, shaderProgram, w, $s, $r;
142437
142579
  /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _arg = $f._arg; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; err = $f.err; imageULoc = $f.imageULoc; imageVLoc = $f.imageVLoc; imageYLoc = $f.imageYLoc; shaderProgram = $f.shaderProgram; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
@@ -142496,15 +142638,16 @@ $packages["golang.org/x/exp/shiny/driver/webgldriver"] = (function() {
142496
142638
  var _q, _q$1, _q$2, _q$3, cb, cr, dp, sr, w, y, $s, $r;
142497
142639
  /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _q = $f._q; _q$1 = $f._q$1; _q$2 = $f._q$2; _q$3 = $f._q$3; cb = $f.cb; cr = $f.cr; dp = $f.dp; sr = $f.sr; w = $f.w; y = $f.y; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
142498
142640
  w = this;
142499
- $r = w.gl.UseProgram(w.programYUV420); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142500
- $r = w.gl.BindTexture(3553, w.imageTexY); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142501
- $r = w.gl.TexSubImage2D(3553, 0, dp.X, dp.Y, sr.Max.X, sr.Max.Y, 6409, 5121, $clone(y, js.Value)); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142502
- $r = w.gl.BindTexture(3553, w.imageTexU); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142503
- $r = w.gl.TexSubImage2D(3553, 0, dp.X, dp.Y, (_q = sr.Max.X / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")), (_q$1 = sr.Max.Y / 2, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero")), 6409, 5121, $clone(cb, js.Value)); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142504
- $r = w.gl.BindTexture(3553, w.imageTexV); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142505
- $r = w.gl.TexSubImage2D(3553, 0, dp.X, dp.Y, (_q$2 = sr.Max.X / 2, (_q$2 === _q$2 && _q$2 !== 1/0 && _q$2 !== -1/0) ? _q$2 >> 0 : $throwRuntimeError("integer divide by zero")), (_q$3 = sr.Max.Y / 2, (_q$3 === _q$3 && _q$3 !== 1/0 && _q$3 !== -1/0) ? _q$3 >> 0 : $throwRuntimeError("integer divide by zero")), 6409, 5121, $clone(cr, js.Value)); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142506
- $r = w.gl.BindVertexArray(w.vertexArray); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142507
- $r = w.gl.DrawElements(4, elementsIndices.$length, 5123, new $Int64(0, 0)); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142641
+ $r = w.ensureYUV420Textures(sr.Max.X, sr.Max.Y); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142642
+ $r = w.gl.UseProgram(w.programYUV420); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142643
+ $r = w.gl.BindTexture(3553, w.imageTexY); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142644
+ $r = w.gl.TexSubImage2D(3553, 0, dp.X, dp.Y, sr.Max.X, sr.Max.Y, 6409, 5121, $clone(y, js.Value)); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142645
+ $r = w.gl.BindTexture(3553, w.imageTexU); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142646
+ $r = w.gl.TexSubImage2D(3553, 0, dp.X, dp.Y, (_q = sr.Max.X / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")), (_q$1 = sr.Max.Y / 2, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero")), 6409, 5121, $clone(cb, js.Value)); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142647
+ $r = w.gl.BindTexture(3553, w.imageTexV); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142648
+ $r = w.gl.TexSubImage2D(3553, 0, dp.X, dp.Y, (_q$2 = sr.Max.X / 2, (_q$2 === _q$2 && _q$2 !== 1/0 && _q$2 !== -1/0) ? _q$2 >> 0 : $throwRuntimeError("integer divide by zero")), (_q$3 = sr.Max.Y / 2, (_q$3 === _q$3 && _q$3 !== 1/0 && _q$3 !== -1/0) ? _q$3 >> 0 : $throwRuntimeError("integer divide by zero")), 6409, 5121, $clone(cr, js.Value)); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142649
+ $r = w.gl.BindVertexArray(w.vertexArray); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142650
+ $r = w.gl.DrawElements(4, elementsIndices.$length, 5123, new $Int64(0, 0)); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142508
142651
  $s = -1; return;
142509
142652
  /* */ } return; } if ($f === undefined) { $f = { $blk: windowImpl.ptr.prototype.drawBufferYUV420JSArrayBuffers }; } $f._q = _q; $f._q$1 = _q$1; $f._q$2 = _q$2; $f._q$3 = _q$3; $f.cb = cb; $f.cr = cr; $f.dp = dp; $f.sr = sr; $f.w = w; $f.y = y; $f.$s = $s; $f.$r = $r; return $f;
142510
142653
  };
@@ -142596,69 +142739,62 @@ $packages["golang.org/x/exp/shiny/driver/webgldriver"] = (function() {
142596
142739
  /* */ } return; } if ($f === undefined) { $f = { $blk: main }; } $f._tuple = _tuple; $f.err = err; $f.f = f; $f.retErr = retErr; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
142597
142740
  };
142598
142741
  newWindow = function(screen$1, opts) {
142599
- var _q, _q$1, _q$2, _q$3, _r, _r$1, _r$10, _r$11, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _tuple, _tuple$1, _tuple$2, canvasEl, domEvents, err, gl, height, opts, screen$1, w, width, $s, $r;
142600
- /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _q = $f._q; _q$1 = $f._q$1; _q$2 = $f._q$2; _q$3 = $f._q$3; _r = $f._r; _r$1 = $f._r$1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; canvasEl = $f.canvasEl; domEvents = $f.domEvents; err = $f.err; gl = $f.gl; height = $f.height; opts = $f.opts; screen$1 = $f.screen$1; w = $f.w; width = $f.width; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
142742
+ var _r, _r$1, _r$2, _r$3, _r$4, _r$5, _tuple, canvasEl, domEvents, err, gl, opts, screen$1, w, $s, $r;
142743
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _tuple = $f._tuple; canvasEl = $f.canvasEl; domEvents = $f.domEvents; err = $f.err; gl = $f.gl; opts = $f.opts; screen$1 = $f.screen$1; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
142601
142744
  _r = $clone(screen$1.doc, js.Value).Call("createElement", new sliceType$2([new $String("canvas")])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
142602
142745
  canvasEl = $clone(_r, js.Value);
142603
142746
  _r$1 = $clone($clone(screen$1.doc, js.Value).Get("body"), js.Value).Call("appendChild", new sliceType$2([new canvasEl.constructor.elem(canvasEl)])); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
142604
142747
  _r$1;
142605
- width = opts.Width;
142606
- if (opts.Width === 0) {
142607
- width = dom.GetDocWidth();
142608
- }
142609
- $r = $clone(canvasEl, js.Value).Set("width", new $Int(width)); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142610
- height = opts.Height;
142611
- if (opts.Height === 0) {
142612
- height = dom.GetDocHeight();
142613
- }
142614
- $r = $clone(canvasEl, js.Value).Set("height", new $Int(height)); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142615
- /* */ if (!(opts.Title === "")) { $s = 5; continue; }
142616
- /* */ $s = 6; continue;
142617
- /* if (!(opts.Title === "")) { */ case 5:
142618
- _r$2 = $clone($clone(screen$1.doc, js.Value).Get("head"), js.Value).Call("getElementsByTagName", new sliceType$2([new $String("title")])); /* */ $s = 7; case 7: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
142619
- _r$3 = $clone(_r$2, js.Value).Call("item", new sliceType$2([new $Int(0)])); /* */ $s = 8; case 8: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
142620
- $r = $clone(_r$3, js.Value).Set("innerHTML", new $String(opts.Title)); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142621
- /* } */ case 6:
142622
- _r$4 = webgl.FromCanvas($clone(canvasEl, js.Value)); /* */ $s = 10; case 10: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
142623
- _tuple = _r$4;
142748
+ _r$2 = webgl.FromCanvas($clone(canvasEl, js.Value)); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
142749
+ _tuple = _r$2;
142624
142750
  gl = _tuple[0];
142625
142751
  err = _tuple[1];
142626
142752
  if (!($interfaceIsEqual(err, $ifaceNil))) {
142627
142753
  $panic(err);
142628
142754
  }
142629
142755
  domEvents = dom.NewDomEvents();
142630
- w = new windowImpl.ptr(screen$1, width, height, ptrType$1.nil, $clone(canvasEl, js.Value), gl, ptrType$3.nil, ptrType$5.nil, ptrType$3.nil, ptrType$5.nil, ptrType$5.nil, ptrType$5.nil, ptrType$6.nil, false, domEvents);
142631
- _r$5 = w.createAndLinkProgramRGBA(); /* */ $s = 11; case 11: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
142632
- _tuple$1 = _r$5;
142633
- w.programRGBA = _tuple$1[0];
142634
- err = _tuple$1[1];
142635
- if (!($interfaceIsEqual(err, $ifaceNil))) {
142636
- $panic(err);
142637
- }
142638
- _r$6 = w.createTexture(33984, 6408, w.width, w.height); /* */ $s = 12; case 12: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
142639
- w.imageTexRGBA = _r$6;
142640
- _r$7 = w.createAndLinkProgramYUV420(); /* */ $s = 13; case 13: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
142641
- _tuple$2 = _r$7;
142642
- w.programYUV420 = _tuple$2[0];
142643
- err = _tuple$2[1];
142644
- if (!($interfaceIsEqual(err, $ifaceNil))) {
142645
- $panic(err);
142646
- }
142647
- _r$8 = w.createTexture(33985, 6409, w.width, w.height); /* */ $s = 14; case 14: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
142648
- w.imageTexY = _r$8;
142649
- _r$9 = w.createTexture(33986, 6409, (_q = w.width / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")), (_q$1 = w.height / 2, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero"))); /* */ $s = 15; case 15: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
142650
- w.imageTexU = _r$9;
142651
- _r$10 = w.createTexture(33987, 6409, (_q$2 = w.width / 2, (_q$2 === _q$2 && _q$2 !== 1/0 && _q$2 !== -1/0) ? _q$2 >> 0 : $throwRuntimeError("integer divide by zero")), (_q$3 = w.height / 2, (_q$3 === _q$3 && _q$3 !== 1/0 && _q$3 !== -1/0) ? _q$3 >> 0 : $throwRuntimeError("integer divide by zero"))); /* */ $s = 16; case 16: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
142652
- w.imageTexV = _r$10;
142653
- _r$11 = w.createBuffers(); /* */ $s = 17; case 17: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
142654
- w.vertexArray = _r$11;
142655
- $r = w.gl.Enable(2929); /* */ $s = 18; case 18: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142656
- $r = w.gl.Viewport(0, 0, w.width, w.height); /* */ $s = 19; case 19: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142657
- $r = w.clear(); /* */ $s = 20; case 20: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142658
- $r = domEvents.BindEvents(); /* */ $s = 21; case 21: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142756
+ w = new windowImpl.ptr(screen$1, ptrType$1.nil, $clone(canvasEl, js.Value), gl, ptrType$3.nil, ptrType$5.nil, ptrType$3.nil, ptrType$5.nil, ptrType$5.nil, ptrType$5.nil, ptrType$6.nil, false, domEvents, 0, 0);
142757
+ /* */ if (!((opts.Width === 0))) { $s = 4; continue; }
142758
+ /* */ $s = 5; continue;
142759
+ /* if (!((opts.Width === 0))) { */ case 4:
142760
+ $r = dom.SetWindowWidth(opts.Width); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142761
+ /* } */ case 5:
142762
+ /* */ if (!((opts.Height === 0))) { $s = 7; continue; }
142763
+ /* */ $s = 8; continue;
142764
+ /* if (!((opts.Height === 0))) { */ case 7:
142765
+ $r = dom.SetWindowHeight(opts.Height); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142766
+ /* } */ case 8:
142767
+ /* */ if (!(opts.Title === "")) { $s = 10; continue; }
142768
+ /* */ $s = 11; continue;
142769
+ /* if (!(opts.Title === "")) { */ case 10:
142770
+ _r$3 = $clone($clone(screen$1.doc, js.Value).Get("head"), js.Value).Call("getElementsByTagName", new sliceType$2([new $String("title")])); /* */ $s = 12; case 12: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
142771
+ _r$4 = $clone(_r$3, js.Value).Call("item", new sliceType$2([new $Int(0)])); /* */ $s = 13; case 13: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
142772
+ $r = $clone(_r$4, js.Value).Set("innerHTML", new $String(opts.Title)); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142773
+ /* } */ case 11:
142774
+ _r$5 = w.createBuffers(); /* */ $s = 15; case 15: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
142775
+ w.vertexArray = _r$5;
142776
+ $r = domEvents.BindEvents(); /* */ $s = 16; case 16: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142659
142777
  $s = -1; return w;
142660
- /* */ } return; } if ($f === undefined) { $f = { $blk: newWindow }; } $f._q = _q; $f._q$1 = _q$1; $f._q$2 = _q$2; $f._q$3 = _q$3; $f._r = _r; $f._r$1 = _r$1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f.canvasEl = canvasEl; $f.domEvents = domEvents; $f.err = err; $f.gl = gl; $f.height = height; $f.opts = opts; $f.screen$1 = screen$1; $f.w = w; $f.width = width; $f.$s = $s; $f.$r = $r; return $f;
142778
+ /* */ } return; } if ($f === undefined) { $f = { $blk: newWindow }; } $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._tuple = _tuple; $f.canvasEl = canvasEl; $f.domEvents = domEvents; $f.err = err; $f.gl = gl; $f.opts = opts; $f.screen$1 = screen$1; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
142661
142779
  };
142780
+ windowImpl.ptr.prototype.ensureCanvasSize = function(width, height) {
142781
+ var height, w, width, $s, $r;
142782
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; height = $f.height; w = $f.w; width = $f.width; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
142783
+ w = this;
142784
+ /* */ if (!(($clone($clone(w.canvasEl, js.Value).Get("width"), js.Value).Int() === width))) { $s = 1; continue; }
142785
+ /* */ $s = 2; continue;
142786
+ /* if (!(($clone($clone(w.canvasEl, js.Value).Get("width"), js.Value).Int() === width))) { */ case 1:
142787
+ $r = $clone(w.canvasEl, js.Value).Set("width", new $Int(width)); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142788
+ /* } */ case 2:
142789
+ /* */ if (!(($clone($clone(w.canvasEl, js.Value).Get("height"), js.Value).Int() === height))) { $s = 4; continue; }
142790
+ /* */ $s = 5; continue;
142791
+ /* if (!(($clone($clone(w.canvasEl, js.Value).Get("height"), js.Value).Int() === height))) { */ case 4:
142792
+ $r = $clone(w.canvasEl, js.Value).Set("height", new $Int(height)); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
142793
+ /* } */ case 5:
142794
+ $s = -1; return;
142795
+ /* */ } return; } if ($f === undefined) { $f = { $blk: windowImpl.ptr.prototype.ensureCanvasSize }; } $f.height = height; $f.w = w; $f.width = width; $f.$s = $s; $f.$r = $r; return $f;
142796
+ };
142797
+ windowImpl.prototype.ensureCanvasSize = function(width, height) { return this.$val.ensureCanvasSize(width, height); };
142662
142798
  windowImpl.ptr.prototype.clear = function() {
142663
142799
  var w, $s, $r;
142664
142800
  /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
@@ -142839,12 +142975,12 @@ $packages["golang.org/x/exp/shiny/driver/webgldriver"] = (function() {
142839
142975
  ptrType$9.methods = [{prop: "slice", name: "slice", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([], [js.Value], false)}];
142840
142976
  ptrType$8.methods = [{prop: "Size", name: "Size", pkg: "", typ: $funcType([], [image.Point], false)}, {prop: "Bounds", name: "Bounds", pkg: "", typ: $funcType([], [image.Rectangle], false)}, {prop: "RGBA", name: "RGBA", pkg: "", typ: $funcType([], [ptrType$10], false)}, {prop: "YCbCr", name: "YCbCr", pkg: "", typ: $funcType([], [ptrType$11], false)}, {prop: "YCbCrJS", name: "YCbCrJS", pkg: "", typ: $funcType([], [ptrType$2], false)}, {prop: "Release", name: "Release", pkg: "", typ: $funcType([], [], false)}];
142841
142977
  ptrType.methods = [{prop: "NewBuffer", name: "NewBuffer", pkg: "", typ: $funcType([image.Point], [screen.Buffer, $error], false)}, {prop: "NewTexture", name: "NewTexture", pkg: "", typ: $funcType([image.Point], [screen.Texture, $error], false)}, {prop: "NewWindow", name: "NewWindow", pkg: "", typ: $funcType([ptrType$12], [screen.Window, $error], false)}];
142842
- ptrType$14.methods = [{prop: "createBuffers", name: "createBuffers", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([], [ptrType$6], false)}, {prop: "createAndAttachFragmentShader", name: "createAndAttachFragmentShader", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([ptrType$3, $String], [$error], false)}, {prop: "createTexture", name: "createTexture", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([types.GLEnum, types.GLEnum, $Int, $Int], [ptrType$5], false)}, {prop: "createAndLinkProgramRGBA", name: "createAndLinkProgramRGBA", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([], [ptrType$3, $error], false)}, {prop: "drawBufferRGBA", name: "drawBufferRGBA", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([image.Point, screen.Buffer, image.Rectangle], [], false)}, {prop: "createAndLinkProgramYUV420", name: "createAndLinkProgramYUV420", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([], [ptrType$3, $error], false)}, {prop: "drawBufferYUV420", name: "drawBufferYUV420", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([image.Point, screen.Buffer, image.Rectangle], [], false)}, {prop: "drawBufferYUV420JSArrayBuffers", name: "drawBufferYUV420JSArrayBuffers", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([image.Point, js.Value, js.Value, js.Value, image.Rectangle], [], false)}, {prop: "createAndAttachVertexShader", name: "createAndAttachVertexShader", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([ptrType$3], [$error], false)}, {prop: "clear", name: "clear", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([], [], false)}, {prop: "Release", name: "Release", pkg: "", typ: $funcType([], [], false)}, {prop: "Publish", name: "Publish", pkg: "", typ: $funcType([], [screen.PublishResult], false)}, {prop: "Send", name: "Send", pkg: "", typ: $funcType([$emptyInterface], [], false)}, {prop: "SendFirst", name: "SendFirst", pkg: "", typ: $funcType([$emptyInterface], [], false)}, {prop: "NextEvent", name: "NextEvent", pkg: "", typ: $funcType([], [$emptyInterface], false)}, {prop: "Upload", name: "Upload", pkg: "", typ: $funcType([image.Point, screen.Buffer, image.Rectangle], [], false)}, {prop: "UploadYCbCr", name: "UploadYCbCr", pkg: "", typ: $funcType([image.Point, screen.Buffer, image.Rectangle], [], false)}, {prop: "Fill", name: "Fill", pkg: "", typ: $funcType([image.Rectangle, color.Color, draw.Op], [], false)}, {prop: "Draw", name: "Draw", pkg: "", typ: $funcType([f64.Aff3, screen.Texture, image.Rectangle, draw.Op, ptrType$13], [], false)}, {prop: "DrawUniform", name: "DrawUniform", pkg: "", typ: $funcType([f64.Aff3, color.Color, image.Rectangle, draw.Op, ptrType$13], [], false)}, {prop: "Copy", name: "Copy", pkg: "", typ: $funcType([image.Point, screen.Texture, image.Rectangle, draw.Op, ptrType$13], [], false)}, {prop: "Scale", name: "Scale", pkg: "", typ: $funcType([image.Rectangle, screen.Texture, image.Rectangle, draw.Op, ptrType$13], [], false)}];
142978
+ ptrType$14.methods = [{prop: "createBuffers", name: "createBuffers", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([], [ptrType$6], false)}, {prop: "createAndAttachFragmentShader", name: "createAndAttachFragmentShader", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([ptrType$3, $String], [$error], false)}, {prop: "createTexture", name: "createTexture", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([types.GLEnum, types.GLEnum, $Int, $Int], [ptrType$5], false)}, {prop: "ensureRGBATextures", name: "ensureRGBATextures", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([$Int, $Int], [], false)}, {prop: "createAndLinkProgramRGBA", name: "createAndLinkProgramRGBA", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([], [ptrType$3, $error], false)}, {prop: "drawBufferRGBA", name: "drawBufferRGBA", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([image.Point, screen.Buffer, image.Rectangle], [], false)}, {prop: "ensureYUV420Textures", name: "ensureYUV420Textures", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([$Int, $Int], [], false)}, {prop: "createAndLinkProgramYUV420", name: "createAndLinkProgramYUV420", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([], [ptrType$3, $error], false)}, {prop: "drawBufferYUV420", name: "drawBufferYUV420", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([image.Point, screen.Buffer, image.Rectangle], [], false)}, {prop: "drawBufferYUV420JSArrayBuffers", name: "drawBufferYUV420JSArrayBuffers", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([image.Point, js.Value, js.Value, js.Value, image.Rectangle], [], false)}, {prop: "createAndAttachVertexShader", name: "createAndAttachVertexShader", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([ptrType$3], [$error], false)}, {prop: "ensureCanvasSize", name: "ensureCanvasSize", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([$Int, $Int], [], false)}, {prop: "clear", name: "clear", pkg: "golang.org/x/exp/shiny/driver/webgldriver", typ: $funcType([], [], false)}, {prop: "Release", name: "Release", pkg: "", typ: $funcType([], [], false)}, {prop: "Publish", name: "Publish", pkg: "", typ: $funcType([], [screen.PublishResult], false)}, {prop: "Send", name: "Send", pkg: "", typ: $funcType([$emptyInterface], [], false)}, {prop: "SendFirst", name: "SendFirst", pkg: "", typ: $funcType([$emptyInterface], [], false)}, {prop: "NextEvent", name: "NextEvent", pkg: "", typ: $funcType([], [$emptyInterface], false)}, {prop: "Upload", name: "Upload", pkg: "", typ: $funcType([image.Point, screen.Buffer, image.Rectangle], [], false)}, {prop: "UploadYCbCr", name: "UploadYCbCr", pkg: "", typ: $funcType([image.Point, screen.Buffer, image.Rectangle], [], false)}, {prop: "Fill", name: "Fill", pkg: "", typ: $funcType([image.Rectangle, color.Color, draw.Op], [], false)}, {prop: "Draw", name: "Draw", pkg: "", typ: $funcType([f64.Aff3, screen.Texture, image.Rectangle, draw.Op, ptrType$13], [], false)}, {prop: "DrawUniform", name: "DrawUniform", pkg: "", typ: $funcType([f64.Aff3, color.Color, image.Rectangle, draw.Op, ptrType$13], [], false)}, {prop: "Copy", name: "Copy", pkg: "", typ: $funcType([image.Point, screen.Texture, image.Rectangle, draw.Op, ptrType$13], [], false)}, {prop: "Scale", name: "Scale", pkg: "", typ: $funcType([image.Rectangle, screen.Texture, image.Rectangle, draw.Op, ptrType$13], [], false)}];
142843
142979
  ArrayBufferSlice.init("", [{prop: "ArrayBuffer", name: "ArrayBuffer", embedded: false, exported: true, typ: js.Value, tag: ""}, {prop: "Offset", name: "Offset", embedded: false, exported: true, typ: $Int, tag: ""}, {prop: "Length", name: "Length", embedded: false, exported: true, typ: $Int, tag: ""}]);
142844
142980
  YCbCrJS.init("", [{prop: "Y", name: "Y", embedded: false, exported: true, typ: ArrayBufferSlice, tag: ""}, {prop: "Cb", name: "Cb", embedded: false, exported: true, typ: ArrayBufferSlice, tag: ""}, {prop: "Cr", name: "Cr", embedded: false, exported: true, typ: ArrayBufferSlice, tag: ""}, {prop: "YStride", name: "YStride", embedded: false, exported: true, typ: $Int, tag: ""}, {prop: "CStride", name: "CStride", embedded: false, exported: true, typ: $Int, tag: ""}, {prop: "SubsampleRatio", name: "SubsampleRatio", embedded: false, exported: true, typ: image.YCbCrSubsampleRatio, tag: ""}, {prop: "Rect", name: "Rect", embedded: false, exported: true, typ: image.Rectangle, tag: ""}, {prop: "Use", name: "Use", embedded: false, exported: true, typ: $Bool, tag: ""}]);
142845
142981
  BufferImpl.init("golang.org/x/exp/shiny/driver/webgldriver", [{prop: "screen", name: "screen", embedded: false, exported: false, typ: ptrType, tag: ""}, {prop: "size", name: "size", embedded: false, exported: false, typ: image.Point, tag: ""}, {prop: "mutex", name: "mutex", embedded: false, exported: false, typ: ptrType$1, tag: ""}, {prop: "released", name: "released", embedded: false, exported: false, typ: $Bool, tag: ""}, {prop: "rgba", name: "rgba", embedded: false, exported: false, typ: image.RGBA, tag: ""}, {prop: "ycbcr", name: "ycbcr", embedded: false, exported: false, typ: image.YCbCr, tag: ""}, {prop: "ycbcrJS", name: "ycbcrJS", embedded: false, exported: false, typ: ptrType$2, tag: ""}]);
142846
142982
  screenImpl.init("golang.org/x/exp/shiny/driver/webgldriver", [{prop: "doc", name: "doc", embedded: false, exported: false, typ: js.Value, tag: ""}]);
142847
- windowImpl.init("golang.org/x/exp/shiny/driver/webgldriver", [{prop: "screen", name: "screen", embedded: false, exported: false, typ: ptrType, tag: ""}, {prop: "width", name: "width", embedded: false, exported: false, typ: $Int, tag: ""}, {prop: "height", name: "height", embedded: false, exported: false, typ: $Int, tag: ""}, {prop: "mutex", name: "mutex", embedded: false, exported: false, typ: ptrType$1, tag: ""}, {prop: "canvasEl", name: "canvasEl", embedded: false, exported: false, typ: js.Value, tag: ""}, {prop: "gl", name: "gl", embedded: false, exported: false, typ: ptrType$4, tag: ""}, {prop: "programRGBA", name: "programRGBA", embedded: false, exported: false, typ: ptrType$3, tag: ""}, {prop: "imageTexRGBA", name: "imageTexRGBA", embedded: false, exported: false, typ: ptrType$5, tag: ""}, {prop: "programYUV420", name: "programYUV420", embedded: false, exported: false, typ: ptrType$3, tag: ""}, {prop: "imageTexY", name: "imageTexY", embedded: false, exported: false, typ: ptrType$5, tag: ""}, {prop: "imageTexU", name: "imageTexU", embedded: false, exported: false, typ: ptrType$5, tag: ""}, {prop: "imageTexV", name: "imageTexV", embedded: false, exported: false, typ: ptrType$5, tag: ""}, {prop: "vertexArray", name: "vertexArray", embedded: false, exported: false, typ: ptrType$6, tag: ""}, {prop: "released", name: "released", embedded: false, exported: false, typ: $Bool, tag: ""}, {prop: "domEvents", name: "domEvents", embedded: false, exported: false, typ: ptrType$7, tag: ""}]);
142983
+ windowImpl.init("golang.org/x/exp/shiny/driver/webgldriver", [{prop: "screen", name: "screen", embedded: false, exported: false, typ: ptrType, tag: ""}, {prop: "mutex", name: "mutex", embedded: false, exported: false, typ: ptrType$1, tag: ""}, {prop: "canvasEl", name: "canvasEl", embedded: false, exported: false, typ: js.Value, tag: ""}, {prop: "gl", name: "gl", embedded: false, exported: false, typ: ptrType$4, tag: ""}, {prop: "programRGBA", name: "programRGBA", embedded: false, exported: false, typ: ptrType$3, tag: ""}, {prop: "imageTexRGBA", name: "imageTexRGBA", embedded: false, exported: false, typ: ptrType$5, tag: ""}, {prop: "programYUV420", name: "programYUV420", embedded: false, exported: false, typ: ptrType$3, tag: ""}, {prop: "imageTexY", name: "imageTexY", embedded: false, exported: false, typ: ptrType$5, tag: ""}, {prop: "imageTexU", name: "imageTexU", embedded: false, exported: false, typ: ptrType$5, tag: ""}, {prop: "imageTexV", name: "imageTexV", embedded: false, exported: false, typ: ptrType$5, tag: ""}, {prop: "vertexArray", name: "vertexArray", embedded: false, exported: false, typ: ptrType$6, tag: ""}, {prop: "released", name: "released", embedded: false, exported: false, typ: $Bool, tag: ""}, {prop: "domEvents", name: "domEvents", embedded: false, exported: false, typ: ptrType$7, tag: ""}, {prop: "width", name: "width", embedded: false, exported: false, typ: $Int, tag: ""}, {prop: "height", name: "height", embedded: false, exported: false, typ: $Int, tag: ""}]);
142848
142984
  $init = function() {
142849
142985
  $pkg.$init = function() {};
142850
142986
  /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
@@ -143066,27 +143202,25 @@ $packages["golang.org/x/exp/shiny/driver/canvasdriver"] = (function() {
143066
143202
  }
143067
143203
  this.doc = doc_;
143068
143204
  });
143069
- windowImpl = $pkg.windowImpl = $newType(0, $kindStruct, "canvasdriver.windowImpl", true, "golang.org/x/exp/shiny/driver/canvasdriver", false, function(screen_, width_, height_, mutex_, canvasEl_, ctx2d_, released_, domEvents_) {
143205
+ windowImpl = $pkg.windowImpl = $newType(0, $kindStruct, "canvasdriver.windowImpl", true, "golang.org/x/exp/shiny/driver/canvasdriver", false, function(screen_, mutex_, canvasEl_, ctx2d_, released_, domEvents_, resizeCallback_) {
143070
143206
  this.$val = this;
143071
143207
  if (arguments.length === 0) {
143072
143208
  this.screen = ptrType.nil;
143073
- this.width = 0;
143074
- this.height = 0;
143075
143209
  this.mutex = ptrType$1.nil;
143076
143210
  this.canvasEl = new js.Value.ptr(null, false);
143077
143211
  this.ctx2d = new js.Value.ptr(null, false);
143078
143212
  this.released = false;
143079
143213
  this.domEvents = ptrType$4.nil;
143214
+ this.resizeCallback = new js.Func.ptr(new js.Value.ptr(null, false));
143080
143215
  return;
143081
143216
  }
143082
143217
  this.screen = screen_;
143083
- this.width = width_;
143084
- this.height = height_;
143085
143218
  this.mutex = mutex_;
143086
143219
  this.canvasEl = canvasEl_;
143087
143220
  this.ctx2d = ctx2d_;
143088
143221
  this.released = released_;
143089
143222
  this.domEvents = domEvents_;
143223
+ this.resizeCallback = resizeCallback_;
143090
143224
  });
143091
143225
  ptrType = $ptrType(screenImpl);
143092
143226
  ptrType$1 = $ptrType(sync.Mutex);
@@ -143216,58 +143350,92 @@ $packages["golang.org/x/exp/shiny/driver/canvasdriver"] = (function() {
143216
143350
  /* */ } return; } if ($f === undefined) { $f = { $blk: main }; } $f._tuple = _tuple; $f.err = err; $f.f = f; $f.retErr = retErr; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
143217
143351
  };
143218
143352
  newWindow = function(screen$1, opts) {
143219
- var _r, _r$1, _r$2, _r$3, _r$4, _r$5, canvasEl, ctx2d, domEvents, height, opts, screen$1, w, width, $s, $r;
143220
- /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; canvasEl = $f.canvasEl; ctx2d = $f.ctx2d; domEvents = $f.domEvents; height = $f.height; opts = $f.opts; screen$1 = $f.screen$1; w = $f.w; width = $f.width; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
143353
+ var _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, adaptCanvas, canvasEl, ctx2d, domEvents, opts, resizeCallback, screen$1, w, $s, $r;
143354
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; adaptCanvas = $f.adaptCanvas; canvasEl = $f.canvasEl; ctx2d = $f.ctx2d; domEvents = $f.domEvents; opts = $f.opts; resizeCallback = $f.resizeCallback; screen$1 = $f.screen$1; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
143355
+ adaptCanvas = [adaptCanvas];
143356
+ canvasEl = [canvasEl];
143221
143357
  _r = $clone(screen$1.doc, js.Value).Call("createElement", new sliceType$1([new $String("canvas")])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
143222
- canvasEl = $clone(_r, js.Value);
143223
- _r$1 = $clone($clone(screen$1.doc, js.Value).Get("body"), js.Value).Call("appendChild", new sliceType$1([new canvasEl.constructor.elem(canvasEl)])); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
143358
+ canvasEl[0] = $clone(_r, js.Value);
143359
+ _r$1 = $clone($clone(screen$1.doc, js.Value).Get("body"), js.Value).Call("appendChild", new sliceType$1([new canvasEl[0].constructor.elem(canvasEl[0])])); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
143224
143360
  _r$1;
143225
- width = opts.Width;
143226
- if (opts.Width === 0) {
143227
- width = dom.GetDocWidth();
143228
- }
143229
- $r = $clone(canvasEl, js.Value).Set("width", new $Int(width)); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
143230
- height = opts.Height;
143231
- if (opts.Height === 0) {
143232
- height = dom.GetDocHeight();
143233
- }
143234
- $r = $clone(canvasEl, js.Value).Set("height", new $Int(height)); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
143235
- /* */ if (!(opts.Title === "")) { $s = 5; continue; }
143361
+ adaptCanvas[0] = (function(adaptCanvas, canvasEl) { return function $b() {
143362
+ var height, scale, width, $s, $r;
143363
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; height = $f.height; scale = $f.scale; width = $f.width; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
143364
+ scale = dom.GetBrowserZoomRatio();
143365
+ width = (((dom.GetScreenWidth()) / scale >> 0));
143366
+ /* */ if (!(($clone($clone(canvasEl[0], js.Value).Get("width"), js.Value).Int() === width))) { $s = 1; continue; }
143367
+ /* */ $s = 2; continue;
143368
+ /* if (!(($clone($clone(canvasEl[0], js.Value).Get("width"), js.Value).Int() === width))) { */ case 1:
143369
+ $r = $clone(canvasEl[0], js.Value).Set("width", new $Int(width)); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
143370
+ /* } */ case 2:
143371
+ height = (((dom.GetScreenHeight()) / scale >> 0));
143372
+ /* */ if (!(($clone($clone(canvasEl[0], js.Value).Get("height"), js.Value).Int() === height))) { $s = 4; continue; }
143373
+ /* */ $s = 5; continue;
143374
+ /* if (!(($clone($clone(canvasEl[0], js.Value).Get("height"), js.Value).Int() === height))) { */ case 4:
143375
+ $r = $clone(canvasEl[0], js.Value).Set("height", new $Int(height)); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
143376
+ /* } */ case 5:
143377
+ $s = -1; return;
143378
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f.height = height; $f.scale = scale; $f.width = width; $f.$s = $s; $f.$r = $r; return $f;
143379
+ }; })(adaptCanvas, canvasEl);
143380
+ $r = adaptCanvas[0](); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
143381
+ resizeCallback = $clone(js.FuncOf((function(adaptCanvas, canvasEl) { return function $b(this$1, args) {
143382
+ var args, this$1, $s, $r;
143383
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; args = $f.args; this$1 = $f.this$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
143384
+ $r = adaptCanvas[0](); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
143385
+ $s = -1; return $ifaceNil;
143386
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f.args = args; $f.this$1 = this$1; $f.$s = $s; $f.$r = $r; return $f;
143387
+ }; })(adaptCanvas, canvasEl)), js.Func);
143388
+ _r$2 = $clone(js.Global(), js.Value).Call("addEventListener", new sliceType$1([new $String("resize"), new resizeCallback.constructor.elem(resizeCallback)])); /* */ $s = 4; case 4: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
143389
+ _r$2;
143390
+ /* */ if (!((opts.Width === 0))) { $s = 5; continue; }
143236
143391
  /* */ $s = 6; continue;
143237
- /* if (!(opts.Title === "")) { */ case 5:
143238
- _r$2 = $clone($clone(screen$1.doc, js.Value).Get("head"), js.Value).Call("getElementsByTagName", new sliceType$1([new $String("title")])); /* */ $s = 7; case 7: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
143239
- _r$3 = $clone(_r$2, js.Value).Call("item", new sliceType$1([new $Int(0)])); /* */ $s = 8; case 8: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
143240
- $r = $clone(_r$3, js.Value).Set("innerHTML", new $String(opts.Title)); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
143392
+ /* if (!((opts.Width === 0))) { */ case 5:
143393
+ $r = dom.SetWindowWidth(opts.Width); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
143241
143394
  /* } */ case 6:
143242
- _r$4 = $clone(canvasEl, js.Value).Call("getContext", new sliceType$1([new $String("2d")])); /* */ $s = 10; case 10: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
143243
- ctx2d = $clone(_r$4, js.Value);
143244
- /* */ if ($clone(ctx2d, js.Value).IsUndefined() || $clone(ctx2d, js.Value).IsNull()) { $s = 11; continue; }
143395
+ /* */ if (!((opts.Height === 0))) { $s = 8; continue; }
143396
+ /* */ $s = 9; continue;
143397
+ /* if (!((opts.Height === 0))) { */ case 8:
143398
+ $r = dom.SetWindowHeight(opts.Height); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
143399
+ /* } */ case 9:
143400
+ /* */ if (!(opts.Title === "")) { $s = 11; continue; }
143245
143401
  /* */ $s = 12; continue;
143246
- /* if ($clone(ctx2d, js.Value).IsUndefined() || $clone(ctx2d, js.Value).IsNull()) { */ case 11:
143247
- _r$5 = fmt.Errorf("Cannot get 2d context of canvas", new sliceType$1([])); /* */ $s = 13; case 13: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
143248
- $panic(_r$5);
143402
+ /* if (!(opts.Title === "")) { */ case 11:
143403
+ _r$3 = $clone($clone(screen$1.doc, js.Value).Get("head"), js.Value).Call("getElementsByTagName", new sliceType$1([new $String("title")])); /* */ $s = 13; case 13: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
143404
+ _r$4 = $clone(_r$3, js.Value).Call("item", new sliceType$1([new $Int(0)])); /* */ $s = 14; case 14: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
143405
+ $r = $clone(_r$4, js.Value).Set("innerHTML", new $String(opts.Title)); /* */ $s = 15; case 15: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
143249
143406
  /* } */ case 12:
143407
+ _r$5 = $clone(canvasEl[0], js.Value).Call("getContext", new sliceType$1([new $String("2d")])); /* */ $s = 16; case 16: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
143408
+ ctx2d = $clone(_r$5, js.Value);
143409
+ /* */ if ($clone(ctx2d, js.Value).IsUndefined() || $clone(ctx2d, js.Value).IsNull()) { $s = 17; continue; }
143410
+ /* */ $s = 18; continue;
143411
+ /* if ($clone(ctx2d, js.Value).IsUndefined() || $clone(ctx2d, js.Value).IsNull()) { */ case 17:
143412
+ _r$6 = fmt.Errorf("Cannot get 2d context of canvas", new sliceType$1([])); /* */ $s = 19; case 19: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
143413
+ $panic(_r$6);
143414
+ /* } */ case 18:
143250
143415
  domEvents = dom.NewDomEvents();
143251
- w = new windowImpl.ptr(screen$1, width, height, ptrType$1.nil, $clone(canvasEl, js.Value), $clone(ctx2d, js.Value), false, domEvents);
143252
- $r = domEvents.BindEvents(); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
143416
+ w = new windowImpl.ptr(screen$1, ptrType$1.nil, $clone(canvasEl[0], js.Value), $clone(ctx2d, js.Value), false, domEvents, $clone(resizeCallback, js.Func));
143417
+ $r = domEvents.BindEvents(); /* */ $s = 20; case 20: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
143253
143418
  $s = -1; return w;
143254
- /* */ } return; } if ($f === undefined) { $f = { $blk: newWindow }; } $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f.canvasEl = canvasEl; $f.ctx2d = ctx2d; $f.domEvents = domEvents; $f.height = height; $f.opts = opts; $f.screen$1 = screen$1; $f.w = w; $f.width = width; $f.$s = $s; $f.$r = $r; return $f;
143419
+ /* */ } return; } if ($f === undefined) { $f = { $blk: newWindow }; } $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f.adaptCanvas = adaptCanvas; $f.canvasEl = canvasEl; $f.ctx2d = ctx2d; $f.domEvents = domEvents; $f.opts = opts; $f.resizeCallback = resizeCallback; $f.screen$1 = screen$1; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
143255
143420
  };
143256
143421
  windowImpl.ptr.prototype.Release = function() {
143257
- var _r, w, $s, $deferred, $r;
143258
- /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r = $f._r; w = $f.w; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
143422
+ var _r, _r$1, w, x, $s, $deferred, $r;
143423
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r = $f._r; _r$1 = $f._r$1; w = $f.w; x = $f.x; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
143259
143424
  w = this;
143260
143425
  $r = w.mutex.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
143261
143426
  $deferred.push([$methodVal(w.mutex, "Unlock"), []]);
143262
143427
  if (w.released) {
143263
143428
  $s = -1; return;
143264
143429
  }
143265
- _r = $clone(w.canvasEl, js.Value).Call("remove", new sliceType$1([])); /* */ $s = 2; case 2: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
143430
+ _r = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType$1([new $String("resize"), (x = w.resizeCallback, new x.constructor.elem(x))])); /* */ $s = 2; case 2: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
143266
143431
  _r;
143267
- $r = w.domEvents.Release(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
143432
+ $clone(w.resizeCallback, js.Func).Release();
143433
+ _r$1 = $clone(w.canvasEl, js.Value).Call("remove", new sliceType$1([])); /* */ $s = 3; case 3: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
143434
+ _r$1;
143435
+ $r = w.domEvents.Release(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
143268
143436
  w.released = true;
143269
143437
  $s = -1; return;
143270
- /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: windowImpl.ptr.prototype.Release }; } $f._r = _r; $f.w = w; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
143438
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: windowImpl.ptr.prototype.Release }; } $f._r = _r; $f._r$1 = _r$1; $f.w = w; $f.x = x; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
143271
143439
  };
143272
143440
  windowImpl.prototype.Release = function() { return this.$val.Release(); };
143273
143441
  windowImpl.ptr.prototype.Publish = function() {
@@ -143393,7 +143561,7 @@ $packages["golang.org/x/exp/shiny/driver/canvasdriver"] = (function() {
143393
143561
  YCbCrJS.init("", [{prop: "CanvasImageSource", name: "CanvasImageSource", embedded: false, exported: true, typ: ptrType$3, tag: ""}]);
143394
143562
  BufferImpl.init("golang.org/x/exp/shiny/driver/canvasdriver", [{prop: "screen", name: "screen", embedded: false, exported: false, typ: ptrType, tag: ""}, {prop: "size", name: "size", embedded: false, exported: false, typ: image.Point, tag: ""}, {prop: "mutex", name: "mutex", embedded: false, exported: false, typ: ptrType$1, tag: ""}, {prop: "released", name: "released", embedded: false, exported: false, typ: $Bool, tag: ""}, {prop: "rgba", name: "rgba", embedded: false, exported: false, typ: image.RGBA, tag: ""}, {prop: "ycbcr", name: "ycbcr", embedded: false, exported: false, typ: image.YCbCr, tag: ""}, {prop: "ycbcrJS", name: "ycbcrJS", embedded: false, exported: false, typ: ptrType$2, tag: ""}]);
143395
143563
  screenImpl.init("golang.org/x/exp/shiny/driver/canvasdriver", [{prop: "doc", name: "doc", embedded: false, exported: false, typ: js.Value, tag: ""}]);
143396
- windowImpl.init("golang.org/x/exp/shiny/driver/canvasdriver", [{prop: "screen", name: "screen", embedded: false, exported: false, typ: ptrType, tag: ""}, {prop: "width", name: "width", embedded: false, exported: false, typ: $Int, tag: ""}, {prop: "height", name: "height", embedded: false, exported: false, typ: $Int, tag: ""}, {prop: "mutex", name: "mutex", embedded: false, exported: false, typ: ptrType$1, tag: ""}, {prop: "canvasEl", name: "canvasEl", embedded: false, exported: false, typ: js.Value, tag: ""}, {prop: "ctx2d", name: "ctx2d", embedded: false, exported: false, typ: js.Value, tag: ""}, {prop: "released", name: "released", embedded: false, exported: false, typ: $Bool, tag: ""}, {prop: "domEvents", name: "domEvents", embedded: false, exported: false, typ: ptrType$4, tag: ""}]);
143564
+ windowImpl.init("golang.org/x/exp/shiny/driver/canvasdriver", [{prop: "screen", name: "screen", embedded: false, exported: false, typ: ptrType, tag: ""}, {prop: "mutex", name: "mutex", embedded: false, exported: false, typ: ptrType$1, tag: ""}, {prop: "canvasEl", name: "canvasEl", embedded: false, exported: false, typ: js.Value, tag: ""}, {prop: "ctx2d", name: "ctx2d", embedded: false, exported: false, typ: js.Value, tag: ""}, {prop: "released", name: "released", embedded: false, exported: false, typ: $Bool, tag: ""}, {prop: "domEvents", name: "domEvents", embedded: false, exported: false, typ: ptrType$4, tag: ""}, {prop: "resizeCallback", name: "resizeCallback", embedded: false, exported: false, typ: js.Func, tag: ""}]);
143397
143565
  $init = function() {
143398
143566
  $pkg.$init = function() {};
143399
143567
  /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
@@ -143844,7 +144012,7 @@ $packages["golang.org/x/mobile/event/lifecycle"] = (function() {
143844
144012
  return $pkg;
143845
144013
  })();
143846
144014
  $packages["github.com/supraio/client-daemon/pkg/render"] = (function() {
143847
- var $pkg = {}, $init, binary, json, query, clipboard, errs, input, message, netclient, netpacket, netstream, stats, window, x264, canvasdriver, webgldriver, screen, focus, key, lifecycle, mouse, size, image, io, ioutil, log, os, path, strings, sync, js, time, Frame, FrameType, FrameCollector, FrameMapItem, ProcessInfo, ProcessInfoManager, ScreenWindow, X264FrameRenderer, ptrType, sliceType, ptrType$1, ptrType$2, sliceType$1, sliceType$2, ptrType$3, funcType, sliceType$3, ptrType$4, ptrType$5, ptrType$6, ptrType$7, ptrType$8, ptrType$9, ptrType$10, ptrType$11, structType, ptrType$12, mapType, funcType$1, ptrType$14, chanType, chanType$1, chanType$2, chanType$3, chanType$4, NewFrameCollector, NewProcessInfoManager, MainDriver, NewScreenWindow, NewX264FrameRenderer;
144015
+ var $pkg = {}, $init, binary, json, query, clipboard, errs, input, message, netclient, netpacket, netstream, stats, window, x264, canvasdriver, webgldriver, screen, focus, key, lifecycle, mouse, size, image, io, ioutil, log, os, path, strings, sync, js, time, Frame, FrameType, FrameCollector, FrameMapItem, ProcessInfo, ProcessInfoManager, ScreenWindow, X264FrameRenderer, ptrType, sliceType, ptrType$1, ptrType$2, sliceType$1, sliceType$2, ptrType$3, funcType, sliceType$3, ptrType$4, ptrType$5, ptrType$6, ptrType$7, ptrType$8, ptrType$9, ptrType$10, ptrType$11, ptrType$12, mapType, funcType$1, ptrType$14, chanType, chanType$1, chanType$2, chanType$3, chanType$4, NewFrameCollector, NewProcessInfoManager, MainDriver, NewScreenWindow, NewX264FrameRenderer;
143848
144016
  binary = $packages["encoding/binary"];
143849
144017
  json = $packages["encoding/json"];
143850
144018
  query = $packages["github.com/google/go-querystring/query"];
@@ -144048,7 +144216,6 @@ $packages["github.com/supraio/client-daemon/pkg/render"] = (function() {
144048
144216
  ptrType$9 = $ptrType(input.KeyHandler);
144049
144217
  ptrType$10 = $ptrType(input.MouseHandler);
144050
144218
  ptrType$11 = $ptrType(netclient.Healthchecker);
144051
- structType = $structType("", []);
144052
144219
  ptrType$12 = $ptrType(x264.H264Decoder);
144053
144220
  mapType = $mapType($Uint16, ptrType$2);
144054
144221
  funcType$1 = $funcType([], [$error], false);
@@ -144057,7 +144224,7 @@ $packages["github.com/supraio/client-daemon/pkg/render"] = (function() {
144057
144224
  chanType$1 = $chanType(mouse.Event, false, false);
144058
144225
  chanType$2 = $chanType(size.Event, false, false);
144059
144226
  chanType$3 = $chanType(focus.Event, false, false);
144060
- chanType$4 = $chanType($emptyInterface, false, false);
144227
+ chanType$4 = $chanType($error, false, false);
144061
144228
  Frame.ptr.prototype.GetTimestmap = function() {
144062
144229
  var f;
144063
144230
  f = this;
@@ -144309,57 +144476,61 @@ $packages["github.com/supraio/client-daemon/pkg/render"] = (function() {
144309
144476
  $pkg.MainDriver = MainDriver;
144310
144477
  NewScreenWindow = function(processInfoManager, screenDriver, screenHost, metadataDriver, metadataHost, clientID, clientSecret, screenID, secure, screenSize, timeoutDuration) {
144311
144478
  var clientID, clientSecret, metadataDriver, metadataHost, processInfoManager, screenDriver, screenHost, screenID, screenSize, secure, timeoutDuration;
144312
- return new ScreenWindow.ptr(processInfoManager, screenDriver, screenHost, metadataDriver, metadataHost, clientID, clientSecret, screenID, secure, $clone(screenSize, image.Point), new sync.Mutex.ptr(0, 0), timeoutDuration, true, stats.NewStats(), sliceType$3.nil, $ifaceNil, $ifaceNil, $ifaceNil, false, ptrType$4.nil, ptrType$5.nil, ptrType$6.nil, $ifaceNil, $ifaceNil, ptrType$7.nil, ptrType$8.nil, ptrType$9.nil, ptrType$10.nil, ptrType$11.nil, new $Chan(key.Event, 0), new $Chan(mouse.Event, 0), new $Chan(size.Event, 0), new $Chan(focus.Event, 0), new $Chan($emptyInterface, 0));
144479
+ return new ScreenWindow.ptr(processInfoManager, screenDriver, screenHost, metadataDriver, metadataHost, clientID, clientSecret, screenID, secure, $clone(screenSize, image.Point), new sync.Mutex.ptr(0, 0), timeoutDuration, true, stats.NewStats(), sliceType$3.nil, $ifaceNil, $ifaceNil, $ifaceNil, false, ptrType$4.nil, ptrType$5.nil, ptrType$6.nil, $ifaceNil, $ifaceNil, ptrType$7.nil, ptrType$8.nil, ptrType$9.nil, ptrType$10.nil, ptrType$11.nil, new $Chan(key.Event, 0), new $Chan(mouse.Event, 0), new $Chan(size.Event, 0), new $Chan(focus.Event, 0), new $Chan($error, 0));
144313
144480
  };
144314
144481
  $pkg.NewScreenWindow = NewScreenWindow;
144315
144482
  ScreenWindow.ptr.prototype.Start = function() {
144316
- var _r, _r$1, _r$2, _r$3, _r$4, _r$5, err, w, $s, $r;
144317
- /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; err = $f.err; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
144318
- w = this;
144319
- /* */ if (!w.closed) { $s = 1; continue; }
144483
+ var _r, _r$1, _r$2, err, w, $s, $r;
144484
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; err = $f.err; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
144485
+ err = [err];
144486
+ w = [w];
144487
+ w[0] = this;
144488
+ /* */ if (!w[0].closed) { $s = 1; continue; }
144320
144489
  /* */ $s = 2; continue;
144321
- /* if (!w.closed) { */ case 1:
144490
+ /* if (!w[0].closed) { */ case 1:
144322
144491
  _r = errs.Errorf("Screen window is already started", new sliceType$1([])); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
144323
144492
  $s = -1; return _r;
144324
144493
  /* } */ case 2:
144325
- w.closed = false;
144326
- err = $ifaceNil;
144327
- _r$1 = w.processInfoManager.CreateProcessInfo(w.screenID, os.Getpid()); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
144328
- err = _r$1;
144329
- if (!($interfaceIsEqual(err, $ifaceNil))) {
144330
- $s = -1; return err;
144331
- }
144332
- _r$2 = w.startWindow(); /* */ $s = 5; case 5: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
144333
- err = _r$2;
144334
- if (!($interfaceIsEqual(err, $ifaceNil))) {
144335
- $s = -1; return err;
144336
- }
144337
- _r$3 = w.retriableOpen(3, $methodVal(w, "openMetadata")); /* */ $s = 6; case 6: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
144338
- err = _r$3;
144339
- if (!($interfaceIsEqual(err, $ifaceNil))) {
144340
- $s = -1; return err;
144341
- }
144342
- _r$4 = w.retriableOpen(3, $methodVal(w, "openScreen")); /* */ $s = 7; case 7: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
144343
- err = _r$4;
144344
- if (!($interfaceIsEqual(err, $ifaceNil))) {
144345
- $s = -1; return err;
144346
- }
144347
- _r$5 = w.startStream(); /* */ $s = 8; case 8: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
144348
- err = _r$5;
144349
- if (!($interfaceIsEqual(err, $ifaceNil))) {
144350
- $s = -1; return err;
144351
- }
144352
- err = w.startClipboard();
144353
- if (!($interfaceIsEqual(err, $ifaceNil))) {
144354
- $s = -1; return err;
144494
+ w[0].closed = false;
144495
+ err[0] = $ifaceNil;
144496
+ _r$1 = w[0].processInfoManager.CreateProcessInfo(w[0].screenID, os.Getpid()); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
144497
+ err[0] = _r$1;
144498
+ if (!($interfaceIsEqual(err[0], $ifaceNil))) {
144499
+ $s = -1; return err[0];
144355
144500
  }
144356
- $s = -1; return $ifaceNil;
144357
- /* */ } return; } if ($f === undefined) { $f = { $blk: ScreenWindow.ptr.prototype.Start }; } $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f.err = err; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
144501
+ _r$2 = w[0].startWindow((function(err, w) { return function $b() {
144502
+ var _r$2, _r$3, _r$4, $s, $r;
144503
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
144504
+ _r$2 = w[0].retriableOpen(3, $methodVal(w[0], "openMetadata")); /* */ $s = 1; case 1: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
144505
+ err[0] = _r$2;
144506
+ if (!($interfaceIsEqual(err[0], $ifaceNil))) {
144507
+ $s = -1; return err[0];
144508
+ }
144509
+ _r$3 = w[0].retriableOpen(3, $methodVal(w[0], "openScreen")); /* */ $s = 2; case 2: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
144510
+ err[0] = _r$3;
144511
+ if (!($interfaceIsEqual(err[0], $ifaceNil))) {
144512
+ $s = -1; return err[0];
144513
+ }
144514
+ _r$4 = w[0].startStream(); /* */ $s = 3; case 3: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
144515
+ err[0] = _r$4;
144516
+ if (!($interfaceIsEqual(err[0], $ifaceNil))) {
144517
+ $s = -1; return err[0];
144518
+ }
144519
+ err[0] = w[0].startClipboard();
144520
+ if (!($interfaceIsEqual(err[0], $ifaceNil))) {
144521
+ $s = -1; return err[0];
144522
+ }
144523
+ $s = -1; return $ifaceNil;
144524
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f.$s = $s; $f.$r = $r; return $f;
144525
+ }; })(err, w)); /* */ $s = 5; case 5: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
144526
+ err[0] = _r$2;
144527
+ $s = -1; return err[0];
144528
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ScreenWindow.ptr.prototype.Start }; } $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.err = err; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
144358
144529
  };
144359
144530
  ScreenWindow.prototype.Start = function() { return this.$val.Start(); };
144360
144531
  ScreenWindow.ptr.prototype.Close = function() {
144361
- var _i, _r, _r$1, _r$2, _r$3, _ref, callback, err, w, x, $s, $r;
144362
- /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _i = $f._i; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _ref = $f._ref; callback = $f.callback; err = $f.err; w = $f.w; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
144532
+ var _i, _r, _r$1, _r$2, _r$3, _ref, callback, err, w, $s, $r;
144533
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _i = $f._i; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _ref = $f._ref; callback = $f.callback; err = $f.err; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
144363
144534
  w = this;
144364
144535
  if (w.closed) {
144365
144536
  $s = -1; return;
@@ -144397,7 +144568,7 @@ $packages["github.com/supraio/client-daemon/pkg/render"] = (function() {
144397
144568
  $r = errs.Print("Cannot close screen connection", err); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144398
144569
  /* } */ case 11:
144399
144570
  $r = w.window.Release(); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144400
- $r = $send(w.winCloseChannel, (x = new structType.ptr(), new x.constructor.elem(x))); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144571
+ $r = $send(w.winCloseChannel, $ifaceNil); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144401
144572
  _r$3 = w.processInfoManager.RemoveProcessInfo(w.screenID); /* */ $s = 15; case 15: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
144402
144573
  err = _r$3;
144403
144574
  /* */ if (!($interfaceIsEqual(err, $ifaceNil))) { $s = 16; continue; }
@@ -144419,7 +144590,7 @@ $packages["github.com/supraio/client-daemon/pkg/render"] = (function() {
144419
144590
  _i++;
144420
144591
  /* } */ $s = 19; continue; case 20:
144421
144592
  $s = -1; return;
144422
- /* */ } return; } if ($f === undefined) { $f = { $blk: ScreenWindow.ptr.prototype.Close }; } $f._i = _i; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._ref = _ref; $f.callback = callback; $f.err = err; $f.w = w; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
144593
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ScreenWindow.ptr.prototype.Close }; } $f._i = _i; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._ref = _ref; $f.callback = callback; $f.err = err; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
144423
144594
  };
144424
144595
  ScreenWindow.prototype.Close = function() { return this.$val.Close(); };
144425
144596
  ScreenWindow.ptr.prototype.OnClose = function(callback) {
@@ -144428,87 +144599,101 @@ $packages["github.com/supraio/client-daemon/pkg/render"] = (function() {
144428
144599
  w.onClose = $append(w.onClose, callback);
144429
144600
  };
144430
144601
  ScreenWindow.prototype.OnClose = function(callback) { return this.$val.OnClose(callback); };
144431
- ScreenWindow.ptr.prototype.startWindow = function() {
144432
- var _r, err, w, windowChannel, $s, $r;
144433
- /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r = $f._r; err = $f.err; w = $f.w; windowChannel = $f.windowChannel; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
144602
+ ScreenWindow.ptr.prototype.startWindow = function(onStarted) {
144603
+ var err, onStarted, w, windowChannel, $s, $r;
144604
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; err = $f.err; onStarted = $f.onStarted; w = $f.w; windowChannel = $f.windowChannel; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
144605
+ err = [err];
144606
+ onStarted = [onStarted];
144434
144607
  w = [w];
144435
144608
  windowChannel = [windowChannel];
144436
144609
  w[0] = this;
144437
144610
  windowChannel[0] = new $Chan($error, 1);
144438
- $go((function(w, windowChannel) { return function $b() {
144439
- var $s, $r;
144440
- /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
144441
- $r = MainDriver((function(w, windowChannel) { return function $b(s) {
144442
- var _r, _r$1, _tuple, err, s, window$1, $s, $r;
144443
- /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; err = $f.err; s = $f.s; window$1 = $f.window$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
144444
- _r = s.NewWindow(new screen.NewWindowOptions.ptr(w[0].screenSize.X, w[0].screenSize.Y, "")); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
144445
- _tuple = _r;
144446
- window$1 = _tuple[0];
144447
- err = _tuple[1];
144448
- /* */ if (!($interfaceIsEqual(err, $ifaceNil))) { $s = 2; continue; }
144449
- /* */ $s = 3; continue;
144450
- /* if (!($interfaceIsEqual(err, $ifaceNil))) { */ case 2:
144451
- $r = $send(windowChannel[0], err); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144452
- $s = -1; return;
144453
- /* } */ case 3:
144454
- w[0].window = window$1;
144455
- w[0].screen = s;
144456
- $r = $send(windowChannel[0], $ifaceNil); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144457
- _r$1 = $recv(w[0].winCloseChannel); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
144458
- _r$1[0];
144611
+ $go((function(err, onStarted, w, windowChannel) { return function $b() {
144612
+ var _r, _r$1, _ref, e, e$1, e$2, e$3, e$4, err$1, $s, $r;
144613
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r = $f._r; _r$1 = $f._r$1; _ref = $f._ref; e = $f.e; e$1 = $f.e$1; e$2 = $f.e$2; e$3 = $f.e$3; e$4 = $f.e$4; err$1 = $f.err$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
144614
+ _r = $recv(windowChannel[0]); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
144615
+ err$1 = _r[0];
144616
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
144459
144617
  $s = -1; return;
144460
- /* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.err = err; $f.s = s; $f.window$1 = window$1; $f.$s = $s; $f.$r = $r; return $f;
144461
- }; })(w, windowChannel)); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144462
- $s = -1; return;
144463
- /* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f.$s = $s; $f.$r = $r; return $f;
144464
- }; })(w, windowChannel), []);
144465
- _r = $recv(windowChannel[0]); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
144466
- err = _r[0];
144467
- $go((function(w, windowChannel) { return function $b() {
144468
- var _r$1, _ref, e, e$1, e$2, e$3, e$4, $s, $r;
144469
- /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r$1 = $f._r$1; _ref = $f._ref; e = $f.e; e$1 = $f.e$1; e$2 = $f.e$2; e$3 = $f.e$3; e$4 = $f.e$4; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
144470
- /* while (true) { */ case 1:
144471
- _r$1 = w[0].window.NextEvent(); /* */ $s = 3; case 3: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
144618
+ }
144619
+ /* while (true) { */ case 2:
144620
+ _r$1 = w[0].window.NextEvent(); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
144472
144621
  _ref = _r$1;
144473
- /* */ if ($assertType(_ref, lifecycle.Event, true)[1]) { $s = 4; continue; }
144474
- /* */ if ($assertType(_ref, key.Event, true)[1]) { $s = 5; continue; }
144475
- /* */ if ($assertType(_ref, mouse.Event, true)[1]) { $s = 6; continue; }
144476
- /* */ if ($assertType(_ref, size.Event, true)[1]) { $s = 7; continue; }
144477
- /* */ if ($assertType(_ref, focus.Event, true)[1]) { $s = 8; continue; }
144478
- /* */ $s = 9; continue;
144479
- /* if ($assertType(_ref, lifecycle.Event, true)[1]) { */ case 4:
144622
+ /* */ if ($assertType(_ref, lifecycle.Event, true)[1]) { $s = 5; continue; }
144623
+ /* */ if ($assertType(_ref, key.Event, true)[1]) { $s = 6; continue; }
144624
+ /* */ if ($assertType(_ref, mouse.Event, true)[1]) { $s = 7; continue; }
144625
+ /* */ if ($assertType(_ref, size.Event, true)[1]) { $s = 8; continue; }
144626
+ /* */ if ($assertType(_ref, focus.Event, true)[1]) { $s = 9; continue; }
144627
+ /* */ $s = 10; continue;
144628
+ /* if ($assertType(_ref, lifecycle.Event, true)[1]) { */ case 5:
144480
144629
  e = $clone(_ref.$val, lifecycle.Event);
144481
- /* */ if (e.To === 0) { $s = 10; continue; }
144482
- /* */ $s = 11; continue;
144483
- /* if (e.To === 0) { */ case 10:
144484
- $r = w[0].Close(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144630
+ /* */ if (e.To === 0) { $s = 11; continue; }
144631
+ /* */ $s = 12; continue;
144632
+ /* if (e.To === 0) { */ case 11:
144633
+ $r = w[0].Close(); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144485
144634
  $s = -1; return;
144486
- /* } */ case 11:
144487
- $s = 9; continue;
144488
- /* } else if ($assertType(_ref, key.Event, true)[1]) { */ case 5:
144635
+ /* } */ case 12:
144636
+ $s = 10; continue;
144637
+ /* } else if ($assertType(_ref, key.Event, true)[1]) { */ case 6:
144489
144638
  e$1 = $clone(_ref.$val, key.Event);
144490
- $r = $send(w[0].keyEventChan, $clone($clone(e$1, key.Event), key.Event)); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144491
- $s = 9; continue;
144492
- /* } else if ($assertType(_ref, mouse.Event, true)[1]) { */ case 6:
144639
+ $r = $send(w[0].keyEventChan, $clone($clone(e$1, key.Event), key.Event)); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144640
+ $s = 10; continue;
144641
+ /* } else if ($assertType(_ref, mouse.Event, true)[1]) { */ case 7:
144493
144642
  e$2 = $clone(_ref.$val, mouse.Event);
144494
- $r = $send(w[0].mouseEventChan, $clone($clone(e$2, mouse.Event), mouse.Event)); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144495
- $s = 9; continue;
144496
- /* } else if ($assertType(_ref, size.Event, true)[1]) { */ case 7:
144643
+ $r = $send(w[0].mouseEventChan, $clone($clone(e$2, mouse.Event), mouse.Event)); /* */ $s = 15; case 15: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144644
+ $s = 10; continue;
144645
+ /* } else if ($assertType(_ref, size.Event, true)[1]) { */ case 8:
144497
144646
  e$3 = $clone(_ref.$val, size.Event);
144498
- $r = $send(w[0].sizeEventChan, $clone($clone(e$3, size.Event), size.Event)); /* */ $s = 15; case 15: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144499
- $s = 9; continue;
144500
- /* } else if ($assertType(_ref, focus.Event, true)[1]) { */ case 8:
144647
+ $r = $send(w[0].sizeEventChan, $clone($clone(e$3, size.Event), size.Event)); /* */ $s = 16; case 16: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144648
+ $s = 10; continue;
144649
+ /* } else if ($assertType(_ref, focus.Event, true)[1]) { */ case 9:
144501
144650
  e$4 = $clone(_ref.$val, focus.Event);
144502
- $r = $send(w[0].focusEventChan, $clone($clone(e$4, focus.Event), focus.Event)); /* */ $s = 16; case 16: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144503
- /* } */ case 9:
144504
- /* } */ $s = 1; continue; case 2:
144651
+ $r = $send(w[0].focusEventChan, $clone($clone(e$4, focus.Event), focus.Event)); /* */ $s = 17; case 17: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144652
+ /* } */ case 10:
144653
+ /* } */ $s = 2; continue; case 3:
144505
144654
  $s = -1; return;
144506
- /* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f._r$1 = _r$1; $f._ref = _ref; $f.e = e; $f.e$1 = e$1; $f.e$2 = e$2; $f.e$3 = e$3; $f.e$4 = e$4; $f.$s = $s; $f.$r = $r; return $f;
144507
- }; })(w, windowChannel), []);
144508
- $s = -1; return err;
144509
- /* */ } return; } if ($f === undefined) { $f = { $blk: ScreenWindow.ptr.prototype.startWindow }; } $f._r = _r; $f.err = err; $f.w = w; $f.windowChannel = windowChannel; $f.$s = $s; $f.$r = $r; return $f;
144655
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f._r = _r; $f._r$1 = _r$1; $f._ref = _ref; $f.e = e; $f.e$1 = e$1; $f.e$2 = e$2; $f.e$3 = e$3; $f.e$4 = e$4; $f.err$1 = err$1; $f.$s = $s; $f.$r = $r; return $f;
144656
+ }; })(err, onStarted, w, windowChannel), []);
144657
+ err[0] = $ifaceNil;
144658
+ $r = MainDriver((function(err, onStarted, w, windowChannel) { return function $b(s) {
144659
+ var _r, _r$1, _tuple, s, winErr, window$1, $s, $r;
144660
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; s = $f.s; winErr = $f.winErr; window$1 = $f.window$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
144661
+ _r = s.NewWindow(new screen.NewWindowOptions.ptr(w[0].screenSize.X, w[0].screenSize.Y, "")); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
144662
+ _tuple = _r;
144663
+ window$1 = _tuple[0];
144664
+ winErr = _tuple[1];
144665
+ err[0] = winErr;
144666
+ /* */ if (!($interfaceIsEqual(winErr, $ifaceNil))) { $s = 2; continue; }
144667
+ /* */ $s = 3; continue;
144668
+ /* if (!($interfaceIsEqual(winErr, $ifaceNil))) { */ case 2:
144669
+ $r = $send(windowChannel[0], winErr); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144670
+ $s = -1; return;
144671
+ /* } */ case 3:
144672
+ w[0].window = window$1;
144673
+ w[0].screen = s;
144674
+ $r = $send(windowChannel[0], $ifaceNil); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144675
+ $go((function(err, onStarted, w, windowChannel) { return function $b() {
144676
+ var _r$1, $s, $r;
144677
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; _r$1 = $f._r$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
144678
+ _r$1 = onStarted[0](); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
144679
+ err[0] = _r$1;
144680
+ /* */ if (!($interfaceIsEqual(err[0], $ifaceNil))) { $s = 2; continue; }
144681
+ /* */ $s = 3; continue;
144682
+ /* if (!($interfaceIsEqual(err[0], $ifaceNil))) { */ case 2:
144683
+ $r = $send(w[0].winCloseChannel, err[0]); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144684
+ /* } */ case 3:
144685
+ $s = -1; return;
144686
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f._r$1 = _r$1; $f.$s = $s; $f.$r = $r; return $f;
144687
+ }; })(err, onStarted, w, windowChannel), []);
144688
+ _r$1 = $recv(w[0].winCloseChannel); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
144689
+ err[0] = _r$1[0];
144690
+ $s = -1; return;
144691
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.s = s; $f.winErr = winErr; $f.window$1 = window$1; $f.$s = $s; $f.$r = $r; return $f;
144692
+ }; })(err, onStarted, w, windowChannel)); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
144693
+ $s = -1; return err[0];
144694
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ScreenWindow.ptr.prototype.startWindow }; } $f.err = err; $f.onStarted = onStarted; $f.w = w; $f.windowChannel = windowChannel; $f.$s = $s; $f.$r = $r; return $f;
144510
144695
  };
144511
- ScreenWindow.prototype.startWindow = function() { return this.$val.startWindow(); };
144696
+ ScreenWindow.prototype.startWindow = function(onStarted) { return this.$val.startWindow(onStarted); };
144512
144697
  ScreenWindow.ptr.prototype.startClipboard = function() {
144513
144698
  var _tuple, clipboard$1, err, w;
144514
144699
  w = this;
@@ -144915,7 +145100,7 @@ $packages["github.com/supraio/client-daemon/pkg/render"] = (function() {
144915
145100
  ptrType$1.methods = [{prop: "GetTimestmap", name: "GetTimestmap", pkg: "", typ: $funcType([], [$Uint64], false)}];
144916
145101
  ptrType$5.methods = [{prop: "CollectFrame", name: "CollectFrame", pkg: "", typ: $funcType([], [ptrType$1, $error], false)}];
144917
145102
  ptrType$3.methods = [{prop: "CreateProcessInfo", name: "CreateProcessInfo", pkg: "", typ: $funcType([$String, $Int], [$error], false)}, {prop: "RemoveProcessInfo", name: "RemoveProcessInfo", pkg: "", typ: $funcType([$String], [$error], false)}, {prop: "WaitProcess", name: "WaitProcess", pkg: "", typ: $funcType([$String], [$error], false)}, {prop: "GetProcessInfo", name: "GetProcessInfo", pkg: "", typ: $funcType([$String], [ProcessInfo, $error], false)}, {prop: "ListScreenIDs", name: "ListScreenIDs", pkg: "", typ: $funcType([], [sliceType$2, $error], false)}, {prop: "getUserProcessDirPath", name: "getUserProcessDirPath", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([], [$String], false)}];
144918
- ptrType$14.methods = [{prop: "Start", name: "Start", pkg: "", typ: $funcType([], [$error], false)}, {prop: "Close", name: "Close", pkg: "", typ: $funcType([], [], false)}, {prop: "OnClose", name: "OnClose", pkg: "", typ: $funcType([funcType], [], false)}, {prop: "startWindow", name: "startWindow", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([], [$error], false)}, {prop: "startClipboard", name: "startClipboard", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([], [$error], false)}, {prop: "retriableOpen", name: "retriableOpen", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([$Int, funcType$1], [$error], false)}, {prop: "openMetadata", name: "openMetadata", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([], [$error], false)}, {prop: "startTimestampSyncing", name: "startTimestampSyncing", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([], [], false)}, {prop: "startStatsSyncing", name: "startStatsSyncing", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([], [], false)}, {prop: "openScreen", name: "openScreen", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([], [$error], false)}, {prop: "startStream", name: "startStream", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([], [$error], false)}, {prop: "renderFrame", name: "renderFrame", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([ptrType$1], [], false)}];
145103
+ ptrType$14.methods = [{prop: "Start", name: "Start", pkg: "", typ: $funcType([], [$error], false)}, {prop: "Close", name: "Close", pkg: "", typ: $funcType([], [], false)}, {prop: "OnClose", name: "OnClose", pkg: "", typ: $funcType([funcType], [], false)}, {prop: "startWindow", name: "startWindow", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([funcType$1], [$error], false)}, {prop: "startClipboard", name: "startClipboard", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([], [$error], false)}, {prop: "retriableOpen", name: "retriableOpen", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([$Int, funcType$1], [$error], false)}, {prop: "openMetadata", name: "openMetadata", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([], [$error], false)}, {prop: "startTimestampSyncing", name: "startTimestampSyncing", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([], [], false)}, {prop: "startStatsSyncing", name: "startStatsSyncing", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([], [], false)}, {prop: "openScreen", name: "openScreen", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([], [$error], false)}, {prop: "startStream", name: "startStream", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([], [$error], false)}, {prop: "renderFrame", name: "renderFrame", pkg: "github.com/supraio/client-daemon/pkg/render", typ: $funcType([ptrType$1], [], false)}];
144919
145104
  ptrType$6.methods = [{prop: "Render", name: "Render", pkg: "", typ: $funcType([ptrType$1], [], false)}];
144920
145105
  Frame.init("github.com/supraio/client-daemon/pkg/render", [{prop: "frameType", name: "frameType", embedded: false, exported: false, typ: FrameType, tag: ""}, {prop: "buffer", name: "buffer", embedded: false, exported: false, typ: sliceType, tag: ""}, {prop: "timestamp", name: "timestamp", embedded: false, exported: false, typ: $Uint64, tag: ""}]);
144921
145106
  FrameCollector.init("github.com/supraio/client-daemon/pkg/render", [{prop: "conn", name: "conn", embedded: false, exported: false, typ: netpacket.ReaderWriterCloser, tag: ""}, {prop: "stats", name: "stats", embedded: false, exported: false, typ: ptrType, tag: ""}, {prop: "framesMap", name: "framesMap", embedded: false, exported: false, typ: mapType, tag: ""}, {prop: "lastFullFrameID", name: "lastFullFrameID", embedded: false, exported: false, typ: $Uint16, tag: ""}, {prop: "maxPacketSize", name: "maxPacketSize", embedded: false, exported: false, typ: $Int, tag: ""}]);