While the affected callbacks are cancelled before the referenced
state is deleted, we have had user reports that they can still be
accessed by the cancelled callbacks causing crashes. After only
finding warnings that WinRT AsyncCallback cancellation is not a
guaranteed thing, we saw it best to wrap the pointers.
This fixes an issue where the FileListComponent might fail to select a
file, because the file list reported that it was still loading during
the final ChangeListener callback.
When using RDP to access a Fedora machine running Gnome, the only
available colourmap is 32-bit. The old implementation caused GUI apps to
crash when they attempted to use a null colourmap pointer.
A regression was introduced in d564e4931. Before that commit you
could use key up to jump into position zero of a multiline TextEditor
if the cursor was somewhere in the first line. Since that commit the
keypress had no effect. This change restores the earlier behaviour.
When using Universal Control, the system seems to translate mouse scroll
events into swipe gestures, meaning that the gesture position is not
constant during the gesture.
Until this commit Items with a size of 1 could be rounded to
bounds with a size of 0 or 2 due to floating point errors, leading
to slightly too large or disappearing items. The new approach
preserves the size of items.
This commit fixes an issue when using large lineSpacing, where the caret
would jump to the end of the previous line when clicking between lines.
With the new behaviour the line spacing is considered to belong to the
previous line.
The commit also changes the behaviour observed when clicking in the
empty space before the first line. Until now the caret would jump into
the first character position. Now it behaves as if the space before the
first line would belong to the first line.