@supraio/client-daemon-js 0.0.0-mznacldate1212.297 → 0.0.0-mznacldate1212.299

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.
@@ -190223,6 +190223,484 @@ $packages["github.com/supraio/client-daemon/pkg/x264/h264decoder"] = (function()
190223
190223
  $pkg.$init = $init;
190224
190224
  return $pkg;
190225
190225
  })();
190226
+ $packages["github.com/supraio/client-daemon/pkg/x264/nacldecoder"] = (function() {
190227
+ var $pkg = {}, $init, errs, jshelper, general, js;
190228
+ errs = $packages["github.com/supraio/client-daemon/pkg/errs"];
190229
+ jshelper = $packages["github.com/supraio/client-daemon/pkg/jshelper"];
190230
+ general = $packages["github.com/supraio/client-daemon/pkg/x264/general"];
190231
+ js = $packages["syscall/js"];
190232
+ $init = function() {
190233
+ $pkg.$init = function() {};
190234
+ /* */ 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:
190235
+ $r = errs.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190236
+ $r = jshelper.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190237
+ $r = general.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190238
+ $r = js.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190239
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
190240
+ };
190241
+ $pkg.$init = $init;
190242
+ return $pkg;
190243
+ })();
190244
+ $packages["golang.org/x/exp/shiny/driver/canvasdriver"] = (function() {
190245
+ var $pkg = {}, $init, fmt, dom, errscreen, screen, f64, image, color, draw, sync, js, windowImpl, screenImpl, YCbCrJS, BufferImpl, sliceType, ptrType, ptrType$1, funcType, arrayType, ptrType$2, ptrType$3, sliceType$1, ptrType$4, ptrType$5, ptrType$6, ptrType$7, ptrType$8, ptrType$9, ptrType$10, newWindow, main, newScreenImpl, newBuffer;
190246
+ fmt = $packages["fmt"];
190247
+ dom = $packages["golang.org/x/exp/shiny/driver/internal/dom"];
190248
+ errscreen = $packages["golang.org/x/exp/shiny/driver/internal/errscreen"];
190249
+ screen = $packages["golang.org/x/exp/shiny/screen"];
190250
+ f64 = $packages["golang.org/x/image/math/f64"];
190251
+ image = $packages["image"];
190252
+ color = $packages["image/color"];
190253
+ draw = $packages["image/draw"];
190254
+ sync = $packages["sync"];
190255
+ js = $packages["syscall/js"];
190256
+ 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_) {
190257
+ this.$val = this;
190258
+ if (arguments.length === 0) {
190259
+ this.screen = ptrType.nil;
190260
+ this.mutex = ptrType$1.nil;
190261
+ this.canvasEl = new js.Value.ptr(null, false, arrayType.zero());
190262
+ this.ctx2d = new js.Value.ptr(null, false, arrayType.zero());
190263
+ this.released = false;
190264
+ this.domEvents = ptrType$2.nil;
190265
+ this.resizeCallback = new js.Func.ptr(new js.Value.ptr(null, false, arrayType.zero()));
190266
+ return;
190267
+ }
190268
+ this.screen = screen_;
190269
+ this.mutex = mutex_;
190270
+ this.canvasEl = canvasEl_;
190271
+ this.ctx2d = ctx2d_;
190272
+ this.released = released_;
190273
+ this.domEvents = domEvents_;
190274
+ this.resizeCallback = resizeCallback_;
190275
+ });
190276
+ screenImpl = $pkg.screenImpl = $newType(0, $kindStruct, "canvasdriver.screenImpl", true, "golang.org/x/exp/shiny/driver/canvasdriver", false, function(doc_) {
190277
+ this.$val = this;
190278
+ if (arguments.length === 0) {
190279
+ this.doc = new js.Value.ptr(null, false, arrayType.zero());
190280
+ return;
190281
+ }
190282
+ this.doc = doc_;
190283
+ });
190284
+ YCbCrJS = $pkg.YCbCrJS = $newType(0, $kindStruct, "canvasdriver.YCbCrJS", true, "golang.org/x/exp/shiny/driver/canvasdriver", true, function(CanvasImageSource_) {
190285
+ this.$val = this;
190286
+ if (arguments.length === 0) {
190287
+ this.CanvasImageSource = ptrType$5.nil;
190288
+ return;
190289
+ }
190290
+ this.CanvasImageSource = CanvasImageSource_;
190291
+ });
190292
+ BufferImpl = $pkg.BufferImpl = $newType(0, $kindStruct, "canvasdriver.BufferImpl", true, "golang.org/x/exp/shiny/driver/canvasdriver", true, function(screen_, size_, mutex_, released_, rgba_, ycbcr_, ycbcrJS_) {
190293
+ this.$val = this;
190294
+ if (arguments.length === 0) {
190295
+ this.screen = ptrType.nil;
190296
+ this.size = new image.Point.ptr(0, 0);
190297
+ this.mutex = ptrType$1.nil;
190298
+ this.released = false;
190299
+ this.rgba = new image.RGBA.ptr(sliceType$1.nil, 0, new image.Rectangle.ptr(new image.Point.ptr(0, 0), new image.Point.ptr(0, 0)));
190300
+ this.ycbcr = new image.YCbCr.ptr(sliceType$1.nil, sliceType$1.nil, sliceType$1.nil, 0, 0, 0, new image.Rectangle.ptr(new image.Point.ptr(0, 0), new image.Point.ptr(0, 0)));
190301
+ this.ycbcrJS = ptrType$4.nil;
190302
+ return;
190303
+ }
190304
+ this.screen = screen_;
190305
+ this.size = size_;
190306
+ this.mutex = mutex_;
190307
+ this.released = released_;
190308
+ this.rgba = rgba_;
190309
+ this.ycbcr = ycbcr_;
190310
+ this.ycbcrJS = ycbcrJS_;
190311
+ });
190312
+ sliceType = $sliceType($emptyInterface);
190313
+ ptrType = $ptrType(screenImpl);
190314
+ ptrType$1 = $ptrType(sync.Mutex);
190315
+ funcType = $funcType([], [], false);
190316
+ arrayType = $arrayType(funcType, 0);
190317
+ ptrType$2 = $ptrType(dom.DomEvents);
190318
+ ptrType$3 = $ptrType(BufferImpl);
190319
+ sliceType$1 = $sliceType($Uint8);
190320
+ ptrType$4 = $ptrType(YCbCrJS);
190321
+ ptrType$5 = $ptrType(js.Value);
190322
+ ptrType$6 = $ptrType(screen.DrawOptions);
190323
+ ptrType$7 = $ptrType(windowImpl);
190324
+ ptrType$8 = $ptrType(screen.NewWindowOptions);
190325
+ ptrType$9 = $ptrType(image.RGBA);
190326
+ ptrType$10 = $ptrType(image.YCbCr);
190327
+ newWindow = function(screen$1, opts) {
190328
+ 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, $c} = $restore(this, {screen$1, opts});
190329
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190330
+ adaptCanvas = [adaptCanvas];
190331
+ canvasEl = [canvasEl];
190332
+ _r = $clone(screen$1.doc, js.Value).Call("createElement", new sliceType([new $String("canvas")])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190333
+ canvasEl[0] = $clone(_r, js.Value);
190334
+ _r$1 = $clone($clone(screen$1.doc, js.Value).Get("body"), js.Value).Call("appendChild", new sliceType([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; }
190335
+ _r$1;
190336
+ adaptCanvas[0] = (function(adaptCanvas, canvasEl) { return function() {
190337
+ var height, scale, width;
190338
+ scale = dom.GetBrowserZoomRatio();
190339
+ width = (((dom.GetScreenWidth()) / scale >> 0));
190340
+ if (!(($clone($clone(canvasEl[0], js.Value).Get("width"), js.Value).Int() === width))) {
190341
+ $clone(canvasEl[0], js.Value).Set("width", new $Int(width));
190342
+ }
190343
+ height = (((dom.GetScreenHeight()) / scale >> 0));
190344
+ if (!(($clone($clone(canvasEl[0], js.Value).Get("height"), js.Value).Int() === height))) {
190345
+ $clone(canvasEl[0], js.Value).Set("height", new $Int(height));
190346
+ }
190347
+ }; })(adaptCanvas, canvasEl);
190348
+ $r = adaptCanvas[0](); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190349
+ resizeCallback = $clone(js.FuncOf((function(adaptCanvas, canvasEl) { return function $b(this$1, args) {
190350
+ var {args, this$1, $s, $r, $c} = $restore(this, {this$1, args});
190351
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190352
+ $r = adaptCanvas[0](); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190353
+ $s = -1; return $ifaceNil;
190354
+ /* */ } return; } var $f = {$blk: $b, $c: true, $r, args, this$1, $s};return $f;
190355
+ }; })(adaptCanvas, canvasEl)), js.Func);
190356
+ _r$2 = $clone(js.Global(), js.Value).Call("addEventListener", new sliceType([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; }
190357
+ _r$2;
190358
+ /* */ if (!((opts.Width === 0))) { $s = 5; continue; }
190359
+ /* */ $s = 6; continue;
190360
+ /* if (!((opts.Width === 0))) { */ case 5:
190361
+ $r = dom.SetWindowWidth(opts.Width); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190362
+ /* } */ case 6:
190363
+ /* */ if (!((opts.Height === 0))) { $s = 8; continue; }
190364
+ /* */ $s = 9; continue;
190365
+ /* if (!((opts.Height === 0))) { */ case 8:
190366
+ $r = dom.SetWindowHeight(opts.Height); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190367
+ /* } */ case 9:
190368
+ /* */ if (!(opts.Title === "")) { $s = 11; continue; }
190369
+ /* */ $s = 12; continue;
190370
+ /* if (!(opts.Title === "")) { */ case 11:
190371
+ _r$3 = $clone($clone(screen$1.doc, js.Value).Get("head"), js.Value).Call("getElementsByTagName", new sliceType([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; }
190372
+ _r$4 = $clone(_r$3, js.Value).Call("item", new sliceType([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; }
190373
+ $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; }
190374
+ /* } */ case 12:
190375
+ _r$5 = $clone(canvasEl[0], js.Value).Call("getContext", new sliceType([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; }
190376
+ ctx2d = $clone(_r$5, js.Value);
190377
+ /* */ if ($clone(ctx2d, js.Value).IsUndefined() || $clone(ctx2d, js.Value).IsNull()) { $s = 17; continue; }
190378
+ /* */ $s = 18; continue;
190379
+ /* if ($clone(ctx2d, js.Value).IsUndefined() || $clone(ctx2d, js.Value).IsNull()) { */ case 17:
190380
+ _r$6 = fmt.Errorf("Cannot get 2d context of canvas", sliceType.nil); /* */ $s = 19; case 19: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
190381
+ $panic(_r$6);
190382
+ /* } */ case 18:
190383
+ domEvents = dom.NewDomEvents();
190384
+ w = new windowImpl.ptr(screen$1, ptrType$1.nil, $clone(canvasEl[0], js.Value), $clone(ctx2d, js.Value), false, domEvents, $clone(resizeCallback, js.Func));
190385
+ $r = domEvents.BindEvents(); /* */ $s = 20; case 20: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190386
+ $s = -1; return w;
190387
+ /* */ } return; } var $f = {$blk: newWindow, $c: true, $r, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, adaptCanvas, canvasEl, ctx2d, domEvents, opts, resizeCallback, screen$1, w, $s};return $f;
190388
+ };
190389
+ windowImpl.ptr.prototype.Release = function() {
190390
+ var {_r, _r$1, w, x, $s, $deferred, $r, $c} = $restore(this, {});
190391
+ /* */ $s = $s || 0; var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $curGoroutine.deferStack.push($deferred);
190392
+ w = this;
190393
+ $r = w.mutex.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190394
+ $deferred.push([$methodVal(w.mutex, "Unlock"), []]);
190395
+ /* */ if (w.released) { $s = 2; continue; }
190396
+ /* */ $s = 3; continue;
190397
+ /* if (w.released) { */ case 2:
190398
+ $s = 4; case 4: return;
190399
+ /* } */ case 3:
190400
+ _r = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType([new $String("resize"), (x = w.resizeCallback, new x.constructor.elem(x))])); /* */ $s = 5; case 5: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190401
+ _r;
190402
+ $clone(w.resizeCallback, js.Func).Release();
190403
+ _r$1 = $clone(w.canvasEl, js.Value).Call("remove", sliceType.nil); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
190404
+ _r$1;
190405
+ $r = w.domEvents.Release(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190406
+ w.released = true;
190407
+ $s = -1; return;
190408
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { var $f = {$blk: windowImpl.ptr.prototype.Release, $c: true, $r, _r, _r$1, w, x, $s, $deferred};return $f; } }
190409
+ };
190410
+ windowImpl.prototype.Release = function() { return this.$val.Release(); };
190411
+ windowImpl.ptr.prototype.Publish = function() {
190412
+ var w;
190413
+ w = this;
190414
+ if (w.released) {
190415
+ return new screen.PublishResult.ptr(false);
190416
+ }
190417
+ return new screen.PublishResult.ptr(false);
190418
+ };
190419
+ windowImpl.prototype.Publish = function() { return this.$val.Publish(); };
190420
+ windowImpl.ptr.prototype.Send = function(event) {
190421
+ var event, w;
190422
+ w = this;
190423
+ if (w.released) {
190424
+ return;
190425
+ }
190426
+ $panic(new $String("Not implemented"));
190427
+ };
190428
+ windowImpl.prototype.Send = function(event) { return this.$val.Send(event); };
190429
+ windowImpl.ptr.prototype.SendFirst = function(event) {
190430
+ var event, w;
190431
+ w = this;
190432
+ if (w.released) {
190433
+ return;
190434
+ }
190435
+ $panic(new $String("Not implemented"));
190436
+ };
190437
+ windowImpl.prototype.SendFirst = function(event) { return this.$val.SendFirst(event); };
190438
+ windowImpl.ptr.prototype.NextEvent = function() {
190439
+ var {_r, ev, w, $s, $r, $c} = $restore(this, {});
190440
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190441
+ w = this;
190442
+ _r = $recv(w.domEvents.GetEventChan()); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190443
+ ev = _r[0];
190444
+ $s = -1; return ev;
190445
+ /* */ } return; } var $f = {$blk: windowImpl.ptr.prototype.NextEvent, $c: true, $r, _r, ev, w, $s};return $f;
190446
+ };
190447
+ windowImpl.prototype.NextEvent = function() { return this.$val.NextEvent(); };
190448
+ windowImpl.ptr.prototype.Upload = function(dp, src, sr) {
190449
+ var {_r, dp, sr, src, w, $s, $r, $c} = $restore(this, {dp, src, sr});
190450
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190451
+ w = this;
190452
+ if (w.released) {
190453
+ $s = -1; return;
190454
+ }
190455
+ _r = fmt.Errorf("Not implemented, use UploadYCbCr instead", sliceType.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190456
+ $panic(_r);
190457
+ $s = -1; return;
190458
+ /* */ } return; } var $f = {$blk: windowImpl.ptr.prototype.Upload, $c: true, $r, _r, dp, sr, src, w, $s};return $f;
190459
+ };
190460
+ windowImpl.prototype.Upload = function(dp, src, sr) { return this.$val.Upload(dp, src, sr); };
190461
+ windowImpl.ptr.prototype.UploadYCbCr = function(dp, src, sr) {
190462
+ var {_r, _r$1, _ref, dp, jsSrc, sr, src, w, x, $s, $r, $c} = $restore(this, {dp, src, sr});
190463
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190464
+ w = this;
190465
+ if (w.released) {
190466
+ $s = -1; return;
190467
+ }
190468
+ _ref = src;
190469
+ /* */ if ($assertType(_ref, ptrType$3, true)[1]) { $s = 1; continue; }
190470
+ /* */ $s = 2; continue;
190471
+ /* if ($assertType(_ref, ptrType$3, true)[1]) { */ case 1:
190472
+ jsSrc = _ref.$val;
190473
+ _r = $clone(w.ctx2d, js.Value).Call("drawImage", new sliceType([(x = jsSrc.YCbCrJS().CanvasImageSource, new x.constructor.elem(x)), new $Int(0), new $Int(0)])); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190474
+ _r;
190475
+ $s = -1; return;
190476
+ /* } */ case 2:
190477
+ _r$1 = fmt.Errorf("Not implemented, use canvasdriver.BufferImpl instead", sliceType.nil); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
190478
+ $panic(_r$1);
190479
+ $s = -1; return;
190480
+ /* */ } return; } var $f = {$blk: windowImpl.ptr.prototype.UploadYCbCr, $c: true, $r, _r, _r$1, _ref, dp, jsSrc, sr, src, w, x, $s};return $f;
190481
+ };
190482
+ windowImpl.prototype.UploadYCbCr = function(dp, src, sr) { return this.$val.UploadYCbCr(dp, src, sr); };
190483
+ windowImpl.ptr.prototype.Fill = function(dr, src, op) {
190484
+ var dr, op, src, w;
190485
+ w = this;
190486
+ if (w.released) {
190487
+ return;
190488
+ }
190489
+ $panic(new $String("Not implemented"));
190490
+ };
190491
+ windowImpl.prototype.Fill = function(dr, src, op) { return this.$val.Fill(dr, src, op); };
190492
+ windowImpl.ptr.prototype.Draw = function(src2dst, src, sr, op, opts) {
190493
+ var op, opts, sr, src, src2dst, w;
190494
+ w = this;
190495
+ if (w.released) {
190496
+ return;
190497
+ }
190498
+ $panic(new $String("Not implemented"));
190499
+ };
190500
+ windowImpl.prototype.Draw = function(src2dst, src, sr, op, opts) { return this.$val.Draw(src2dst, src, sr, op, opts); };
190501
+ windowImpl.ptr.prototype.DrawUniform = function(src2dst, src, sr, op, opts) {
190502
+ var op, opts, sr, src, src2dst, w;
190503
+ w = this;
190504
+ if (w.released) {
190505
+ return;
190506
+ }
190507
+ $panic(new $String("Not implemented"));
190508
+ };
190509
+ windowImpl.prototype.DrawUniform = function(src2dst, src, sr, op, opts) { return this.$val.DrawUniform(src2dst, src, sr, op, opts); };
190510
+ windowImpl.ptr.prototype.Copy = function(dp, src, sr, op, opts) {
190511
+ var dp, op, opts, sr, src, w;
190512
+ w = this;
190513
+ if (w.released) {
190514
+ return;
190515
+ }
190516
+ $panic(new $String("Not implemented"));
190517
+ };
190518
+ windowImpl.prototype.Copy = function(dp, src, sr, op, opts) { return this.$val.Copy(dp, src, sr, op, opts); };
190519
+ windowImpl.ptr.prototype.Scale = function(dr, src, sr, op, opts) {
190520
+ var dr, op, opts, sr, src, w;
190521
+ w = this;
190522
+ if (w.released) {
190523
+ return;
190524
+ }
190525
+ $panic(new $String("Not implemented"));
190526
+ };
190527
+ windowImpl.prototype.Scale = function(dr, src, sr, op, opts) { return this.$val.Scale(dr, src, sr, op, opts); };
190528
+ main = function(f) {
190529
+ var {_tuple, err, f, retErr, s, $s, $r, $c} = $restore(this, {f});
190530
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190531
+ retErr = $ifaceNil;
190532
+ _tuple = newScreenImpl();
190533
+ s = _tuple[0];
190534
+ err = _tuple[1];
190535
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
190536
+ retErr = err;
190537
+ $s = -1; return retErr;
190538
+ }
190539
+ $r = f(s); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190540
+ retErr = $ifaceNil;
190541
+ $s = -1; return retErr;
190542
+ /* */ } return; } var $f = {$blk: main, $c: true, $r, _tuple, err, f, retErr, s, $s};return $f;
190543
+ };
190544
+ newScreenImpl = function() {
190545
+ var s;
190546
+ s = new screenImpl.ptr($clone($clone(js.Global(), js.Value).Get("document"), js.Value));
190547
+ return [s, $ifaceNil];
190548
+ };
190549
+ screenImpl.ptr.prototype.NewBuffer = function(size) {
190550
+ var buffer, s, size;
190551
+ s = this;
190552
+ buffer = newBuffer(s, $clone(size, image.Point));
190553
+ return [buffer, $ifaceNil];
190554
+ };
190555
+ screenImpl.prototype.NewBuffer = function(size) { return this.$val.NewBuffer(size); };
190556
+ screenImpl.ptr.prototype.NewTexture = function(size) {
190557
+ var {$24r, _r, s, size, $s, $r, $c} = $restore(this, {size});
190558
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190559
+ s = this;
190560
+ _r = fmt.Errorf("Texture not implemented", sliceType.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190561
+ $24r = [$ifaceNil, _r];
190562
+ $s = 2; case 2: return $24r;
190563
+ /* */ } return; } var $f = {$blk: screenImpl.ptr.prototype.NewTexture, $c: true, $r, $24r, _r, s, size, $s};return $f;
190564
+ };
190565
+ screenImpl.prototype.NewTexture = function(size) { return this.$val.NewTexture(size); };
190566
+ screenImpl.ptr.prototype.NewWindow = function(opts) {
190567
+ var {_r, opts, s, window, $s, $r, $c} = $restore(this, {opts});
190568
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190569
+ s = this;
190570
+ _r = newWindow(s, opts); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190571
+ window = _r;
190572
+ $s = -1; return [window, $ifaceNil];
190573
+ /* */ } return; } var $f = {$blk: screenImpl.ptr.prototype.NewWindow, $c: true, $r, _r, opts, s, window, $s};return $f;
190574
+ };
190575
+ screenImpl.prototype.NewWindow = function(opts) { return this.$val.NewWindow(opts); };
190576
+ newBuffer = function(screen$1, size) {
190577
+ var _q, _q$1, _q$2, b, rect, screen$1, size;
190578
+ rect = new image.Rectangle.ptr(new image.Point.ptr(0, 0), $clone(size, image.Point));
190579
+ b = new BufferImpl.ptr(screen$1, $clone(size, image.Point), new sync.Mutex.ptr(0, 0), false, $clone(new image.RGBA.ptr($makeSlice(sliceType$1, ($imul(($imul(4, size.X)), size.Y))), $imul(4, size.X), $clone(rect, image.Rectangle)), image.RGBA), $clone(new image.YCbCr.ptr($makeSlice(sliceType$1, ($imul(size.X, size.Y))), $makeSlice(sliceType$1, (_q$1 = ($imul(size.X, size.Y)) / 4, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero"))), $makeSlice(sliceType$1, (_q$2 = ($imul(size.X, size.Y)) / 4, (_q$2 === _q$2 && _q$2 !== 1/0 && _q$2 !== -1/0) ? _q$2 >> 0 : $throwRuntimeError("integer divide by zero"))), size.X, (_q = size.X / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")), 2, $clone(rect, image.Rectangle)), image.YCbCr), ptrType$4.nil);
190580
+ return b;
190581
+ };
190582
+ BufferImpl.ptr.prototype.Size = function() {
190583
+ var b;
190584
+ b = this;
190585
+ return b.size;
190586
+ };
190587
+ BufferImpl.prototype.Size = function() { return this.$val.Size(); };
190588
+ BufferImpl.ptr.prototype.Bounds = function() {
190589
+ var b;
190590
+ b = this;
190591
+ return new image.Rectangle.ptr(new image.Point.ptr(0, 0), $clone(b.size, image.Point));
190592
+ };
190593
+ BufferImpl.prototype.Bounds = function() { return this.$val.Bounds(); };
190594
+ BufferImpl.ptr.prototype.RGBA = function() {
190595
+ var b;
190596
+ b = this;
190597
+ return b.rgba;
190598
+ };
190599
+ BufferImpl.prototype.RGBA = function() { return this.$val.RGBA(); };
190600
+ BufferImpl.ptr.prototype.YCbCr = function() {
190601
+ var b;
190602
+ b = this;
190603
+ return b.ycbcr;
190604
+ };
190605
+ BufferImpl.prototype.YCbCr = function() { return this.$val.YCbCr(); };
190606
+ BufferImpl.ptr.prototype.YCbCrJS = function() {
190607
+ var b;
190608
+ b = this;
190609
+ if (b.ycbcrJS === ptrType$4.nil) {
190610
+ b.ycbcrJS = new YCbCrJS.ptr(ptrType$5.nil);
190611
+ }
190612
+ return b.ycbcrJS;
190613
+ };
190614
+ BufferImpl.prototype.YCbCrJS = function() { return this.$val.YCbCrJS(); };
190615
+ BufferImpl.ptr.prototype.Release = function() {
190616
+ var {b, $s, $deferred, $r, $c} = $restore(this, {});
190617
+ /* */ $s = $s || 0; var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $curGoroutine.deferStack.push($deferred);
190618
+ b = this;
190619
+ $r = b.mutex.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190620
+ $deferred.push([$methodVal(b.mutex, "Unlock"), []]);
190621
+ /* */ if (b.released) { $s = 2; continue; }
190622
+ /* */ $s = 3; continue;
190623
+ /* if (b.released) { */ case 2:
190624
+ $s = 4; case 4: return;
190625
+ /* } */ case 3:
190626
+ b.released = true;
190627
+ $s = -1; return;
190628
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { var $f = {$blk: BufferImpl.ptr.prototype.Release, $c: true, $r, b, $s, $deferred};return $f; } }
190629
+ };
190630
+ BufferImpl.prototype.Release = function() { return this.$val.Release(); };
190631
+ ptrType$7.methods = [{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$6], [], false)}, {prop: "DrawUniform", name: "DrawUniform", pkg: "", typ: $funcType([f64.Aff3, color.Color, image.Rectangle, draw.Op, ptrType$6], [], false)}, {prop: "Copy", name: "Copy", pkg: "", typ: $funcType([image.Point, screen.Texture, image.Rectangle, draw.Op, ptrType$6], [], false)}, {prop: "Scale", name: "Scale", pkg: "", typ: $funcType([image.Rectangle, screen.Texture, image.Rectangle, draw.Op, ptrType$6], [], false)}];
190632
+ 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$8], [screen.Window, $error], false)}];
190633
+ ptrType$3.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$9], false)}, {prop: "YCbCr", name: "YCbCr", pkg: "", typ: $funcType([], [ptrType$10], false)}, {prop: "YCbCrJS", name: "YCbCrJS", pkg: "", typ: $funcType([], [ptrType$4], false)}, {prop: "Release", name: "Release", pkg: "", typ: $funcType([], [], false)}];
190634
+ 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$2, tag: ""}, {prop: "resizeCallback", name: "resizeCallback", embedded: false, exported: false, typ: js.Func, tag: ""}]);
190635
+ screenImpl.init("golang.org/x/exp/shiny/driver/canvasdriver", [{prop: "doc", name: "doc", embedded: false, exported: false, typ: js.Value, tag: ""}]);
190636
+ YCbCrJS.init("", [{prop: "CanvasImageSource", name: "CanvasImageSource", embedded: false, exported: true, typ: ptrType$5, tag: ""}]);
190637
+ 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$4, tag: ""}]);
190638
+ $init = function() {
190639
+ $pkg.$init = function() {};
190640
+ /* */ 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:
190641
+ $r = fmt.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190642
+ $r = dom.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190643
+ $r = errscreen.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190644
+ $r = screen.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190645
+ $r = f64.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190646
+ $r = image.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190647
+ $r = color.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190648
+ $r = draw.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190649
+ $r = sync.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190650
+ $r = js.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190651
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
190652
+ };
190653
+ $pkg.$init = $init;
190654
+ return $pkg;
190655
+ })();
190656
+ $packages["github.com/supraio/client-daemon/pkg/x264/webcodecs"] = (function() {
190657
+ var $pkg = {}, $init, hex, webgl, errs, jshelper, general, canvasdriver, image, js;
190658
+ hex = $packages["encoding/hex"];
190659
+ webgl = $packages["github.com/nuberu/webgl"];
190660
+ errs = $packages["github.com/supraio/client-daemon/pkg/errs"];
190661
+ jshelper = $packages["github.com/supraio/client-daemon/pkg/jshelper"];
190662
+ general = $packages["github.com/supraio/client-daemon/pkg/x264/general"];
190663
+ canvasdriver = $packages["golang.org/x/exp/shiny/driver/canvasdriver"];
190664
+ image = $packages["image"];
190665
+ js = $packages["syscall/js"];
190666
+ $init = function() {
190667
+ $pkg.$init = function() {};
190668
+ /* */ 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:
190669
+ $r = hex.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190670
+ $r = webgl.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190671
+ $r = errs.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190672
+ $r = jshelper.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190673
+ $r = general.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190674
+ $r = canvasdriver.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190675
+ $r = image.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190676
+ $r = js.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190677
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
190678
+ };
190679
+ $pkg.$init = $init;
190680
+ return $pkg;
190681
+ })();
190682
+ $packages["github.com/supraio/client-daemon/pkg/x264"] = (function() {
190683
+ var $pkg = {}, $init, errs, general, h264_decoder, nacldecoder, webcodecs, js;
190684
+ errs = $packages["github.com/supraio/client-daemon/pkg/errs"];
190685
+ general = $packages["github.com/supraio/client-daemon/pkg/x264/general"];
190686
+ h264_decoder = $packages["github.com/supraio/client-daemon/pkg/x264/h264decoder"];
190687
+ nacldecoder = $packages["github.com/supraio/client-daemon/pkg/x264/nacldecoder"];
190688
+ webcodecs = $packages["github.com/supraio/client-daemon/pkg/x264/webcodecs"];
190689
+ js = $packages["syscall/js"];
190690
+ $init = function() {
190691
+ $pkg.$init = function() {};
190692
+ /* */ 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:
190693
+ $r = errs.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190694
+ $r = general.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190695
+ $r = h264_decoder.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190696
+ $r = nacldecoder.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190697
+ $r = webcodecs.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190698
+ $r = js.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190699
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
190700
+ };
190701
+ $pkg.$init = $init;
190702
+ return $pkg;
190703
+ })();
190226
190704
  $packages["github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver/dom"] = (function() {
190227
190705
  var $pkg = {}, $init, focus, key, mouse, size, geom, math, strings, js, DomEvents, sliceType, funcType, sliceType$1, sliceType$2, chanType, ptrType, keyCodesMap, keyCodesByKeyMap, GetDocWidth, GetDocHeight, GetOrientation, NewDomEvents, getMouseDirection, getWheelButton, getMouseButton, getEventModifiers, isFocusIn, getKeyRune, getKeyDirection, getKeyCode;
190228
190706
  focus = $packages["golang.org/x/mobile/event/focus"];
@@ -190344,816 +190822,377 @@ $packages["github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver/dom"
190344
190822
  _r = $clone(js.Global(), js.Value).Call("addEventListener", new sliceType([new $String("resize"), new onResize[0].constructor.elem(onResize[0])])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190345
190823
  _r;
190346
190824
  d[0].releases = $append(d[0].releases, (function(d, onResize) { return function $b() {
190347
- var {_r$1, $s, $r, $c} = $restore(this, {});
190348
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190349
- _r$1 = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType([new $String("resize"), new onResize[0].constructor.elem(onResize[0])])); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
190350
- _r$1;
190351
- $clone(onResize[0], js.Func).Release();
190352
- $s = -1; return;
190353
- /* */ } return; } var $f = {$blk: $b, $c: true, $r, _r$1, $s};return $f;
190354
- }; })(d, onResize));
190355
- $s = -1; return;
190356
- /* */ } return; } var $f = {$blk: DomEvents.ptr.prototype.bindSizeEvents, $c: true, $r, _r, d, onResize, $s};return $f;
190357
- };
190358
- DomEvents.prototype.bindSizeEvents = function() { return this.$val.bindSizeEvents(); };
190359
- DomEvents.ptr.prototype.emitSizeEvent = function() {
190360
- var {_q, _q$1, _r, d, height, orientation, pixelsPerPt, width, x, $s, $r, $c} = $restore(this, {});
190361
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190362
- d = this;
190363
- _r = GetOrientation(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190364
- orientation = _r;
190365
- pixelsPerPt = 1;
190366
- width = GetDocWidth();
190367
- height = GetDocHeight();
190368
- $r = $send(d.eventChan, (x = new size.Event.ptr(width, height, ((_q = width / ((pixelsPerPt >> 0)), (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"))), ((_q$1 = height / ((pixelsPerPt >> 0)), (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero"))), pixelsPerPt, orientation), new x.constructor.elem(x))); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190369
- $s = -1; return;
190370
- /* */ } return; } var $f = {$blk: DomEvents.ptr.prototype.emitSizeEvent, $c: true, $r, _q, _q$1, _r, d, height, orientation, pixelsPerPt, width, x, $s};return $f;
190371
- };
190372
- DomEvents.prototype.emitSizeEvent = function() { return this.$val.emitSizeEvent(); };
190373
- DomEvents.ptr.prototype.bindMouseEvents = function() {
190374
- var {_r, _r$1, _r$2, _r$3, d, onClick, onMove, onWheel, $s, $r, $c} = $restore(this, {});
190375
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190376
- d = [d];
190377
- onClick = [onClick];
190378
- onMove = [onMove];
190379
- onWheel = [onWheel];
190380
- d[0] = this;
190381
- onMove[0] = $clone(js.FuncOf((function(d, onClick, onMove, onWheel) { return function $b(this$1, args) {
190382
- var {_r, args, this$1, x, $s, $r, $c} = $restore(this, {this$1, args});
190383
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190384
- _r = $clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value).Call("preventDefault", sliceType.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190385
- _r;
190386
- $r = $send(d[0].eventChan, (x = new mouse.Event.ptr(($fround($clone($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value).Get("offsetX"), js.Value).Float())), ($fround($clone($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value).Get("offsetY"), js.Value).Float())), 0, getEventModifiers($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value)), 0), new x.constructor.elem(x))); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190387
- $s = -1; return $ifaceNil;
190388
- /* */ } return; } var $f = {$blk: $b, $c: true, $r, _r, args, this$1, x, $s};return $f;
190389
- }; })(d, onClick, onMove, onWheel)), js.Func);
190390
- _r = $clone(js.Global(), js.Value).Call("addEventListener", new sliceType([new $String("mousemove"), new onMove[0].constructor.elem(onMove[0])])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190391
- _r;
190392
- onClick[0] = $clone(js.FuncOf((function(d, onClick, onMove, onWheel) { return function $b(this$1, args) {
190393
- var {_r$1, args, this$1, x, $s, $r, $c} = $restore(this, {this$1, args});
190394
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190395
- _r$1 = $clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value).Call("preventDefault", sliceType.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
190396
- _r$1;
190397
- $r = $send(d[0].eventChan, (x = new mouse.Event.ptr(($fround($clone($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value).Get("offsetX"), js.Value).Float())), ($fround($clone($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value).Get("offsetY"), js.Value).Float())), getMouseButton($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value)), getEventModifiers($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value)), getMouseDirection($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value))), new x.constructor.elem(x))); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190398
- $s = -1; return $ifaceNil;
190399
- /* */ } return; } var $f = {$blk: $b, $c: true, $r, _r$1, args, this$1, x, $s};return $f;
190400
- }; })(d, onClick, onMove, onWheel)), js.Func);
190401
- _r$1 = $clone(js.Global(), js.Value).Call("addEventListener", new sliceType([new $String("mousedown"), new onClick[0].constructor.elem(onClick[0])])); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
190402
- _r$1;
190403
- _r$2 = $clone(js.Global(), js.Value).Call("addEventListener", new sliceType([new $String("mouseup"), new onClick[0].constructor.elem(onClick[0])])); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
190404
- _r$2;
190405
- onWheel[0] = $clone(js.FuncOf((function(d, onClick, onMove, onWheel) { return function $b(this$1, args) {
190406
- var {args, this$1, x, $s, $r, $c} = $restore(this, {this$1, args});
190407
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190408
- $r = $send(d[0].eventChan, (x = new mouse.Event.ptr(($fround($clone($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value).Get("offsetX"), js.Value).Float())), ($fround($clone($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value).Get("offsetY"), js.Value).Float())), getWheelButton($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value)), getEventModifiers($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value)), 3), new x.constructor.elem(x))); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190409
- $s = -1; return $ifaceNil;
190410
- /* */ } return; } var $f = {$blk: $b, $c: true, $r, args, this$1, x, $s};return $f;
190411
- }; })(d, onClick, onMove, onWheel)), js.Func);
190412
- _r$3 = $clone(js.Global(), js.Value).Call("addEventListener", new sliceType([new $String("wheel"), new onWheel[0].constructor.elem(onWheel[0])])); /* */ $s = 4; case 4: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
190413
- _r$3;
190414
- d[0].releases = $append(d[0].releases, (function(d, onClick, onMove, onWheel) { return function $b() {
190415
- var {_r$4, _r$5, _r$6, _r$7, $s, $r, $c} = $restore(this, {});
190416
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190417
- _r$4 = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType([new $String("mousemove"), new onMove[0].constructor.elem(onMove[0])])); /* */ $s = 1; case 1: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
190418
- _r$4;
190419
- _r$5 = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType([new $String("mousedown"), new onClick[0].constructor.elem(onClick[0])])); /* */ $s = 2; case 2: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
190420
- _r$5;
190421
- _r$6 = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType([new $String("mouseup"), new onClick[0].constructor.elem(onClick[0])])); /* */ $s = 3; case 3: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
190422
- _r$6;
190423
- _r$7 = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType([new $String("wheel"), new onWheel[0].constructor.elem(onWheel[0])])); /* */ $s = 4; case 4: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
190424
- _r$7;
190425
- $clone(onMove[0], js.Func).Release();
190426
- $clone(onClick[0], js.Func).Release();
190427
- $clone(onWheel[0], js.Func).Release();
190428
- $s = -1; return;
190429
- /* */ } return; } var $f = {$blk: $b, $c: true, $r, _r$4, _r$5, _r$6, _r$7, $s};return $f;
190430
- }; })(d, onClick, onMove, onWheel));
190431
- $s = -1; return;
190432
- /* */ } return; } var $f = {$blk: DomEvents.ptr.prototype.bindMouseEvents, $c: true, $r, _r, _r$1, _r$2, _r$3, d, onClick, onMove, onWheel, $s};return $f;
190433
- };
190434
- DomEvents.prototype.bindMouseEvents = function() { return this.$val.bindMouseEvents(); };
190435
- getMouseDirection = function(ev) {
190436
- var dir, ev;
190437
- dir = 0;
190438
- dir = 0;
190439
- if ($clone($clone(ev, js.Value).Get("type"), js.Value).String() === "mousedown") {
190440
- dir = 1;
190441
- }
190442
- if ($clone($clone(ev, js.Value).Get("type"), js.Value).String() === "mouseup") {
190443
- dir = 2;
190444
- }
190445
- return dir;
190446
- };
190447
- getWheelButton = function(ev) {
190448
- var deltaX, deltaY, ev;
190449
- deltaY = $clone($clone(ev, js.Value).Get("deltaY"), js.Value).Int();
190450
- deltaX = $clone($clone(ev, js.Value).Get("deltaX"), js.Value).Int();
190451
- if (deltaY > 0) {
190452
- return -2;
190453
- }
190454
- if (deltaY < 0) {
190455
- return -1;
190456
- }
190457
- if (deltaX > 0) {
190458
- return -4;
190459
- }
190460
- if (deltaX < 0) {
190461
- return -3;
190462
- }
190463
- return 0;
190464
- };
190465
- getMouseButton = function(ev) {
190466
- var _1, ev;
190467
- _1 = $clone($clone(ev, js.Value).Get("button"), js.Value).Int();
190468
- if (_1 === (0)) {
190469
- return 1;
190470
- } else if (_1 === (1)) {
190471
- return 2;
190472
- } else if (_1 === (2)) {
190473
- return 3;
190474
- } else if (_1 === (3)) {
190475
- return 8;
190476
- } else if (_1 === (4)) {
190477
- return 9;
190478
- } else {
190479
- return 0;
190480
- }
190481
- };
190482
- getEventModifiers = function(ev) {
190483
- var ev, mod;
190484
- mod = 0;
190485
- if ($clone($clone(ev, js.Value).Get("altKey"), js.Value).Bool()) {
190486
- mod = (mod | (4)) >>> 0;
190487
- }
190488
- if ($clone($clone(ev, js.Value).Get("ctrlKey"), js.Value).Bool()) {
190489
- mod = (mod | (2)) >>> 0;
190490
- }
190491
- if ($clone($clone(ev, js.Value).Get("shiftKey"), js.Value).Bool()) {
190492
- mod = (mod | (1)) >>> 0;
190493
- }
190494
- if ($clone($clone(ev, js.Value).Get("metaKey"), js.Value).Bool()) {
190495
- mod = (mod | (8)) >>> 0;
190496
- }
190497
- return mod;
190498
- };
190499
- DomEvents.ptr.prototype.bindFocusEvents = function() {
190500
- var {_r, _r$1, d, onFocus, $s, $r, $c} = $restore(this, {});
190501
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190502
- d = [d];
190503
- onFocus = [onFocus];
190504
- d[0] = this;
190505
- onFocus[0] = $clone(js.FuncOf((function(d, onFocus) { return function $b(this$1, args) {
190506
- var {args, this$1, x, $s, $r, $c} = $restore(this, {this$1, args});
190507
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190508
- $r = $send(d[0].eventChan, (x = new focus.Event.ptr(isFocusIn($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value))), new x.constructor.elem(x))); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190509
- $s = -1; return $ifaceNil;
190510
- /* */ } return; } var $f = {$blk: $b, $c: true, $r, args, this$1, x, $s};return $f;
190511
- }; })(d, onFocus)), js.Func);
190512
- _r = $clone(js.Global(), js.Value).Call("addEventListener", new sliceType([new $String("focus"), new onFocus[0].constructor.elem(onFocus[0])])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190513
- _r;
190514
- _r$1 = $clone(js.Global(), js.Value).Call("addEventListener", new sliceType([new $String("blur"), new onFocus[0].constructor.elem(onFocus[0])])); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
190515
- _r$1;
190516
- d[0].releases = $append(d[0].releases, (function(d, onFocus) { return function $b() {
190517
- var {_r$2, _r$3, $s, $r, $c} = $restore(this, {});
190518
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190519
- _r$2 = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType([new $String("focus"), new onFocus[0].constructor.elem(onFocus[0])])); /* */ $s = 1; case 1: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
190520
- _r$2;
190521
- _r$3 = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType([new $String("blur"), new onFocus[0].constructor.elem(onFocus[0])])); /* */ $s = 2; case 2: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
190522
- _r$3;
190523
- $clone(onFocus[0], js.Func).Release();
190825
+ var {_r$1, $s, $r, $c} = $restore(this, {});
190826
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190827
+ _r$1 = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType([new $String("resize"), new onResize[0].constructor.elem(onResize[0])])); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
190828
+ _r$1;
190829
+ $clone(onResize[0], js.Func).Release();
190524
190830
  $s = -1; return;
190525
- /* */ } return; } var $f = {$blk: $b, $c: true, $r, _r$2, _r$3, $s};return $f;
190526
- }; })(d, onFocus));
190831
+ /* */ } return; } var $f = {$blk: $b, $c: true, $r, _r$1, $s};return $f;
190832
+ }; })(d, onResize));
190527
190833
  $s = -1; return;
