Fix drag position after alternate button press
When a button is released and the edit state is not "dragging", reset the drag delta to zero. There was a problem with the spot removal spots being dragged. If a spot is deleted while being dragged, dragging another spot will cause a jump.
This commit is contained in:
@@ -794,6 +794,13 @@ void CropWindow::buttonRelease (int button, int num, int bstate, int x, int y)
|
||||
iarea->setToolHand ();
|
||||
}
|
||||
|
||||
if (state != SEditDrag1 && state != SEditDrag2 && state != SEditDrag3) {
|
||||
iarea->deltaImage.set(0, 0);
|
||||
iarea->deltaScreen.set(0, 0);
|
||||
iarea->deltaPrevImage.set(0, 0);
|
||||
iarea->deltaPrevScreen.set(0, 0);
|
||||
}
|
||||
|
||||
if (cropgl && (state == SCropSelecting || state == SResizeH1 || state == SResizeH2 || state == SResizeW1 || state == SResizeW2 || state == SResizeTL || state == SResizeTR || state == SResizeBL || state == SResizeBR || state == SCropMove)) {
|
||||
cropgl->cropManipReady ();
|
||||
iarea->setToolHand ();
|
||||
|
@@ -667,6 +667,7 @@ bool Spot::button3Pressed (int modifierKey)
|
||||
return true;
|
||||
} else if (! (modifierKey & (GDK_SHIFT_MASK | GDK_SHIFT_MASK))) {
|
||||
EditSubscriber::action = EditSubscriber::Action::PICKING;
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
|
Reference in New Issue
Block a user