Add pinch-to-zoom to the week and day timeline (#56)
The issue asked for a pinch gesture; part A only shipped the settings presets, so this adds the gesture itself. Two fingers on the timeline rescale the hour height continuously, and the moment under the fingers stays under them while it zooms, so you keep your place in the day. The scale preference grows a Custom case to hold what a pinch settles on — a direct manipulation should be able to land between the named steps rather than snapping to one. It is stored as "custom:<dp>"; the preset names are unchanged, so an existing choice reads back as it was. The picker lists Custom alongside the presets while it is in force, so it is visible and one tap gets you back to a named step. Three gestures share the timeline, so the pinch only claims it once a second finger is down and the spread has passed a slop threshold — one-finger scrolling, the week swipe and a two-finger scroll are all untouched. It watches the initial pointer pass, since the vertical scroll it has to outrank is a descendant. The presets stay the accessible route to the same setting; a pinch is not reachable without two-finger input.
This commit is contained in:
@@ -15,6 +15,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||
could sit below the fold all week. Compact and Comfortable are fixed steps
|
||||
either side of the previous spacing, which stays the default. Both views share
|
||||
the setting ([#56]).
|
||||
- Week and day view can be **pinched** with two fingers to set the hour height
|
||||
directly, anywhere between and beyond the named steps. The time under your
|
||||
fingers stays put as it zooms, so you keep your place in the day. A pinched
|
||||
height is remembered and appears as **Custom** in the Hour height setting, so
|
||||
tapping a named step there takes you back to it ([#56]).
|
||||
|
||||
### Changed
|
||||
- Event blocks now only draw text they can draw whole. One too short for a full
|
||||
|
||||
Reference in New Issue
Block a user