konva
Version:
<p align="center"> <img src="https://raw.githubusercontent.com/konvajs/konvajs.github.io/master/apple-touch-icon-180x180.png" alt="Konva logo" height="180" /> </p>
40 lines (39 loc) • 1.24 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
var Captures = new Map();
function getCapturedShape(pointerId) {
return Captures.get(pointerId);
}
exports.getCapturedShape = getCapturedShape;
function createEvent(evt) {
return {
evt: evt,
pointerId: evt.pointerId
};
}
exports.createEvent = createEvent;
function hasPointerCapture(pointerId, shape) {
return Captures.get(pointerId) === shape;
}
exports.hasPointerCapture = hasPointerCapture;
function setPointerCapture(pointerId, shape) {
releaseCapture(pointerId);
var stage = shape.getStage();
if (!stage)
return;
Captures.set(pointerId, shape);
shape._fire('gotpointercapture', createEvent(new PointerEvent('gotpointercapture')));
}
exports.setPointerCapture = setPointerCapture;
function releaseCapture(pointerId, target) {
var shape = Captures.get(pointerId);
if (!shape)
return;
var stage = shape.getStage();
if (stage && stage.content) {
stage.content.releasePointerCapture(pointerId);
}
Captures.delete(pointerId);
shape._fire('lostpointercapture', createEvent(new PointerEvent('lostpointercapture')));
}
exports.releaseCapture = releaseCapture;
;