@NonNull
        @Override
        public View getView(final int position, @Nullable final View convertView, @NonNull final ViewGroup parent) {
            // Keyword search shows geocache layout for results and single-line layout for history, thus need to invalidate views on updates
            final View cv = (null == convertView || (null == convertView.findViewById(R.id.info) ^ isShowingResultsFromHistory)) ? null : convertView;
            if (isShowingResultsFromHistory) {
                return super.superGetView(position, cv, parent);
            }
            final View geoView = super.getView(position, cv, parent);
            // Highlight search term in geocache title
            setHighLightedText(geoView.findViewById(R.id.text), searchTerm);
            return geoView;
        }
Usually search starts for 2 letters but for geocodes delay that until at least prefix + 1 letter have been entered
main/src/main/java/cgeo/geocaching/search/GeocacheAutoCompleteAdapter.java