Skip to content

Commit 2a358da

Browse files
committed
Avoid text selection when lassoing
1 parent a4f5061 commit 2a358da

3 files changed

Lines changed: 52 additions & 39 deletions

File tree

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
## Next
22

3+
## v0.18.7
4+
5+
- Avoid text selection when lassoing
6+
37
## v0.18.6
48

59
- Optimize density-based opacity encoding

package-lock.json

Lines changed: 36 additions & 36 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/index.js

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -758,6 +758,7 @@ const createScatterplot = (initialProperties = {}) => {
758758
mouseDown = false;
759759

760760
if (lassoActive) {
761+
event.preventDefault();
761762
lassoActive = false;
762763
lassoManager.end({
763764
merge: checkModKey(event, KEY_ACTION_MERGE),
@@ -768,6 +769,8 @@ const createScatterplot = (initialProperties = {}) => {
768769
const mouseClickHandler = (event) => {
769770
if (!isInit) return;
770771

772+
event.preventDefault();
773+
771774
const currentMousePosition = getRelativeMousePosition(event);
772775

773776
if (dist(...currentMousePosition, ...mouseDownPosition) >= lassoMinDist)
@@ -801,13 +804,16 @@ const createScatterplot = (initialProperties = {}) => {
801804
}
802805
};
803806

804-
const mouseDblClickHandler = () => {
807+
const mouseDblClickHandler = (event) => {
805808
lassoManager.hideInitiator();
806809
if (lassoInitiatorTimeout) {
807810
clearTimeout(lassoInitiatorTimeout);
808811
lassoInitiatorTimeout = null;
809812
}
810-
if (deselectOnDblClick) deselect();
813+
if (deselectOnDblClick) {
814+
event.preventDefault();
815+
deselect();
816+
}
811817
};
812818

813819
const mouseMoveHandler = (event) => {
@@ -820,7 +826,10 @@ const createScatterplot = (initialProperties = {}) => {
820826
hover(raycast()); // eslint-disable-line no-use-before-define
821827
}
822828

823-
if (lassoActive) lassoManager.extend(event, true);
829+
if (lassoActive) {
830+
event.preventDefault();
831+
lassoManager.extend(event, true);
832+
}
824833

825834
// Always redraw when mousedown as the user might have panned or lassoed
826835
if (mouseDown) drawRaf(); // eslint-disable-line no-use-before-define

0 commit comments

Comments
 (0)