@Override public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { if (listenerExists()) onSearchActionListener.onSearchConfirmed(searchEdit.getText()); if (suggestionsVisible) animateLastRequests(getListHeight(), 0); adapter.addSuggestion(searchEdit.getText().toString()); return false; }
/** Shows search input and close arrow */ public void disableSearch() { searchEnabled = false; Animation out = AnimationUtils.loadAnimation(getContext(), R.anim.fade_out); Animation in = AnimationUtils.loadAnimation(getContext(), R.anim.fade_in_right); out.setAnimationListener(this); searchIcon.setVisibility(VISIBLE); inputContainer.startAnimation(out); searchIcon.startAnimation(in); if (listenerExists()) onSearchActionListener.onSearchStateChanged(false); if (suggestionsVisible) animateLastRequests(getListHeight(), 0); }
/** Shows search input and close arrow */ public void enableSearch() { adapter.notifyDataSetChanged(); searchEnabled = true; Animation left_in = AnimationUtils.loadAnimation(getContext(), R.anim.fade_in_left); Animation left_out = AnimationUtils.loadAnimation(getContext(), R.anim.fade_out_left); left_in.setAnimationListener(this); inputContainer.setVisibility(VISIBLE); inputContainer.startAnimation(left_in); animateLastRequests(0, getListHeight()); if (listenerExists()) { onSearchActionListener.onSearchStateChanged(true); } searchIcon.startAnimation(left_out); }
@Override public void onClick(View v) { int id = v.getId(); final int thisId = getId(); if (id == getId()) { if (!searchEnabled) { enableSearch(); } } else if (id == R.id.mt_arrow) { disableSearch(); } else if (id == R.id.requestItem) { if (v.getTag() instanceof String) searchEdit.setText(v.getTag().toString()); } else if (id == R.id.mt_search) { if (listenerExists()) onSearchActionListener.onSpeechIconSelected(); } else if (id == R.id.mt_clear) { searchEdit.setText(""); } }