@nativescript/canvas 2.0.0-beta.19 → 2.0.0-beta.20

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.
Files changed (39) hide show
  1. package/Canvas/common.d.ts +15 -10
  2. package/Canvas/common.js +62 -65
  3. package/Canvas/common.js.map +1 -1
  4. package/Canvas/index.android.js +23 -29
  5. package/Canvas/index.android.js.map +1 -1
  6. package/Canvas2D/CanvasRenderingContext2D/index.js +7 -0
  7. package/Canvas2D/CanvasRenderingContext2D/index.js.map +1 -1
  8. package/WebGL/WebGLRenderingContext/index.d.ts +1 -0
  9. package/WebGL/WebGLRenderingContext/index.js +44 -7
  10. package/WebGL/WebGLRenderingContext/index.js.map +1 -1
  11. package/WebGL2/WebGL2RenderingContext/index.d.ts +1 -0
  12. package/WebGL2/WebGL2RenderingContext/index.js +2 -1
  13. package/WebGL2/WebGL2RenderingContext/index.js.map +1 -1
  14. package/package.json +1 -1
  15. package/platforms/android/canvas-release.aar +0 -0
  16. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/CanvasNative +0 -0
  17. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/CanvasNative-Swift.h +9 -0
  18. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/canvas_ios.h +25 -0
  19. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo +0 -0
  20. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.abi.json +321 -0
  21. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.private.swiftinterface +7 -0
  22. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.swiftinterface +7 -0
  23. package/platforms/ios/CanvasNative.xcframework/ios-arm64/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  24. package/platforms/ios/CanvasNative.xcframework/ios-arm64/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/aarch64/CanvasNative.yml +585 -571
  25. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/CanvasNative +0 -0
  26. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/CanvasNative-Swift.h +18 -0
  27. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/canvas_ios.h +25 -0
  28. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo +0 -0
  29. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo +0 -0
  30. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.abi.json +321 -0
  31. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +7 -0
  32. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftinterface +7 -0
  33. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.abi.json +321 -0
  34. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +7 -0
  35. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +7 -0
  36. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/_CodeSignature/CodeResources +24 -24
  37. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  38. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/aarch64/CanvasNative.yml +617 -603
  39. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/x86_64/CanvasNative.yml +619 -605
@@ -1,4 +1,4 @@
1
- import { View, Property } from '@nativescript/core';
1
+ import { View, Property, CoreTypes } from '@nativescript/core';
2
2
  import { CanvasRenderingContext } from '../common';
3
3
  export interface ICanvasBase {
4
4
  on(eventName: 'ready', callback: (data: any) => void, thisArg?: any): void;
@@ -186,6 +186,17 @@ export declare const doc: {
186
186
  getComputedStyle: () => any;
187
187
  };
188
188
  };
