github kirillzyusko/react-native-keyboard-controller 1.12.0
Release 1.12.0

latest releases: 1.18.6, 1.18.5, 1.18.4...
16 months ago

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

  • export component props (6ffa49d)
  • use dp for selection events (f2ea4fe)

👍 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 👀

Don't miss a new react-native-keyboard-controller release

NewReleases is sending notifications on new releases.