Improved options search

pull/194/merge
M66B 4 years ago
parent 5e30f206ec
commit 1b6af01131

@ -348,18 +348,22 @@ public class FragmentOptions extends FragmentBase {
} }
private void suggest(String query) { private void suggest(String query) {
if (data == null && Bundle args = new Bundle();
query != null && query.length() > 0) args.putString("query", query);
new SimpleTask<SuggestData>() { new SimpleTask<SuggestData>() {
@Override @Override
protected SuggestData onExecute(Context context, Bundle args) { protected SuggestData onExecute(Context context, Bundle args) {
return getSuggestData(context); if (TextUtils.isEmpty(args.getString("query")))
return data;
return (data == null ? getSuggestData(context) : data);
} }
@Override @Override
protected void onExecuted(Bundle args, SuggestData result) { protected void onExecuted(Bundle args, SuggestData result) {
data = result; data = result;
_suggest(query); _suggest(args.getString("query"));
} }
@Override @Override
@ -368,7 +372,7 @@ public class FragmentOptions extends FragmentBase {
try { try {
// Fallback to UI thread (Android 5.1.1) // Fallback to UI thread (Android 5.1.1)
data = getSuggestData(getContext()); data = getSuggestData(getContext());
_suggest(query); _suggest(args.getString("query"));
} catch (Throwable exex) { } catch (Throwable exex) {
Log.unexpectedError(getParentFragmentManager(), exex); Log.unexpectedError(getParentFragmentManager(), exex);
} }
@ -388,9 +392,7 @@ public class FragmentOptions extends FragmentBase {
return data; return data;
} }
}.setExecutor(executor) }.setExecutor(executor)
.execute(FragmentOptions.this, new Bundle(), "option:suggest"); .execute(FragmentOptions.this, args, "option:suggest");
else
_suggest(query);
} }
private void _suggest(String query) { private void _suggest(String query) {

Loading…
Cancel
Save