Converts wheel events to a fixed value, trying to have a consistent behavior from browser to browsers.
Warning: Wheel events values may change from browser version changes.
Default implementation is given here:
import { BrowserType, WheelConverterInterface } from 'generated_files/documentation/appinfiniteapi';// Wheel events are not really consistent from browser to browser// this default implementation runs on current usual browsersclass DefaultWheelConverter implements WheelConverterInterface{ // convert wheel event depending on browser and version convertWheelEvent(pEvent: WheelEvent, pBrowserTpe : BrowserType, pIsEdgeChromium: boolean, _pBrowserVersion : string) : number { switch (pBrowserTpe) { // firefox case BrowserType.firefox: return pEvent.deltaY * -1; // wheel value 3 // safari case BrowserType.safari: // (pEvent['wheelDelta'] < 0 ? -1 : 1) return Math.min(24, Math.abs(pEvent['wheelDelta'])) * (1 - 2 * (<any>(pEvent['wheelDelta'] < 0) | 0)) * -15; // wheel value 12 // edge case BrowserType.edge: if (pIsEdgeChromium) { return pEvent['wheelDelta']; } return pEvent['wheelDelta'] * 1.5; // wheel value 120 // internet explorer case BrowserType.ie: return pEvent.deltaY * -0.9; // wheel value 198.3 // default, mainly chrome default: if (pEvent['wheelDelta'] !== undefined) { return pEvent['wheelDelta']; // wheel value 180 } if (pEvent.deltaY !== undefined) { return pEvent.deltaY * -60; } return 0; } }}export { DefaultWheelConverter }; Copy
import { BrowserType, WheelConverterInterface } from 'generated_files/documentation/appinfiniteapi';// Wheel events are not really consistent from browser to browser// this default implementation runs on current usual browsersclass DefaultWheelConverter implements WheelConverterInterface{ // convert wheel event depending on browser and version convertWheelEvent(pEvent: WheelEvent, pBrowserTpe : BrowserType, pIsEdgeChromium: boolean, _pBrowserVersion : string) : number { switch (pBrowserTpe) { // firefox case BrowserType.firefox: return pEvent.deltaY * -1; // wheel value 3 // safari case BrowserType.safari: // (pEvent['wheelDelta'] < 0 ? -1 : 1) return Math.min(24, Math.abs(pEvent['wheelDelta'])) * (1 - 2 * (<any>(pEvent['wheelDelta'] < 0) | 0)) * -15; // wheel value 12 // edge case BrowserType.edge: if (pIsEdgeChromium) { return pEvent['wheelDelta']; } return pEvent['wheelDelta'] * 1.5; // wheel value 120 // internet explorer case BrowserType.ie: return pEvent.deltaY * -0.9; // wheel value 198.3 // default, mainly chrome default: if (pEvent['wheelDelta'] !== undefined) { return pEvent['wheelDelta']; // wheel value 180 } if (pEvent.deltaY !== undefined) { return pEvent.deltaY * -60; } return 0; } }}export { DefaultWheelConverter };
Extracts the wheel event value used by the Infinite api to move the camera.
The consistent wheel event value extracted from the wheel event.
Converts wheel events to a fixed value, trying to have a consistent behavior from browser to browsers.
Warning: Wheel events values may change from browser version changes.
Default implementation is given here:
Wheel Converters are installed/removed from InfiniteApiControllerInterface.setWheelConverter and InfiniteApiControllerInterface.restoreDefaultWheelConverter.
See