From 2edcdd88ffc2f6ff0ea836e4da3e1fd2cb3e856f Mon Sep 17 00:00:00 2001 From: Ananya Sen Date: Mon, 27 Feb 2012 17:39:26 -0800 Subject: persist undo/redo stack per html document Signed-off-by: Ananya Sen --- js/controllers/undo-controller.js | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'js/controllers/undo-controller.js') diff --git a/js/controllers/undo-controller.js b/js/controllers/undo-controller.js index 926803d3..01853593 100755 --- a/js/controllers/undo-controller.js +++ b/js/controllers/undo-controller.js @@ -71,22 +71,28 @@ exports.UndoController = Montage.create( Component, { /** * Undo Queue */ - _undoQueue: { value: [] }, + _undoQueue: { value: [], writable:true }, undoQueue: { get: function() { return this._undoQueue; + }, + set: function(value){ + this._undoQueue = value; } }, /** * Redo Queue */ - _redoQueue: { value: [], enumerable: false }, + _redoQueue: { value: [], enumerable: false, writable:true }, redoQueue: { get: function() { return this._redoQueue; + }, + set: function(value){ + this._redoQueue = value; } }, @@ -202,5 +208,12 @@ exports.UndoController = Montage.create( Component, { this.redoQueue.splice(0, this.redoQueue.length); //this.redoQueue = []; } + }, + + clearHistory:{ + value: function(){ + this.undoQueue.splice(0, this.undoQueue.length); + this.redoQueue.splice(0, this.redoQueue.length); + } } }); \ No newline at end of file -- cgit v1.2.3 From e0fab951e4f3869b04fd4a01f429a6654991cd68 Mon Sep 17 00:00:00 2001 From: Ananya Sen Date: Tue, 28 Feb 2012 15:33:35 -0800 Subject: minor fixes in saving undo/redo stacks per document Signed-off-by: Ananya Sen --- js/controllers/undo-controller.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'js/controllers/undo-controller.js') diff --git a/js/controllers/undo-controller.js b/js/controllers/undo-controller.js index 01853593..19cfb6e6 100755 --- a/js/controllers/undo-controller.js +++ b/js/controllers/undo-controller.js @@ -71,7 +71,7 @@ exports.UndoController = Montage.create( Component, { /** * Undo Queue */ - _undoQueue: { value: [], writable:true }, + _undoQueue: { value: []}, undoQueue: { get: function() { @@ -85,7 +85,7 @@ exports.UndoController = Montage.create( Component, { /** * Redo Queue */ - _redoQueue: { value: [], enumerable: false, writable:true }, + _redoQueue: { value: [], enumerable: false}, redoQueue: { get: function() { @@ -212,8 +212,8 @@ exports.UndoController = Montage.create( Component, { clearHistory:{ value: function(){ - this.undoQueue.splice(0, this.undoQueue.length); - this.redoQueue.splice(0, this.redoQueue.length); + this.undoQueue.length = 0; + this.redoQueue.length = 0; } } }); \ No newline at end of file -- cgit v1.2.3