190528
- /* */ } return; } var $f = {$blk: DomEvents.ptr.prototype.bindFocusEvents, $c: true, $r, _r, _r$1, d, onFocus, $s};return $f;
190834
+ /* */ } return; } var $f = {$blk: DomEvents.ptr.prototype.bindSizeEvents, $c: true, $r, _r, d, onResize, $s};return $f;
190529
190835
  };
190530
- DomEvents.prototype.bindFocusEvents = function() { return this.$val.bindFocusEvents(); };
190531
- isFocusIn = function(ev) {
190532
- var ev;
190533
- if ($clone($clone(ev, js.Value).Get("type"), js.Value).String() === "focus") {
190534
- return true;
190535
- }
190536
- return false;
190836
+ DomEvents.prototype.bindSizeEvents = function() { return this.$val.bindSizeEvents(); };
190837
+ DomEvents.ptr.prototype.emitSizeEvent = function() {
190838
+ var {_q, _q$1, _r, d, height, orientation, pixelsPerPt, width, x, $s, $r, $c} = $restore(this, {});
190839
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190840
+ d = this;
190841
+ _r = GetOrientation(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190842
+ orientation = _r;
190843
+ pixelsPerPt = 1;
190844
+ width = GetDocWidth();
190845
+ height = GetDocHeight();
190846
+ $r = $send(d.eventChan, (x = new size.Event.ptr(width, height, ((_q = width / ((pixelsPerPt >> 0)), (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"))), ((_q$1 = height / ((pixelsPerPt >> 0)), (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero"))), pixelsPerPt, orientation), new x.constructor.elem(x))); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190847
+ $s = -1; return;
190848
+ /* */ } return; } var $f = {$blk: DomEvents.ptr.prototype.emitSizeEvent, $c: true, $r, _q, _q$1, _r, d, height, orientation, pixelsPerPt, width, x, $s};return $f;
190537
190849
  };
