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" />
+
+