Don't delegate focus if no other views can take focus

Fixes: 173458944
Test: atest com.android.car.ui.FocusParkingViewTest
Change-Id: I93a9d671ff75d470eeaa2499da6ad4b265a6cec8
diff --git a/car-ui-lib/car-ui-lib/src/main/java/com/android/car/ui/FocusParkingView.java b/car-ui-lib/car-ui-lib/src/main/java/com/android/car/ui/FocusParkingView.java
index e5a2533..1a54176 100644
--- a/car-ui-lib/car-ui-lib/src/main/java/com/android/car/ui/FocusParkingView.java
+++ b/car-ui-lib/car-ui-lib/src/main/java/com/android/car/ui/FocusParkingView.java
@@ -200,8 +200,13 @@
         if (maybeFocusOnScrollableContainer()) {
             return true;
         }
-        // Otherwise find the best target view to focus.
-        return ViewUtils.adjustFocus(getRootView(), /* currentFocus= */ null);
+        // Otherwise try to find the best target view to focus.
+        if (ViewUtils.adjustFocus(getRootView(), /* currentFocus= */ null)) {
+            return true;
+        }
+        // It failed to find a target view (e.g., all the views are not shown), so focus on this
+        // FocusParkingView as fallback.
+        return super.requestFocus(FOCUS_DOWN, /* previouslyFocusedRect= */ null);
     }
 
     private boolean maybeFocusOnScrollableContainer() {