190538
- DomEvents.ptr.prototype.bindKeyEvents = function() {
190539
- var {_r, _r$1, d, onKey, $s, $r, $c} = $restore(this, {});
190850
+ DomEvents.prototype.emitSizeEvent = function() { return this.$val.emitSizeEvent(); };
190851
+ DomEvents.ptr.prototype.bindMouseEvents = function() {
190852
+ var {_r, _r$1, _r$2, _r$3, d, onClick, onMove, onWheel, $s, $r, $c} = $restore(this, {});
190540
190853
  /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190541
190854
  d = [d];
190542
- onKey = [onKey];
190855
+ onClick = [onClick];
190856
+ onMove = [onMove];
190857
+ onWheel = [onWheel];
190543
190858
  d[0] = this;
190544
- onKey[0] = $clone(js.FuncOf((function(d, onKey) { return function $b(this$1, args) {
190859
+ onMove[0] = $clone(js.FuncOf((function(d, onClick, onMove, onWheel) { return function $b(this$1, args) {
190545
190860
  var {_r, args, this$1, x, $s, $r, $c} = $restore(this, {this$1, args});
190546
190861
  /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190547
190862
  _r = $clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value).Call("preventDefault", sliceType.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190548
190863
  _r;
190549
- $r = $send(d[0].eventChan, (x = new key.Event.ptr(getKeyRune($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value)), getKeyCode($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value)), getEventModifiers($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value)), getKeyDirection($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value))), new x.constructor.elem(x))); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190864
+ $r = $send(d[0].eventChan, (x = new mouse.Event.ptr(($fround($clone($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value).Get("offsetX"), js.Value).Float())), ($fround($clone($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value).Get("offsetY"), js.Value).Float())), 0, getEventModifiers($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value)), 0), new x.constructor.elem(x))); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190550
190865
  $s = -1; return $ifaceNil;
190551
190866
  /* */ } return; } var $f = {$blk: $b, $c: true, $r, _r, args, this$1, x, $s};return $f;
190552
- }; })(d, onKey)), js.Func);
190553
- _r = $clone(js.Global(), js.Value).Call("addEventListener", new sliceType([new $String("keydown"), new onKey[0].constructor.elem(onKey[0])])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190867
+ }; })(d, onClick, onMove, onWheel)), js.Func);
190868
+ _r = $clone(js.Global(), js.Value).Call("addEventListener", new sliceType([new $String("mousemove"), new onMove[0].constructor.elem(onMove[0])])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190554
190869
  _r;
190555
- _r$1 = $clone(js.Global(), js.Value).Call("addEventListener", new sliceType([new $String("keyup"), new onKey[0].constructor.elem(onKey[0])])); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
190870
+ onClick[0] = $clone(js.FuncOf((function(d, onClick, onMove, onWheel) { return function $b(this$1, args) {
190871
+ var {_r$1, args, this$1, x, $s, $r, $c} = $restore(this, {this$1, args});
190872
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190873
+ _r$1 = $clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value).Call("preventDefault", sliceType.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
190874
+ _r$1;
190875
+ $r = $send(d[0].eventChan, (x = new mouse.Event.ptr(($fround($clone($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value).Get("offsetX"), js.Value).Float())), ($fround($clone($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value).Get("offsetY"), js.Value).Float())), getMouseButton($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value)), getEventModifiers($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value)), getMouseDirection($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value))), new x.constructor.elem(x))); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190876
+ $s = -1; return $ifaceNil;
190877
+ /* */ } return; } var $f = {$blk: $b, $c: true, $r, _r$1, args, this$1, x, $s};return $f;
190878
+ }; })(d, onClick, onMove, onWheel)), js.Func);
190879
+ _r$1 = $clone(js.Global(), js.Value).Call("addEventListener", new sliceType([new $String("mousedown"), new onClick[0].constructor.elem(onClick[0])])); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
190556
190880
  _r$1;
