Paste P260

Masterwork From Distant Lands
ActivePublic

Authored by dkazakov on Sep 14 2018, 8:32 AM.
diff --git a/libs/ui/tool/KisToolChangesTracker.cpp b/libs/ui/tool/KisToolChangesTracker.cpp
index 2ea8dd0..6f4e30d 100644
--- a/libs/ui/tool/KisToolChangesTracker.cpp
+++ b/libs/ui/tool/KisToolChangesTracker.cpp
@@ -42,8 +42,10 @@ void KisToolChangesTracker::commitConfig(KisToolChangesTrackerDataSP state)
void KisToolChangesTracker::requestUndo()
{
- if (m_d->undoStack.size() > 1) {
- m_d->undoStack.removeLast();
+ if (m_d->undoStack.isEmpty()) return;
+
+ m_d->undoStack.removeLast();
+ if (!m_d->undoStack.isEmpty()) {
emit sigConfigChanged(m_d->undoStack.last());
}
}
diff --git a/plugins/tools/basictools/kis_tool_move.cc b/plugins/tools/basictools/kis_tool_move.cc
index 6cd9cf3..323ed7a 100644
--- a/plugins/tools/basictools/kis_tool_move.cc
+++ b/plugins/tools/basictools/kis_tool_move.cc
@@ -293,7 +293,7 @@ void KisToolMove::paint(QPainter& gc, const KoViewConverter &converter)
{
Q_UNUSED(converter);
- if (m_dragInProgress) {
+ if (m_dragInProgress || m_strokeId) {
QPainterPath handles;
handles.addRect(m_handlesRect.translated(currentOffset()));
@@ -339,7 +339,12 @@ void KisToolMove::requestStrokeCancellation()
void KisToolMove::requestUndoDuringStroke()
{
if (!m_strokeId) return;
- m_changesTracker.requestUndo();
+
+ if (m_changesTracker.isEmpty()) {
+ cancelStroke();
+ } else {
+ m_changesTracker.requestUndo();
+ }
}
void KisToolMove::beginPrimaryAction(KoPointerEvent *event)
@@ -462,6 +467,7 @@ void KisToolMove::endStroke()
m_changesTracker.reset();
m_currentlyProcessingNodes.clear();
m_accumulatedOffset = QPoint();
+ m_canvas->updateCanvas();
}
void KisToolMove::slotTrackerChangedConfig(KisToolChangesTrackerDataSP state)
@@ -488,6 +494,7 @@ void KisToolMove::cancelStroke()
m_currentlyProcessingNodes.clear();
m_accumulatedOffset = QPoint();
notifyGuiAfterMove();
+ m_canvas->updateCanvas();
}
QWidget* KisToolMove::createOptionWidget()
diff --git a/plugins/tools/tool_transform2/kis_tool_transform.cc b/plugins/tools/tool_transform2/kis_tool_transform.cc
index a193b4d..6630857 100644
--- a/plugins/tools/tool_transform2/kis_tool_transform.cc
+++ b/plugins/tools/tool_transform2/kis_tool_transform.cc
@@ -811,7 +811,11 @@ void KisToolTransform::requestUndoDuringStroke()
{
if (!m_strokeData.strokeId()) return;
- m_changesTracker.requestUndo();
+ if (m_changesTracker.isEmpty()) {
+ cancelStroke();
+ } else {
+ m_changesTracker.requestUndo();
+ }
}
void KisToolTransform::requestStrokeEnd()
dkazakov edited the content of this paste. (Show Details)Sep 14 2018, 8:32 AM
dkazakov changed the title of this paste from untitled to Masterwork From Distant Lands.