diff --git a/app/src/main/java/eu/faircode/email/FragmentAccounts.java b/app/src/main/java/eu/faircode/email/FragmentAccounts.java index 8191271b41..a1c79f4412 100644 --- a/app/src/main/java/eu/faircode/email/FragmentAccounts.java +++ b/app/src/main/java/eu/faircode/email/FragmentAccounts.java @@ -33,6 +33,7 @@ import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import android.widget.Button; +import android.widget.Toast; import androidx.annotation.NonNull; import androidx.annotation.Nullable; @@ -320,6 +321,22 @@ public class FragmentAccounts extends FragmentBase { super.onPrepareOptionsMenu(menu); } + @Override + public boolean onOptionsItemSelected(@NonNull MenuItem item) { + switch (item.getItemId()) { + case R.id.menu_force_sync: + onMenuForceSync(); + return true; + default: + return super.onOptionsItemSelected(item); + } + } + + private void onMenuForceSync() { + ServiceSynchronize.reload(getContext(), null, "force sync"); + ToastEx.makeText(getContext(), R.string.title_executing, Toast.LENGTH_LONG).show(); + } + @Override public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { super.onRequestPermissionsResult(requestCode, permissions, grantResults); diff --git a/app/src/main/java/eu/faircode/email/FragmentFolders.java b/app/src/main/java/eu/faircode/email/FragmentFolders.java index 433dcc7461..e0339d7b05 100644 --- a/app/src/main/java/eu/faircode/email/FragmentFolders.java +++ b/app/src/main/java/eu/faircode/email/FragmentFolders.java @@ -438,6 +438,9 @@ public class FragmentFolders extends FragmentBase { case R.id.menu_apply_all: onMenuApplyToAll(); return true; + case R.id.menu_force_sync: + onMenuForceSync(); + return true; default: return super.onOptionsItemSelected(item); } @@ -468,6 +471,11 @@ public class FragmentFolders extends FragmentBase { fragment.show(getParentFragmentManager(), "folders:apply"); } + private void onMenuForceSync() { + ServiceSynchronize.reload(getContext(), null, "force sync"); + ToastEx.makeText(getContext(), R.string.title_executing, Toast.LENGTH_LONG).show(); + } + @Override public void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { super.onActivityResult(requestCode, resultCode, data); diff --git a/app/src/main/res/menu/menu_accounts.xml b/app/src/main/res/menu/menu_accounts.xml index 22693194be..9933216cf2 100644 --- a/app/src/main/res/menu/menu_accounts.xml +++ b/app/src/main/res/menu/menu_accounts.xml @@ -8,4 +8,9 @@ android:title="@string/title_search" app:actionViewClass="eu.faircode.email.SearchViewEx" app:showAsAction="collapseActionView|always" /> + + diff --git a/app/src/main/res/menu/menu_folders.xml b/app/src/main/res/menu/menu_folders.xml index b95aa2aa10..82fe8d6fea 100644 --- a/app/src/main/res/menu/menu_folders.xml +++ b/app/src/main/res/menu/menu_folders.xml @@ -25,4 +25,9 @@ android:id="@+id/menu_apply_all" android:title="@string/title_apply_to_all" app:showAsAction="never" /> + +