190557
- d[0].releases = $append(d[0].releases, (function(d, onKey) { return function $b() {
190558
- var {_r$2, _r$3, $s, $r, $c} = $restore(this, {});
190881
+ _r$2 = $clone(js.Global(), js.Value).Call("addEventListener", new sliceType([new $String("mouseup"), new onClick[0].constructor.elem(onClick[0])])); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
190882
+ _r$2;
190883
+ onWheel[0] = $clone(js.FuncOf((function(d, onClick, onMove, onWheel) { return function $b(this$1, args) {
190884
+ var {args, this$1, x, $s, $r, $c} = $restore(this, {this$1, args});
190559
190885
  /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190560
- _r$2 = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType([new $String("keydown"), new onKey[0].constructor.elem(onKey[0])])); /* */ $s = 1; case 1: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
190561
- _r$2;
190562
- _r$3 = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType([new $String("keyup"), new onKey[0].constructor.elem(onKey[0])])); /* */ $s = 2; case 2: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
190563
- _r$3;
190564
- $clone(onKey[0], js.Func).Release();
190886
+ $r = $send(d[0].eventChan, (x = new mouse.Event.ptr(($fround($clone($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value).Get("offsetX"), js.Value).Float())), ($fround($clone($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value).Get("offsetY"), js.Value).Float())), getWheelButton($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value)), getEventModifiers($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value)), 3), new x.constructor.elem(x))); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190887
+ $s = -1; return $ifaceNil;
190888
+ /* */ } return; } var $f = {$blk: $b, $c: true, $r, args, this$1, x, $s};return $f;
190889
+ }; })(d, onClick, onMove, onWheel)), js.Func);
190890
+ _r$3 = $clone(js.Global(), js.Value).Call("addEventListener", new sliceType([new $String("wheel"), new onWheel[0].constructor.elem(onWheel[0])])); /* */ $s = 4; case 4: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
190891
+ _r$3;
190892
+ d[0].releases = $append(d[0].releases, (function(d, onClick, onMove, onWheel) { return function $b() {
190893
+ var {_r$4, _r$5, _r$6, _r$7, $s, $r, $c} = $restore(this, {});
190894
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190895
+ _r$4 = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType([new $String("mousemove"), new onMove[0].constructor.elem(onMove[0])])); /* */ $s = 1; case 1: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
190896
+ _r$4;
190897
+ _r$5 = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType([new $String("mousedown"), new onClick[0].constructor.elem(onClick[0])])); /* */ $s = 2; case 2: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
190898
+ _r$5;
190899
+ _r$6 = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType([new $String("mouseup"), new onClick[0].constructor.elem(onClick[0])])); /* */ $s = 3; case 3: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
190900
+ _r$6;
190901
+ _r$7 = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType([new $String("wheel"), new onWheel[0].constructor.elem(onWheel[0])])); /* */ $s = 4; case 4: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
190902
+ _r$7;
190903
+ $clone(onMove[0], js.Func).Release();
190904
+ $clone(onClick[0], js.Func).Release();
190905
+ $clone(onWheel[0], js.Func).Release();
190565
190906
  $s = -1; return;
190566
- /* */ } return; } var $f = {$blk: $b, $c: true, $r, _r$2, _r$3, $s};return $f;
190567
- }; })(d, onKey));
190907
+ /* */ } return; } var $f = {$blk: $b, $c: true, $r, _r$4, _r$5, _r$6, _r$7, $s};return $f;
190908
+ }; })(d, onClick, onMove, onWheel));
190568
190909
  $s = -1; return;
190569
- /* */ } return; } var $f = {$blk: DomEvents.ptr.prototype.bindKeyEvents, $c: true, $r, _r, _r$1, d, onKey, $s};return $f;
190570
- };
190571
- DomEvents.prototype.bindKeyEvents = function() { return this.$val.bindKeyEvents(); };
190572
- getKeyRune = function(ev) {
190573
- var ev, key$1;
190574
- key$1 = (new sliceType$2($stringToRunes($clone($clone(ev, js.Value).Get("key"), js.Value).String())));
190575
- if (key$1.$length === 1) {
190576
- return (0 >= key$1.$length ? ($throwRuntimeError("index out of range"), undefined) : key$1.$array[key$1.$offset + 0]);
190577
- }
190578
- return -1;
190910
+ /* */ } return; } var $f = {$blk: DomEvents.ptr.prototype.bindMouseEvents, $c: true, $r, _r, _r$1, _r$2, _r$3, d, onClick, onMove, onWheel, $s};return $f;
190579
190911
  };