189
+ declare class Size {
190
+ private view;
191
+ private type;
192
+ constructor(view: CanvasBase, type?: 'physical' | 'logical');
193
+ get width(): number;
194
+ get height(): number;
195
+ toJSON(): {
196
+ width: number;
197
+ height: number;
198
+ };
199
+ }
189
200
  export declare abstract class CanvasBase extends View implements ICanvasBase {
190
201
  static readyEvent: string;
191
202
  ignoreTouchEvents: boolean;
@@ -229,14 +240,8 @@ export declare abstract class CanvasBase extends View implements ICanvasBase {
229
240
  private _pinchCallback;
230
241
  _handleEvents(event: any): void;
231
242
  get classList(): Set<any>;
232
- get _physicalSize(): {
233
- width: number;
234
- height: number;
235
- };
236
- get _logicalSize(): {
237
- width: number;
238
- height: number;
239
- };
243
+ _physicalSize: Size;
244
+ _logicalSize: Size;
240
245
  _handlePowerPreference(powerPreference: string): 1 | -1 | 0 | 2;
241
246
  _handleContextOptions(type: '2d' | 'webgl' | 'webgl2' | 'experimental-webgl', contextOpts?: any): any;
242
247
  _readyEvent(): void;
@@ -253,7 +258,7 @@ export declare abstract class CanvasBase extends View implements ICanvasBase {
253
258
  bottom: number;
254
259
  left: number;
255
260
  };
256
- private getSize;
261
+ _getSize(value: string | number | CoreTypes.LengthPercentUnit | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit | 'auto', measuredSize: any, type?: 'logical' | 'physical'): number;
257
262
  setPointerCapture(id: any): void;
258
263
  releasePointerCapture(id: any): void;
259
264
  }
package/Canvas/common.js CHANGED
@@ -18,7 +18,7 @@ const defaultGLOptions = {
18
18
  preserveDrawingBuffer: false,
19
19
  stencil: false,
20
20
  desynchronized: false,
21
- xrCompatible: false
21
+ xrCompatible: false,
22
22
  };
23
23
  const default2DOptions = {
24
24
  alpha: true,
@@ -30,7 +30,7 @@ const default2DOptions = {
30
30
  preserveDrawingBuffer: false,
31
31
  stencil: false,
32
32
  desynchronized: false,
33
- xrCompatible: false
33
+ xrCompatible: false,
34
34
  };
35
35
  export class DOMRectReadOnly {
36
36
  constructor(x, y, width, height, top, right, bottom, left) {
@@ -60,10 +60,8 @@ export class Event {
60
60
  this.cancelable = options?.cancelable ?? false;
61
61
  this.composed = options?.composed ?? false;
62
62
  }
63
- preventDefault() {
64
- }
65
- stopPropagation() {
66
- }
63
+ preventDefault() { }
64
+ stopPropagation() { }
67
65
  }
68
66
  export class UIEvent extends Event {
69
67
  constructor(type, options) {
@@ -109,10 +107,8 @@ export class PointerEvent extends MouseEvent {
109
107
  this.twist = options?.twist ?? 0;
110
108
  this.isPrimary = options?.isPrimary ?? false;
111
109
  }
112
- preventDefault() {
113
- }
114
- stopPropagation() {
115
- }
110
+ preventDefault() { }
111
+ stopPropagation() { }
116
112
  }
117
113
  export class Touch {
118
114
  constructor(options) {
@@ -129,10 +125,8 @@ export class Touch {
129
125
  this.rotationAngle = options?.rotationAngle ?? 0;
130
126
  this.force = options?.force ?? 0;
131
127
  }
132
- preventDefault() {
133
- }
134
- stopPropagation() {
135
- }
128
+ preventDefault() { }
129
+ stopPropagation() { }
136
130
  }
137
131
  export class TouchList {
138
132
  static fromList(list) {
@@ -163,10 +157,8 @@ export class TouchEvent extends UIEvent {
163
157
  this.ctrlKey = options?.ctrlKey ?? false;
164
158
  this.shiftKey = options?.shiftKey ?? false;
165
159
  }
166
- preventDefault() {
167
- }
168
- stopPropagation() {
169
- }
160
+ preventDefault() { }
161
+ stopPropagation() { }
170
162
  }
171
163
  export class WheelEvent extends UIEvent {
172
164
  constructor(type, options) {
@@ -189,15 +181,33 @@ class Rectangle {
189
181
  export const ignoreTouchEventsProperty = new Property({
190
182
  name: 'ignoreTouchEvents',
191
183
  defaultValue: false,
192
- valueConverter: booleanConverter
184
+ valueConverter: booleanConverter,
193
185
  });
194
186
  export const doc = {
195
187
  defaultView: {
196
188
  getComputedStyle: function () {
197
189
  return null;
198
- }
199
- }
190
+ },
191
+ },
200
192
  };
193
+ class Size {
194
+ constructor(view, type = 'logical') {
195
+ this.view = view;
196
+ this.type = type;
197
+ }
198
+ get width() {
199
+ return this.view._getSize(this.view.style.width, this.view.getMeasuredWidth(), this.type);
200
+ }
201
+ get height() {
202
+ return this.view._getSize(this.view.style.height, this.view.getMeasuredHeight(), this.type);
203
+ }
204
+ toJSON() {
205
+ return {
206
+ width: this.width,
207
+ height: this.height,
208
+ };
209
+ }
210
+ }
201
211
  let CanvasBase = class CanvasBase extends View {
202
212
  constructor() {
203
213
  super();
@@ -221,6 +231,8 @@ let CanvasBase = class CanvasBase extends View {
221
231
  this._touches = [];
222
232
  this._touchesById = [];
223
233
  this._lastPointerEventById = [];
234
+ this._physicalSize = new Size(this, 'physical');
235
+ this._logicalSize = new Size(this, 'logical');
224
236
  this._classList = new Set();
225
237
  }
226
238
  get ownerDocument() {
@@ -372,7 +384,7 @@ let CanvasBase = class CanvasBase extends View {
372
384
  movementX: pointer.x - previousEvent.x,
373
385
  movementY: pointer.y - previousEvent.y,
374
386
  isPrimary: pointer.isPrimary,
375
- button: -1
387
+ button: -1,
376
388
  });
377
389
  for (const callback of this._pointerMoveCallbacks) {
378
390
  callback(event);
@@ -388,7 +400,7 @@ let CanvasBase = class CanvasBase extends View {
388
400
  pageY: pointer.y,
389
401
  movementX: pointer.x - previousEvent.x,
390
402
  movementY: pointer.y - previousEvent.y,
391
- button: -1
403
+ button: -1,
392
404
  });
393
405
  for (const callback of this._mouseMoveCallbacks) {
394
406
  callback(event);
@@ -410,14 +422,14 @@ let CanvasBase = class CanvasBase extends View {
410
422
  screenX: pointer.x,
411
423
  screenY: pointer.y,
412
424
  pageX: pointer.x,
413
- pageY: pointer.y
425
+ pageY: pointer.y,
414
426
  }));
415
427
  }
416
428
  const touches = TouchList.fromList(this._touches);
417
429
  const event = new TouchEvent('touchmove', {
418
430
  touches,
419
431
  targetTouches: touches,
420
- changedTouches
432
+ changedTouches,
421
433
  });
422
434
  for (const callback of this._touchMoveCallbacks) {
423
435
  callback(event);
@@ -439,7 +451,7 @@ let CanvasBase = class CanvasBase extends View {
439
451
  screenY: y,
440
452
  isPrimary,
441
453
  pageX: x,
442
- pageY: y
454
+ pageY: y,
443
455
  });
444
456
  const out = new PointerEvent('pointerout', {
445
457
  pointerType: 'touch',
@@ -450,7 +462,7 @@ let CanvasBase = class CanvasBase extends View {
450
462
  screenY: y,
451
463
  isPrimary,
452
464
  pageX: x,
453
- pageY: y
465
+ pageY: y,
454
466
  });
455
467
  const leave = new PointerEvent('pointerleave', {
456
468
  pointerType: 'touch',
@@ -461,7 +473,7 @@ let CanvasBase = class CanvasBase extends View {
461
473
  screenY: y,
462
474
  isPrimary,
463
475
  pageX: x,
464
- pageY: y
476
+ pageY: y,
465
477
  });
466
478
  for (const callback of this._pointerUpCallbacks) {
467
479
  callback(up);
@@ -480,7 +492,7 @@ let CanvasBase = class CanvasBase extends View {
480
492
  screenX: x,
481
493
  screenY: y,
482
494
  pageX: x,
483
- pageY: y
495
+ pageY: y,
484
496
  });
485
497
  for (const callback of this._mouseUpCallbacks) {
486
498
  callback(event);
@@ -511,13 +523,13 @@ let CanvasBase = class CanvasBase extends View {
511
523
  screenX: x,
512
524
  screenY: y,
513
525
  pageX: x,
514
- pageY: y
515
- })
526
+ pageY: y,
527
+ }),
516
528
  ];
517
529
  const event = new TouchEvent('touchend', {
518
530
  touches,
519
531
  targetTouches: touches,
520
- changedTouches
532
+ changedTouches,
521
533
  });
522
534
  for (const callback of this._touchEndCallbacks) {
523
535
  callback(event);
@@ -539,7 +551,7 @@ let CanvasBase = class CanvasBase extends View {
539
551
  screenY: y,
540
552
  isPrimary,
541
553
  pageX: x,
542
- pageY: y
554
+ pageY: y,
543
555
  });
544
556
  for (const callback of this._pointerDownCallbacks) {
545
557
  callback(event);
@@ -552,7 +564,7 @@ let CanvasBase = class CanvasBase extends View {
552
564
  screenX: x,
553
565
  screenY: y,
554
566
  pageX: x,
555
- pageY: y
567
+ pageY: y,
556
568
  });
557
569
  for (const callback of this._mouseDownCallbacks) {
558
570
  callback(event);
@@ -569,7 +581,7 @@ let CanvasBase = class CanvasBase extends View {
569
581
  screenX: x,
570
582
  screenY: y,
571
583
  pageX: x,
572
- pageY: y
584
+ pageY: y,
573
585
  });
574
586
  this._touches.push(touch);
575
587
  this._touchesById[ptrId] = touch;
@@ -577,7 +589,7 @@ let CanvasBase = class CanvasBase extends View {
577
589
  const touchEvent = new TouchEvent('touchstart', {
578
590
  touches,
579
591
  targetTouches: touches,
580
- changedTouches: this._touches
592
+ changedTouches: this._touches,
581
593
  });
582
594
  for (const callback of this._touchStartCallbacks) {
583
595
  callback(touchEvent);
@@ -599,7 +611,7 @@ let CanvasBase = class CanvasBase extends View {
599
611
  screenY: y,
600
612
  pageX: x,
601
613
  pageY: y,
602
- isPrimary
614
+ isPrimary,
603
615
  });
604
616
  for (const callback of this._pointerCancelCallbacks) {
605
617
  callback(event);
@@ -612,7 +624,7 @@ let CanvasBase = class CanvasBase extends View {
612
624
  screenX: x,
613
625
  screenY: y,
614
626
  pageX: x,
615
- pageY: y
627
+ pageY: y,
616
628
  });
617
629
  for (const callback of this._mouseCancelCallbacks) {
618
630
  callback(event);
@@ -628,7 +640,7 @@ let CanvasBase = class CanvasBase extends View {
628
640
  screenX: x,
629
641
  screenY: y,
630
642
  pageX: x,
631
- pageY: y
643
+ pageY: y,
632
644
  });
633
645
  const touchesList = [touch];
634
646
  const touchesById = [];
@@ -637,7 +649,7 @@ let CanvasBase = class CanvasBase extends View {
637
649
  const touchEvent = new TouchEvent('touchcancel', {
638
650
  touches,
639
651
  targetTouches: touches,
640
- changedTouches: touchesList
652
+ changedTouches: touchesList,
641
653
  });
642
654
  for (const callback of this._touchCancelCallbacks) {
643
655
  callback(touchEvent);
@@ -674,7 +686,7 @@ let CanvasBase = class CanvasBase extends View {
674
686
  pageY: pointer.y,
675
687
  movementX: pointer.x - previousEvent.x,
676
688
  movementY: pointer.y - previousEvent.y,
677
- button: -1
689
+ button: -1,
678
690
  });
679
691
  for (const callback of this._pointerMoveCallbacks) {
680
692
  callback(event);
@@ -690,7 +702,7 @@ let CanvasBase = class CanvasBase extends View {
690
702
  pageY: pointer.y,
691
703
  movementX: pointer.x - previousEvent.x,
692
704
  movementY: pointer.y - previousEvent.y,
693
- button: -1
705
+ button: -1,
694
706
  });
695
707
  for (const callback of this._mouseMoveCallbacks) {
696
708
  callback(event);
@@ -701,7 +713,7 @@ let CanvasBase = class CanvasBase extends View {
701
713
  deltaX: data.deltaX,
702
714
  deltaY: data.deltaY,
703
715
  deltaZ: 0,
704
- deltaMode: data.deltaMode
716
+ deltaMode: data.deltaMode,
705
717
  });
706
718
  for (const callback of this._mouseWheelCallbacks) {
707
719
  callback(event);
@@ -723,14 +735,14 @@ let CanvasBase = class CanvasBase extends View {
723
735
  screenX: pointer.x,
724
736
  screenY: pointer.y,
725
737
  pageX: pointer.x,
726
- pageY: pointer.y
738
+ pageY: pointer.y,
727
739
  }));
728
740
  }
729
741
  const touches = TouchList.fromList(this._touches);
730
742
  const event = new TouchEvent('touchmove', {
731
743
  touches,
732
744
  targetTouches: touches,
733
- changedTouches
745
+ changedTouches,
734
746
  });
735
747
  for (const callback of this._touchMoveCallbacks) {
736
748
  callback(event);
@@ -760,24 +772,11 @@ let CanvasBase = class CanvasBase extends View {
760
772
  break;
761
773
  }
762
774
  }
763
- catch (error) {
764
- }
775
+ catch (error) { }
765
776
  }
766
777
  get classList() {
767
778
  return this._classList;
768
779
  }
769
- get _physicalSize() {
770
- return {
771
- width: this.getSize(this.style.width, this.getMeasuredWidth(), 'physical'),
772
- height: this.getSize(this.style.height, this.getMeasuredHeight(), 'physical')
773
- };
774
- }
775
- get _logicalSize() {
776
- return {
777
- width: this.getSize(this.style.width, this.getMeasuredWidth()),
778
- height: this.getSize(this.style.height, this.getMeasuredHeight())
779
- };
780
- }
781
780
  _handlePowerPreference(powerPreference) {
782
781
  switch (powerPreference) {
783
782
  case 'default':
@@ -835,7 +834,7 @@ let CanvasBase = class CanvasBase extends View {
835
834
  _readyEvent() {
836
835
  this.notify({
837
836
  eventName: 'ready',
838
- object: this
837
+ object: this,
839
838
  });
840
839
  }
841
840
  getAttribute(attrib) {
@@ -865,7 +864,7 @@ let CanvasBase = class CanvasBase extends View {
865
864
  this['tabindex'] = arguments[1];
866
865
  }
867
866
  }
868
- getSize(value, measuredSize, type = 'logical') {
867
+ _getSize(value, measuredSize, type = 'logical') {
869
868
  const isPhysical = type === 'physical';
870
869
  if (value === undefined || value === null) {
871
870
  return 0;
@@ -906,10 +905,8 @@ let CanvasBase = class CanvasBase extends View {
906
905
  return 0;
907
906
  }
908
907
  }
909
- setPointerCapture(id) {
910
- }
911
- releasePointerCapture(id) {
912
- }
908
+ setPointerCapture(id) { }
909
+ releasePointerCapture(id) { }
913
910
  };
914
911
  CanvasBase.readyEvent = 'ready';
915
912
  CanvasBase = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../packages/canvas/Canvas/common.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../packages/canvas/Canvas/common.ts"],"names":[],"mappings":"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"}
@@ -27,7 +27,7 @@ const defaultOpts = {
27
27
  preserveDrawingBuffer: false,
28
28
  stencil: false,
29
29
  desynchronized: false,
30
- xrCompatible: false
30
+ xrCompatible: false,
31
31
  };
32
32
  var ContextType;
33
33
  (function (ContextType) {
@@ -55,7 +55,7 @@ export class Canvas extends CanvasBase {
55
55
  else {
56
56
  const activity = Application.android.foregroundActivity || Application.android.startActivity || Utils.android.getApplicationContext();
57
57
  if (Canvas.useSurface) {
58
- this._canvas = new org.nativescript.canvas.NSCCanvas(activity, org.nativescript.canvas.NSCCanvas.SurfaceType.Surface);
58
+ this._canvas = new org.nativescript.canvas.NSCCanvas(activity);
59
59
  }
60
60
  else {
61
61
  this._canvas = new org.nativescript.canvas.NSCCanvas(activity);
@@ -69,7 +69,7 @@ export class Canvas extends CanvasBase {
69
69
  return;
70
70
  }
71
71
  owner._handleEvents(event);
72
- }
72
+ },
73
73
  }));
74
74
  }
75
75
  }
@@ -143,12 +143,12 @@ export class Canvas extends CanvasBase {
143
143
  Object.defineProperty(parent, 'clientWidth', {
144
144
  get: function () {
145
145
  return parent.getMeasuredWidth() / Screen.mainScreen.scale;
146
- }
146
+ },
147
147
  });
148
148
  Object.defineProperty(parent, 'clientHeight', {
149
149
  get: function () {
150
150
  return parent.getMeasuredHeight() / Screen.mainScreen.scale;
151
- }
151
+ },
152
152
  });
153
153
  }
154
154
  if (parent && typeof parent.getBoundingClientRect !== 'function') {
@@ -166,7 +166,7 @@ export class Canvas extends CanvasBase {
166
166
  top: nativeView.getTop() / scale,
167
167
  width: width,
168
168
  x: nativeView.getX() / scale,
169
- y: nativeView.getY() / scale
169
+ y: nativeView.getY() / scale,
170
170
  };
171
171
  };
172
172
  }
@@ -174,7 +174,7 @@ export class Canvas extends CanvasBase {
174
174
  Object.defineProperty(parent, 'ownerDocument', {
175
175
  get: function () {
176
176
  return global?.window?.document ?? doc;
177
- }
177
+ },
178
178
  });
179
179
  }
180
180
  });
@@ -195,7 +195,7 @@ export class Canvas extends CanvasBase {
195
195
  owner._drawingBufferWidth = width / Screen.mainScreen.scale;
196
196
  owner._drawingBufferHeight = height / Screen.mainScreen.scale;
197
197
  }
198
- }
198
+ },
199
199
  }));
