Fixed search not accepting key input after closing player overlay (#7607)

* Fixed search not accepting key input after closing player overlay

* Made comments easier to understand

* More comments
This commit is contained in:
litetex 2022-01-03 11:52:08 +01:00 committed by GitHub
parent ee19ea66b3
commit ddcbe27fd3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 10 additions and 2 deletions

View File

@ -2208,12 +2208,20 @@ public final class VideoDetailFragment
mainFragment.setDescendantFocusability(afterDescendants); mainFragment.setDescendantFocusability(afterDescendants);
toolbar.setDescendantFocusability(afterDescendants); toolbar.setDescendantFocusability(afterDescendants);
((ViewGroup) requireView()).setDescendantFocusability(blockDescendants); ((ViewGroup) requireView()).setDescendantFocusability(blockDescendants);
mainFragment.requestFocus(); // Only focus the mainFragment if the mainFragment (e.g. search-results)
// or the toolbar (e.g. Textfield for search) don't have focus.
// This was done to fix problems with the keyboard input, see also #7490
if (!mainFragment.hasFocus() && !toolbar.hasFocus()) {
mainFragment.requestFocus();
}
} else { } else {
mainFragment.setDescendantFocusability(blockDescendants); mainFragment.setDescendantFocusability(blockDescendants);
toolbar.setDescendantFocusability(blockDescendants); toolbar.setDescendantFocusability(blockDescendants);
((ViewGroup) requireView()).setDescendantFocusability(afterDescendants); ((ViewGroup) requireView()).setDescendantFocusability(afterDescendants);
binding.detailThumbnailRootLayout.requestFocus(); // Only focus the player if it not already has focus
if (!binding.getRoot().hasFocus()) {
binding.detailThumbnailRootLayout.requestFocus();
}
} }
} }