diff --git a/app/src/main/java/eu/faircode/email/ActivityView.java b/app/src/main/java/eu/faircode/email/ActivityView.java index 9f07e12269..73f4d82e92 100644 --- a/app/src/main/java/eu/faircode/email/ActivityView.java +++ b/app/src/main/java/eu/faircode/email/ActivityView.java @@ -500,49 +500,10 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB intent.removeExtra(Intent.EXTRA_PROCESS_TEXT); setIntent(intent); - if (Helper.isPro(ActivityView.this)) { - Bundle args = new Bundle(); - args.putString("search", search); - - new SimpleTask() { - @Override - protected Long onExecute(Context context, Bundle args) { - DB db = DB.getInstance(context); - - db.message().resetSearch(); - - SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); - if (prefs.getBoolean("search_local", false)) - return null; - - EntityFolder archive = db.folder().getPrimaryArchive(); - return (archive == null ? null : archive.id); - } - - @Override - protected void onExecuted(Bundle args, Long archive) { - Bundle sargs = new Bundle(); - sargs.putLong("folder", archive == null ? -1 : archive); - sargs.putString("search", args.getString("search")); - - FragmentMessages fragment = new FragmentMessages(); - fragment.setArguments(sargs); - - FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction(); - fragmentTransaction.replace(R.id.content_frame, fragment).addToBackStack("search"); - fragmentTransaction.commit(); - } - - @Override - protected void onException(Bundle args, Throwable ex) { - Helper.unexpectedError(ActivityView.this, ActivityView.this, ex); - } - }.execute(ActivityView.this, args, "search:account:archive"); - } else { - FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction(); - fragmentTransaction.replace(R.id.content_frame, new FragmentPro()).addToBackStack("pro"); - fragmentTransaction.commit(); - } + FragmentMessages.search( + ActivityView.this, ActivityView.this, + getSupportFragmentManager(), + -1, search); } } }; diff --git a/app/src/main/java/eu/faircode/email/BoundaryCallbackMessages.java b/app/src/main/java/eu/faircode/email/BoundaryCallbackMessages.java index cd9d84bca1..268f6159a4 100644 --- a/app/src/main/java/eu/faircode/email/BoundaryCallbackMessages.java +++ b/app/src/main/java/eu/faircode/email/BoundaryCallbackMessages.java @@ -68,7 +68,7 @@ import javax.mail.search.SubjectTerm; public class BoundaryCallbackMessages extends PagedList.BoundaryCallback { private Context context; - private Long fid; + private Long folder; private String searching; private int pageSize; private IBoundaryCallbackMessages intf; @@ -100,7 +100,7 @@ public class BoundaryCallbackMessages extends PagedList.BoundaryCallback= 0 && remote < pageSize) { + int remote_count = 0; + while (remote_index >= 0 && remote_count < pageSize) { Log.i("Boundary index=" + remote_index); - int from = Math.max(0, remote_index - (pageSize - remote) + 1); + int from = Math.max(0, remote_index - (pageSize - remote_count) + 1); Message[] isub = Arrays.copyOfRange(imessages, from, remote_index + 1); - remote_index -= (pageSize - remote); + remote_index -= (pageSize - remote_count); FetchProfile fp = new FetchProfile(); fp.add(FetchProfile.Item.ENVELOPE); @@ -414,29 +425,29 @@ public class BoundaryCallbackMessages extends PagedList.BoundaryCallback - - - - Show launcher icon with number of new messages Manage folder subscriptions - External search on device Force English language Show a warning when the receiving server could not authenticate the message Extra privacy features @@ -247,7 +246,6 @@ Most providers do not allow modified sender addresses Only available on supported launchers - Instead of searching in the primary archive folder on the server This will restart the app See the FAQ for details Enable extra logging and show debug information at various places