mirror of https://github.com/M66B/FairEmail.git
Optional force reload
This commit is contained in:
parent
b330518620
commit
7b617e4d7c
|
@ -598,7 +598,7 @@ public class AdapterFolder extends RecyclerView.Adapter<AdapterFolder.ViewHolder
|
|||
break;
|
||||
case R.string.title_synchronize_enabled:
|
||||
db.folder().setFolderSynchronize(id, enabled);
|
||||
ServiceSynchronize.reload(context, aid, "folder sync=" + enabled);
|
||||
ServiceSynchronize.reload(context, aid, false, "folder sync=" + enabled);
|
||||
break;
|
||||
default:
|
||||
throw new IllegalArgumentException("Unknown folder property=" + property);
|
||||
|
|
|
@ -333,7 +333,7 @@ public class FragmentAccounts extends FragmentBase {
|
|||
}
|
||||
|
||||
private void onMenuForceSync() {
|
||||
ServiceSynchronize.reload(getContext(), null, "force sync");
|
||||
ServiceSynchronize.reload(getContext(), null, true, "force sync");
|
||||
ToastEx.makeText(getContext(), R.string.title_executing, Toast.LENGTH_LONG).show();
|
||||
}
|
||||
|
||||
|
@ -343,7 +343,7 @@ public class FragmentAccounts extends FragmentBase {
|
|||
|
||||
if (requestCode == REQUEST_IMPORT_OAUTH)
|
||||
if (Helper.hasPermissions(getContext(), permissions))
|
||||
ServiceSynchronize.reload(getContext(), null, "Permissions regranted");
|
||||
ServiceSynchronize.reload(getContext(), null, false, "Permissions regranted");
|
||||
}
|
||||
|
||||
private void onSwipeRefresh() {
|
||||
|
@ -400,7 +400,7 @@ public class FragmentAccounts extends FragmentBase {
|
|||
}
|
||||
|
||||
if (force)
|
||||
ServiceSynchronize.reload(context, null, "forced refresh");
|
||||
ServiceSynchronize.reload(context, null, true, "refresh");
|
||||
else
|
||||
ServiceSynchronize.eval(context, "refresh");
|
||||
|
||||
|
|
|
@ -551,7 +551,7 @@ public class FragmentFolder extends FragmentBase {
|
|||
}
|
||||
|
||||
if (reload)
|
||||
ServiceSynchronize.reload(context, aid, "save folder");
|
||||
ServiceSynchronize.reload(context, aid, false, "save folder");
|
||||
else
|
||||
ServiceSynchronize.eval(context, "save folder");
|
||||
|
||||
|
@ -617,7 +617,7 @@ public class FragmentFolder extends FragmentBase {
|
|||
db.endTransaction();
|
||||
}
|
||||
|
||||
ServiceSynchronize.reload(context, folder.account, "delete folder");
|
||||
ServiceSynchronize.reload(context, folder.account, false, "delete folder");
|
||||
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -391,7 +391,7 @@ public class FragmentFolders extends FragmentBase {
|
|||
}
|
||||
|
||||
if (force)
|
||||
ServiceSynchronize.reload(context, null, "forced refresh");
|
||||
ServiceSynchronize.reload(context, null, true, "refresh");
|
||||
else
|
||||
ServiceSynchronize.eval(context, "refresh");
|
||||
|
||||
|
@ -503,7 +503,7 @@ public class FragmentFolders extends FragmentBase {
|
|||
}
|
||||
|
||||
private void onMenuForceSync() {
|
||||
ServiceSynchronize.reload(getContext(), null, "force sync");
|
||||
ServiceSynchronize.reload(getContext(), null, true, "force sync");
|
||||
ToastEx.makeText(getContext(), R.string.title_executing, Toast.LENGTH_LONG).show();
|
||||
}
|
||||
|
||||
|
|
|
@ -1394,7 +1394,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
|
|||
}
|
||||
|
||||
if (force)
|
||||
ServiceSynchronize.reload(context, null, "forced refresh");
|
||||
ServiceSynchronize.reload(context, null, true, "refresh");
|
||||
else
|
||||
ServiceSynchronize.eval(context, "refresh");
|
||||
|
||||
|
@ -3762,7 +3762,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
|
|||
}
|
||||
|
||||
private void onMenuForceSync() {
|
||||
ServiceSynchronize.reload(getContext(), null, "force sync");
|
||||
ServiceSynchronize.reload(getContext(), null, true, "force sync");
|
||||
ToastEx.makeText(getContext(), R.string.title_executing, Toast.LENGTH_LONG).show();
|
||||
}
|
||||
|
||||
|
|
|
@ -207,7 +207,7 @@ public class FragmentOptionsMisc extends FragmentBase implements SharedPreferenc
|
|||
@Override
|
||||
public void onCheckedChanged(CompoundButton compoundButton, boolean checked) {
|
||||
prefs.edit().putBoolean("auto_optimize", checked).apply();
|
||||
ServiceSynchronize.reload(getContext(), null, "optimize");
|
||||
ServiceSynchronize.reload(getContext(), null, false, "optimize");
|
||||
}
|
||||
});
|
||||
|
||||
|
|
|
@ -220,7 +220,7 @@ public class FragmentOptionsSynchronize extends FragmentBase implements SharedPr
|
|||
@Override
|
||||
public void onCheckedChanged(CompoundButton compoundButton, boolean checked) {
|
||||
prefs.edit().putBoolean("sync_unseen", checked).apply();
|
||||
ServiceSynchronize.reload(getContext(), null, "sync_unseen=" + checked);
|
||||
ServiceSynchronize.reload(getContext(), null, false, "sync_unseen=" + checked);
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -228,7 +228,7 @@ public class FragmentOptionsSynchronize extends FragmentBase implements SharedPr
|
|||
@Override
|
||||
public void onCheckedChanged(CompoundButton compoundButton, boolean checked) {
|
||||
prefs.edit().putBoolean("sync_flagged", checked).apply();
|
||||
ServiceSynchronize.reload(getContext(), null, "sync_flagged=" + checked);
|
||||
ServiceSynchronize.reload(getContext(), null, false, "sync_flagged=" + checked);
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -236,7 +236,7 @@ public class FragmentOptionsSynchronize extends FragmentBase implements SharedPr
|
|||
@Override
|
||||
public void onCheckedChanged(CompoundButton compoundButton, boolean checked) {
|
||||
prefs.edit().putBoolean("delete_unseen", checked).apply();
|
||||
ServiceSynchronize.reload(getContext(), null, "delete_unseen=" + checked);
|
||||
ServiceSynchronize.reload(getContext(), null, false, "delete_unseen=" + checked);
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -244,7 +244,7 @@ public class FragmentOptionsSynchronize extends FragmentBase implements SharedPr
|
|||
@Override
|
||||
public void onCheckedChanged(CompoundButton compoundButton, boolean checked) {
|
||||
prefs.edit().putBoolean("sync_kept", checked).apply();
|
||||
ServiceSynchronize.reload(getContext(), null, "sync_kept=" + checked);
|
||||
ServiceSynchronize.reload(getContext(), null, false, "sync_kept=" + checked);
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -252,7 +252,7 @@ public class FragmentOptionsSynchronize extends FragmentBase implements SharedPr
|
|||
@Override
|
||||
public void onCheckedChanged(CompoundButton compoundButton, boolean checked) {
|
||||
prefs.edit().putBoolean("sync_folders", checked).apply();
|
||||
ServiceSynchronize.reload(getContext(), null, "sync_folders=" + checked);
|
||||
ServiceSynchronize.reload(getContext(), null, false, "sync_folders=" + checked);
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -269,7 +269,7 @@ public class FragmentOptionsSynchronize extends FragmentBase implements SharedPr
|
|||
@Override
|
||||
public void onCheckedChanged(CompoundButton compoundButton, boolean checked) {
|
||||
prefs.edit().putBoolean("subscribed_only", checked).apply();
|
||||
ServiceSynchronize.reload(getContext(), null, "subscribed_only");
|
||||
ServiceSynchronize.reload(getContext(), null, false, "subscribed_only");
|
||||
}
|
||||
});
|
||||
|
||||
|
|
|
@ -685,7 +685,8 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences
|
|||
}
|
||||
|
||||
private void onReload(Intent intent) {
|
||||
lastLost = 0;
|
||||
if (intent.getBooleanExtra("force", false))
|
||||
lastLost = 0;
|
||||
Bundle command = new Bundle();
|
||||
command.putString("name", "reload");
|
||||
command.putLong("account", intent.getLongExtra("account", -1));
|
||||
|
@ -954,7 +955,7 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences
|
|||
String name = e.getFolder().getFullName();
|
||||
Log.i("Folder created=" + name);
|
||||
if (db.folder().getFolderByName(account.id, name) == null)
|
||||
reload(ServiceSynchronize.this, account.id, "folder created");
|
||||
reload(ServiceSynchronize.this, account.id, false, "folder created");
|
||||
} finally {
|
||||
wlFolder.release();
|
||||
}
|
||||
|
@ -972,7 +973,7 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences
|
|||
int count = db.folder().renameFolder(account.id, old, name);
|
||||
Log.i("Renamed to " + name + " count=" + count);
|
||||
if (count == 0)
|
||||
reload(ServiceSynchronize.this, account.id, "folder renamed");
|
||||
reload(ServiceSynchronize.this, account.id, false, "folder renamed");
|
||||
} finally {
|
||||
wlFolder.release();
|
||||
}
|
||||
|
@ -986,7 +987,7 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences
|
|||
String name = e.getFolder().getFullName();
|
||||
Log.i("Folder deleted=" + name);
|
||||
if (db.folder().getFolderByName(account.id, name) != null)
|
||||
reload(ServiceSynchronize.this, account.id, "folder deleted");
|
||||
reload(ServiceSynchronize.this, account.id, false, "folder deleted");
|
||||
} finally {
|
||||
wlFolder.release();
|
||||
}
|
||||
|
@ -1912,11 +1913,12 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences
|
|||
.putExtra("reason", reason));
|
||||
}
|
||||
|
||||
static void reload(Context context, Long account, String reason) {
|
||||
static void reload(Context context, Long account, boolean force, String reason) {
|
||||
ContextCompat.startForegroundService(context,
|
||||
new Intent(context, ServiceSynchronize.class)
|
||||
.setAction("reload")
|
||||
.putExtra("account", account == null ? -1 : account)
|
||||
.putExtra("force", force)
|
||||
.putExtra("reason", reason));
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue