Skip to content

Commit 25b729e

Browse files
authored
End editing of internal navigator view when resigning first responder (#657)
1 parent 74b8e3e commit 25b729e

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

Sources/Navigator/Input/InputObservableViewController.swift

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,18 @@ open class InputObservableViewController: UIViewController, InputObservable {
3333

3434
override open var canBecomeFirstResponder: Bool { true }
3535

36+
override open func resignFirstResponder() -> Bool {
37+
// Force end editing of the view to make sure any subview is also
38+
// resigning its first responder status.
39+
// This is helpful in the EPUB navigator because the web views may be
40+
// first responders to intercept keyboard events.
41+
if isViewLoaded {
42+
view.endEditing(true)
43+
}
44+
45+
return super.resignFirstResponder()
46+
}
47+
3648
override open func pressesBegan(_ presses: Set<UIPress>, with event: UIPressesEvent?) {
3749
if isFirstResponder {
3850
on(.down, presses: presses, with: event)

0 commit comments

Comments
 (0)