@RequiresApi(Build.VERSION_CODES.R)
  @Nullable @Override
  public InlineSuggestionsRequest onCreateInlineSuggestionsRequest(@NonNull Bundle uiExtras) {
    final var inputViewContainer = getInputViewContainer();
    if (inputViewContainer == null) return null;
    // min size is a thumb
    final Size smallestSize =
        new Size(
            getResources().getDimensionPixelOffset(R.dimen.inline_suggestion_min_width),
            getResources().getDimensionPixelOffset(R.dimen.inline_suggestion_min_height));
    // max size is the keyboard
    final Size biggestSize =
        new Size(
            inputViewContainer.getWidth(),
            getResources().getDimensionPixelOffset(R.dimen.inline_suggestion_max_height));

    UiVersions.StylesBuilder stylesBuilder = UiVersions.newStylesBuilder();

    InlineSuggestionUi.Style style = InlineSuggestionUi.newStyleBuilder().build();
    stylesBuilder.addStyle(style);

    Bundle stylesBundle = stylesBuilder.build();

    InlinePresentationSpec spec =
        new InlinePresentationSpec.Builder(smallestSize, biggestSize)
            .setStyle(stylesBundle)
            .build();

    List<InlinePresentationSpec> specList = new ArrayList<>();
    specList.add(spec);

    InlineSuggestionsRequest.Builder builder = new InlineSuggestionsRequest.Builder(specList);

    return builder
        .setMaxSuggestionCount(InlineSuggestionsRequest.SUGGESTION_COUNT_UNLIMITED)
        .build();
  }
@Test
  public void testCreatesCorrectRequest() {
    simulateOnStartInputFlow();
    var request = mAnySoftKeyboardUnderTest.onCreateInlineSuggestionsRequest(new Bundle());
    Assert.assertNotNull(request);
    var specs = request.getInlinePresentationSpecs();
    Assert.assertEquals(1, specs.size());
  }