Check internet on manual sync

This commit is contained in:
M66B
2019-02-21 09:02:57 +00:00
parent e917a53530
commit f746509b7b
2 changed files with 14 additions and 8 deletions

View File

@@ -294,6 +294,8 @@ public class AdapterFolder extends RecyclerView.Adapter<AdapterFolder.ViewHolder
if (!prefs.getBoolean("enabled", true))
throw new IllegalStateException(context.getString(R.string.title_sync_disabled));
boolean internet = (Helper.isMetered(context, true) != null);
DB db = DB.getInstance(context);
try {
db.beginTransaction();
@@ -301,13 +303,14 @@ public class AdapterFolder extends RecyclerView.Adapter<AdapterFolder.ViewHolder
boolean now;
if (aid < 0) {
// outbox
now = ("connected".equals(folder.state));
now = (internet && "connected".equals(folder.state));
EntityOperation.sync(db, fid);
} else {
now = true;
if ("connected".equals(db.account().getAccount(aid).state))
if (!internet || "connected".equals(db.account().getAccount(aid).state)) {
now = internet;
EntityOperation.sync(db, fid);
else {
} else {
now = true;
db.folder().setFolderSyncState(folder.id, "requested");
ServiceSynchronize.sync(context, fid);
}