UIView's default animation curve is different from UIKeyboard's curve, causing flicker/overlapping for views driven by RxKeyboard's visibleHeight when the keyboard is presented and dismissed. Additionally, in interactive dismiss mode, dragging down partially and then cancelling the dismiss causes the view to jump.
Here's the easiest way to fetch the curve from the notification:
let keyboardCurve = UIViewAnimationCurve(rawValue: (userInfo.object(forKey: UIKeyboardAnimationCurveUserInfoKey) as! NSNumber)!.intValue)
I was playing around with the idea of somehow representing the curve as a function of time and sending out continuous values through an observable, but that's pretty complicated. Thoughts?
UIView's default animation curve is different from UIKeyboard's curve, causing flicker/overlapping for views driven by RxKeyboard's visibleHeight when the keyboard is presented and dismissed. Additionally, in interactive dismiss mode, dragging down partially and then cancelling the dismiss causes the view to jump.
Here's the easiest way to fetch the curve from the notification:
let keyboardCurve = UIViewAnimationCurve(rawValue: (userInfo.object(forKey: UIKeyboardAnimationCurveUserInfoKey) as! NSNumber)!.intValue)
I was playing around with the idea of somehow representing the curve as a function of time and sending out continuous values through an observable, but that's pretty complicated. Thoughts?