@kurot/core 1.0.17 → 1.0.19

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 (69) hide show
  1. package/README.md +8 -0
  2. package/dist/kurot/display/DisplayObject.d.ts +2 -1
  3. package/dist/kurot/display/DisplayObject.d.ts.map +1 -1
  4. package/dist/kurot/display/DisplayObject.js.map +1 -1
  5. package/dist/kurot/events/TouchEvent.js +2 -1
  6. package/dist/kurot/events/TouchEvent.js.map +1 -1
  7. package/dist/kurot/player/KurotOptions.d.ts +7 -0
  8. package/dist/kurot/player/KurotOptions.d.ts.map +1 -1
  9. package/dist/kurot/player/Player.d.ts +5 -2
  10. package/dist/kurot/player/Player.d.ts.map +1 -1
  11. package/dist/kurot/player/Player.js +19 -8
  12. package/dist/kurot/player/Player.js.map +1 -1
  13. package/dist/kurot/player/RenderContext.d.ts +2 -0
  14. package/dist/kurot/player/RenderContext.d.ts.map +1 -1
  15. package/dist/kurot/player/ScreenAdapter.d.ts +11 -4
  16. package/dist/kurot/player/ScreenAdapter.d.ts.map +1 -1
  17. package/dist/kurot/player/ScreenAdapter.js +25 -9
  18. package/dist/kurot/player/ScreenAdapter.js.map +1 -1
  19. package/dist/kurot/player/canvas/CanvasRenderer.d.ts +2 -1
  20. package/dist/kurot/player/canvas/CanvasRenderer.d.ts.map +1 -1
  21. package/dist/kurot/player/canvas/CanvasRenderer.js +91 -40
  22. package/dist/kurot/player/canvas/CanvasRenderer.js.map +1 -1
  23. package/dist/kurot/player/canvas/DisplayList.d.ts +2 -1
  24. package/dist/kurot/player/canvas/DisplayList.d.ts.map +1 -1
  25. package/dist/kurot/player/canvas/DisplayList.js +18 -4
  26. package/dist/kurot/player/canvas/DisplayList.js.map +1 -1
  27. package/dist/kurot/player/createPlayer.d.ts.map +1 -1
  28. package/dist/kurot/player/createPlayer.js +2 -2
  29. package/dist/kurot/player/createPlayer.js.map +1 -1
  30. package/dist/kurot/player/pipes/FilterPipe.d.ts.map +1 -1
  31. package/dist/kurot/player/pipes/FilterPipe.js +4 -1
  32. package/dist/kurot/player/pipes/FilterPipe.js.map +1 -1
  33. package/dist/kurot/player/pipes/MaskPipe.d.ts.map +1 -1
  34. package/dist/kurot/player/pipes/MaskPipe.js +8 -3
  35. package/dist/kurot/player/pipes/MaskPipe.js.map +1 -1
  36. package/dist/kurot/player/pipes/TextPipe.d.ts +1 -1
  37. package/dist/kurot/player/pipes/TextPipe.d.ts.map +1 -1
  38. package/dist/kurot/player/pipes/TextPipe.js +4 -7
  39. package/dist/kurot/player/pipes/TextPipe.js.map +1 -1
  40. package/dist/kurot/player/webgl/WebGLRenderBuffer.d.ts +4 -0
  41. package/dist/kurot/player/webgl/WebGLRenderBuffer.d.ts.map +1 -1
  42. package/dist/kurot/player/webgl/WebGLRenderBuffer.js +5 -0
  43. package/dist/kurot/player/webgl/WebGLRenderBuffer.js.map +1 -1
  44. package/dist/kurot/player/webgl/WebGLRenderContext.d.ts +2 -0
  45. package/dist/kurot/player/webgl/WebGLRenderContext.d.ts.map +1 -1
  46. package/dist/kurot/player/webgl/WebGLRenderContext.js +17 -11
  47. package/dist/kurot/player/webgl/WebGLRenderContext.js.map +1 -1
  48. package/dist/kurot/player/webgl/WebGLRenderer.d.ts +1 -0
  49. package/dist/kurot/player/webgl/WebGLRenderer.d.ts.map +1 -1
  50. package/dist/kurot/player/webgl/WebGLRenderer.js +27 -15
  51. package/dist/kurot/player/webgl/WebGLRenderer.js.map +1 -1
  52. package/dist/kurot/player/webgl/WebGLUtils.d.ts +4 -0
  53. package/dist/kurot/player/webgl/WebGLUtils.d.ts.map +1 -1
  54. package/dist/kurot/player/webgl/WebGLUtils.js +7 -0
  55. package/dist/kurot/player/webgl/WebGLUtils.js.map +1 -1
  56. package/dist/kurot/system/Capabilities.js +1 -1
  57. package/dist/kurot/text/InputController.d.ts +11 -2
  58. package/dist/kurot/text/InputController.d.ts.map +1 -1
  59. package/dist/kurot/text/InputController.js +86 -20
  60. package/dist/kurot/text/InputController.js.map +1 -1
  61. package/dist/kurot/text/StageText.d.ts +13 -0
  62. package/dist/kurot/text/StageText.d.ts.map +1 -1
  63. package/dist/kurot/text/StageText.js +126 -28
  64. package/dist/kurot/text/StageText.js.map +1 -1
  65. package/dist/kurot/text/TextField.d.ts +26 -0
  66. package/dist/kurot/text/TextField.d.ts.map +1 -1
  67. package/dist/kurot/text/TextField.js +252 -11
  68. package/dist/kurot/text/TextField.js.map +1 -1
  69. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"WebGLRenderer.d.ts","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/WebGLRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgC,MAAM,gCAAgC,CAAC;AAC7F,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAKjF,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAY9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAmE3D;;GAEG;AACH,qBAAa,aAAa;IAEzB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAwB;IACxD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAa;IACzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAC7C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAChD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsB;IAGpD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAwB;IACxD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAwB;IAC7D,OAAO,CAAC,qBAAqB,CAAK;IAElC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAyD;IAC1F,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA8C;IAElF,OAAO,CAAC,UAAU,CAAK;;IAcvB,OAAO,CAAC,oBAAoB;IAoB5B;;;;;;OAMG;IACI,MAAM,CAAC,aAAa,EAAE,aAAa,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IA6C9F,OAAO,CAAC,kBAAkB;IA8E1B,OAAO,CAAC,UAAU;IAalB,OAAO,CAAC,sBAAsB;IA0D9B,OAAO,CAAC,YAAY;IAsBpB,OAAO,CAAC,UAAU;IAelB,OAAO,CAAC,gBAAgB;IA0BxB,OAAO,CAAC,iBAAiB;IAkCzB,OAAO,CAAC,qBAAqB;IAkB7B,OAAO,CAAC,kBAAkB;IAkB1B,OAAO,CAAC,uBAAuB;IA4B/B,OAAO,CAAC,oBAAoB;IA8B5B,OAAO,CAAC,4BAA4B;IA0BpC,OAAO,CAAC,4BAA4B;IAkBpC,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,oBAAoB;IAwG5B,OAAO,CAAC,uBAAuB;IAoB/B,OAAO,CAAC,eAAe;IA0BvB,OAAO,CAAC,4BAA4B;IA4BpC,OAAO,CAAC,wBAAwB;IAmDhC,OAAO,CAAC,iBAAiB;IA4BzB;;;;;;OAMG;IACI,kBAAkB,CAAC,KAAK,CAAC,EAAE,sBAAsB,GAAG,IAAI;IAuBxD,mBAAmB,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI;IAsBpD,OAAO,CAAC,cAAc;CAWtB"}
