Fixed focus recovery failure on API 15

On API 15, RV can still hold a reference to a detached view as its
focused child. This made the focus recovery break when removing the
final focused view of RV. In this case, while RV essentially had no
children, it still considered that detached view as its focused child.
The correct behavior for RV is to grab the focus back when all its
children are removed.
Reworked the focus handling for API 15.

Change-Id: I3522f5d9f8315770c692070f3628c7ab9a0e368a
Fixes: 33280166
Test: ./gradlew support-recyclerview-v7:connectedCheck
-Pandroid.testInstrumentationRunnerArguments.class=android.support.v7.widget.RecyclerViewFocusRecoveryTest
Tested on emulator devices running API 15, 21 and a physical Nexus 5X
API 24.
2 files changed