- include the ' ' char that doesn't have a bounding box but need to be
included for the advance_x
- Fix an off by one in rendering where the last pixel was missing
Destroy means we need to exit the event loop.
And android_main will be called again from another thread, so we need to
support reseting the proxy
There is also a bug in the timer when exiting the app that this worked
around
Fix#6626
Everything is already working, just had to play around with a few cfgs. The sharedfontdb module already takes care of including DejaVuSans as default fallback font.
- When stopping a running but not yet expired timer from within the activation callback of an expired timer, the stopping would fail to find the timer in the active_timers list because it was built on the fly. Similarly, restarting a future timer form within the same kind of callback would end up registering the active timer twice. Fix this by doing all the active_timer re-setup before activating any callbacks, so that by the time of activation the data structure is in a good state.
- When two timers expire at the same time and from the callback of the first, the second timer would be dropped/deleted, the timer's `being_activated` was overwritten and the timer was deleted too early, causing a panic. Fix this by preserving the removal state.
Fixes#6187Fixes#6505
While technically allowed and sort of serving as a test to see if the model is well implemented, this is unnecessary behaviour. The model iterator should not serve as a testing ground :)
Instead, just ignore the rotation.
(Rotation is currently used in the live-preview to show the collapsed
items. It shouldn't cause a panic even if rotation is not showning)
CC: #3068
The struct held provides access to the design metrics of the font scaled
to the font pixel size used by the element.
ChangeLog: Slint Language: Added font-metrics property to `Text` and `TextInput`.
Closes#6047
We were assuming that the extra clip was always on a unrotated image,
the rendering code didn't account for rotated screens
ChangeLog: Software renderer: fix artifact with partial drawing and rotation
This is the most stupid policy for popup placement
that we can possibly implement: If we render the
popup as a subsurface in our own window, then just
make sure we move to popup so that it does stay fuilly
within our own window surface.
Just disable the clippy warning about unnecessary cast:
All current occurances are due to Coord being an alias to f32
almost all the time and the cast is necessary when it is not.
- Remove the duration threshold
- Always register the swipe even if the pointer went in another
direction before
- set the current position on the release event (in case there was no
mouve to that position before)
ChangeLog: adjusted threshold in the SwipeGestureHandler
Closes#6344
Probably also helps for #6350
The origin of this proposal is the name of the `swipe-left`, etc.
directional, boolean properties. They're missing another verb in their
name. In principle the right choice would be "recognize". That is what
the type name suggests, that's the term the documentation uses, so the
code should read `recognize-swipe-left: true;`. However that is a long
word. "Handle" is a verb that's simpler. It's also more generic (that's
a downside), but it's otherwise short enough to make things look
"right":
```
SwipeGestureHandler {
handle-swipe-left: true;
swiped => { something.naviate-left(); }
}
```
Therefore this patch proposes to rename the type to SwipeGestureHandler
and prefixes the boolean directional properties with "handle".
Don't return an Option, just return 0 when the timer is not started.
As discussed in the API review, the rational is that the interval is
just like a field in a struct and when the struct is default
constructed, it is initialized to 0