diff --git a/src/org/kreed/vanilla/MediaAdapter.java b/src/org/kreed/vanilla/MediaAdapter.java index 047d51a6..cc3458f0 100644 --- a/src/org/kreed/vanilla/MediaAdapter.java +++ b/src/org/kreed/vanilla/MediaAdapter.java @@ -123,7 +123,10 @@ public class MediaAdapter extends BaseAdapter implements Filterable { boolean noFilter = filter == null || filter.length() == 0; - if (noFilter && mLimiterField == -1) { + if (mLastFilter.equals(filter)) { + results.values = mObjects; + results.count = mObjects.size(); + } else if (noFilter && mLimiterField == -1) { results.values = Arrays.asList(mAllObjects); results.count = mAllObjects.length; } else { diff --git a/src/org/kreed/vanilla/SongSelector.java b/src/org/kreed/vanilla/SongSelector.java index b92ac32f..dae8e51e 100644 --- a/src/org/kreed/vanilla/SongSelector.java +++ b/src/org/kreed/vanilla/SongSelector.java @@ -42,13 +42,14 @@ import android.view.View; import android.view.ViewGroup; import android.view.Window; import android.widget.AdapterView; +import android.widget.Filter; import android.widget.LinearLayout; import android.widget.ListView; import android.widget.TabHost; import android.widget.TextView; import android.widget.Toast; -public class SongSelector extends TabActivity implements AdapterView.OnItemClickListener, TextWatcher, View.OnClickListener, TabHost.OnTabChangeListener { +public class SongSelector extends TabActivity implements AdapterView.OnItemClickListener, TextWatcher, View.OnClickListener, TabHost.OnTabChangeListener, Filter.FilterListener { private TabHost mTabHost; private TextView mTextFilter; private View mClearButton; @@ -170,11 +171,11 @@ public class SongSelector extends TabActivity implements AdapterView.OnItemClick { } - public void onTextChanged(CharSequence s, int start, int before, int count) + public void onTextChanged(CharSequence text, int start, int before, int count) { MediaAdapter adapter = getAdapter(mTabHost.getCurrentTab()); if (adapter != null) - adapter.getFilter().filter(s); + adapter.getFilter().filter(text, this); } private void updateLimiterViews() @@ -272,4 +273,11 @@ public class SongSelector extends TabActivity implements AdapterView.OnItemClick sendSongIntent(intent); return true; } + + public void onFilterComplete(int count) + { + CharSequence text = mTextFilter.getText(); + for (int i = 3; --i != -1; ) + getAdapter(i).getFilter().filter(text); + } } \ No newline at end of file