UNPKG

@devexperts/dxcharts-lite

Version:
55 lines (54 loc) 2.71 kB
/* * Copyright (C) 2019 - 2026 Devexperts Solutions IE Limited * This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. * If a copy of the MPL was not distributed with this file, You can obtain one at https://mozilla.org/MPL/2.0/. */ import { CanvasAnimation } from '../../../../../animation/canvas-animation'; import { CanvasBoundsContainer } from '../../../../../canvas/canvas-bounds-container'; import { FullChartConfig } from '../../../../../chart.config'; import EventBus from '../../../../../events/event-bus'; import { CanvasInputListenerComponent, Point } from '../../../../../inputlisteners/canvas-input-listener.component'; import { ScaleModel } from '../../../../../model/scale.model'; import { HitTestCanvasModel } from '../../../../../model/hit-test-canvas.model'; import { ChartPanComponent } from '../../../../../components/pan/chart-pan.component'; import { ChartAreaPanHandler, ChartPanningOptions } from '../../../../../components/chart/chart-area-pan.handler'; /** * SafariChartAreaPanHandler is a class that handles the panning and zooming of the chart area for Safari. */ export declare class SafariChartAreaPanHandler extends ChartAreaPanHandler { protected bus: EventBus; protected config: FullChartConfig; protected scale: ScaleModel; protected canvasInputListener: CanvasInputListenerComponent; protected canvasBoundsContainer: CanvasBoundsContainer; protected canvasAnimation: CanvasAnimation; protected chartPanComponent: ChartPanComponent; protected hitTestCanvasModel: HitTestCanvasModel; protected currentPoint: Point; xDraggedCandlesDelta: number; lastXStart: number; wheelThrottleTime: number; private wheelSubscription; private initFrameId; private isActivated; private lastWheelTime; private wheelCount; private consecutiveLowWheelEvents; chartPanningOptions: ChartPanningOptions; constructor(bus: EventBus, config: FullChartConfig, scale: ScaleModel, canvasInputListener: CanvasInputListenerComponent, canvasBoundsContainer: CanvasBoundsContainer, canvasAnimation: CanvasAnimation, chartPanComponent: ChartPanComponent, hitTestCanvasModel: HitTestCanvasModel); /** * This method is used to activate the zoom functionality of the canvas. It extends the doActivate method of the parent class. * @protected * @returns {void} */ protected doActivate(): void; /** * Creates wheel subscription with optimized throttling */ private createWheelSubscription; /** * Manual cleanup trigger for immediate performance recovery */ triggerPerformanceCleanup(): void; protected doDeactivate(): void; }