Tldraw/packages/editor/src/lib/editor/managers
Mitja Bezenšek 4e50c9c162
Start scrolling if we are dragging close to the window edges. (#2299)
Start scrolling when we get close to the edges of the window. This works
for brush selecting, translating, and resizing.


https://github.com/tldraw/tldraw/assets/2523721/4a5effc8-5445-411b-b317-36097233d36c


### Change Type

- [ ] `patch` — Bug fix
- [x] `minor` — New feature
- [ ] `major` — Breaking change
- [ ] `dependencies` — Changes to package dependencies[^1]
- [ ] `documentation` — Changes to the documentation only[^2]
- [ ] `tests` — Changes to any test code only[^2]
- [ ] `internal` — Any other changes that don't affect the published
package[^2]
- [ ] I don't know

[^1]: publishes a `patch` release, for devDependencies use `internal`
[^2]: will not publish a new version

### Test Plan

1. Select a shape.
2. Move it towards the edge of the window. The camera position should
change.
3. Also try resizing, brush selecting.

- [x] Unit Tests
- [ ] End to end tests

### Release Notes

- Adds the logic to change the camera position when you get close to the
edges of the window. This allows you to drag, resize, brush select past
the edges of the current viewport.

---------

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2023-12-15 23:37:03 +00:00
..
ClickManager.ts No impure getters pt10 (#2235) 2023-11-16 12:07:33 +00:00
EnvironmentManager.ts
HistoryManager.test.ts No impure getters pt10 (#2235) 2023-11-16 12:07:33 +00:00
HistoryManager.ts no impure getters pt 11 (#2236) 2023-11-16 15:34:56 +00:00
SIdeEffectManager.test.ts
ScribbleManager.ts [feature] multi-scribbles (#2125) 2023-10-29 14:37:36 +00:00
SideEffectManager.ts
SnapManager.ts no impure getters pt 11 (#2236) 2023-11-16 15:34:56 +00:00
Stack.ts
TextManager.ts Fix newlines in text geo shapes (#2059) 2023-10-10 12:58:28 +00:00
TickManager.ts
UserPreferencesManager.ts Start scrolling if we are dragging close to the window edges. (#2299) 2023-12-15 23:37:03 +00:00
getRecordManager.test.ts Replace Atom.value with Atom.get() (#2189) 2023-11-13 11:51:22 +00:00
getRecordManager.ts Replace Atom.value with Atom.get() (#2189) 2023-11-13 11:51:22 +00:00