anchor.diff:  }
   
   class _HistorySearchViewState extends State<HistorySearchView> {
  -  final TextEditingController _controller = TextEditingController();
  -  bool hasContent = false;
  +  final TextEditingController _textController = TextEditingController();
  +  final FocusNode _focusNode = FocusNode();
  +  bool _hasContent = false;
   
     final _scrollController = ScrollController();
     late SearchHistoryBloc _searchHistoryBloc;
  
positive.code:     required bool value,
    }) {
      valueNotifier.value = value;
      if (isNotBlank(_controller.text)) {
        _searchHistoryBloc.add(
          SearchHistoryFetched(
            tautulliId: _tautulliId,
  
negative.code:     return currentScroll >= (maxScroll * 0.9);
    }
  
    Widget _appBarTitle() {
      return BlocBuilder<SettingsBloc, SettingsState>(
        builder: (context, settingsState) {
          settingsState as SettingsSuccess;
  
          return TextField(
            controller: _textController,
            focusNode: _focusNode,
            autofocus: true,
            cursorColor: Theme.of(context).colorScheme.tertiary,
            style: const TextStyle(
              fontSize: 18,
            ),
            decoration: InputDecoration(
              contentPadding: const EdgeInsets.only(top: 11),
              enabledBorder: const UnderlineInputBorder(
                borderSide: BorderSide.none,
              ),
              focusedBorder: const UnderlineInputBorder(
                borderSide: BorderSide.none,
              ),
              hintText: LocaleKeys.search_history_title.tr(),
              suffixIcon: SizedBox(
                width: 20,
                height: 20,
                child: IconButton(
                  icon: FaIcon(
                    FontAwesomeIcons.xmark,
                    color: isNotEmpty(_textController.text)
                        ? Theme.of(context).textTheme.subtitle2!.color!
                        : Colors.transparent,
                    size: 20,
                  ),
                  onPressed: isNotEmpty(_textController.text)
                      ? () {
                          setState(() {
                            _textController.text = '';
                            _hasContent = false;
                          });
                          _searchHistoryBloc.add(SearchHistoryClear());
                          FocusScope.of(context).requestFocus(_focusNode);
                        }
                      : null,
                ),
              ),
            ),
            onChanged: (value) {
              if (!_hasContent) {
                setState(() {
                  _hasContent = true;
                });
              }
  
              if (_hasContent && value == '') {
                setState(() {
                  _hasContent = false;
                });
              }
            },
            onSubmitted: (value) {
              if (isNotBlank(value)) {
                context.read<SearchHistoryBloc>().add(
                      SearchHistoryFetched(
                        tautulliId:
                            settingsState.appSettings.activeServer.tautulliId,
                        search: value,
                        movieMediaType: _movieMediaType,
                        episodeMediaType: _episodeMediaType,
                        trackMediaType: _trackMediaType,
                        liveMediaType: _liveMediaType,
                        directPlayDecision: _directPlayDecision,
                        directStreamDecision: _directStreamDecision,
                        transcodeDecision: _transcodeDecision,
                        freshFetch: true,
                        settingsBloc: context.read<SettingsBloc>(),
                      ),
                    );
              }
            },
          );
        },
      );
    }
  
    List<Widget> _appBarActions() {
      return [
        BlocBuilder<UsersBloc, UsersState>(
  