tldraw/packages
Steve Ruiz 647d03a173
[Fix] Camera coordinate issues (#2719)
This PR fixes some bugs related to our coordinate systems. These bugs
would appear when the editor was not full screen.

![Kapture 2024-02-04 at 11 53
37](https://github.com/tldraw/tldraw/assets/23072548/9c2199f3-b34d-4fe1-a3e5-d0c65fe5a11e)

In short, we were being inconsistent with whether the
`currentScreenPoint` was relative to the top left corner of the
component or the top left corner of the page that contained the
component.

Here's the actual system:

<img width="898" alt="image"
src="https://github.com/tldraw/tldraw/assets/23072548/c49b3686-aeb6-4164-a55d-8639d40290a1">

The `viewportPageBounds` describes the bounds of the component within
the browser's space. Its `x` and `y` describe the delta in browser space
between the top left corner of the **page** and the component. This is
not effected by scrolling.

The use's `screenPoint` describes the user's cursor's location relative
to the `viewportPageBounds`. Its `x` and `y` describe the delta in
browser space between the top left corner of the **component** and the
cursor.

While this is a bug fix, I'm marking it as major as apps may be
depending on the previous (broken) behavior.

### Change Type

- [x] `major` — Breaking change

### Test Plan

1. Zoom in, out, and pinch on an editor that isn't full screen.
2. Zoom in, out, and pinch on an editor that is full screen.
3. Drag and scroll on an editor that isn't full screen.
4. Drag and scroll on an editor that is full screen.

- [x] Unit Tests

### Release Notes

- Fixed bugs with `getViewportScreenCenter` that could effect zooming
and pinching on editors that aren't full screen
2024-02-04 12:03:49 +00:00
..
assets make CI check for yarn install warnings and fix the peer deps ones we have (#2683) 2024-01-30 11:41:46 +00:00
editor [Fix] Camera coordinate issues (#2719) 2024-02-04 12:03:49 +00:00
state Update the project to Node 20 (#2691) 2024-01-31 16:53:40 +00:00
store Bump jest to fix weird prettier bug (#2716) 2024-02-04 11:19:47 +00:00
tldraw [Fix] Camera coordinate issues (#2719) 2024-02-04 12:03:49 +00:00
tlschema Update the project to Node 20 (#2691) 2024-01-31 16:53:40 +00:00
tlsync Update the project to Node 20 (#2691) 2024-01-31 16:53:40 +00:00
utils Bump jest to fix weird prettier bug (#2716) 2024-02-04 11:19:47 +00:00
validate Update the project to Node 20 (#2691) 2024-01-31 16:53:40 +00:00