bugMyPaint - Bugs: bug #21854, Layer move: pressing Delete during...

Show feedback again

You are not allowed to post comments on this tracker with your current authentification level.

bug #21854: Layer move: pressing Delete during a long layer move results in artefacts, should cancel move

Submitted by:  Andrew Chadwick <achadwick>
Submitted on:  Fri Mar 21 18:50:22 2014  
Severity: 2 - MinorPriority: 5 - Normal
Status: FixedPrivacy: Public
Assigned to: NoneOpen/Closed: Closed
Release: current git masterPlanned Release: None
Operating System: 

Mon Jun 23 21:55:04 2014, comment #4:

[This is a canned response, please forgive the broken formatting: it's one of the many things Gna! unfortunately does not do well.]

This bug tracker will shortly be moving to Github. As part of this process, we are reviewing old bug reports on gna.org.

This bug was marked as Fixed long ago, but was still classified as Open. Github does not distinguish between Fixed+Open and Fixed+Closed in the
way we once did here, so this bug is now being marked Closed, and will not be migrated into the github issues tracker.

If you believe that this bug still affects the most recent git master of MyPaint (and thus the next release), please feel free to open a new
issue on Github about it. Our new issue trackers are:


Andrew Chadwick <achadwick>
Project Administrator
Tue Apr 29 09:32:02 2014, comment #3:

Fixed with https://gitorious.org/mypaint/mypaint/commit/3b13c5ee1f08185438201ae5df0140e066f46e58

Andrew Chadwick <achadwick>
Project Administrator
Wed Mar 26 10:53:49 2014, comment #2:

A good place to start would be to look wherever we currently write split_stroke() in the code. Nowadays, these should probably be rewritten as a mode-stack method call which either checkpoints (and continues with) or cancels (and discards) whatever the mode on the top of the mode stack is doing.

I envisage "cancel" killing any explicit drags/grabs in progress and telling the topmost mode to discard what it just did and not write it onto the undo stack, and to reset itself to its starting state. Cancel might pop the mode, but perhaps that's a decision best left to the caller.

"Checkpoint"ing would probably only be implemented usefully by freehand mode: the topmost mode should finalize whatever it just did to a new undo stack entry if necessary, and keep on rolling in its present state.

Andrew Chadwick <achadwick>
Project Administrator
Fri Mar 21 18:51:49 2014, comment #1:

The current move should really be discarded and cancelled in this case, and no move entry written to the undo stack.

Andrew Chadwick <achadwick>
Project Administrator
Fri Mar 21 18:50:22 2014, original submission:

Pressing the Delete key during a layer move clears the current layer. However if the layer is currently being dragged on the canvas, and the move is a long one where the diamond-pattern slicing and dicing hasn't finished yet, only the moved tiles are cleared on the canvas: the remainder of the move carries on, resulting in moved tiles outside the cleared area and a weird undo history.

Andrew Chadwick <achadwick>
Project Administrator


No files currently attached


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -unavailable- added by achadwick (Submitted the item)

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.


    Error: not logged in



    Follow 2 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Mon Jun 23 21:55:04 2014achadwickOpen/ClosedOpen=>Closed
    Tue Apr 29 09:32:02 2014achadwickStatusConfirmed=>Fixed
    Show feedback again

    Back to the top

    Powered by Savane 3.1-cleanup