From 668c02f2782768cd2e15aa3f70c06fa8eb81d7e7 Mon Sep 17 00:00:00 2001 From: Henry Date: Tue, 9 Feb 2016 19:29:55 -0800 Subject: [PATCH] [Edit Mode] Added ability to clear all dirty cache --- .../commonUI/edit/src/capabilities/EditorCapability.js | 2 +- .../edit/src/objects/EditableDomainObjectCache.js | 9 ++++++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/platform/commonUI/edit/src/capabilities/EditorCapability.js b/platform/commonUI/edit/src/capabilities/EditorCapability.js index 0818eebf6d..f674880203 100644 --- a/platform/commonUI/edit/src/capabilities/EditorCapability.js +++ b/platform/commonUI/edit/src/capabilities/EditorCapability.js @@ -125,7 +125,7 @@ define( EditorCapability.prototype.cancel = function () { this.editableObject.getCapability("status").set("editing", false); //TODO: Reset the cache as well here. - this.cache.markClean(this.editableObject); + this.cache.markClean(); return resolvePromise(undefined); }; diff --git a/platform/commonUI/edit/src/objects/EditableDomainObjectCache.js b/platform/commonUI/edit/src/objects/EditableDomainObjectCache.js index 21e25eabfb..32a11604de 100644 --- a/platform/commonUI/edit/src/objects/EditableDomainObjectCache.js +++ b/platform/commonUI/edit/src/objects/EditableDomainObjectCache.js @@ -126,7 +126,14 @@ define( * @param {DomainObject} domainObject the domain object */ EditableDomainObjectCache.prototype.markClean = function (domainObject) { - delete this.dirtyObjects[domainObject.getId()]; + var self = this; + if (!domainObject) { + Object.keys(this.dirtyObjects).forEach(function(key) { + delete self.dirtyObjects[key]; + }); + } else { + delete this.dirtyObjects[domainObject.getId()]; + } }; /**