Update DragBox to use only condition for filtering

- Remove mouseOnly and mouseActionButton hardcoded filters
- Default condition to mouseActionButton
This commit is contained in:
Greg Gianforcaro
2019-11-19 22:46:04 -05:00
parent 32932a7fd3
commit 2df22af3ca

View File

@@ -3,7 +3,7 @@
*/ */
// FIXME draw drag box // FIXME draw drag box
import Event from '../events/Event.js'; import Event from '../events/Event.js';
import {always, mouseOnly, mouseActionButton} from '../events/condition.js'; import {mouseActionButton} from '../events/condition.js';
import {VOID} from '../functions.js'; import {VOID} from '../functions.js';
import PointerInteraction from './Pointer.js'; import PointerInteraction from './Pointer.js';
import RenderBox from '../render/Box.js'; import RenderBox from '../render/Box.js';
@@ -148,7 +148,7 @@ class DragBox extends PointerInteraction {
* @private * @private
* @type {import("../events/condition.js").Condition} * @type {import("../events/condition.js").Condition}
*/ */
this.condition_ = options.condition ? options.condition : always; this.condition_ = options.condition ? options.condition : mouseActionButton;
/** /**
* @private * @private
@@ -186,10 +186,6 @@ class DragBox extends PointerInteraction {
* @inheritDoc * @inheritDoc
*/ */
handleDragEvent(mapBrowserEvent) { handleDragEvent(mapBrowserEvent) {
if (!mouseOnly(mapBrowserEvent)) {
return;
}
this.box_.setPixels(this.startPixel_, mapBrowserEvent.pixel); this.box_.setPixels(this.startPixel_, mapBrowserEvent.pixel);
this.dispatchEvent(new DragBoxEvent(DragBoxEventType.BOXDRAG, this.dispatchEvent(new DragBoxEvent(DragBoxEventType.BOXDRAG,
@@ -200,10 +196,6 @@ class DragBox extends PointerInteraction {
* @inheritDoc * @inheritDoc
*/ */
handleUpEvent(mapBrowserEvent) { handleUpEvent(mapBrowserEvent) {
if (!mouseOnly(mapBrowserEvent)) {
return true;
}
this.box_.setMap(null); this.box_.setMap(null);
if (this.boxEndCondition_(mapBrowserEvent, this.startPixel_, mapBrowserEvent.pixel)) { if (this.boxEndCondition_(mapBrowserEvent, this.startPixel_, mapBrowserEvent.pixel)) {
@@ -218,12 +210,7 @@ class DragBox extends PointerInteraction {
* @inheritDoc * @inheritDoc
*/ */
handleDownEvent(mapBrowserEvent) { handleDownEvent(mapBrowserEvent) {
if (!mouseOnly(mapBrowserEvent)) { if (this.condition_(mapBrowserEvent)) {
return false;
}
if (mouseActionButton(mapBrowserEvent) &&
this.condition_(mapBrowserEvent)) {
this.startPixel_ = mapBrowserEvent.pixel; this.startPixel_ = mapBrowserEvent.pixel;
this.box_.setMap(mapBrowserEvent.map); this.box_.setMap(mapBrowserEvent.map);
this.box_.setPixels(this.startPixel_, this.startPixel_); this.box_.setPixels(this.startPixel_, this.startPixel_);