Release that adds support for bridgeless mode, enhances KeyboardToolbar
component, adds onSelectionChange
handler, improves precision of onMove
handler on iOS and contains many other fixes and improvements 😎
🐛 Bug fixes
👍 Improvements
- added
KeyboardToolbar
callbacks (7d2ccb5) - added
KeyboardToolbar
blur (b9da9ad) - added support for
bridgless
(590ff6e) - eliminate one frame delay in
onMove
handler on iOS (27da1d0) - use
KeyboardAnimation
as common interface for an animation driver (54a0473) - added
onSelectionChange
handler (810efdb) - consume
onChangeText
events from delegate (427c26c)
🔢 Miscellaneous
- mention that
react-native-reanimated
is a mandatory dependency right now (0c90ac8) - add
avoid keyboard
keyword, update SEO keywords, fix flaky docs e2e tests (a3538f9) - spellcheck integration (64b2e21)
- remove unused
ReanimatedChatFlatlist
directory from FabricExample app (acacd10) - added
ModalExample
(ddc6c37) KeyboardAwareScrollView
+FlatList
integration in documentation (065e4db)- added an ability to show video demos in documentation (990574c)
- add API to footer in documentation (2060506)
- docs for 1.12.0 (4cabd4d)
- blogpost for
1.12.0
(3be37df)
🚨⚠️🚨 Caution 🚨⚠️🚨
This release doesn't have any breaking changes, but the fix added in d7d2ecd got reverted (because global layout animation is overwriting animation managed by onMove
handler - i. e. with this fix in place it's not possible to synchronize keyboard movement and animation driven by onMove
handler). The proposed solution is to use useKeyboardHandler
hook, for example:
const useReanimatedKeyboardAnimation = () => {
const height = useSharedValue(0);
useKeyboardHandler({
onMove: (e) => {
height.value = e.height;
},
}, []);
return { height };
}
Check example of js code to see how it should be handled now 👀