1
+ {"version":3,"file":"WebGLRenderer.d.ts","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/WebGLRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgC,MAAM,gCAAgC,CAAC;AAC7F,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAKjF,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAY9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAmE3D;;GAEG;AACH,qBAAa,aAAa;IAEzB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAwB;IACxD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAa;IACzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAC7C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAChD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsB;IAGpD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAwB;IACxD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAwB;IAC7D,OAAO,CAAC,qBAAqB,CAAK;IAElC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAyD;IAC1F,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA8C;IAGlF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;IAC/C,OAAO,CAAC,UAAU,CAAK;;IAcvB,OAAO,CAAC,oBAAoB;IAoB5B;;;;;;OAMG;IACI,MAAM,CAAC,aAAa,EAAE,aAAa,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IA8C9F,OAAO,CAAC,kBAAkB;IA8E1B,OAAO,CAAC,UAAU;IAalB,OAAO,CAAC,sBAAsB;IA0D9B,OAAO,CAAC,YAAY;IAsBpB,OAAO,CAAC,UAAU;IAelB,OAAO,CAAC,gBAAgB;IA0BxB,OAAO,CAAC,iBAAiB;IAkCzB,OAAO,CAAC,qBAAqB;IAkB7B,OAAO,CAAC,kBAAkB;IAkB1B,OAAO,CAAC,uBAAuB;IA4B/B,OAAO,CAAC,oBAAoB;IA8B5B,OAAO,CAAC,4BAA4B;IA0BpC,OAAO,CAAC,4BAA4B;IAmBpC,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,oBAAoB;IAwG5B,OAAO,CAAC,uBAAuB;IAoB/B,OAAO,CAAC,eAAe;IA2BvB,OAAO,CAAC,4BAA4B;IA4BpC,OAAO,CAAC,wBAAwB;IA+DhC,OAAO,CAAC,iBAAiB;IA4BzB;;;;;;OAMG;IACI,kBAAkB,CAAC,KAAK,CAAC,EAAE,sBAAsB,GAAG,IAAI;IAuBxD,mBAAmB,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI;IAsBpD,OAAO,CAAC,cAAc;CAWtB"}
@@ -32,6 +32,8 @@ export class WebGLRenderer {
32
32
  _maskInstructionDepth = 0;
33
33
  _renderGroupSets = new WeakMap();
34
34
  _renderGroupSetList = [];
35
+ // Logical-stage to physical-render-target transform for the current pass.
36
+ _rootTransform = new Matrix();
35
37
  _nestLevel = 0;
36
38
  constructor() {
37
39
  this._bitmapPipe = new BitmapPipe();
@@ -73,6 +75,7 @@ export class WebGLRenderer {
73
75
  this._nestLevel++;
74
76
  const ctx = buffer.context;
75
77
  ctx.pushBuffer(buffer);
78
+ this._rootTransform.copyFrom(matrix);
76
79
  buffer.setTransform(matrix.a, matrix.b, matrix.c, matrix.d, 0, 0);
77
80
  const set = this._instructionSet;
78
81
  // ── Phase A: build instructions if scene structure changed ────────────
@@ -416,13 +419,14 @@ export class WebGLRenderer {
416
419
  }
417
420
  _refreshInstructionTransform(obj, inst) {
418
421
  const cm = obj.$getConcatenatedMatrix();
422
+ const root = this._rootTransform;
419
423
  const t = inst.transform;
420
- t.a = cm.a;
421
- t.b = cm.b;
422
- t.c = cm.c;
423
- t.d = cm.d;
424
- t.tx = cm.tx;
425
- t.ty = cm.ty;
424
+ t.a = root.a * cm.a + root.c * cm.b;
425
+ t.b = root.b * cm.a + root.d * cm.b;
426
+ t.c = root.a * cm.c + root.c * cm.d;
427
+ t.d = root.b * cm.c + root.d * cm.d;
428
+ t.tx = root.a * cm.tx + root.c * cm.ty + root.tx;
429
+ t.ty = root.b * cm.tx + root.d * cm.ty + root.ty;
426
430
  t.offsetX = 0;
427
431
  t.offsetY = 0;
428
432
  t.alpha = obj.$worldAlpha;
@@ -555,12 +559,13 @@ export class WebGLRenderer {
555
559
  const ty = t.ty + t.b * t.offsetX + t.d * t.offsetY;
556
560
  if (buffer.hasOffscreenTransform) {
557
561
  const inverse = buffer.offscreenInverseTransform;
558
- m.a = inverse.a * t.a + inverse.c * t.b;
559
- m.b = inverse.b * t.a + inverse.d * t.b;
560
- m.c = inverse.a * t.c + inverse.c * t.d;
561
- m.d = inverse.b * t.c + inverse.d * t.d;
562
- m.tx = inverse.a * tx + inverse.c * ty + inverse.tx + buffer.offscreenLocalX;
563
- m.ty = inverse.b * tx + inverse.d * ty + inverse.ty + buffer.offscreenLocalY;
562
+ const resolution = buffer.resolution;
563
+ m.a = (inverse.a * t.a + inverse.c * t.b) * resolution;
564
+ m.b = (inverse.b * t.a + inverse.d * t.b) * resolution;
565
+ m.c = (inverse.a * t.c + inverse.c * t.d) * resolution;
566
+ m.d = (inverse.b * t.c + inverse.d * t.d) * resolution;
567
+ m.tx = (inverse.a * tx + inverse.c * ty + inverse.tx + buffer.offscreenLocalX) * resolution;
568
+ m.ty = (inverse.b * tx + inverse.d * ty + inverse.ty + buffer.offscreenLocalY) * resolution;
564
569
  buffer.globalAlpha = t.alpha;
565
570
  buffer.globalTintColor = t.tint;
566
571
  return;
@@ -605,12 +610,19 @@ export class WebGLRenderer {
605
610
  const $displayList = obj.$displayList;
606
611
  if (!$displayList)
607
612
  return;
608
- if (obj.$cacheDirty || obj.$renderDirty) {
609
- if ($displayList.updateSurfaceSize(buffer.context.maxTextureSize)) {
613
+ const previousWidth = $displayList.canvasBuffer.width;
614
+ const previousHeight = $displayList.canvasBuffer.height;
615
+ const previousResolution = $displayList.actualResolution;
616
+ const hasSurface = $displayList.updateSurfaceSize(buffer.context.maxTextureSize, buffer.context.resolution);
617
+ const surfaceChanged = previousWidth !== $displayList.canvasBuffer.width ||
618
+ previousHeight !== $displayList.canvasBuffer.height ||
619
+ previousResolution !== $displayList.actualResolution;
620
+ if (obj.$cacheDirty || obj.$renderDirty || surfaceChanged) {
621
+ if (hasSurface) {
610
622
  $displayList.canvasBuffer.clear();
611
623
  const resolution = $displayList.actualResolution;
612
624
  $displayList.canvasBuffer.context.setTransform(resolution, 0, 0, resolution, 0, 0);
613
- this._canvasRenderer.renderToContext(obj, $displayList.canvasBuffer.context, $displayList.offsetX, $displayList.offsetY);
625
+ this._canvasRenderer.renderToContext(obj, $displayList.canvasBuffer.context, $displayList.offsetX, $displayList.offsetY, resolution);
614
626
  $displayList.updateBitmapData();
615
627
  const bitmapData = $displayList.bitmapData;
616
628
  if (bitmapData?.webGLTexture && bitmapData.source) {
@@ -1 +1 @@
1
- {"version":3,"file":"WebGLRenderer.js","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/WebGLRenderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebGLRenderer.js","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/WebGLRenderer.ts"],"names":[],"mappings":"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"}
@@ -13,5 +13,9 @@ export declare function compileShader(gl: GL, type: number, source: string): Web
13
13
  export declare function createProgram(gl: GL, vertSrc: string, fragSrc: string): WebGLProgram;
14
14
  export declare function deleteWebGLTexture(gl: GL | undefined, texture: WebGLTexture | undefined): void;
15
15
  export declare function premultiplyTint(tint: number, alpha: number): number;
16
+ /**
17
+ * Clamps a requested offscreen resolution to the GPU texture-size limit.
18
+ */
19
+ export declare function fitTextureResolution(width: number, height: number, requestedResolution: number, maxTextureSize: number): number;
16
20
  export declare function checkWebGLSupport(): boolean;
17
21
  //# sourceMappingURL=WebGLUtils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WebGLUtils.d.ts","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/WebGLUtils.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,cAAc,qBAAqB,CAAC;AACjD,eAAO,MAAM,iBAAiB,yBAAyB,CAAC;AACxD,eAAO,MAAM,iBAAiB,wBAAwB,CAAC;AACvD,eAAO,MAAM,aAAa,qBAAqB,CAAC;AAEhD;;GAEG;AACH,MAAM,MAAM,EAAE,GAAG,sBAAsB,GAAG,qBAAqB,CAAC;AAEhE,wBAAgB,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,WAAW,CAQ/E;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,YAAY,CAWpF;AAED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,EAAE,GAAG,SAAS,EAAE,OAAO,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,CAI9F;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAQnE;AAED,wBAAgB,iBAAiB,IAAI,OAAO,CAO3C"}
1
+ {"version":3,"file":"WebGLUtils.d.ts","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/WebGLUtils.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,cAAc,qBAAqB,CAAC;AACjD,eAAO,MAAM,iBAAiB,yBAAyB,CAAC;AACxD,eAAO,MAAM,iBAAiB,wBAAwB,CAAC;AACvD,eAAO,MAAM,aAAa,qBAAqB,CAAC;AAEhD;;GAEG;AACH,MAAM,MAAM,EAAE,GAAG,sBAAsB,GAAG,qBAAqB,CAAC;AAEhE,wBAAgB,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,WAAW,CAQ/E;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,YAAY,CAWpF;AAED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,EAAE,GAAG,SAAS,EAAE,OAAO,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,CAI9F;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAQnE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CACnC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,mBAAmB,EAAE,MAAM,EAC3B,cAAc,EAAE,MAAM,GACpB,MAAM,CAGR;AAED,wBAAgB,iBAAiB,IAAI,OAAO,CAO3C"}
@@ -45,6 +45,13 @@ export function premultiplyTint(tint, alpha) {
45
45
  const B = Math.round((tint & 0xff) * alpha);
46
46
  return ((A << 24) | (R << 16) | (G << 8) | B) >>> 0;
47
47
  }
48
+ /**
49
+ * Clamps a requested offscreen resolution to the GPU texture-size limit.
50
+ */
51
+ export function fitTextureResolution(width, height, requestedResolution, maxTextureSize) {
52
+ const maxResolution = Math.min(maxTextureSize / width, maxTextureSize / height);
53
+ return Math.max(Math.min(requestedResolution, maxResolution), Number.EPSILON);
54
+ }
48
55
  export function checkWebGLSupport() {
49
56
  try {
50
57
  const canvas = document.createElement('canvas');
@@ -1 +1 @@
1
- {"version":3,"file":"WebGLUtils.js","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/WebGLUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebGLUtils.js","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/WebGLUtils.ts"],"names":[],"mappings":"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"}
@@ -26,7 +26,7 @@ export class Capabilities {
26
26
  /**
27
27
  * Current Kurot engine version.
28
28
  */
29
- static engineVersion = '1.0.16';
29
+ static engineVersion = '1.0.19';
30
30
  /**
31
31
  * Width of the canvas bounding client rect in CSS pixels.
32
32
  * Updated by ScreenAdapter on every resize.
@@ -10,11 +10,13 @@ export declare class InputController {
10
10
  private _text;
11
11
  private _isFocus;
12
12
  private _stageTextAdded;
13
+ private _caretTimer;
13
14
  constructor(text: TextField);
14
15
  addStageText(): void;
15
16
  removeStageText(): void;
16
- getText(): string;
17
17
  setText(value: string): void;
18
+ setSelection(beginIndex: number, endIndex: number): void;
19
+ setScrollTop(value: number): void;
18
20
  setColor(value: number): void;
19
21
  focus(active?: boolean): void;
20
22
  hideInput(): void;
@@ -22,8 +24,15 @@ export declare class InputController {
22
24
  private onFocus;
23
25
  private onBlur;
24
26
  private onTouchBegin;
25
- private onTouchMove;
27
+ private onTouchTap;
26
28
  private onStageDown;
27
29
  private onUpdateText;
30
+ private onUpdateSelection;
31
+ private onUpdateComposition;
32
+ private onUpdateScroll;
33
+ private syncSelection;
34
+ private startCaretBlink;
35
+ private restartCaretBlink;
36
+ private stopCaretBlink;
28
37
  }
29
38
  //# sourceMappingURL=InputController.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"InputController.d.ts","sourceRoot":"","sources":["../../../src/kurot/text/InputController.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C;;;;GAIG;AACH,qBAAa,eAAe;IAGpB,SAAS,EAAE,SAAS,CAAC;IAE5B,OAAO,CAAC,KAAK,CAAY;IACzB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,eAAe,CAAS;gBAIb,IAAI,EAAE,SAAS;IAM3B,YAAY,IAAI,IAAI;IAepB,eAAe,IAAI,IAAI;IAmBvB,OAAO,IAAI,MAAM;IAIjB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI5B,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI7B,KAAK,CAAC,MAAM,UAAQ,GAAG,IAAI;IAa3B,SAAS,IAAI,IAAI;IAIjB,gBAAgB,IAAI,IAAI;IAW/B,OAAO,CAAC,OAAO,CAMb;IAEF,OAAO,CAAC,MAAM,CAQZ;IAEF,OAAO,CAAC,YAAY,CAElB;IAEF,OAAO,CAAC,WAAW,CAEjB;IAEF,OAAO,CAAC,WAAW,CAIjB;IAEF,OAAO,CAAC,YAAY,CAiBlB;CACF"}
1
+ {"version":3,"file":"InputController.d.ts","sourceRoot":"","sources":["../../../src/kurot/text/InputController.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C;;;;GAIG;AACH,qBAAa,eAAe;IAGpB,SAAS,EAAE,SAAS,CAAC;IAE5B,OAAO,CAAC,KAAK,CAAY;IACzB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,WAAW,CAAK;gBAIL,IAAI,EAAE,SAAS;IAM3B,YAAY,IAAI,IAAI;IAkBpB,eAAe,IAAI,IAAI;IAuBvB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI5B,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIxD,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIjC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI7B,KAAK,CAAC,MAAM,UAAQ,GAAG,IAAI;IAa3B,SAAS,IAAI,IAAI;IAIjB,gBAAgB,IAAI,IAAI;IAe/B,OAAO,CAAC,OAAO,CAOb;IAEF,OAAO,CAAC,MAAM,CASZ;IAEF,OAAO,CAAC,YAAY,CAGlB;IAEF,OAAO,CAAC,UAAU,CAEhB;IAEF,OAAO,CAAC,WAAW,CAIjB;IAEF,OAAO,CAAC,YAAY,CAuBlB;IAEF,OAAO,CAAC,iBAAiB,CAGvB;IAEF,OAAO,CAAC,mBAAmB,CAOzB;IAEF,OAAO,CAAC,cAAc,CAMpB;IAEF,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,cAAc;CAKtB"}
@@ -13,6 +13,7 @@ export class InputController {
13
13
  _text;
14
14
  _isFocus = false;
15
15
  _stageTextAdded = false;
16
+ _caretTimer = 0;
16
17
  // ── Constructor ───────────────────────────────────────────────────────────
17
18
  constructor(text) {
18
19
  this._text = text;
@@ -25,10 +26,13 @@ export class InputController {
25
26
  this._text.touchEnabled = true;
26
27
  this.stageText.addToStage();
27
28
  this.stageText.addEventListener('updateText', this.onUpdateText);
29
+ this.stageText.addEventListener('updateSelection', this.onUpdateSelection);
30
+ this.stageText.addEventListener('updateComposition', this.onUpdateComposition);
31
+ this.stageText.addEventListener('updateScroll', this.onUpdateScroll);
28
32
  this.stageText.addEventListener('focus', this.onFocus);
29
33
  this.stageText.addEventListener('blur', this.onBlur);
30
34
  this._text.addEventListener(TouchEvent.TOUCH_BEGIN, this.onTouchBegin);
31
- this._text.addEventListener(TouchEvent.TOUCH_MOVE, this.onTouchMove);
35
+ this._text.addEventListener(TouchEvent.TOUCH_TAP, this.onTouchTap);
32
36
  this._stageTextAdded = true;
33
37
  }
34
38
  removeStageText() {
@@ -36,23 +40,30 @@ export class InputController {
36
40
  return;
37
41
  this.stageText.removeFromStage();
38
42
  this.stageText.removeEventListener('updateText', this.onUpdateText);
43
+ this.stageText.removeEventListener('updateSelection', this.onUpdateSelection);
44
+ this.stageText.removeEventListener('updateComposition', this.onUpdateComposition);
45
+ this.stageText.removeEventListener('updateScroll', this.onUpdateScroll);
39
46
  this.stageText.removeEventListener('focus', this.onFocus);
40
47
  this.stageText.removeEventListener('blur', this.onBlur);
41
48
  this._text.removeEventListener(TouchEvent.TOUCH_BEGIN, this.onTouchBegin);
42
- this._text.removeEventListener(TouchEvent.TOUCH_MOVE, this.onTouchMove);
49
+ this._text.removeEventListener(TouchEvent.TOUCH_TAP, this.onTouchTap);
43
50
  this._text.stage?.removeEventListener(TouchEvent.TOUCH_BEGIN, this.onStageDown);
44
51
  if (this._isFocus) {
45
52
  this._isFocus = false;
53
+ this.stopCaretBlink();
46
54
  this._text.setIsTyping(false);
47
55
  }
48
56
  this._stageTextAdded = false;
49
57
  }
50
- getText() {
51
- return this.stageText.getText();
52
- }
53
58
  setText(value) {
54
59
  this.stageText.setText(value);
55
60
  }
61
+ setSelection(beginIndex, endIndex) {
62
+ this.stageText.setSelection(beginIndex, endIndex);
63
+ }
64
+ setScrollTop(value) {
65
+ this.stageText.setScrollTop(value);
66
+ }
56
67
  setColor(value) {
57
68
  this.stageText.setColor(value);
58
69
  }
@@ -72,6 +83,10 @@ export class InputController {
72
83
  this.stageText.removeFromStage();
73
84
  }
74
85
  updateProperties() {
86
+ if (!this._stageTextAdded) {
87
+ this.stageText.setText(this._text.text);
88
+ return;
89
+ }
75
90
  if (this._isFocus) {
76
91
  this.stageText.resetStageText();
77
92
  return;
@@ -84,23 +99,26 @@ export class InputController {
84
99
  if (!this._isFocus) {
85
100
  this._isFocus = true;
86
101
  this._text.setIsTyping(true);
102
+ this.startCaretBlink();
87
103
  this._text.dispatchEvent(new FocusEvent(FocusEvent.FOCUS_IN, true));
88
104
  }
89
105
  };
90
106
  onBlur = () => {
91
107
  if (this._isFocus) {
92
108
  this._isFocus = false;
109
+ this.stopCaretBlink();
93
110
  this._text.stage?.removeEventListener(TouchEvent.TOUCH_BEGIN, this.onStageDown);
94
111
  this._text.setIsTyping(false);
95
112
  this.stageText.onBlur();
96
113
  this._text.dispatchEvent(new FocusEvent(FocusEvent.FOCUS_OUT, true));
97
114
  }
98
115
  };
99
- onTouchBegin = () => {
100
- this.focus();
116
+ onTouchBegin = (event) => {
117
+ const index = this._text.$getInputIndexAt(event.localX, event.localY);
118
+ this._text.setSelection(index, index);
101
119
  };
102
- onTouchMove = () => {
103
- this.stageText.hide();
120
+ onTouchTap = () => {
121
+ this.focus();
104
122
  };
105
123
  onStageDown = (e) => {
106
124
  if (e.target !== this._text) {
@@ -109,21 +127,69 @@ export class InputController {
109
127
  };
110
128
  onUpdateText = () => {
111
129
  let textValue = this.stageText.getText();
112
- const restrictAnd = this._text.restrictAnd;
113
- const restrictNot = this._text.restrictNot;
114
- if (restrictAnd !== undefined) {
115
- const reg = new RegExp('[' + restrictAnd + ']', 'g');
116
- const result = textValue.match(reg);
117
- textValue = result ? result.join('') : '';
118
- }
119
- if (restrictNot !== undefined) {
120
- textValue = textValue.replace(new RegExp('[' + restrictNot + ']', 'g'), '');
130
+ if (!this.stageText.isComposing) {
131
+ const restrictAnd = this._text.restrictAnd;
132
+ const restrictNot = this._text.restrictNot;
133
+ if (restrictAnd !== undefined) {
134
+ const reg = new RegExp('[' + restrictAnd + ']', 'g');
135
+ const result = textValue.match(reg);
136
+ textValue = result ? result.join('') : '';
137
+ }
138
+ if (restrictNot !== undefined) {
139
+ textValue = textValue.replace(new RegExp('[' + restrictNot + ']', 'g'), '');
140
+ }
121
141
  }
122
142
  if (this.stageText.getText() !== textValue) {
123
143
  this.stageText.setText(textValue);
124
144
  }
125
- this._text.text = textValue;
126
- this._text.dispatchEvent(new Event(Event.CHANGE, true));
145
+ const changed = this._text.$setTextFromInput(textValue);
146
+ this.syncSelection();
147
+ this.restartCaretBlink();
148
+ if (changed) {
149
+ this._text.dispatchEvent(new Event(Event.CHANGE, true));
150
+ }
127
151
  };
152
+ onUpdateSelection = () => {
153
+ this.syncSelection();
154
+ this.restartCaretBlink();
155
+ };
156
+ onUpdateComposition = () => {
157
+ const range = this.stageText.getCompositionRange();
158
+ if (range) {
159
+ this._text.$setCompositionRange(range[0], range[1]);
160
+ }
161
+ else {
162
+ this._text.$setCompositionRange();
163
+ }
164
+ };
165
+ onUpdateScroll = () => {
166
+ const scrollTop = this.stageText.getScrollTop();
167
+ this._text.$setInputScrollY(scrollTop);
168
+ if (this._text.$inputScrollY !== scrollTop) {
169
+ this.stageText.setScrollTop(this._text.$inputScrollY);
170
+ }
171
+ };
172
+ syncSelection() {
173
+ const [begin, end] = this.stageText.getSelection();
174
+ this._text.$setSelectionFromInput(begin, end);
175
+ }
176
+ startCaretBlink() {
177
+ this.stopCaretBlink();
178
+ this._text.$setCaretVisible(true);
179
+ this._caretTimer = window.setInterval(() => {
180
+ this._text.$setCaretVisible(!this._text.$caretVisible);
181
+ }, 500);
182
+ }
183
+ restartCaretBlink() {
184
+ if (!this._isFocus)
185
+ return;
186
+ this.startCaretBlink();
187
+ }
188
+ stopCaretBlink() {
189
+ if (this._caretTimer === 0)
190
+ return;
191
+ window.clearInterval(this._caretTimer);
192
+ this._caretTimer = 0;
193
+ }
128
194
  }
129
195
  //# sourceMappingURL=InputController.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InputController.js","sourceRoot":"","sources":["../../../src/kurot/text/InputController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InputController.js","sourceRoot":"","sources":["../../../src/kurot/text/InputController.ts"],"names":[],"mappings":"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"}
@@ -9,11 +9,19 @@ export declare class StageText extends EventDispatcher {
9
9
  private _inputDiv?;
10
10
  private _text;
11
11
  private _compositionLock;
12
+ private _compositionStart;
13
+ private _compositionEnd;
12
14
  private _clearing;
13
15
  private _isShowing;
14
16
  setTextField(textField: TextField): void;
15
17
  getText(): string;
18
+ get isComposing(): boolean;
19
+ getCompositionRange(): [number, number] | undefined;
16
20
  setText(value: string): void;
21
+ setSelection(beginIndex: number, endIndex: number): void;
22
+ getSelection(): [number, number];
23
+ getScrollTop(): number;
24
+ setScrollTop(value: number): void;
17
25
  setColor(value: number): void;
18
26
  show(_active?: boolean): void;
19
27
  hide(): void;
@@ -27,6 +35,11 @@ export declare class StageText extends EventDispatcher {
27
35
  private clearInputElement;
28
36
  private setAreaHeight;
29
37
  private onTextInput;
38
+ private onSelectionChange;
39
+ private onScroll;
40
+ private dispatchScrollChange;
41
+ private dispatchSelectionChange;
42
+ private dispatchCompositionChange;
30
43
  private getCanvas;
31
44
  }
32
45
  //# sourceMappingURL=StageText.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StageText.d.ts","sourceRoot":"","sources":["../../../src/kurot/text/StageText.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD;;GAEG;AACH,qBAAa,SAAU,SAAQ,eAAe;IAC7C,OAAO,CAAC,UAAU,CAAC,CAAY;IAC/B,OAAO,CAAC,aAAa,CAAC,CAAyC;IAC/D,OAAO,CAAC,SAAS,CAAC,CAAiB;IACnC,OAAO,CAAC,KAAK,CAAM;IACnB,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,UAAU,CAAS;IAE3B,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAIxC,OAAO,IAAI,MAAM;IAIjB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK5B,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAM7B,IAAI,CAAC,OAAO,UAAQ,GAAG,IAAI;IAa3B,IAAI,IAAI,IAAI;IAIZ,UAAU,IAAI,IAAI;IAIlB,eAAe,IAAI,IAAI;IASvB,MAAM,IAAI,IAAI;IAGd,cAAc,IAAI,IAAI;IA0CtB,OAAO,CAAC,cAAc;IAiEtB,OAAO,CAAC,mBAAmB;IAmC3B,OAAO,CAAC,WAAW;IAgBnB,OAAO,CAAC,iBAAiB;IA8BzB,OAAO,CAAC,aAAa;IAiBrB,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,SAAS;CAGjB"}
1
+ {"version":3,"file":"StageText.d.ts","sourceRoot":"","sources":["../../../src/kurot/text/StageText.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD;;GAEG;AACH,qBAAa,SAAU,SAAQ,eAAe;IAC7C,OAAO,CAAC,UAAU,CAAC,CAAY;IAC/B,OAAO,CAAC,aAAa,CAAC,CAAyC;IAC/D,OAAO,CAAC,SAAS,CAAC,CAAiB;IACnC,OAAO,CAAC,KAAK,CAAM;IACnB,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,iBAAiB,CAAM;IAC/B,OAAO,CAAC,eAAe,CAAM;IAC7B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,UAAU,CAAS;IAE3B,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAIxC,OAAO,IAAI,MAAM;IAIjB,IAAW,WAAW,IAAI,OAAO,CAEhC;IAEM,mBAAmB,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS;IAK1D,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKrB,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IASxD,YAAY,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC;IAShC,YAAY,IAAI,MAAM;IAMtB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMxC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAM7B,IAAI,CAAC,OAAO,UAAQ,GAAG,IAAI;IAa3B,IAAI,IAAI,IAAI;IAIZ,UAAU,IAAI,IAAI;IAIlB,eAAe,IAAI,IAAI;IASvB,MAAM,IAAI,IAAI;IAGd,cAAc,IAAI,IAAI;IAsDtB,OAAO,CAAC,cAAc;IA4EtB,OAAO,CAAC,mBAAmB;IAsC3B,OAAO,CAAC,WAAW;IAkBnB,OAAO,CAAC,iBAAiB;IAkCzB,OAAO,CAAC,aAAa;IAiBrB,OAAO,CAAC,WAAW,CAcjB;IAEF,OAAO,CAAC,iBAAiB,CAGvB;IAEF,OAAO,CAAC,QAAQ,CAEd;IAEF,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,uBAAuB;IAI/B,OAAO,CAAC,yBAAyB;IAIjC,OAAO,CAAC,SAAS;CAGjB"}