190580
- getKeyDirection = function(ev) {
190912
+ DomEvents.prototype.bindMouseEvents = function() { return this.$val.bindMouseEvents(); };
190913
+ getMouseDirection = function(ev) {
190581
190914
  var dir, ev;
190582
190915
  dir = 0;
190583
190916
  dir = 0;
190584
- if ($clone($clone(ev, js.Value).Get("type"), js.Value).String() === "keydown") {
190917
+ if ($clone($clone(ev, js.Value).Get("type"), js.Value).String() === "mousedown") {
190585
190918
  dir = 1;
190586
190919
  }
190587
- if ($clone($clone(ev, js.Value).Get("type"), js.Value).String() === "keyup") {
190588
- dir = 2;
190589
- }
190590
- return dir;
190591
- };
190592
- getKeyCode = function(ev) {
190593
- var _entry, _entry$1, _tuple, _tuple$1, code, code$1, domCode, domKey, ev, exists, exists$1;
190594
- domCode = $clone($clone(ev, js.Value).Get("code"), js.Value).String();
190595
- _tuple = (_entry = $mapIndex(keyCodesMap,$String.keyFor(domCode)), _entry !== undefined ? [_entry.v, true] : [0, false]);
190596
- code = _tuple[0];
190597
- exists = _tuple[1];
190598
- if (exists) {
190599
- return code;
190600
- }
190601
- domKey = $clone($clone(ev, js.Value).Get("key"), js.Value).String();
190602
- _tuple$1 = (_entry$1 = $mapIndex(keyCodesByKeyMap,$String.keyFor(domKey)), _entry$1 !== undefined ? [_entry$1.v, true] : [0, false]);
190603
- code$1 = _tuple$1[0];
190604
- exists$1 = _tuple$1[1];
190605
- if (exists$1) {
190606
- return code$1;
190607
- }
190608
- return 0;
190609
- };
190610
- ptrType.methods = [{prop: "GetEventChan", name: "GetEventChan", pkg: "", typ: $funcType([], [chanType], false)}, {prop: "Release", name: "Release", pkg: "", typ: $funcType([], [], false)}, {prop: "BindEvents", name: "BindEvents", pkg: "", typ: $funcType([], [], false)}, {prop: "bindSizeEvents", name: "bindSizeEvents", pkg: "github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver/dom", typ: $funcType([], [], false)}, {prop: "emitSizeEvent", name: "emitSizeEvent", pkg: "github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver/dom", typ: $funcType([], [], false)}, {prop: "bindMouseEvents", name: "bindMouseEvents", pkg: "github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver/dom", typ: $funcType([], [], false)}, {prop: "bindFocusEvents", name: "bindFocusEvents", pkg: "github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver/dom", typ: $funcType([], [], false)}, {prop: "bindKeyEvents", name: "bindKeyEvents", pkg: "github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver/dom", typ: $funcType([], [], false)}];
190611
- DomEvents.init("github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver/dom", [{prop: "eventChan", name: "eventChan", embedded: false, exported: false, typ: chanType, tag: ""}, {prop: "releases", name: "releases", embedded: false, exported: false, typ: sliceType$1, tag: ""}]);
190612
- $init = function() {
190613
- $pkg.$init = function() {};
190614
- /* */ 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:
190615
- $r = focus.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190616
- $r = key.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190617
- $r = mouse.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190618
- $r = size.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190619
- $r = geom.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190620
- $r = math.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190621
- $r = strings.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190622
- $r = js.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190623
- 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 }]);
190624
- keyCodesByKeyMap = $makeMap($String.keyFor, [{ k: "AudioVolumeMute", v: 127 }, { k: "AudioVolumeUp", v: 128 }, { k: "AudioVolumeDown", v: 129 }]);
190625
- /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
190626
- };
190627
- $pkg.$init = $init;
190628
- return $pkg;
190629
- })();
190630
- $packages["github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver"] = (function() {
190631
- var $pkg = {}, $init, fmt, errs, jshelper, dom, screen, f64, image, color, draw, sync, js, windowImpl, screenImpl, BufferImpl, sliceType, ptrType, ptrType$1, funcType, arrayType, ptrType$2, ptrType$3, ptrType$4, ptrType$5, sliceType$1, ptrType$6, ptrType$7, ptrType$8, ptrType$9, newWindow, newScreenImpl, main, newBuffer;
190632
- fmt = $packages["fmt"];
190633
- errs = $packages["github.com/supraio/client-daemon/pkg/errs"];
190634
- jshelper = $packages["github.com/supraio/client-daemon/pkg/jshelper"];
190635
- dom = $packages["github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver/dom"];
190636
- screen = $packages["golang.org/x/exp/shiny/screen"];
190637
- f64 = $packages["golang.org/x/image/math/f64"];
190638
- image = $packages["image"];
190639
- color = $packages["image/color"];
190640
- draw = $packages["image/draw"];
190641
- sync = $packages["sync"];
190642
- js = $packages["syscall/js"];
190643
- windowImpl = $pkg.windowImpl = $newType(0, $kindStruct, "nacldriver.windowImpl", true, "github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver", false, function(screen_, mutex_, jsNaClDecoder_, domEvents_, released_) {
190644
- this.$val = this;
190645
- if (arguments.length === 0) {
190646
- this.screen = ptrType.nil;
190647
- this.mutex = ptrType$1.nil;
190648
- this.jsNaClDecoder = new js.Value.ptr(null, false, arrayType.zero());
190649
- this.domEvents = ptrType$2.nil;
190650
- this.released = false;
190651
- return;
190652
- }
190653
- this.screen = screen_;
190654
- this.mutex = mutex_;
190655
- this.jsNaClDecoder = jsNaClDecoder_;
190656
- this.domEvents = domEvents_;
190657
- this.released = released_;
190658
- });
190659
- screenImpl = $pkg.screenImpl = $newType(0, $kindStruct, "nacldriver.screenImpl", true, "github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver", false, function(doc_) {
190660
- this.$val = this;
190661
- if (arguments.length === 0) {
190662
- this.doc = new js.Value.ptr(null, false, arrayType.zero());
190663
- return;
190664
- }
190665
- this.doc = doc_;
190666
- });
190667
- BufferImpl = $pkg.BufferImpl = $newType(0, $kindStruct, "nacldriver.BufferImpl", true, "github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver", true, function(pictureResult_, screen_, size_) {
190668
- this.$val = this;
190669
- if (arguments.length === 0) {
190670
- this.pictureResult = ptrType$4.nil;
190671
- this.screen = ptrType.nil;
190672
- this.size = new image.Point.ptr(0, 0);
190673
- return;
190674
- }
190675
- this.pictureResult = pictureResult_;
190676
- this.screen = screen_;
190677
- this.size = size_;
190678
- });
190679
- sliceType = $sliceType($emptyInterface);
190680
- ptrType = $ptrType(screenImpl);
190681
- ptrType$1 = $ptrType(sync.Mutex);
190682
- funcType = $funcType([], [], false);
190683
- arrayType = $arrayType(funcType, 0);
190684
- ptrType$2 = $ptrType(dom.DomEvents);
190685
- ptrType$3 = $ptrType(BufferImpl);
190686
- ptrType$4 = $ptrType(js.Value);
190687
- ptrType$5 = $ptrType(image.RGBA);
190688
- sliceType$1 = $sliceType($Uint8);
190689
- ptrType$6 = $ptrType(screen.DrawOptions);
190690
- ptrType$7 = $ptrType(windowImpl);
190691
- ptrType$8 = $ptrType(screen.NewWindowOptions);
190692
- ptrType$9 = $ptrType(image.YCbCr);
190693
- newWindow = function(screen$1, opts) {
190694
- var {_r, _r$1, _r$2, domEvents, jsNaClDecoder, opts, screen$1, w, $s, $r, $c} = $restore(this, {screen$1, opts});
190695
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190696
- /* */ if (!(opts.Title === "")) { $s = 1; continue; }
190697
- /* */ $s = 2; continue;
190698
- /* if (!(opts.Title === "")) { */ case 1:
190699
- _r = $clone($clone(screen$1.doc, js.Value).Get("head"), js.Value).Call("getElementsByTagName", new sliceType([new $String("title")])); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190700
- _r$1 = $clone(_r, js.Value).Call("item", new sliceType([new $Int(0)])); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
190701
- $r = $clone(_r$1, js.Value).Set("innerHTML", new $String(opts.Title)); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190702
- /* } */ case 2:
190703
- jsNaClDecoder = $clone($clone(js.Global(), js.Value).Get("naclDecoder"), js.Value);
190704
- /* */ if ($clone(jsNaClDecoder, js.Value).IsUndefined()) { $s = 6; continue; }
190705
- /* */ $s = 7; continue;
190706
- /* if ($clone(jsNaClDecoder, js.Value).IsUndefined()) { */ case 6:
190707
- _r$2 = fmt.Errorf("Cannot get naclDecoder object from global scope", sliceType.nil); /* */ $s = 8; case 8: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
190708
- $panic(_r$2);
190709
- /* } */ case 7:
190710
- domEvents = dom.NewDomEvents();
190711
- w = new windowImpl.ptr(screen$1, new sync.Mutex.ptr(0, 0), $clone(jsNaClDecoder, js.Value), domEvents, false);
190712
- $s = -1; return w;
190713
- /* */ } return; } var $f = {$blk: newWindow, $c: true, $r, _r, _r$1, _r$2, domEvents, jsNaClDecoder, opts, screen$1, w, $s};return $f;
190714
- };
190715
- windowImpl.ptr.prototype.Release = function() {
190716
- var {w, $s, $deferred, $r, $c} = $restore(this, {});
190717
- /* */ $s = $s || 0; var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $curGoroutine.deferStack.push($deferred);
190718
- w = this;
190719
- $r = w.mutex.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190720
- $deferred.push([$methodVal(w.mutex, "Unlock"), []]);
190721
- /* */ if (w.released) { $s = 2; continue; }
190722
- /* */ $s = 3; continue;
190723
- /* if (w.released) { */ case 2:
190724
- $s = 4; case 4: return;
190725
- /* } */ case 3:
190726
- $r = w.domEvents.Release(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190727
- w.released = true;
190728
- $s = -1; return;
190729
- /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { var $f = {$blk: windowImpl.ptr.prototype.Release, $c: true, $r, w, $s, $deferred};return $f; } }
190730
- };
190731
- windowImpl.prototype.Release = function() { return this.$val.Release(); };
190732
- windowImpl.ptr.prototype.Publish = function() {
190733
- var w;
190734
- w = this;
190735
- if (w.released) {
190736
- return new screen.PublishResult.ptr(false);
190920
+ if ($clone($clone(ev, js.Value).Get("type"), js.Value).String() === "mouseup") {
190921
+ dir = 2;
190737
190922
  }
190738
- return new screen.PublishResult.ptr(false);
190923
+ return dir;
190739
190924
  };
190740
- windowImpl.prototype.Publish = function() { return this.$val.Publish(); };
190741
- windowImpl.ptr.prototype.Send = function(event) {
190742
- var event, w;
190743
- w = this;
190744
- if (w.released) {
190745
- return;
190925
+ getWheelButton = function(ev) {
190926
+ var deltaX, deltaY, ev;
190927
+ deltaY = $clone($clone(ev, js.Value).Get("deltaY"), js.Value).Int();
190928
+ deltaX = $clone($clone(ev, js.Value).Get("deltaX"), js.Value).Int();
190929
+ if (deltaY > 0) {
190930
+ return -2;
190746
190931
  }
190747
- $panic(new $String("Not implemented"));
190748
- };
190749
- windowImpl.prototype.Send = function(event) { return this.$val.Send(event); };
190750
- windowImpl.ptr.prototype.SendFirst = function(event) {
190751
- var event, w;
190752
- w = this;
190753
- if (w.released) {
190754
- return;
190932
+ if (deltaY < 0) {
190933
+ return -1;
190755
190934
  }
190756
- $panic(new $String("Not implemented"));
190757
- };
190758
- windowImpl.prototype.SendFirst = function(event) { return this.$val.SendFirst(event); };
190759
- windowImpl.ptr.prototype.NextEvent = function() {
190760
- var {_r, ev, w, $s, $r, $c} = $restore(this, {});
190761
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190762
- w = this;
190763
- _r = $recv(w.domEvents.GetEventChan()); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190764
- ev = _r[0];
190765
- $s = -1; return ev;
190766
- /* */ } return; } var $f = {$blk: windowImpl.ptr.prototype.NextEvent, $c: true, $r, _r, ev, w, $s};return $f;
190767
- };
190768
- windowImpl.prototype.NextEvent = function() { return this.$val.NextEvent(); };
190769
- windowImpl.ptr.prototype.Upload = function(dp, src, sr) {
190770
- var {_r, dp, sr, src, w, $s, $r, $c} = $restore(this, {dp, src, sr});
190771
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190772
- w = this;
190773
- if (w.released) {
190774
- $s = -1; return;
190935
+ if (deltaX > 0) {
190936
+ return -4;
190775
190937
  }
190776
- _r = fmt.Errorf("Not implemented, use UploadYCbCr instead", sliceType.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190777
- $panic(_r);
190778
- $s = -1; return;
190779
- /* */ } return; } var $f = {$blk: windowImpl.ptr.prototype.Upload, $c: true, $r, _r, dp, sr, src, w, $s};return $f;
190780
- };
190781
- windowImpl.prototype.Upload = function(dp, src, sr) { return this.$val.Upload(dp, src, sr); };
190782
- windowImpl.ptr.prototype.UploadYCbCr = function(dp, src, sr) {
190783
- var {_arg, _r, _r$1, _r$2, _r$3, _r$4, _ref, _tuple, dp, err, jsSrc, jsSrc$1, renderPromise, sr, src, w, x, x$1, $s, $deferred, $r, $c} = $restore(this, {dp, src, sr});
190784
- /* */ $s = $s || 0; var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $curGoroutine.deferStack.push($deferred);
190785
- w = this;
190786
- $r = w.mutex.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190787
- $deferred.push([$methodVal(w.mutex, "Unlock"), []]);
190788
- /* */ if (w.released) { $s = 2; continue; }
190789
- /* */ $s = 3; continue;
190790
- /* if (w.released) { */ case 2:
190791
- $s = 4; case 4: return;
190792
- /* } */ case 3:
190793
- _ref = src;
190794
- /* */ if ($assertType(_ref, ptrType$3, true)[1]) { $s = 5; continue; }
190795
- /* */ $s = 6; continue;
190796
- /* if ($assertType(_ref, ptrType$3, true)[1]) { */ case 5:
190797
- jsSrc = _ref.$val;
190798
- _r = $clone(w.jsNaClDecoder, js.Value).Call("render", new sliceType([(x = jsSrc.pictureResult, new x.constructor.elem(x))])); /* */ $s = 8; case 8: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190799
- renderPromise = $clone(_r, js.Value);
190800
- _r$1 = jshelper.Await($clone(renderPromise, js.Value)); /* */ $s = 9; case 9: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
190801
- _tuple = _r$1;
190802
- err = _tuple[1];
190803
- /* */ if (!(err === ptrType$4.nil)) { $s = 10; continue; }
190804
- /* */ $s = 11; continue;
190805
- /* if (!(err === ptrType$4.nil)) { */ case 10:
190806
- _r$2 = errs.Errorf("%v", new sliceType([err])); /* */ $s = 12; case 12: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
190807
- _arg = _r$2;
190808
- $r = errs.Print("Failed to render picture", _arg); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190809
- /* } */ case 11:
190810
- _r$3 = $clone(w.jsNaClDecoder, js.Value).Call("recyclePicture", new sliceType([(x$1 = jsSrc.pictureResult, new x$1.constructor.elem(x$1))])); /* */ $s = 14; case 14: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
190811
- _r$3;
190812
- $s = 7; continue;
190813
- /* } else { */ case 6:
190814
- jsSrc$1 = _ref;
190815
- _r$4 = fmt.Errorf("Not implemented, use nacldriver.BufferImpl instead", sliceType.nil); /* */ $s = 15; case 15: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
190816
- $panic(_r$4);
190817
- /* } */ case 7:
190818
- $s = -1; return;
190819
- /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { var $f = {$blk: windowImpl.ptr.prototype.UploadYCbCr, $c: true, $r, _arg, _r, _r$1, _r$2, _r$3, _r$4, _ref, _tuple, dp, err, jsSrc, jsSrc$1, renderPromise, sr, src, w, x, x$1, $s, $deferred};return $f; } }
190820
- };
190821
- windowImpl.prototype.UploadYCbCr = function(dp, src, sr) { return this.$val.UploadYCbCr(dp, src, sr); };
190822
- windowImpl.ptr.prototype.Fill = function(dr, src, op) {
190823
- var dr, op, src, w;
190824
- w = this;
190825
- if (w.released) {
190826
- return;
190938
+ if (deltaX < 0) {
190939
+ return -3;
190827
190940
  }
190828
- $panic(new $String("Not implemented"));
190941
+ return 0;
190829
190942
  };
190830
- windowImpl.prototype.Fill = function(dr, src, op) { return this.$val.Fill(dr, src, op); };
190831
- windowImpl.ptr.prototype.Draw = function(src2dst, src, sr, op, opts) {
190832
- var op, opts, sr, src, src2dst, w;
190833
- w = this;
190834
- if (w.released) {
190835
- return;
190943
+ getMouseButton = function(ev) {
190944
+ var _1, ev;
190945
+ _1 = $clone($clone(ev, js.Value).Get("button"), js.Value).Int();
190946
+ if (_1 === (0)) {
190947
+ return 1;
190948
+ } else if (_1 === (1)) {
190949
+ return 2;
190950
+ } else if (_1 === (2)) {
190951
+ return 3;
190952
+ } else if (_1 === (3)) {
190953
+ return 8;
190954
+ } else if (_1 === (4)) {
190955
+ return 9;
190956
+ } else {
190957
+ return 0;
190836
190958
  }
190837
- $panic(new $String("Not implemented"));
190838
190959
  };
190839
- windowImpl.prototype.Draw = function(src2dst, src, sr, op, opts) { return this.$val.Draw(src2dst, src, sr, op, opts); };
190840
- windowImpl.ptr.prototype.DrawUniform = function(src2dst, src, sr, op, opts) {
190841
- var op, opts, sr, src, src2dst, w;
190842
- w = this;
190843
- if (w.released) {
190844
- return;
190960
+ getEventModifiers = function(ev) {
190961
+ var ev, mod;
190962
+ mod = 0;
190963
+ if ($clone($clone(ev, js.Value).Get("altKey"), js.Value).Bool()) {
190964
+ mod = (mod | (4)) >>> 0;
190845
190965
  }
190846
- $panic(new $String("Not implemented"));
190847
- };
190848
- windowImpl.prototype.DrawUniform = function(src2dst, src, sr, op, opts) { return this.$val.DrawUniform(src2dst, src, sr, op, opts); };
190849
- windowImpl.ptr.prototype.Copy = function(dp, src, sr, op, opts) {
190850
- var dp, op, opts, sr, src, w;
190851
- w = this;
190852
- if (w.released) {
190853
- return;
190966
+ if ($clone($clone(ev, js.Value).Get("ctrlKey"), js.Value).Bool()) {
190967
+ mod = (mod | (2)) >>> 0;
190854
190968
  }
190855
- $panic(new $String("Not implemented"));
190856
- };
190857
- windowImpl.prototype.Copy = function(dp, src, sr, op, opts) { return this.$val.Copy(dp, src, sr, op, opts); };
190858
- windowImpl.ptr.prototype.Scale = function(dr, src, sr, op, opts) {
190859
- var dr, op, opts, sr, src, w;
190860
- w = this;
190861
- if (w.released) {
190862
- return;
190969
+ if ($clone($clone(ev, js.Value).Get("shiftKey"), js.Value).Bool()) {
190970
+ mod = (mod | (1)) >>> 0;
190863
190971
  }
190864
- $panic(new $String("Not implemented"));
190865
- };
190866
- windowImpl.prototype.Scale = function(dr, src, sr, op, opts) { return this.$val.Scale(dr, src, sr, op, opts); };
190867
- newScreenImpl = function() {
190868
- var s;
190869
- s = new screenImpl.ptr($clone($clone(js.Global(), js.Value).Get("document"), js.Value));
190870
- return [s, $ifaceNil];
190871
- };
190872
- screenImpl.ptr.prototype.NewBuffer = function(size) {
190873
- var buffer, s, size;
190874
- s = this;
190875
- buffer = newBuffer(s, $clone(size, image.Point));
190876
- return [buffer, $ifaceNil];
190877
- };
190878
- screenImpl.prototype.NewBuffer = function(size) { return this.$val.NewBuffer(size); };
190879
- screenImpl.ptr.prototype.NewTexture = function(size) {
190880
- var {$24r, _r, s, size, $s, $r, $c} = $restore(this, {size});
190881
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190882
- s = this;
190883
- _r = fmt.Errorf("Texture not implemented", sliceType.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190884
- $24r = [$ifaceNil, _r];
190885
- $s = 2; case 2: return $24r;
190886
- /* */ } return; } var $f = {$blk: screenImpl.ptr.prototype.NewTexture, $c: true, $r, $24r, _r, s, size, $s};return $f;
190972
+ if ($clone($clone(ev, js.Value).Get("metaKey"), js.Value).Bool()) {
190973
+ mod = (mod | (8)) >>> 0;
190974
+ }
190975
+ return mod;
190887
190976
  };
190888
- screenImpl.prototype.NewTexture = function(size) { return this.$val.NewTexture(size); };
190889
- screenImpl.ptr.prototype.NewWindow = function(opts) {
190890
- var {_r, opts, s, window, $s, $r, $c} = $restore(this, {opts});
190977
+ DomEvents.ptr.prototype.bindFocusEvents = function() {
190978
+ var {_r, _r$1, d, onFocus, $s, $r, $c} = $restore(this, {});
190891
190979
  /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190892
- s = this;
190893
- _r = newWindow(s, opts); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190894
- window = _r;
190895
- $s = -1; return [window, $ifaceNil];
190896
- /* */ } return; } var $f = {$blk: screenImpl.ptr.prototype.NewWindow, $c: true, $r, _r, opts, s, window, $s};return $f;
190980
+ d = [d];
190981
+ onFocus = [onFocus];
190982
+ d[0] = this;
190983
+ onFocus[0] = $clone(js.FuncOf((function(d, onFocus) { return function $b(this$1, args) {
190984
+ var {args, this$1, x, $s, $r, $c} = $restore(this, {this$1, args});
190985
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190986
+ $r = $send(d[0].eventChan, (x = new focus.Event.ptr(isFocusIn($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value))), new x.constructor.elem(x))); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190987
+ $s = -1; return $ifaceNil;
190988
+ /* */ } return; } var $f = {$blk: $b, $c: true, $r, args, this$1, x, $s};return $f;
190989
+ }; })(d, onFocus)), js.Func);
190990
+ _r = $clone(js.Global(), js.Value).Call("addEventListener", new sliceType([new $String("focus"), new onFocus[0].constructor.elem(onFocus[0])])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190991
+ _r;
190992
+ _r$1 = $clone(js.Global(), js.Value).Call("addEventListener", new sliceType([new $String("blur"), new onFocus[0].constructor.elem(onFocus[0])])); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
190993
+ _r$1;
190994
+ d[0].releases = $append(d[0].releases, (function(d, onFocus) { return function $b() {
190995
+ var {_r$2, _r$3, $s, $r, $c} = $restore(this, {});
190996
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190997
+ _r$2 = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType([new $String("focus"), new onFocus[0].constructor.elem(onFocus[0])])); /* */ $s = 1; case 1: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
190998
+ _r$2;
190999
+ _r$3 = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType([new $String("blur"), new onFocus[0].constructor.elem(onFocus[0])])); /* */ $s = 2; case 2: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
191000
+ _r$3;
191001
+ $clone(onFocus[0], js.Func).Release();
191002
+ $s = -1; return;
191003
+ /* */ } return; } var $f = {$blk: $b, $c: true, $r, _r$2, _r$3, $s};return $f;
191004
+ }; })(d, onFocus));
191005
+ $s = -1; return;
191006
+ /* */ } return; } var $f = {$blk: DomEvents.ptr.prototype.bindFocusEvents, $c: true, $r, _r, _r$1, d, onFocus, $s};return $f;
190897
191007
  };
190898
- screenImpl.prototype.NewWindow = function(opts) { return this.$val.NewWindow(opts); };
190899
- main = function(f) {
190900
- var {_tuple, err, f, retErr, s, $s, $r, $c} = $restore(this, {f});
190901
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190902
- retErr = $ifaceNil;
190903
- _tuple = newScreenImpl();
190904
- s = _tuple[0];
190905
- err = _tuple[1];
190906
- if (!($interfaceIsEqual(err, $ifaceNil))) {
190907
- retErr = err;
190908
- $s = -1; return retErr;
191008
+ DomEvents.prototype.bindFocusEvents = function() { return this.$val.bindFocusEvents(); };
191009
+ isFocusIn = function(ev) {
191010
+ var ev;
191011
+ if ($clone($clone(ev, js.Value).Get("type"), js.Value).String() === "focus") {
191012
+ return true;
190909
191013
  }
190910
- $r = f(s); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190911
- retErr = $ifaceNil;
190912
- $s = -1; return retErr;
190913
- /* */ } return; } var $f = {$blk: main, $c: true, $r, _tuple, err, f, retErr, s, $s};return $f;
190914
- };
190915
- newBuffer = function(screen$1, size) {
190916
- var b, screen$1, size;
190917
- b = new BufferImpl.ptr(ptrType$4.nil, screen$1, $clone(size, image.Point));
190918
- return b;
190919
- };
190920
- BufferImpl.ptr.prototype.Size = function() {
190921
- var b;
190922
- b = this;
190923
- return b.size;
190924
- };
190925
- BufferImpl.prototype.Size = function() { return this.$val.Size(); };
190926
- BufferImpl.ptr.prototype.Bounds = function() {
190927
- var b;
190928
- b = this;
190929
- return new image.Rectangle.ptr(new image.Point.ptr(0, 0), $clone(b.size, image.Point));
191014
+ return false;
190930
191015
  };
