diff --git a/src/Umbraco.Web.UI/umbraco_client/CodeArea/UmbracoEditor.js b/src/Umbraco.Web.UI/umbraco_client/CodeArea/UmbracoEditor.js index 8f0faf2a28..96ef28f53c 100644 --- a/src/Umbraco.Web.UI/umbraco_client/CodeArea/UmbracoEditor.js +++ b/src/Umbraco.Web.UI/umbraco_client/CodeArea/UmbracoEditor.js @@ -35,9 +35,18 @@ Umbraco.Sys.registerNamespace("Umbraco.Controls.CodeEditor"); this._control.val(code); } else { - //this is a wrapper for CodeMirror + //this is a wrapper for CodeMirror this._editor.focus(); + + var codeChanged = this._editor.getValue() != code; + var cursor = this._editor.doc.getCursor(); + this._editor.setValue(code); + + // Restore cursor position if the server saved code matches. + if (!codeChanged) + this._editor.setCursor(cursor); + this._editor.focus(); } },