mirror of https://github.com/M66B/FairEmail.git
Added swipe to junk
This commit is contained in:
parent
84d332964a
commit
8806a32abc
|
@ -173,6 +173,7 @@ public class FragmentAccount extends FragmentBase {
|
||||||
static final Long SWIPE_ACTION_MOVE = -5L;
|
static final Long SWIPE_ACTION_MOVE = -5L;
|
||||||
static final Long SWIPE_ACTION_FLAG = -6L;
|
static final Long SWIPE_ACTION_FLAG = -6L;
|
||||||
static final Long SWIPE_ACTION_DELETE = -7L;
|
static final Long SWIPE_ACTION_DELETE = -7L;
|
||||||
|
static final Long SWIPE_ACTION_JUNK = -8L;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onCreate(Bundle savedInstanceState) {
|
public void onCreate(Bundle savedInstanceState) {
|
||||||
|
@ -1729,6 +1730,11 @@ public class FragmentAccount extends FragmentBase {
|
||||||
move.name = getString(R.string.title_move);
|
move.name = getString(R.string.title_move);
|
||||||
folders.add(move);
|
folders.add(move);
|
||||||
|
|
||||||
|
EntityFolder junk = new EntityFolder();
|
||||||
|
junk.id = SWIPE_ACTION_JUNK;
|
||||||
|
junk.name = getString(R.string.title_spam);
|
||||||
|
folders.add(junk);
|
||||||
|
|
||||||
EntityFolder delete = new EntityFolder();
|
EntityFolder delete = new EntityFolder();
|
||||||
delete.id = SWIPE_ACTION_DELETE;
|
delete.id = SWIPE_ACTION_DELETE;
|
||||||
delete.name = getString(R.string.title_delete);
|
delete.name = getString(R.string.title_delete);
|
||||||
|
|
|
@ -1688,6 +1688,8 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
|
||||||
? R.drawable.baseline_visibility_24 : R.drawable.baseline_timer_off_24));
|
? R.drawable.baseline_visibility_24 : R.drawable.baseline_timer_off_24));
|
||||||
else if (FragmentAccount.SWIPE_ACTION_MOVE.equals(action))
|
else if (FragmentAccount.SWIPE_ACTION_MOVE.equals(action))
|
||||||
icon = R.drawable.baseline_folder_24;
|
icon = R.drawable.baseline_folder_24;
|
||||||
|
else if (FragmentAccount.SWIPE_ACTION_JUNK.equals(action))
|
||||||
|
icon = R.drawable.baseline_flag_24;
|
||||||
else if (FragmentAccount.SWIPE_ACTION_DELETE.equals(action) ||
|
else if (FragmentAccount.SWIPE_ACTION_DELETE.equals(action) ||
|
||||||
(action.equals(message.folder) && EntityFolder.TRASH.equals(message.folderType)))
|
(action.equals(message.folder) && EntityFolder.TRASH.equals(message.folderType)))
|
||||||
icon = R.drawable.baseline_delete_forever_24;
|
icon = R.drawable.baseline_delete_forever_24;
|
||||||
|
@ -1774,6 +1776,9 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
|
||||||
else if (FragmentAccount.SWIPE_ACTION_MOVE.equals(action)) {
|
else if (FragmentAccount.SWIPE_ACTION_MOVE.equals(action)) {
|
||||||
adapter.notifyItemChanged(pos);
|
adapter.notifyItemChanged(pos);
|
||||||
onSwipeMove(message);
|
onSwipeMove(message);
|
||||||
|
} else if (FragmentAccount.SWIPE_ACTION_JUNK.equals(action)) {
|
||||||
|
adapter.notifyItemChanged(pos);
|
||||||
|
onSwipeJunk(message);
|
||||||
} else if (FragmentAccount.SWIPE_ACTION_DELETE.equals(action) ||
|
} else if (FragmentAccount.SWIPE_ACTION_DELETE.equals(action) ||
|
||||||
(action.equals(message.folder) && EntityFolder.TRASH.equals(message.folderType))) {
|
(action.equals(message.folder) && EntityFolder.TRASH.equals(message.folderType))) {
|
||||||
adapter.notifyItemChanged(pos);
|
adapter.notifyItemChanged(pos);
|
||||||
|
@ -1831,7 +1836,8 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
|
||||||
|
|
||||||
popupMenu.getMenu().add(Menu.NONE, R.string.title_flag_color, 5, R.string.title_flag_color);
|
popupMenu.getMenu().add(Menu.NONE, R.string.title_flag_color, 5, R.string.title_flag_color);
|
||||||
popupMenu.getMenu().add(Menu.NONE, R.string.title_move, 6, R.string.title_move);
|
popupMenu.getMenu().add(Menu.NONE, R.string.title_move, 6, R.string.title_move);
|
||||||
popupMenu.getMenu().add(Menu.NONE, R.string.title_delete, 7, R.string.title_delete);
|
popupMenu.getMenu().add(Menu.NONE, R.string.title_spam, 7, R.string.title_spam);
|
||||||
|
popupMenu.getMenu().add(Menu.NONE, R.string.title_delete, 8, R.string.title_delete);
|
||||||
|
|
||||||
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
|
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
|
||||||
@Override
|
@Override
|
||||||
|
@ -1862,6 +1868,9 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
|
||||||
case R.string.title_move:
|
case R.string.title_move:
|
||||||
onSwipeMove(message);
|
onSwipeMove(message);
|
||||||
return true;
|
return true;
|
||||||
|
case R.string.title_spam:
|
||||||
|
onSwipeJunk(message);
|
||||||
|
return true;
|
||||||
case R.string.title_delete:
|
case R.string.title_delete:
|
||||||
onSwipeDelete(message);
|
onSwipeDelete(message);
|
||||||
return true;
|
return true;
|
||||||
|
@ -1912,7 +1921,18 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
|
||||||
FragmentDialogFolder fragment = new FragmentDialogFolder();
|
FragmentDialogFolder fragment = new FragmentDialogFolder();
|
||||||
fragment.setArguments(args);
|
fragment.setArguments(args);
|
||||||
fragment.setTargetFragment(FragmentMessages.this, REQUEST_MESSAGE_MOVE);
|
fragment.setTargetFragment(FragmentMessages.this, REQUEST_MESSAGE_MOVE);
|
||||||
fragment.show(getParentFragmentManager(), "message:move");
|
fragment.show(getParentFragmentManager(), "swipe:move");
|
||||||
|
}
|
||||||
|
|
||||||
|
private void onSwipeJunk(final @NonNull TupleMessageEx message) {
|
||||||
|
Bundle aargs = new Bundle();
|
||||||
|
aargs.putLong("id", message.id);
|
||||||
|
aargs.putString("from", MessageHelper.formatAddresses(message.from));
|
||||||
|
|
||||||
|
AdapterMessage.FragmentDialogJunk ask = new AdapterMessage.FragmentDialogJunk();
|
||||||
|
ask.setArguments(aargs);
|
||||||
|
ask.setTargetFragment(FragmentMessages.this, REQUEST_MESSAGE_JUNK);
|
||||||
|
ask.show(getParentFragmentManager(), "swipe:junk");
|
||||||
}
|
}
|
||||||
|
|
||||||
private void onSwipeDelete(@NonNull TupleMessageEx message) {
|
private void onSwipeDelete(@NonNull TupleMessageEx message) {
|
||||||
|
@ -1923,7 +1943,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
|
||||||
FragmentDialogAsk ask = new FragmentDialogAsk();
|
FragmentDialogAsk ask = new FragmentDialogAsk();
|
||||||
ask.setArguments(args);
|
ask.setArguments(args);
|
||||||
ask.setTargetFragment(FragmentMessages.this, FragmentMessages.REQUEST_MESSAGE_DELETE);
|
ask.setTargetFragment(FragmentMessages.this, FragmentMessages.REQUEST_MESSAGE_DELETE);
|
||||||
ask.show(getParentFragmentManager(), "message:delete");
|
ask.show(getParentFragmentManager(), "swipe:delete");
|
||||||
}
|
}
|
||||||
|
|
||||||
private void swipeFolder(@NonNull TupleMessageEx message, @NonNull Long target) {
|
private void swipeFolder(@NonNull TupleMessageEx message, @NonNull Long target) {
|
||||||
|
@ -1980,7 +2000,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
|
||||||
else
|
else
|
||||||
Log.unexpectedError(getParentFragmentManager(), ex);
|
Log.unexpectedError(getParentFragmentManager(), ex);
|
||||||
}
|
}
|
||||||
}.execute(FragmentMessages.this, args, "messages:swipe");
|
}.execute(FragmentMessages.this, args, "swipe:folder");
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue