Have a widget for zoomable/pannable viewers
Currently apps have to do it manually, and it's tricky and none of them get it 100% correct. We could have a scrolled window+container widget that would handle pan and zoom for all the different device types automatically and just expose pan/zoom signals.
Some things it should handle:
- Scrolling with mouse scrolls
- Dragging with mouse pans
- Scrolling with touchpad/touchscreen pans
- Pinch zoom zooms
- Ctrl+touchpad scroll still zooms as a fallback
- Whatever else that I forgot