Thanks for following along! This is a tagged release (2022.214.0).
Breaking Changes
InputManager.ChangeFocus()
will no longer switch focus to drawables that are not alive, not present or do not have a parent
To avoid unusual scenarios concerning ChangeFocus()
, wherein a drawable could potentially request focus and have focus automatically taken away from it every frame, ChangeFocus()
now checks whether a drawable is alive, present and has a parent before switching focus to the requested target.
This potentially breaks scenarios such as calling ChangeFocus()
in LoadComplete()
on a child drawable with the expectation that the child drawable should receive focus as soon as its ancestor is added to the draw hierarchy. In such scenarios, the suggested fix is to schedule the ChangeFocus()
operation after children so that it is performed only when the child is fully prepared to receive focus.
In general it is recommended to check the return value of ChangeFocus()
to determine as to whether focus was actually changed.
CompositeDrawable.BorderColour
has changed type from SRGBColour
to ColourInfo
To facilitate gradiented border support, the type of CompositeDrawable.BorderColour
has changed from SRGBColour
to ColourInfo
. While some implicit conversions from SRGBColour
to ColourInfo
exist, some properties of SRGBColour
are not available on ColourInfo
, as the latter does not always represent a single colour, and may require appropriate adjustments.
What's Changed
- Hide iOS home indicator when possible by @peppy in #5009
- Improve
SafeAreaDefiningContainer
bindable callback thread safety by @frenzibyte in #5010 - Remove no longer required SDL2 P/Invokes in Linux clipboard by @frenzibyte in #5011
- Fix
InputManager.ChangeFocus()
potentially switching focus to an invalid target by @frenzibyte in #5017 - Fix crash with empty markdown fenced code blocks by @smoogipoo in #5020
- Allow
CursorContainer
to update cursor position while hidden by @frenzibyte in #5021 - Update to net6.0 by @peppy in #5022
- Save the
input.json
config when input settings are changed by @Susko3 in #5019 - Implement
SafeAreaPadding
on Android by @Susko3 in #5016 - Bring Android build to zero warnings and cleanup configuration by @Susko3 in #5025
- Add support for Android pointer capture by @Susko3 in #4989
- Update vscode launch tasks by @LumpBloom7 in #5029
- Don't subscribe to pointer capture events on unsupported Android devices by @bdach in #5031
- Create helper methods to ensure stream reads are read correctly to the expected length by @peppy in #5024
- Cleanup Android (and use fullscreen by default) by @Susko3 in #5026
- Use
View
properties instead of osuTK ones for calculatingSafeArea
by @Susko3 in #5028 - Add support for gradiented border colour by @bdach in #5032
- Update appveyor target image by @peppy in #5034
- Add separate build script for xamarin packing by @peppy in #5035
Full Changelog: 2022.204.0...2022.214.0