Added long press account to edit account color

This commit is contained in:
M66B
2024-05-21 19:49:41 +02:00
parent b417e28fd1
commit c744fc9904
3 changed files with 54 additions and 4 deletions

View File

@@ -488,6 +488,10 @@ public class FragmentAccounts extends FragmentBase {
try {
switch (requestCode) {
case ActivitySetup.REQUEST_EDIT_ACCOUNT_COLOR:
if (resultCode == RESULT_OK && data != null)
onEditAccountColor(data.getBundleExtra("args"));
break;
case ActivitySetup.REQUEST_DELETE_ACCOUNT:
if (resultCode == RESULT_OK && data != null)
onDeleteAccount(data.getBundleExtra("args"));
@@ -506,6 +510,33 @@ public class FragmentAccounts extends FragmentBase {
}
}
private void onEditAccountColor(Bundle args) {
if (!ActivityBilling.isPro(getContext())) {
startActivity(new Intent(getContext(), ActivityBilling.class));
return;
}
new SimpleTask<Void>() {
@Override
protected Void onExecute(Context context, Bundle args) {
long id = args.getLong("id");
Integer color = args.getInt("color");
if (color == Color.TRANSPARENT)
color = null;
DB db = DB.getInstance(context);
db.account().setAccountColor(id, color);
return null;
}
@Override
protected void onException(Bundle args, Throwable ex) {
Log.unexpectedError(getParentFragmentManager(), ex);
}
}.execute(this, args, "edit:color");
}
private void onDeleteAccount(Bundle args) {
long account = args.getLong("account");
String name = args.getString("name");