Long press to mark read/unread

This commit is contained in:
M66B
2018-09-01 06:27:13 +00:00
parent 4e222ec6d1
commit 80755d85d6
42 changed files with 163 additions and 192 deletions

View File

@@ -651,16 +651,9 @@ public class FragmentMessage extends FragmentEx {
menu.findItem(R.id.menu_addresses).setVisible(!free);
menu.findItem(R.id.menu_thread).setVisible(!free && !message.virtual && message.count > 1);
menu.findItem(R.id.menu_seen).setVisible(!free && !message.virtual && !inOutbox);
menu.findItem(R.id.menu_forward).setVisible(!free && !message.virtual && !inOutbox);
menu.findItem(R.id.menu_reply_all).setVisible(!free && !message.virtual && message.cc != null && !inOutbox);
menu.findItem(R.id.menu_decrypt).setVisible(decrypted == null);
MenuItem menuSeen = menu.findItem(R.id.menu_seen);
menuSeen.setIcon(message.ui_seen
? R.drawable.baseline_visibility_off_24
: R.drawable.baseline_visibility_24);
menuSeen.setTitle(message.ui_seen ? R.string.title_unseen : R.string.title_seen);
}
@Override
@@ -672,9 +665,6 @@ public class FragmentMessage extends FragmentEx {
case R.id.menu_thread:
onMenuThread();
return true;
case R.id.menu_seen:
onMenuSeen();
return true;
case R.id.menu_forward:
onMenuForward();
return true;
@@ -710,49 +700,6 @@ public class FragmentMessage extends FragmentEx {
fragmentTransaction.commit();
}
private void onMenuSeen() {
Helper.setViewsEnabled(view, false);
Bundle args = new Bundle();
args.putLong("id", message.id);
new SimpleTask<Void>() {
@Override
protected Void onLoad(Context context, Bundle args) {
long id = args.getLong("id");
DB db = DB.getInstance(context);
try {
db.beginTransaction();
EntityMessage message = db.message().getMessage(id);
for (EntityMessage tmessage : db.message().getMessageByThread(message.account, message.thread)) {
db.message().setMessageUiSeen(tmessage.id, !message.ui_seen);
EntityOperation.queue(db, tmessage, EntityOperation.SEEN, !tmessage.ui_seen);
}
db.setTransactionSuccessful();
} finally {
db.endTransaction();
}
EntityOperation.process(context);
return null;
}
@Override
protected void onLoaded(Bundle args, Void data) {
Helper.setViewsEnabled(view, true);
}
@Override
public void onException(Bundle args, Throwable ex) {
Helper.setViewsEnabled(view, true);
Toast.makeText(getContext(), ex.toString(), Toast.LENGTH_LONG).show();
}
}.load(this, args);
}
private void onMenuForward() {
startActivity(new Intent(getContext(), ActivityCompose.class)
.putExtra("action", "forward")