Merge pull request #10502 from walkermatt/stopevent-removed-target

Stop events that originate with a removed target
This commit is contained in:
Andreas Hocevar
2020-01-17 21:34:39 +01:00
committed by GitHub
6 changed files with 26 additions and 19 deletions

View File

@@ -15,7 +15,6 @@ import Polygon from '../../../../src/ol/geom/Polygon.js';
import Draw, {createRegularPolygon, createBox} from '../../../../src/ol/interaction/Draw.js';
import Interaction from '../../../../src/ol/interaction/Interaction.js';
import VectorLayer from '../../../../src/ol/layer/Vector.js';
import Event from '../../../../src/ol/events/Event.js';
import VectorSource from '../../../../src/ol/source/Vector.js';
import {clearUserProjection, setUserProjection, transform} from '../../../../src/ol/proj.js';
import {register} from '../../../../src/ol/proj/proj4.js';
@@ -73,8 +72,9 @@ describe('ol.interaction.Draw', function() {
// calculated in case body has top < 0 (test runner with small window)
const position = viewport.getBoundingClientRect();
const shiftKey = opt_shiftKey !== undefined ? opt_shiftKey : false;
const event = new Event();
const event = {};
event.type = type;
event.target = viewport.firstChild;
event.clientX = position.left + x + width / 2;
event.clientY = position.top + y + height / 2;
event.shiftKey = shiftKey;

View File

@@ -2,7 +2,6 @@ import Map from '../../../../src/ol/Map.js';
import MapBrowserPointerEvent from '../../../../src/ol/MapBrowserPointerEvent.js';
import View from '../../../../src/ol/View.js';
import ExtentInteraction from '../../../../src/ol/interaction/Extent.js';
import Event from '../../../../src/ol/events/Event.js';
describe('ol.interaction.Extent', function() {
let map, interaction;
@@ -50,8 +49,9 @@ describe('ol.interaction.Extent', function() {
// calculated in case body has top < 0 (test runner with small window)
const position = viewport.getBoundingClientRect();
const shiftKey = opt_shiftKey !== undefined ? opt_shiftKey : false;
const pointerEvent = new Event();
const pointerEvent = {};
pointerEvent.type = type;
pointerEvent.target = viewport.firstChild;
pointerEvent.button = button;
pointerEvent.clientX = position.left + x + width / 2;
pointerEvent.clientY = position.top - y + height / 2;

View File

@@ -84,6 +84,7 @@ describe('ol.interaction.Modify', function() {
const position = viewport.getBoundingClientRect();
const pointerEvent = new Event();
pointerEvent.type = type;
pointerEvent.target = viewport.firstChild;
pointerEvent.clientX = position.left + x + width / 2;
pointerEvent.clientY = position.top + y + height / 2;
pointerEvent.shiftKey = modifiers.shift || false;

View File

@@ -91,11 +91,13 @@ describe('ol.interaction.Select', function() {
// calculated in case body has top < 0 (test runner with small window)
const position = viewport.getBoundingClientRect();
const shiftKey = opt_shiftKey !== undefined ? opt_shiftKey : false;
const event = new PointerEvent(type, {
const event = {
type: type,
target: viewport.firstChild,
clientX: position.left + x + width / 2,
clientY: position.top + y + height / 2,
shiftKey: shiftKey
});
};
map.handleMapBrowserEvent(new MapBrowserPointerEvent(type, map, event));
}

View File

@@ -65,13 +65,15 @@ describe('ol.interaction.Translate', function() {
// calculated in case body has top < 0 (test runner with small window)
const position = viewport.getBoundingClientRect();
const shiftKey = opt_shiftKey !== undefined ? opt_shiftKey : false;
const event = new MapBrowserPointerEvent(type, map,
new PointerEvent(type, {
clientX: position.left + x + width / 2,
clientY: position.top + y + height / 2,
shiftKey: shiftKey,
preventDefault: function() {}
}));
const event = new MapBrowserPointerEvent(type, map, {
type: type,
target: viewport.firstChild,
pointerId: 0,
clientX: position.left + x + width / 2,
clientY: position.top + y + height / 2,
shiftKey: shiftKey,
preventDefault: function() {}
});
map.handleMapBrowserEvent(event);
}