docs: private View findFocusableViewInBounds(boolean topFocus, int top, int bottom, boolean leftFocus, int left, int right) {
          List<View> focusables = getFocusables(View.FOCUS_FORWARD);
          View focusCandidate = null;
  
     /*
     * A fully contained focusable is one where its top is below the bound's
     * top, and its bottom is above the bound's bottom. A partially
     * contained focusable is one where some part of it is within the
     * bounds, but it also has some part that is not within bounds.  A fully contained
     * focusable is preferred to a partially contained focusable.
     */
          boolean foundFullyContainedFocusable = false;
  
          int count = focusables.size();
          for (int i = 0; i < count; i++) {
              View view = focusables.get(i);
              int viewTop = view.getTop();
              int viewBottom = view.getBottom();
              int viewLeft = view.getLeft();
              int viewRight = view.getRight();
  
              if (top < viewBottom && viewTop < bottom && left < viewRight && viewLeft < right) {
         /*
         * the focusable is in the target area, it is a candidate for
         * focusing
         */
                  final boolean viewIsFullyContained = (top < viewTop) && (viewBottom < bottom) && (left < viewLeft) && (viewRight < right);
                  if (focusCandidate == null) {
           /* No candidate, take this one */
                      focusCandidate = view;
                      foundFullyContainedFocusable = viewIsFullyContained;
                  } else {
                      final boolean viewIsCloserToVerticalBoundary =
                              (topFocus && viewTop < focusCandidate.getTop()) ||
                                      (!topFocus && viewBottom > focusCandidate.getBottom());
                      final boolean viewIsCloserToHorizontalBoundary =
                              (leftFocus && viewLeft < focusCandidate.getLeft()) ||
                                      (!leftFocus && viewRight > focusCandidate.getRight());
                      if (foundFullyContainedFocusable) {
                          if (viewIsFullyContained && viewIsCloserToVerticalBoundary && viewIsCloserToHorizontalBoundary) {
               /*
                * We're dealing with only fully contained views, so
                * it has to be closer to the boundary to beat our
                * candidate
                */
                              focusCandidate = view;
                          }
                      } else {
                          if (viewIsFullyContained) {
               /* Any fully contained view beats a partially contained view */
                              focusCandidate = view;
                              foundFullyContainedFocusable = true;
                          } else if (viewIsCloserToVerticalBoundary && viewIsCloserToHorizontalBoundary) {
               /*
                * Partially contained view beats another partially
                * contained view if it's closer
                */
                              focusCandidate = view;
                          }
                      }
                  }
              }
          }
          return focusCandidate;
      }