190931
- BufferImpl.prototype.Bounds = function() { return this.$val.Bounds(); };
190932
- BufferImpl.ptr.prototype.RGBA = function() {
190933
- var {_r, b, $s, $r, $c} = $restore(this, {});
191016
+ DomEvents.ptr.prototype.bindKeyEvents = function() {
191017
+ var {_r, _r$1, d, onKey, $s, $r, $c} = $restore(this, {});
190934
191018
  /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
190935
- b = this;
190936
- _r = fmt.Errorf("Not implemented RGBA(), use PictureResult() instead", sliceType.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
190937
- $panic(_r);
190938
- $s = -1; return ptrType$5.nil;
190939
- /* */ } return; } var $f = {$blk: BufferImpl.ptr.prototype.RGBA, $c: true, $r, _r, b, $s};return $f;
190940
- };
190941
- BufferImpl.prototype.RGBA = function() { return this.$val.RGBA(); };
190942
- BufferImpl.ptr.prototype.YCbCr = function() {
190943
- var b;
190944
- b = this;
190945
- return new image.YCbCr.ptr(sliceType$1.nil, sliceType$1.nil, sliceType$1.nil, 0, 0, 0, $clone(b.Bounds(), image.Rectangle));
191019
+ d = [d];
191020
+ onKey = [onKey];
191021
+ d[0] = this;
191022
+ onKey[0] = $clone(js.FuncOf((function(d, onKey) { return function $b(this$1, args) {
191023
+ var {_r, args, this$1, x, $s, $r, $c} = $restore(this, {this$1, args});
191024
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
191025
+ _r = $clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value).Call("preventDefault", sliceType.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
191026
+ _r;
191027
+ $r = $send(d[0].eventChan, (x = new key.Event.ptr(getKeyRune($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value)), getKeyCode($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value)), getEventModifiers($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value)), getKeyDirection($clone((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), js.Value))), new x.constructor.elem(x))); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191028
+ $s = -1; return $ifaceNil;
191029
+ /* */ } return; } var $f = {$blk: $b, $c: true, $r, _r, args, this$1, x, $s};return $f;
191030
+ }; })(d, onKey)), js.Func);
191031
+ _r = $clone(js.Global(), js.Value).Call("addEventListener", new sliceType([new $String("keydown"), new onKey[0].constructor.elem(onKey[0])])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
191032
+ _r;
191033
+ _r$1 = $clone(js.Global(), js.Value).Call("addEventListener", new sliceType([new $String("keyup"), new onKey[0].constructor.elem(onKey[0])])); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
191034
+ _r$1;
191035
+ d[0].releases = $append(d[0].releases, (function(d, onKey) { return function $b() {
191036
+ var {_r$2, _r$3, $s, $r, $c} = $restore(this, {});
191037
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
191038
+ _r$2 = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType([new $String("keydown"), new onKey[0].constructor.elem(onKey[0])])); /* */ $s = 1; case 1: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
191039
+ _r$2;
191040
+ _r$3 = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType([new $String("keyup"), new onKey[0].constructor.elem(onKey[0])])); /* */ $s = 2; case 2: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
191041
+ _r$3;
191042
+ $clone(onKey[0], js.Func).Release();
191043
+ $s = -1; return;
191044
+ /* */ } return; } var $f = {$blk: $b, $c: true, $r, _r$2, _r$3, $s};return $f;
191045
+ }; })(d, onKey));
191046
+ $s = -1; return;
191047
+ /* */ } return; } var $f = {$blk: DomEvents.ptr.prototype.bindKeyEvents, $c: true, $r, _r, _r$1, d, onKey, $s};return $f;
190946
191048
  };
190947
- BufferImpl.prototype.YCbCr = function() { return this.$val.YCbCr(); };
190948
- BufferImpl.ptr.prototype.GetPictureResult = function() {
190949
- var b;
190950
- b = this;
190951
- return b.pictureResult;
191049
+ DomEvents.prototype.bindKeyEvents = function() { return this.$val.bindKeyEvents(); };
191050
+ getKeyRune = function(ev) {
191051
+ var ev, key$1;
191052
+ key$1 = (new sliceType$2($stringToRunes($clone($clone(ev, js.Value).Get("key"), js.Value).String())));
191053
+ if (key$1.$length === 1) {
191054
+ return (0 >= key$1.$length ? ($throwRuntimeError("index out of range"), undefined) : key$1.$array[key$1.$offset + 0]);
191055
+ }
191056
+ return -1;
190952
191057
  };
190953
- BufferImpl.prototype.GetPictureResult = function() { return this.$val.GetPictureResult(); };
190954
- BufferImpl.ptr.prototype.SetPictureResult = function(pictureResult) {
190955
- var b, pictureResult;
190956
- b = this;
190957
- b.pictureResult = pictureResult;
191058
+ getKeyDirection = function(ev) {
191059
+ var dir, ev;
191060
+ dir = 0;
191061
+ dir = 0;
191062
+ if ($clone($clone(ev, js.Value).Get("type"), js.Value).String() === "keydown") {
191063
+ dir = 1;
191064
+ }
191065
+ if ($clone($clone(ev, js.Value).Get("type"), js.Value).String() === "keyup") {
191066
+ dir = 2;
191067
+ }
191068
+ return dir;
190958
191069
  };
190959
- BufferImpl.prototype.SetPictureResult = function(pictureResult) { return this.$val.SetPictureResult(pictureResult); };
190960
- BufferImpl.ptr.prototype.Release = function() {
190961
- var b;
190962
- b = this;
191070
+ getKeyCode = function(ev) {
191071
+ var _entry, _entry$1, _tuple, _tuple$1, code, code$1, domCode, domKey, ev, exists, exists$1;
191072
+ domCode = $clone($clone(ev, js.Value).Get("code"), js.Value).String();
191073
+ _tuple = (_entry = $mapIndex(keyCodesMap,$String.keyFor(domCode)), _entry !== undefined ? [_entry.v, true] : [0, false]);
191074
+ code = _tuple[0];
191075
+ exists = _tuple[1];
191076
+ if (exists) {
191077
+ return code;
191078
+ }
191079
+ domKey = $clone($clone(ev, js.Value).Get("key"), js.Value).String();
191080
+ _tuple$1 = (_entry$1 = $mapIndex(keyCodesByKeyMap,$String.keyFor(domKey)), _entry$1 !== undefined ? [_entry$1.v, true] : [0, false]);
191081
+ code$1 = _tuple$1[0];
191082
+ exists$1 = _tuple$1[1];
191083
+ if (exists$1) {
191084
+ return code$1;
191085
+ }
191086
+ return 0;
190963
191087
  };
190964
- BufferImpl.prototype.Release = function() { return this.$val.Release(); };
190965
- ptrType$7.methods = [{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$6], [], false)}, {prop: "DrawUniform", name: "DrawUniform", pkg: "", typ: $funcType([f64.Aff3, color.Color, image.Rectangle, draw.Op, ptrType$6], [], false)}, {prop: "Copy", name: "Copy", pkg: "", typ: $funcType([image.Point, screen.Texture, image.Rectangle, draw.Op, ptrType$6], [], false)}, {prop: "Scale", name: "Scale", pkg: "", typ: $funcType([image.Rectangle, screen.Texture, image.Rectangle, draw.Op, ptrType$6], [], false)}];
190966
- 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$8], [screen.Window, $error], false)}];
190967
- ptrType$3.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$5], false)}, {prop: "YCbCr", name: "YCbCr", pkg: "", typ: $funcType([], [ptrType$9], false)}, {prop: "GetPictureResult", name: "GetPictureResult", pkg: "", typ: $funcType([], [ptrType$4], false)}, {prop: "SetPictureResult", name: "SetPictureResult", pkg: "", typ: $funcType([ptrType$4], [], false)}, {prop: "Release", name: "Release", pkg: "", typ: $funcType([], [], false)}];
190968
- windowImpl.init("github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver", [{prop: "screen", name: "screen", embedded: false, exported: false, typ: ptrType, tag: ""}, {prop: "mutex", name: "mutex", embedded: false, exported: false, typ: ptrType$1, tag: ""}, {prop: "jsNaClDecoder", name: "jsNaClDecoder", embedded: false, exported: false, typ: js.Value, tag: ""}, {prop: "domEvents", name: "domEvents", embedded: false, exported: false, typ: ptrType$2, tag: ""}, {prop: "released", name: "released", embedded: false, exported: false, typ: $Bool, tag: ""}]);
190969
- screenImpl.init("github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver", [{prop: "doc", name: "doc", embedded: false, exported: false, typ: js.Value, tag: ""}]);
190970
- BufferImpl.init("github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver", [{prop: "pictureResult", name: "pictureResult", embedded: false, exported: false, typ: ptrType$4, tag: ""}, {prop: "screen", name: "screen", embedded: false, exported: false, typ: ptrType, tag: ""}, {prop: "size", name: "size", embedded: false, exported: false, typ: image.Point, tag: ""}]);
191088
+ ptrType.methods = [{prop: "GetEventChan", name: "GetEventChan", pkg: "", typ: $funcType([], [chanType], false)}, {prop: "Release", name: "Release", pkg: "", typ: $funcType([], [], false)}, {prop: "BindEvents", name: "BindEvents", pkg: "", typ: $funcType([], [], false)}, {prop: "bindSizeEvents", name: "bindSizeEvents", pkg: "github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver/dom", typ: $funcType([], [], false)}, {prop: "emitSizeEvent", name: "emitSizeEvent", pkg: "github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver/dom", typ: $funcType([], [], false)}, {prop: "bindMouseEvents", name: "bindMouseEvents", pkg: "github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver/dom", typ: $funcType([], [], false)}, {prop: "bindFocusEvents", name: "bindFocusEvents", pkg: "github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver/dom", typ: $funcType([], [], false)}, {prop: "bindKeyEvents", name: "bindKeyEvents", pkg: "github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver/dom", typ: $funcType([], [], false)}];
191089
+ DomEvents.init("github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver/dom", [{prop: "eventChan", name: "eventChan", embedded: false, exported: false, typ: chanType, tag: ""}, {prop: "releases", name: "releases", embedded: false, exported: false, typ: sliceType$1, tag: ""}]);
190971
191090
  $init = function() {
190972
191091
  $pkg.$init = function() {};
190973
191092
  /* */ 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:
190974
- $r = fmt.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190975
- $r = errs.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190976
- $r = jshelper.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190977
- $r = dom.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190978
- $r = screen.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190979
- $r = f64.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190980
- $r = image.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190981
- $r = color.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190982
- $r = draw.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190983
- $r = sync.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
190984
- $r = js.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191093
+ $r = focus.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191094
+ $r = key.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191095
+ $r = mouse.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191096
+ $r = size.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191097
+ $r = geom.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191098
+ $r = math.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191099
+ $r = strings.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191100
+ $r = js.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191101
+ 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 }]);
191102
+ keyCodesByKeyMap = $makeMap($String.keyFor, [{ k: "AudioVolumeMute", v: 127 }, { k: "AudioVolumeUp", v: 128 }, { k: "AudioVolumeDown", v: 129 }]);
190985
191103
  /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
190986
191104
  };
190987
191105
  $pkg.$init = $init;
190988
191106
  return $pkg;
190989
191107
  })();