200
200
  }
201
201
  onUnloaded() {
@@ -241,22 +241,17 @@ export class Canvas extends CanvasBase {
241
241
  if (this._didLayout) {
242
242
  return;
243
243
  }
244
- if (!this.parent) {
245
- if ((typeof this.width === 'string' && this.width.indexOf('%')) || (typeof this.height === 'string' && this.height.indexOf('%'))) {
246
- return;
247
- }
248
- if (this._canvas === undefined || this._canvas === null) {
249
- return;
250
- }
251
- const size = this._physicalSize;
252
- org.nativescript.canvas.NSCCanvas.layoutView(size.width || 0, size.height || 0, this._canvas);
253
- // this._drawingBufferWidth = size.width || 1;
254
- // this._drawingBufferHeight = size.height || 1;
255
- if (this._is2D) {
256
- this._2dContext.native.__resize(size.width, size.height);
257
- }
258
- this._didLayout = true;
244
+ if (this._canvas === undefined || this._canvas === null) {
245
+ return;
259
246
  }
247
+ const size = this._physicalSize;
248
+ org.nativescript.canvas.NSCCanvas.layoutView(size.width || 0, size.height || 0, this._canvas);
249
+ // this._drawingBufferWidth = size.width || 1;
250
+ // this._drawingBufferHeight = size.height || 1;
251
+ if (this._is2D) {
252
+ this._2dContext.native.__resize(size.width, size.height);
253
+ }
254
+ this._didLayout = true;
260
255
  }
261
256
  get __native__context() {
262
257
  switch (this._contextType) {
@@ -285,8 +280,9 @@ export class Canvas extends CanvasBase {
285
280
  if (!this._2dContext) {
286
281
  this._layoutNative();
287
282
  const opts = {
288
- ...defaultOpts, ...this._handleContextOptions(type, options),
289
- fontColor: this.parent?.style?.color?.android || -16777216
283
+ ...defaultOpts,
284
+ ...this._handleContextOptions(type, options),
285
+ fontColor: this.parent?.style?.color?.android || -16777216,
290
286
  };
291
287
  const ctx = this._canvas.create2DContext(opts.alpha, opts.antialias, opts.depth, opts.failIfMajorPerformanceCaveat, opts.powerPreference, opts.premultipliedAlpha, opts.preserveDrawingBuffer, opts.stencil, opts.desynchronized, opts.xrCompatible, opts.fontColor);
292
288
  this._2dContext = new CanvasRenderingContext2D(ctx);
@@ -344,10 +340,8 @@ export class Canvas extends CanvasBase {
344
340
  org.nativescript.canvas.NSCCanvas.getBoundingClientRect(this._canvas);
345
341
  return new DOMRect(this._boundingClientRect[6], this._boundingClientRect[7], this._boundingClientRect[4], this._boundingClientRect[5], this._boundingClientRect[0], this._boundingClientRect[1], this._boundingClientRect[2], this._boundingClientRect[3]);
346
342
  }
347
- setPointerCapture() {
348
- }
349
- releasePointerCapture() {
350
- }
343
+ setPointerCapture() { }
344
+ releasePointerCapture() { }
351
345
  }
352
346
  Canvas.useSurface = false;
353
347
  __decorate([