mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
When rewinding checkpoints preserve the message
This commit is contained in:
parent
2f2723f6b6
commit
99308e0f86
@ -30,6 +30,7 @@ class State(object):
|
|||||||
def __init__(self, container):
|
def __init__(self, container):
|
||||||
self.container = container
|
self.container = container
|
||||||
self.message = None
|
self.message = None
|
||||||
|
self.rewind_message = None
|
||||||
|
|
||||||
class GlobalUndoHistory(QAbstractListModel):
|
class GlobalUndoHistory(QAbstractListModel):
|
||||||
|
|
||||||
@ -82,6 +83,7 @@ class GlobalUndoHistory(QAbstractListModel):
|
|||||||
|
|
||||||
def add_savepoint(self, new_container, message):
|
def add_savepoint(self, new_container, message):
|
||||||
try:
|
try:
|
||||||
|
self.states[self.pos].rewind_message = self.states[self.pos].message
|
||||||
self.states[self.pos].message = message
|
self.states[self.pos].message = message
|
||||||
except IndexError:
|
except IndexError:
|
||||||
raise IndexError('The checkpoint stack has an incorrect position pointer. This should never happen: self.pos = %r, len(self.states) = %r' % (
|
raise IndexError('The checkpoint stack has an incorrect position pointer. This should never happen: self.pos = %r, len(self.states) = %r' % (
|
||||||
@ -118,7 +120,7 @@ class GlobalUndoHistory(QAbstractListModel):
|
|||||||
self.endRemoveRows()
|
self.endRemoveRows()
|
||||||
self.dataChanged.emit(self.index(self.pos), self.index(self.pos))
|
self.dataChanged.emit(self.index(self.pos), self.index(self.pos))
|
||||||
ans = self.current_container
|
ans = self.current_container
|
||||||
ans.message = None
|
self.states[self.pos].message = self.states[self.pos].rewind_message
|
||||||
return ans
|
return ans
|
||||||
|
|
||||||
def undo(self):
|
def undo(self):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user