private void search(SearchResult result, boolean resultClicked) { if (!searchWithoutSuggestions && getNumberOfResults() == 0) return; setSearchString(result.title); if (!TextUtils.isEmpty(getSearchText())) { setLogoTextInt(result.title); if (listener != null) { if (resultClicked) listener.onResultClick(result); else listener.onSearch(result.title); } } else { setLogoTextInt(logoText); } toggleSearch(); }
/** * Clear all the results */ public void clearResults() { if (resultList != null) { resultList.clear(); mAdapter.notifyDataSetChanged(); } listener.onSearchCleared(); }
/** * Mandatory method for the onClick event */ public void micClick() { if (!isMic) { setSearchString(""); listener.onSearchCleared(); } else { startVoiceRecognition(); } }
private void closeSearch() { if (animateDrawerLogo) { this.materialMenu.animateState(IconState.BURGER); this.drawerLogo.setVisibility(View.VISIBLE); } this.logo.setVisibility(View.VISIBLE); this.search.setVisibility(View.GONE); this.results.setVisibility(View.GONE); if (tint != null && rootLayout != null) { rootLayout.removeView(tint); } if (listener != null) listener.onSearchClosed(); micStateChanged(true); mic.setImageDrawable(context.getResources().getDrawable(R.drawable.ic_action_mic)); InputMethodManager inputMethodManager = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE); inputMethodManager.hideSoftInputFromWindow(getApplicationWindowToken(), 0); searchOpen = false; }
private void openSearch(Boolean openKeyboard) { if (animateDrawerLogo) { this.materialMenu.animateState(IconState.ARROW); this.drawerLogo.setVisibility(View.GONE); } this.logo.setVisibility(View.GONE); this.search.setVisibility(View.VISIBLE); search.requestFocus(); this.results.setVisibility(View.VISIBLE); animate = true; setAdapter(new SearchAdapter(context, resultList, search)); searchOpen = true; results.setOnItemClickListener( new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { SearchResult result = resultList.get(arg2); search(result, true); } }); if (initialResults != null) { setInitialResults(); } else { updateResults(); } if (listener != null) listener.onSearchOpened(); if (getSearchText().length() > 0) { micStateChanged(false); mic.setImageDrawable(context.getResources().getDrawable(R.drawable.ic_clear)); } if (openKeyboard) { InputMethodManager inputMethodManager = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE); inputMethodManager.toggleSoftInputFromWindow( getApplicationWindowToken(), InputMethodManager.SHOW_FORCED, 0); } }