|
|
@ -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) {
|
|
|
|