MCPcopy
hub / github.com/ChartGPU/ChartGPU / dispose

Function dispose

src/ChartGPU.ts:1266–1300  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

1264 canvas.addEventListener('pointerup', onPointerUp, { passive: true });
1265
1266 const dispose = (): void => {
1267 if (disposed) return;
1268 disposed = true;
1269
1270 try {
1271 // Requirement: dispose order: cancel RAF, coordinator.dispose(), gpuContext.destroy(), remove canvas.
1272 cancelPendingFrame();
1273 disposeDataZoomUi();
1274 unbindCoordinatorInteractionXChange();
1275 coordinator?.dispose();
1276 coordinator = null;
1277 coordinatorTargetFormat = null;
1278 gpuContext?.destroy();
1279 } finally {
1280 tapCandidate = null;
1281 suppressNextLostPointerCaptureId = null;
1282 hovered = null;
1283 interactionScalesCache = null;
1284
1285 canvas.removeEventListener('pointermove', onPointerMove);
1286 canvas.removeEventListener('pointerleave', onPointerLeave);
1287 canvas.removeEventListener('pointercancel', onPointerCancel);
1288 canvas.removeEventListener('lostpointercapture', onLostPointerCapture);
1289 canvas.removeEventListener('pointerdown', onPointerDown);
1290 canvas.removeEventListener('pointerup', onPointerUp);
1291
1292 listeners.click.clear();
1293 listeners.mouseover.clear();
1294 listeners.mouseout.clear();
1295 listeners.crosshairMove.clear();
1296
1297 gpuContext = null;
1298 canvas.remove();
1299 }
1300 };
1301
1302 const instance: ChartGPUInstance = {
1303 get options() {

Callers 1

createChartGPUFunction · 0.70

Calls 6

cancelPendingFrameFunction · 0.85
disposeDataZoomUiFunction · 0.85
disposeMethod · 0.65
clearMethod · 0.65
destroyMethod · 0.45

Tested by

no test coverage detected