virtual-tree-canvas 0.7.1 → 0.7.2

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.7.2 — 2026-09-13
4
+
5
+ ### Fixed
6
+
7
+ - Repaint initially visible row-action icons when their asynchronous SVG raster finishes loading.
8
+
3
9
  ## 0.7.1
4
10
 
5
11
  - Coalesce dynamic state patches by node until the next frame and ignore repeated values.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "virtual-tree-canvas",
3
- "version": "0.7.1",
3
+ "version": "0.7.2",
4
4
  "description": "High-performance Canvas2D virtual tree/table widget for very large hierarchical datasets.",
5
5
  "type": "module",
6
6
  "main": "./src/index.js",
@@ -13,6 +13,12 @@ export class RowActions {
13
13
  this.incrementalUpdates = 0;
14
14
  this.themeToken = 0;
15
15
  this.theme = null;
16
+ this.stopIconListener = this.controller.iconRegistry.onChange?.(() => {
17
+ for (const button of this.buttons.values()) {
18
+ if (button._vtcKind !== 'checkbox') button.firstChild._vtcDrawKey = null;
19
+ }
20
+ this.controller.requestRender(true);
21
+ }) ?? null;
16
22
  this.element = controller.canvas.ownerDocument.createElement('div');
17
23
  Object.assign(this.element.style, {
18
24
  position: 'absolute', overflow: 'hidden', pointerEvents: 'none', zIndex: '2'
@@ -215,6 +221,8 @@ export class RowActions {
215
221
  }
216
222
 
217
223
  destroy() {
224
+ this.stopIconListener?.();
225
+ this.stopIconListener = null;
218
226
  this.element.remove();
219
227
  this.buttons.clear();
220
228
  this.buttonsByNodeId.clear();