mirror of
https://github.com/konvajs/konva.git
synced 2025-04-05 20:48:28 +08:00
pointer support check
This commit is contained in:
parent
0975848dd7
commit
c4be177c9d
2
konva.min.js
vendored
2
konva.min.js
vendored
File diff suppressed because one or more lines are too long
@ -201,7 +201,7 @@ export const Konva = {
|
||||
// user agent
|
||||
UA: _parseUA((glob.navigator && glob.navigator.userAgent) || ''),
|
||||
document: glob.document,
|
||||
// insert Konva into global namaspace (window)
|
||||
// insert Konva into global namespace (window)
|
||||
// it is required for npm packages
|
||||
_injectGlobal(Konva) {
|
||||
glob.Konva = Konva;
|
||||
|
@ -1,10 +1,15 @@
|
||||
import { KonvaEventObject } from './Node';
|
||||
import { Konva } from './Global';
|
||||
|
||||
import { Shape } from './Shape';
|
||||
import { Stage } from './Stage';
|
||||
|
||||
const Captures = new Map<number, Shape | Stage>();
|
||||
|
||||
// we may use this module for capturing touch events too
|
||||
// so make sure we don't do something super specific to pointer
|
||||
const SUPPORT_POINTER_EVENTS = Konva._global['PointerEvent'] !== undefined;
|
||||
|
||||
export interface KonvaPointerEvent extends KonvaEventObject<PointerEvent> {
|
||||
pointerId: number;
|
||||
}
|
||||
@ -32,10 +37,12 @@ export function setPointerCapture(pointerId: number, shape: Shape | Stage) {
|
||||
|
||||
Captures.set(pointerId, shape);
|
||||
|
||||
shape._fire(
|
||||
'gotpointercapture',
|
||||
createEvent(new PointerEvent('gotpointercapture'))
|
||||
);
|
||||
if (SUPPORT_POINTER_EVENTS) {
|
||||
shape._fire(
|
||||
'gotpointercapture',
|
||||
createEvent(new PointerEvent('gotpointercapture'))
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
export function releaseCapture(pointerId: number, target?: Shape | Stage) {
|
||||
@ -51,8 +58,10 @@ export function releaseCapture(pointerId: number, target?: Shape | Stage) {
|
||||
|
||||
Captures.delete(pointerId);
|
||||
|
||||
shape._fire(
|
||||
'lostpointercapture',
|
||||
createEvent(new PointerEvent('lostpointercapture'))
|
||||
);
|
||||
if (SUPPORT_POINTER_EVENTS) {
|
||||
shape._fire(
|
||||
'lostpointercapture',
|
||||
createEvent(new PointerEvent('lostpointercapture'))
|
||||
);
|
||||
}
|
||||
}
|
||||
|
2797
test/hammer.js
2797
test/hammer.js
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user