Tim Nyborg

Results 13 issues of Tim Nyborg

## I'm submitting a... [ ] Regression (a behavior that used to work and stopped working in a new release) [ ] Bug report [ ] Performance issue [X] Feature...

enhancement

`isFeatureSelected()` becomes a performance bottleneck when editing layers with 30,000+ features, because it's running `indexOf` on every single feature (so O(n^2) time, regardless of how many features are selected). With...

Brings DrawPolygonByDraggingMode into line with DrawPolygonMode, firing an addTentativePosition event whenever a position is added

The typing of getLineWidth, getRadius, etc. doesn't reflect that they're passed isSelected and mode, like all the others

Closes #773 Moves handling of keyup.escape to DrawLineStringMode, DrawPolygonMode, and DrawPolygonByDraggingMode. In dragging mode, escape also halts the dragging handler, so no new points are added until a new click....

While handleKeyUp has been implemented for the base [GeoJsonEditMode](https://github.com/uber/nebula.gl/blob/17aa19903bda8e5caaf14b6d25da624a1d317919/modules/edit-modes/src/lib/geojson-edit-mode.ts#L262), which calls resetClickSequence() when Escape is pressed, this is overridden in [DrawPolygonMode ](https://github.com/uber/nebula.gl/blob/17aa19903bda8e5caaf14b6d25da624a1d317919/modules/edit-modes/src/lib/draw-polygon-mode.ts#L124)and [DrawLineStringMode](https://github.com/uber/nebula.gl/blob/17aa19903bda8e5caaf14b6d25da624a1d317919/modules/edit-modes/src/lib/draw-line-string-mode.ts#L50) The escape logic should presumably be moved...

Prevents an 'Enter' keypress from calling the noEdit callback when using MeasureAreaMode (just as it's prevented for mouse clicks). Also adds tests to cover both the keypress and mouse cases.

Brings it into line with how it's actually used: https://github.com/uber/nebula.gl/blob/a3f81bb6476b36a34a20359c97046c3a75b3ecdd/modules/edit-modes/src/types.ts#L129 https://github.com/uber/nebula.gl/blob/2a962399ef7c45c1bda8ddb34394becb04a08995/modules/layers/src/layers/editable-geojson-layer.ts#L413

#### Describe the bug When working with large data sets (10,000s of features across multiple EditableGeoJson layers), panning [edit: by dragging] slows to a crawl, because each layer calls `this.getPicks(...)`...

When in `ModifyMode`, if you end dragging the map close enough to a selected LineString that a tentative handle appears, the nearest vertex is replaced with that point: [modify-on-drag-end.webm](https://user-images.githubusercontent.com/10194397/215506407-63426ccf-d717-4922-bd60-02900e7db0f3.webm) This...