docs: public void onSearchBoxTextChanged(String searchText, boolean forceReloadEventIfSameText) {
          if (!forceReloadEventIfSameText && Utility.stringsEqualOrEmpty(this.searchText, searchText)) {
              return;
          }
  
          if (TextUtils.isEmpty(searchText)) {
              searchText = null;
          }
          this.searchText = searchText;
  
          // If search text is being set in response to user input, it is wasteful to send a new request
          // with every keystroke. Send a request the first time the search text is set, then set up a 2-second timer
          // and send whatever changes the user has made since then. (If nothing has changed
          // in 2 seconds, we reset so the next change will cause an immediate re-query.)
          hasSearchTextChangedSinceLastQuery = true;
          if (searchTextTimer == null) {
              searchTextTimer = createSearchTextTimer();
          }
      }