Fixed/improved undo move

This commit is contained in:
M66B 2019-11-17 19:34:00 +01:00
parent 77fc85faed
commit daf40a399e
1 changed files with 12 additions and 7 deletions

View File

@ -705,7 +705,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
@Override @Override
protected void onExecuted(Bundle args, ArrayList<MessageTarget> result) { protected void onExecuted(Bundle args, ArrayList<MessageTarget> result) {
moveAsk(result, false); moveAsk(result, false, false);
} }
@Override @Override
@ -1350,7 +1350,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
@Override @Override
protected void onExecuted(Bundle args, ArrayList<MessageTarget> result) { protected void onExecuted(Bundle args, ArrayList<MessageTarget> result) {
moveAsk(result, false); moveAsk(result, false, false);
} }
@Override @Override
@ -2288,7 +2288,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
if (EntityFolder.JUNK.equals(type)) if (EntityFolder.JUNK.equals(type))
moveAskConfirmed(result); moveAskConfirmed(result);
else else
moveAsk(result, true); moveAsk(result, true, true);
} }
@Override @Override
@ -2352,7 +2352,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
@Override @Override
protected void onExecuted(Bundle args, ArrayList<MessageTarget> result) { protected void onExecuted(Bundle args, ArrayList<MessageTarget> result) {
moveAsk(result, true); moveAsk(result, true, true);
} }
@Override @Override
@ -3566,13 +3566,18 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
}.execute(this, args, "messages:navigate"); }.execute(this, args, "messages:navigate");
} }
private void moveAsk(final ArrayList<MessageTarget> result, boolean undo) { private void moveAsk(final ArrayList<MessageTarget> result, boolean undo, boolean canUndo) {
if (result.size() == 0) if (result.size() == 0)
return; return;
if (undo) {
moveUndo(result);
return;
}
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext());
if (prefs.getBoolean("automove", false)) { if (prefs.getBoolean("automove", false)) {
if (undo) if (canUndo)
moveUndo(result); moveUndo(result);
else else
moveAskConfirmed(result); moveAskConfirmed(result);
@ -4579,7 +4584,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
@Override @Override
protected void onExecuted(Bundle args, ArrayList<MessageTarget> result) { protected void onExecuted(Bundle args, ArrayList<MessageTarget> result) {
moveAsk(result, false); moveAsk(result, false, true);
} }
@Override @Override