Allow clearing notes

pull/199/head
M66B 4 years ago
parent 786e0420d2
commit dd2274d1fb

@ -6676,66 +6676,82 @@ public class AdapterMessage extends RecyclerView.Adapter<AdapterMessage.ViewHold
} }
}); });
return new AlertDialog.Builder(context) final SimpleTask<Void> task = new SimpleTask<Void>() {
.setView(view) @Override
.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { protected Void onExecute(Context context, Bundle args) {
@Override long id = args.getLong("id");
public void onClick(DialogInterface dialog, int which) { String notes = args.getString("notes");
Bundle args = new Bundle(); Integer color = args.getInt("color");
args.putLong("id", id);
args.putString("notes", etNotes.getText().toString());
args.putInt("color", btnColor.getColor());
new SimpleTask<Void>() { if ("".equals(notes.trim()))
@Override notes = null;
protected Void onExecute(Context context, Bundle args) {
long id = args.getLong("id");
String notes = args.getString("notes");
Integer color = args.getInt("color");
if ("".equals(notes.trim())) if (color == Color.TRANSPARENT)
notes = null; color = null;
if (color == Color.TRANSPARENT) DB db = DB.getInstance(context);
color = null; try {
db.beginTransaction();
DB db = DB.getInstance(context); EntityMessage message = db.message().getMessage(id);
try { if (message == null)
db.beginTransaction(); return null;
EntityMessage message = db.message().getMessage(id); db.message().setMessageNotes(message.id, notes, color);
if (message == null)
return null;
db.message().setMessageNotes(message.id, notes, color); if (TextUtils.isEmpty(message.msgid))
return null;
if (TextUtils.isEmpty(message.msgid)) List<EntityMessage> messages = db.message().getMessagesByMsgId(message.account, message.msgid);
return null; if (messages == null)
return null;
List<EntityMessage> messages = db.message().getMessagesByMsgId(message.account, message.msgid); for (EntityMessage m : messages)
if (messages == null) db.message().setMessageNotes(m.id, notes, color);
return null;
for (EntityMessage m : messages) db.setTransactionSuccessful();
db.message().setMessageNotes(m.id, notes, color); } finally {
db.endTransaction();
}
db.setTransactionSuccessful(); return null;
} finally { }
db.endTransaction();
}
return null; @Override
} protected void onException(Bundle args, Throwable ex) {
Log.unexpectedError(getParentFragmentManager(), ex);
}
};
@Override AlertDialog.Builder builder = new AlertDialog.Builder(context)
protected void onException(Bundle args, Throwable ex) { .setView(view)
Log.unexpectedError(getParentFragmentManager(), ex); .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
} @Override
}.execute(getContext(), getActivity(), args, "message:note"); public void onClick(DialogInterface dialog, int which) {
Bundle args = new Bundle();
args.putLong("id", id);
args.putString("notes", etNotes.getText().toString());
args.putInt("color", btnColor.getColor());
task.execute(getContext(), getActivity(), args, "message:note");
} }
}) })
.setNegativeButton(android.R.string.cancel, null) .setNegativeButton(android.R.string.cancel, null);
.create();
if (!TextUtils.isEmpty(notes))
builder.setNeutralButton(R.string.title_reset, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Bundle args = new Bundle();
args.putLong("id", id);
args.putString("notes", "");
args.putInt("color", Color.TRANSPARENT);
task.execute(getContext(), getActivity(), args, "message:note");
}
});
return builder.create();
} }
@Override @Override

Loading…
Cancel
Save