190990
- $packages["github.com/supraio/client-daemon/pkg/x264/nacldecoder"] = (function() {
190991
- var $pkg = {}, $init, errs, jshelper, general, nacldriver, js;
191108
+ $packages["github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver"] = (function() {
191109
+ var $pkg = {}, $init, fmt, errs, jshelper, dom, screen, f64, image, color, draw, log, sync, js, windowImpl, screenImpl, BufferImpl, sliceType, ptrType, ptrType$1, funcType, arrayType, ptrType$2, ptrType$3, ptrType$4, sliceType$1, ptrType$5, ptrType$6, ptrType$7, ptrType$8, ptrType$9, newWindow, newScreenImpl, main, newBuffer;
191110
+ fmt = $packages["fmt"];
190992
191111
  errs = $packages["github.com/supraio/client-daemon/pkg/errs"];
190993
191112
  jshelper = $packages["github.com/supraio/client-daemon/pkg/jshelper"];
190994
- general = $packages["github.com/supraio/client-daemon/pkg/x264/general"];
190995
- nacldriver = $packages["github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver"];
190996
- js = $packages["syscall/js"];
190997
- $init = function() {
190998
- $pkg.$init = function() {};
190999
- /* */ 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:
191000
- $r = errs.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191001
- $r = jshelper.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191002
- $r = general.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191003
- $r = nacldriver.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191004
- $r = js.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191005
- /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
191006
- };
191007
- $pkg.$init = $init;
191008
- return $pkg;
191009
- })();
191010
- $packages["golang.org/x/exp/shiny/driver/canvasdriver"] = (function() {
191011
- var $pkg = {}, $init, fmt, dom, errscreen, screen, f64, image, color, draw, sync, js, windowImpl, screenImpl, YCbCrJS, BufferImpl, sliceType, ptrType, ptrType$1, funcType, arrayType, ptrType$2, ptrType$3, sliceType$1, ptrType$4, ptrType$5, ptrType$6, ptrType$7, ptrType$8, ptrType$9, ptrType$10, newWindow, main, newScreenImpl, newBuffer;
191012
- fmt = $packages["fmt"];
191013
- dom = $packages["golang.org/x/exp/shiny/driver/internal/dom"];
191014
- errscreen = $packages["golang.org/x/exp/shiny/driver/internal/errscreen"];
191113
+ dom = $packages["github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver/dom"];
191015
191114
  screen = $packages["golang.org/x/exp/shiny/screen"];
191016
191115
  f64 = $packages["golang.org/x/image/math/f64"];
191017
191116
  image = $packages["image"];
191018
191117
  color = $packages["image/color"];
191019
191118
  draw = $packages["image/draw"];
191119
+ log = $packages["log"];
191020
191120
  sync = $packages["sync"];
191021
191121
  js = $packages["syscall/js"];
191022
- 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_) {
191023
- this.$val = this;
191024
- if (arguments.length === 0) {
191025
- this.screen = ptrType.nil;
191026
- this.mutex = ptrType$1.nil;
191027
- this.canvasEl = new js.Value.ptr(null, false, arrayType.zero());
191028
- this.ctx2d = new js.Value.ptr(null, false, arrayType.zero());
191029
- this.released = false;
191030
- this.domEvents = ptrType$2.nil;
191031
- this.resizeCallback = new js.Func.ptr(new js.Value.ptr(null, false, arrayType.zero()));
191032
- return;
191033
- }
191034
- this.screen = screen_;
191035
- this.mutex = mutex_;
191036
- this.canvasEl = canvasEl_;
191037
- this.ctx2d = ctx2d_;
191038
- this.released = released_;
191039
- this.domEvents = domEvents_;
191040
- this.resizeCallback = resizeCallback_;
191041
- });
191042
- screenImpl = $pkg.screenImpl = $newType(0, $kindStruct, "canvasdriver.screenImpl", true, "golang.org/x/exp/shiny/driver/canvasdriver", false, function(doc_) {
191043
- this.$val = this;
191044
- if (arguments.length === 0) {
191045
- this.doc = new js.Value.ptr(null, false, arrayType.zero());
191046
- return;
191047
- }
191048
- this.doc = doc_;
191049
- });
191050
- YCbCrJS = $pkg.YCbCrJS = $newType(0, $kindStruct, "canvasdriver.YCbCrJS", true, "golang.org/x/exp/shiny/driver/canvasdriver", true, function(CanvasImageSource_) {
191051
- this.$val = this;
191052
- if (arguments.length === 0) {
191053
- this.CanvasImageSource = ptrType$5.nil;
191054
- return;
191055
- }
191056
- this.CanvasImageSource = CanvasImageSource_;
191057
- });
191058
- BufferImpl = $pkg.BufferImpl = $newType(0, $kindStruct, "canvasdriver.BufferImpl", true, "golang.org/x/exp/shiny/driver/canvasdriver", true, function(screen_, size_, mutex_, released_, rgba_, ycbcr_, ycbcrJS_) {
191122
+ windowImpl = $pkg.windowImpl = $newType(0, $kindStruct, "nacldriver.windowImpl", true, "github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver", false, function(screen_, mutex_, jsNaClDecoder_, domEvents_, released_) {
191059
191123
  this.$val = this;
191060
- if (arguments.length === 0) {
191061
- this.screen = ptrType.nil;
191062
- this.size = new image.Point.ptr(0, 0);
191063
- this.mutex = ptrType$1.nil;
191064
- this.released = false;
191065
- this.rgba = new image.RGBA.ptr(sliceType$1.nil, 0, new image.Rectangle.ptr(new image.Point.ptr(0, 0), new image.Point.ptr(0, 0)));
191066
- this.ycbcr = new image.YCbCr.ptr(sliceType$1.nil, sliceType$1.nil, sliceType$1.nil, 0, 0, 0, new image.Rectangle.ptr(new image.Point.ptr(0, 0), new image.Point.ptr(0, 0)));
191067
- this.ycbcrJS = ptrType$4.nil;
191068
- return;
191069
- }
191070
- this.screen = screen_;
191071
- this.size = size_;
191072
- this.mutex = mutex_;
191073
- this.released = released_;
191074
- this.rgba = rgba_;
191075
- this.ycbcr = ycbcr_;
191076
- this.ycbcrJS = ycbcrJS_;
191077
- });
191078
- sliceType = $sliceType($emptyInterface);
191079
- ptrType = $ptrType(screenImpl);
191080
- ptrType$1 = $ptrType(sync.Mutex);
191081
- funcType = $funcType([], [], false);
191082
- arrayType = $arrayType(funcType, 0);
191083
- ptrType$2 = $ptrType(dom.DomEvents);
191084
- ptrType$3 = $ptrType(BufferImpl);
191085
- sliceType$1 = $sliceType($Uint8);
191086
- ptrType$4 = $ptrType(YCbCrJS);
191087
- ptrType$5 = $ptrType(js.Value);
191088
- ptrType$6 = $ptrType(screen.DrawOptions);
191089
- ptrType$7 = $ptrType(windowImpl);
191090
- ptrType$8 = $ptrType(screen.NewWindowOptions);
191091
- ptrType$9 = $ptrType(image.RGBA);
191092
- ptrType$10 = $ptrType(image.YCbCr);
191093
- newWindow = function(screen$1, opts) {
191094
- 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, $c} = $restore(this, {screen$1, opts});
191095
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
191096
- adaptCanvas = [adaptCanvas];
191097
- canvasEl = [canvasEl];
191098
- _r = $clone(screen$1.doc, js.Value).Call("createElement", new sliceType([new $String("canvas")])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
191099
- canvasEl[0] = $clone(_r, js.Value);
191100
- _r$1 = $clone($clone(screen$1.doc, js.Value).Get("body"), js.Value).Call("appendChild", new sliceType([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; }
191101
- _r$1;
191102
- adaptCanvas[0] = (function(adaptCanvas, canvasEl) { return function() {
191103
- var height, scale, width;
191104
- scale = dom.GetBrowserZoomRatio();
191105
- width = (((dom.GetScreenWidth()) / scale >> 0));
191106
- if (!(($clone($clone(canvasEl[0], js.Value).Get("width"), js.Value).Int() === width))) {
191107
- $clone(canvasEl[0], js.Value).Set("width", new $Int(width));
191108
- }
191109
- height = (((dom.GetScreenHeight()) / scale >> 0));
191110
- if (!(($clone($clone(canvasEl[0], js.Value).Get("height"), js.Value).Int() === height))) {
191111
- $clone(canvasEl[0], js.Value).Set("height", new $Int(height));
191112
- }
191113
- }; })(adaptCanvas, canvasEl);
191114
- $r = adaptCanvas[0](); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191115
- resizeCallback = $clone(js.FuncOf((function(adaptCanvas, canvasEl) { return function $b(this$1, args) {
191116
- var {args, this$1, $s, $r, $c} = $restore(this, {this$1, args});
191117
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
191118
- $r = adaptCanvas[0](); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191119
- $s = -1; return $ifaceNil;
191120
- /* */ } return; } var $f = {$blk: $b, $c: true, $r, args, this$1, $s};return $f;
191121
- }; })(adaptCanvas, canvasEl)), js.Func);
191122
- _r$2 = $clone(js.Global(), js.Value).Call("addEventListener", new sliceType([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; }
191123
- _r$2;
191124
- /* */ if (!((opts.Width === 0))) { $s = 5; continue; }
191125
- /* */ $s = 6; continue;
191126
- /* if (!((opts.Width === 0))) { */ case 5:
191127
- $r = dom.SetWindowWidth(opts.Width); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191128
- /* } */ case 6:
191129
- /* */ if (!((opts.Height === 0))) { $s = 8; continue; }
191130
- /* */ $s = 9; continue;
191131
- /* if (!((opts.Height === 0))) { */ case 8:
191132
- $r = dom.SetWindowHeight(opts.Height); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191133
- /* } */ case 9:
191134
- /* */ if (!(opts.Title === "")) { $s = 11; continue; }
191135
- /* */ $s = 12; continue;
191136
- /* if (!(opts.Title === "")) { */ case 11:
191137
- _r$3 = $clone($clone(screen$1.doc, js.Value).Get("head"), js.Value).Call("getElementsByTagName", new sliceType([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; }
191138
- _r$4 = $clone(_r$3, js.Value).Call("item", new sliceType([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; }
191139
- $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; }
191140
- /* } */ case 12:
191141
- _r$5 = $clone(canvasEl[0], js.Value).Call("getContext", new sliceType([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; }
191142
- ctx2d = $clone(_r$5, js.Value);
191143
- /* */ if ($clone(ctx2d, js.Value).IsUndefined() || $clone(ctx2d, js.Value).IsNull()) { $s = 17; continue; }
191144
- /* */ $s = 18; continue;
191145
- /* if ($clone(ctx2d, js.Value).IsUndefined() || $clone(ctx2d, js.Value).IsNull()) { */ case 17:
191146
- _r$6 = fmt.Errorf("Cannot get 2d context of canvas", sliceType.nil); /* */ $s = 19; case 19: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
191147
- $panic(_r$6);
191148
- /* } */ case 18:
191124
+ if (arguments.length === 0) {
191125
+ this.screen = ptrType.nil;
191126
+ this.mutex = ptrType$1.nil;
191127
+ this.jsNaClDecoder = new js.Value.ptr(null, false, arrayType.zero());
191128
+ this.domEvents = ptrType$2.nil;
191129
+ this.released = false;
191130
+ return;
191131
+ }
191132
+ this.screen = screen_;
191133
+ this.mutex = mutex_;
191134
+ this.jsNaClDecoder = jsNaClDecoder_;
191135
+ this.domEvents = domEvents_;
191136
+ this.released = released_;
191137
+ });
191138
+ screenImpl = $pkg.screenImpl = $newType(0, $kindStruct, "nacldriver.screenImpl", true, "github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver", false, function(doc_) {
191139
+ this.$val = this;
191140
+ if (arguments.length === 0) {
191141
+ this.doc = new js.Value.ptr(null, false, arrayType.zero());
191142
+ return;
191143
+ }
191144
+ this.doc = doc_;
191145
+ });
191146
+ BufferImpl = $pkg.BufferImpl = $newType(0, $kindStruct, "nacldriver.BufferImpl", true, "github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver", true, function(pictureResult_, screen_, size_) {
191147
+ this.$val = this;
191148
+ if (arguments.length === 0) {
191149
+ this.pictureResult = ptrType$3.nil;
191150
+ this.screen = ptrType.nil;
191151
+ this.size = new image.Point.ptr(0, 0);
191152
+ return;
191153
+ }
191154
+ this.pictureResult = pictureResult_;
191155
+ this.screen = screen_;
191156
+ this.size = size_;
191157
+ });
191158
+ sliceType = $sliceType($emptyInterface);
191159
+ ptrType = $ptrType(screenImpl);
191160
+ ptrType$1 = $ptrType(sync.Mutex);
191161
+ funcType = $funcType([], [], false);
191162
+ arrayType = $arrayType(funcType, 0);
191163
+ ptrType$2 = $ptrType(dom.DomEvents);
191164
+ ptrType$3 = $ptrType(js.Value);
191165
+ ptrType$4 = $ptrType(image.RGBA);
191166
+ sliceType$1 = $sliceType($Uint8);
191167
+ ptrType$5 = $ptrType(screen.DrawOptions);
191168
+ ptrType$6 = $ptrType(windowImpl);
191169
+ ptrType$7 = $ptrType(screen.NewWindowOptions);
191170
+ ptrType$8 = $ptrType(image.YCbCr);
191171
+ ptrType$9 = $ptrType(BufferImpl);
191172
+ newWindow = function(screen$1, opts) {
191173
+ var {_r, _r$1, _r$2, domEvents, jsNaClDecoder, opts, screen$1, w, $s, $r, $c} = $restore(this, {screen$1, opts});
191174
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
191175
+ /* */ if (!(opts.Title === "")) { $s = 1; continue; }
191176
+ /* */ $s = 2; continue;
191177
+ /* if (!(opts.Title === "")) { */ case 1:
191178
+ _r = $clone($clone(screen$1.doc, js.Value).Get("head"), js.Value).Call("getElementsByTagName", new sliceType([new $String("title")])); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
191179
+ _r$1 = $clone(_r, js.Value).Call("item", new sliceType([new $Int(0)])); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
191180
+ $r = $clone(_r$1, js.Value).Set("innerHTML", new $String(opts.Title)); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191181
+ /* } */ case 2:
191182
+ jsNaClDecoder = $clone($clone(js.Global(), js.Value).Get("naclDecoder"), js.Value);
191183
+ /* */ if ($clone(jsNaClDecoder, js.Value).IsUndefined()) { $s = 6; continue; }
191184
+ /* */ $s = 7; continue;
191185
+ /* if ($clone(jsNaClDecoder, js.Value).IsUndefined()) { */ case 6:
191186
+ _r$2 = fmt.Errorf("Cannot get naclDecoder object from global scope", sliceType.nil); /* */ $s = 8; case 8: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
191187
+ $panic(_r$2);
191188
+ /* } */ case 7:
191149
191189
  domEvents = dom.NewDomEvents();
191150
- w = new windowImpl.ptr(screen$1, ptrType$1.nil, $clone(canvasEl[0], js.Value), $clone(ctx2d, js.Value), false, domEvents, $clone(resizeCallback, js.Func));
191151
- $r = domEvents.BindEvents(); /* */ $s = 20; case 20: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191190
+ w = new windowImpl.ptr(screen$1, new sync.Mutex.ptr(0, 0), $clone(jsNaClDecoder, js.Value), domEvents, false);
191152
191191
  $s = -1; return w;
191153
- /* */ } return; } var $f = {$blk: newWindow, $c: true, $r, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, adaptCanvas, canvasEl, ctx2d, domEvents, opts, resizeCallback, screen$1, w, $s};return $f;
191192
+ /* */ } return; } var $f = {$blk: newWindow, $c: true, $r, _r, _r$1, _r$2, domEvents, jsNaClDecoder, opts, screen$1, w, $s};return $f;
191154
191193
  };
191155
191194
  windowImpl.ptr.prototype.Release = function() {
191156
- var {_r, _r$1, w, x, $s, $deferred, $r, $c} = $restore(this, {});
191195
+ var {w, $s, $deferred, $r, $c} = $restore(this, {});
191157
191196
  /* */ $s = $s || 0; var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $curGoroutine.deferStack.push($deferred);
191158
191197
  w = this;
191159
191198
  $r = w.mutex.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
@@ -191163,15 +191202,10 @@ $packages["golang.org/x/exp/shiny/driver/canvasdriver"] = (function() {
191163
191202
  /* if (w.released) { */ case 2:
191164
191203
  $s = 4; case 4: return;
191165
191204
  /* } */ case 3:
191166
- _r = $clone(js.Global(), js.Value).Call("removeEventListener", new sliceType([new $String("resize"), (x = w.resizeCallback, new x.constructor.elem(x))])); /* */ $s = 5; case 5: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
191167
- _r;
191168
- $clone(w.resizeCallback, js.Func).Release();
191169
- _r$1 = $clone(w.canvasEl, js.Value).Call("remove", sliceType.nil); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
191170
- _r$1;
191171
- $r = w.domEvents.Release(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191205
+ $r = w.domEvents.Release(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191172
191206
  w.released = true;
191173
191207
  $s = -1; return;
191174
- /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { var $f = {$blk: windowImpl.ptr.prototype.Release, $c: true, $r, _r, _r$1, w, x, $s, $deferred};return $f; } }
191208
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { var $f = {$blk: windowImpl.ptr.prototype.Release, $c: true, $r, w, $s, $deferred};return $f; } }
191175
191209
  };
191176
191210
  windowImpl.prototype.Release = function() { return this.$val.Release(); };
191177
191211
  windowImpl.ptr.prototype.Publish = function() {
@@ -191225,25 +191259,48 @@ $packages["golang.org/x/exp/shiny/driver/canvasdriver"] = (function() {
191225
191259
  };
191226
191260
  windowImpl.prototype.Upload = function(dp, src, sr) { return this.$val.Upload(dp, src, sr); };
191227
191261
  windowImpl.ptr.prototype.UploadYCbCr = function(dp, src, sr) {
191228
- var {_r, _r$1, _ref, dp, jsSrc, sr, src, w, x, $s, $r, $c} = $restore(this, {dp, src, sr});
191229
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
191262
+ var {_arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _tuple, _tuple$1, dp, err, picturePromise, pictureResult, renderPromise, renderResult, sr, src, w, x, x$1, $s, $deferred, $r, $c} = $restore(this, {dp, src, sr});
191263
+ /* */ $s = $s || 0; var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $curGoroutine.deferStack.push($deferred);
191230
191264
  w = this;
191231
- if (w.released) {
191232
- $s = -1; return;
191233
- }
191234
- _ref = src;
191235
- /* */ if ($assertType(_ref, ptrType$3, true)[1]) { $s = 1; continue; }
191236
- /* */ $s = 2; continue;
191237
- /* if ($assertType(_ref, ptrType$3, true)[1]) { */ case 1:
191238
- jsSrc = _ref.$val;
191239
- _r = $clone(w.ctx2d, js.Value).Call("drawImage", new sliceType([(x = jsSrc.YCbCrJS().CanvasImageSource, new x.constructor.elem(x)), new $Int(0), new $Int(0)])); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
191240
- _r;
191241
- $s = -1; return;
191242
- /* } */ case 2:
191243
- _r$1 = fmt.Errorf("Not implemented, use canvasdriver.BufferImpl instead", sliceType.nil); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
191244
- $panic(_r$1);
191265
+ $r = w.mutex.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191266
+ $deferred.push([$methodVal(w.mutex, "Unlock"), []]);
191267
+ /* */ if (w.released) { $s = 2; continue; }
191268
+ /* */ $s = 3; continue;
191269
+ /* if (w.released) { */ case 2:
191270
+ $s = 4; case 4: return;
191271
+ /* } */ case 3:
191272
+ _r = $clone(w.jsNaClDecoder, js.Value).Call("getPicture", sliceType.nil); /* */ $s = 5; case 5: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
191273
+ picturePromise = $clone(_r, js.Value);
191274
+ _r$1 = jshelper.Await($clone(picturePromise, js.Value)); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
191275
+ _tuple = _r$1;
191276
+ pictureResult = _tuple[0];
191277
+ err = _tuple[1];
191278
+ /* */ if (!(err === ptrType$3.nil)) { $s = 7; continue; }
191279
+ /* */ $s = 8; continue;
191280
+ /* if (!(err === ptrType$3.nil)) { */ case 7:
191281
+ $r = log.Printf("Failed to get picture: %v", new sliceType([err])); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191282
+ /* } */ case 8:
191283
+ _r$2 = $clone(w.jsNaClDecoder, js.Value).Call("render", new sliceType([(x = pictureResult, new x.constructor.elem(x))])); /* */ $s = 10; case 10: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
191284
+ renderPromise = $clone(_r$2, js.Value);
191285
+ _r$3 = jshelper.Await($clone(renderPromise, js.Value)); /* */ $s = 11; case 11: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
191286
+ _tuple$1 = _r$3;
191287
+ renderResult = _tuple$1[0];
191288
+ err = _tuple$1[1];
191289
+ /* */ if (!(err === ptrType$3.nil)) { $s = 12; continue; }
191290
+ /* */ if (!(($clone(renderResult, js.Value).Float() === 0))) { $s = 13; continue; }
191291
+ /* */ $s = 14; continue;
191292
+ /* if (!(err === ptrType$3.nil)) { */ case 12:
191293
+ _r$4 = errs.Errorf("%v", new sliceType([err])); /* */ $s = 15; case 15: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
191294
+ _arg = _r$4;
191295
+ $r = errs.Print("Failed to render picture", _arg); /* */ $s = 16; case 16: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191296
+ $s = 14; continue;
191297
+ /* } else if (!(($clone(renderResult, js.Value).Float() === 0))) { */ case 13:
191298
+ $r = log.Printf("Failed to render frame with code: %v", new sliceType([new $Float64($clone(renderResult, js.Value).Float())])); /* */ $s = 17; case 17: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191299
+ /* } */ case 14:
191300
+ _r$5 = $clone(w.jsNaClDecoder, js.Value).Call("recyclePicture", new sliceType([(x$1 = pictureResult, new x$1.constructor.elem(x$1))])); /* */ $s = 18; case 18: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
191301
+ _r$5;
191245
191302
  $s = -1; return;
191246
- /* */ } return; } var $f = {$blk: windowImpl.ptr.prototype.UploadYCbCr, $c: true, $r, _r, _r$1, _ref, dp, jsSrc, sr, src, w, x, $s};return $f;
191303
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { var $f = {$blk: windowImpl.ptr.prototype.UploadYCbCr, $c: true, $r, _arg, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _tuple, _tuple$1, dp, err, picturePromise, pictureResult, renderPromise, renderResult, sr, src, w, x, x$1, $s, $deferred};return $f; } }
191247
191304
  };
191248
191305
  windowImpl.prototype.UploadYCbCr = function(dp, src, sr) { return this.$val.UploadYCbCr(dp, src, sr); };
191249
191306
  windowImpl.ptr.prototype.Fill = function(dr, src, op) {
@@ -191291,22 +191348,6 @@ $packages["golang.org/x/exp/shiny/driver/canvasdriver"] = (function() {
191291
191348
  $panic(new $String("Not implemented"));
191292
191349
  };
191293
191350
  windowImpl.prototype.Scale = function(dr, src, sr, op, opts) { return this.$val.Scale(dr, src, sr, op, opts); };
191294
- main = function(f) {
191295
- var {_tuple, err, f, retErr, s, $s, $r, $c} = $restore(this, {f});
191296
- /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
191297
- retErr = $ifaceNil;
191298
- _tuple = newScreenImpl();
191299
- s = _tuple[0];
191300
- err = _tuple[1];
191301
- if (!($interfaceIsEqual(err, $ifaceNil))) {
191302
- retErr = err;
191303
- $s = -1; return retErr;
191304
- }
191305
- $r = f(s); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191306
- retErr = $ifaceNil;
191307
- $s = -1; return retErr;
191308
- /* */ } return; } var $f = {$blk: main, $c: true, $r, _tuple, err, f, retErr, s, $s};return $f;
191309
- };
191310
191351
  newScreenImpl = function() {
191311
191352
  var s;
191312
191353
  s = new screenImpl.ptr($clone($clone(js.Global(), js.Value).Get("document"), js.Value));
@@ -191339,10 +191380,25 @@ $packages["golang.org/x/exp/shiny/driver/canvasdriver"] = (function() {
191339
191380
  /* */ } return; } var $f = {$blk: screenImpl.ptr.prototype.NewWindow, $c: true, $r, _r, opts, s, window, $s};return $f;
191340
191381
  };
191341
191382
  screenImpl.prototype.NewWindow = function(opts) { return this.$val.NewWindow(opts); };
191383
+ main = function(f) {
191384
+ var {_tuple, err, f, retErr, s, $s, $r, $c} = $restore(this, {f});
191385
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
191386
+ retErr = $ifaceNil;
191387
+ _tuple = newScreenImpl();
191388
+ s = _tuple[0];
191389
+ err = _tuple[1];
191390
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
191391
+ retErr = err;
191392
+ $s = -1; return retErr;
191393
+ }
191394
+ $r = f(s); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191395
+ retErr = $ifaceNil;
191396
+ $s = -1; return retErr;
191397
+ /* */ } return; } var $f = {$blk: main, $c: true, $r, _tuple, err, f, retErr, s, $s};return $f;
191398
+ };
191342
191399
  newBuffer = function(screen$1, size) {
191343
- var _q, _q$1, _q$2, b, rect, screen$1, size;
191344
- rect = new image.Rectangle.ptr(new image.Point.ptr(0, 0), $clone(size, image.Point));
191345
- b = new BufferImpl.ptr(screen$1, $clone(size, image.Point), new sync.Mutex.ptr(0, 0), false, $clone(new image.RGBA.ptr($makeSlice(sliceType$1, ($imul(($imul(4, size.X)), size.Y))), $imul(4, size.X), $clone(rect, image.Rectangle)), image.RGBA), $clone(new image.YCbCr.ptr($makeSlice(sliceType$1, ($imul(size.X, size.Y))), $makeSlice(sliceType$1, (_q$1 = ($imul(size.X, size.Y)) / 4, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero"))), $makeSlice(sliceType$1, (_q$2 = ($imul(size.X, size.Y)) / 4, (_q$2 === _q$2 && _q$2 !== 1/0 && _q$2 !== -1/0) ? _q$2 >> 0 : $throwRuntimeError("integer divide by zero"))), size.X, (_q = size.X / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")), 2, $clone(rect, image.Rectangle)), image.YCbCr), ptrType$4.nil);
191400
+ var b, screen$1, size;
191401
+ b = new BufferImpl.ptr(ptrType$3.nil, screen$1, $clone(size, image.Point));
191346
191402
  return b;
191347
191403
  };
191348
191404
  BufferImpl.ptr.prototype.Size = function() {
@@ -191358,110 +191414,59 @@ $packages["golang.org/x/exp/shiny/driver/canvasdriver"] = (function() {
191358
191414
  };
191359
191415
  BufferImpl.prototype.Bounds = function() { return this.$val.Bounds(); };
191360
191416
  BufferImpl.ptr.prototype.RGBA = function() {
191361
- var b;
191417
+ var {_r, b, $s, $r, $c} = $restore(this, {});
191418
+ /* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
191362
191419
  b = this;
191363
- return b.rgba;
191420
+ _r = fmt.Errorf("Not implemented RGBA(), use PictureResult() instead", sliceType.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
191421
+ $panic(_r);
191422
+ $s = -1; return ptrType$4.nil;
191423
+ /* */ } return; } var $f = {$blk: BufferImpl.ptr.prototype.RGBA, $c: true, $r, _r, b, $s};return $f;
191364
191424
  };
191365
191425
  BufferImpl.prototype.RGBA = function() { return this.$val.RGBA(); };
191366
191426
  BufferImpl.ptr.prototype.YCbCr = function() {
191367
191427
  var b;
191368
191428
  b = this;
191369
- return b.ycbcr;
191429
+ return new image.YCbCr.ptr(sliceType$1.nil, sliceType$1.nil, sliceType$1.nil, 0, 0, 0, $clone(b.Bounds(), image.Rectangle));
191370
191430
  };
191371
191431
  BufferImpl.prototype.YCbCr = function() { return this.$val.YCbCr(); };
191372
- BufferImpl.ptr.prototype.YCbCrJS = function() {
191432
+ BufferImpl.ptr.prototype.GetPictureResult = function() {
191373
191433
  var b;
191374
191434
  b = this;
191375
- if (b.ycbcrJS === ptrType$4.nil) {
191376
- b.ycbcrJS = new YCbCrJS.ptr(ptrType$5.nil);
191377
- }
191378
- return b.ycbcrJS;
191435
+ return b.pictureResult;
191379
191436
  };
191380
- BufferImpl.prototype.YCbCrJS = function() { return this.$val.YCbCrJS(); };
191437
+ BufferImpl.prototype.GetPictureResult = function() { return this.$val.GetPictureResult(); };
191438
+ BufferImpl.ptr.prototype.SetPictureResult = function(pictureResult) {
191439
+ var b, pictureResult;
191440
+ b = this;
191441
+ b.pictureResult = pictureResult;
191442
+ };
191443
+ BufferImpl.prototype.SetPictureResult = function(pictureResult) { return this.$val.SetPictureResult(pictureResult); };
191381
191444
  BufferImpl.ptr.prototype.Release = function() {
191382
- var {b, $s, $deferred, $r, $c} = $restore(this, {});
191383
- /* */ $s = $s || 0; var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $curGoroutine.deferStack.push($deferred);
191445
+ var b;
191384
191446
  b = this;
191385
- $r = b.mutex.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191386
- $deferred.push([$methodVal(b.mutex, "Unlock"), []]);
191387
- /* */ if (b.released) { $s = 2; continue; }
191388
- /* */ $s = 3; continue;
191389
- /* if (b.released) { */ case 2:
191390
- $s = 4; case 4: return;
191391
- /* } */ case 3:
191392
- b.released = true;
191393
- $s = -1; return;
191394
- /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { var $f = {$blk: BufferImpl.ptr.prototype.Release, $c: true, $r, b, $s, $deferred};return $f; } }
191395
191447
  };
191396
191448
  BufferImpl.prototype.Release = function() { return this.$val.Release(); };
191397
- ptrType$7.methods = [{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$6], [], false)}, {prop: "DrawUniform", name: "DrawUniform", pkg: "", typ: $funcType([f64.Aff3, color.Color, image.Rectangle, draw.Op, ptrType$6], [], false)}, {prop: "Copy", name: "Copy", pkg: "", typ: $funcType([image.Point, screen.Texture, image.Rectangle, draw.Op, ptrType$6], [], false)}, {prop: "Scale", name: "Scale", pkg: "", typ: $funcType([image.Rectangle, screen.Texture, image.Rectangle, draw.Op, ptrType$6], [], false)}];
191398
- 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$8], [screen.Window, $error], false)}];
191399
- ptrType$3.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$9], false)}, {prop: "YCbCr", name: "YCbCr", pkg: "", typ: $funcType([], [ptrType$10], false)}, {prop: "YCbCrJS", name: "YCbCrJS", pkg: "", typ: $funcType([], [ptrType$4], false)}, {prop: "Release", name: "Release", pkg: "", typ: $funcType([], [], false)}];
191400
- 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$2, tag: ""}, {prop: "resizeCallback", name: "resizeCallback", embedded: false, exported: false, typ: js.Func, tag: ""}]);
191401
- screenImpl.init("golang.org/x/exp/shiny/driver/canvasdriver", [{prop: "doc", name: "doc", embedded: false, exported: false, typ: js.Value, tag: ""}]);
191402
- YCbCrJS.init("", [{prop: "CanvasImageSource", name: "CanvasImageSource", embedded: false, exported: true, typ: ptrType$5, tag: ""}]);
191403
- 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$4, tag: ""}]);
191449
+ ptrType$6.methods = [{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$5], [], false)}, {prop: "DrawUniform", name: "DrawUniform", pkg: "", typ: $funcType([f64.Aff3, color.Color, image.Rectangle, draw.Op, ptrType$5], [], false)}, {prop: "Copy", name: "Copy", pkg: "", typ: $funcType([image.Point, screen.Texture, image.Rectangle, draw.Op, ptrType$5], [], false)}, {prop: "Scale", name: "Scale", pkg: "", typ: $funcType([image.Rectangle, screen.Texture, image.Rectangle, draw.Op, ptrType$5], [], false)}];
191450
+ 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$7], [screen.Window, $error], false)}];
191451
+ ptrType$9.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$4], false)}, {prop: "YCbCr", name: "YCbCr", pkg: "", typ: $funcType([], [ptrType$8], false)}, {prop: "GetPictureResult", name: "GetPictureResult", pkg: "", typ: $funcType([], [ptrType$3], false)}, {prop: "SetPictureResult", name: "SetPictureResult", pkg: "", typ: $funcType([ptrType$3], [], false)}, {prop: "Release", name: "Release", pkg: "", typ: $funcType([], [], false)}];
191452
+ windowImpl.init("github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver", [{prop: "screen", name: "screen", embedded: false, exported: false, typ: ptrType, tag: ""}, {prop: "mutex", name: "mutex", embedded: false, exported: false, typ: ptrType$1, tag: ""}, {prop: "jsNaClDecoder", name: "jsNaClDecoder", embedded: false, exported: false, typ: js.Value, tag: ""}, {prop: "domEvents", name: "domEvents", embedded: false, exported: false, typ: ptrType$2, tag: ""}, {prop: "released", name: "released", embedded: false, exported: false, typ: $Bool, tag: ""}]);
191453
+ screenImpl.init("github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver", [{prop: "doc", name: "doc", embedded: false, exported: false, typ: js.Value, tag: ""}]);
191454
+ BufferImpl.init("github.com/supraio/client-daemon/pkg/x264/nacldecoder/nacldriver", [{prop: "pictureResult", name: "pictureResult", embedded: false, exported: false, typ: ptrType$3, tag: ""}, {prop: "screen", name: "screen", embedded: false, exported: false, typ: ptrType, tag: ""}, {prop: "size", name: "size", embedded: false, exported: false, typ: image.Point, tag: ""}]);
191404
191455
  $init = function() {
191405
191456
  $pkg.$init = function() {};
191406
191457
  /* */ 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:
191407
191458
  $r = fmt.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191408
- $r = dom.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191409
- $r = errscreen.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191410
- $r = screen.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191411
- $r = f64.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191412
- $r = image.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191413
- $r = color.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191414
- $r = draw.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191415
- $r = sync.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191416
- $r = js.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191417
- /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
191418
- };
191419
- $pkg.$init = $init;
191420
- return $pkg;
191421
- })();
191422
- $packages["github.com/supraio/client-daemon/pkg/x264/webcodecs"] = (function() {
191423
- var $pkg = {}, $init, hex, webgl, errs, jshelper, general, canvasdriver, image, js;
191424
- hex = $packages["encoding/hex"];
191425
- webgl = $packages["github.com/nuberu/webgl"];
191426
- errs = $packages["github.com/supraio/client-daemon/pkg/errs"];
191427
- jshelper = $packages["github.com/supraio/client-daemon/pkg/jshelper"];
191428
- general = $packages["github.com/supraio/client-daemon/pkg/x264/general"];
191429
- canvasdriver = $packages["golang.org/x/exp/shiny/driver/canvasdriver"];
191430
- image = $packages["image"];
191431
- js = $packages["syscall/js"];
191432
- $init = function() {
191433
- $pkg.$init = function() {};
191434
- /* */ 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:
191435
- $r = hex.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191436
- $r = webgl.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191437
- $r = errs.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191438
- $r = jshelper.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191439
- $r = general.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191440
- $r = canvasdriver.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191459
+ $r = errs.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191460
+ $r = jshelper.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191461
+ $r = dom.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191462
+ $r = screen.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191463
+ $r = f64.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191441
191464
  $r = image.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191442
- $r = js.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191443
- /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
191444
- };
191445
- $pkg.$init = $init;
191446
- return $pkg;
191447
- })();
191448
- $packages["github.com/supraio/client-daemon/pkg/x264"] = (function() {
191449
- var $pkg = {}, $init, errs, general, h264_decoder, nacldecoder, webcodecs, js;
191450
- errs = $packages["github.com/supraio/client-daemon/pkg/errs"];
191451
- general = $packages["github.com/supraio/client-daemon/pkg/x264/general"];
191452
- h264_decoder = $packages["github.com/supraio/client-daemon/pkg/x264/h264decoder"];
191453
- nacldecoder = $packages["github.com/supraio/client-daemon/pkg/x264/nacldecoder"];
191454
- webcodecs = $packages["github.com/supraio/client-daemon/pkg/x264/webcodecs"];
191455
- js = $packages["syscall/js"];
191456
- $init = function() {
191457
- $pkg.$init = function() {};
191458
- /* */ 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:
191459
- $r = errs.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191460
- $r = general.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191461
- $r = h264_decoder.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191462
- $r = nacldecoder.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191463
- $r = webcodecs.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191464
- $r = js.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191465
+ $r = color.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191466
+ $r = draw.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191467
+ $r = log.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191468
+ $r = sync.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191469
+ $r = js.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
191465
191470
  /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
191466
191471
  };
191467
191472
  $pkg.$init = $init;