Fix bug where cursor position wouldn't be saved when switching documents

This was caused by an underlying bug/poor optimisation where the aceEditor
directive would be reconstructed every time when switching between documents.
This wiped instances like CursorPositionManager which relies on keeping state
between doc changes.

Now the directive is only removed when switching between Ace and CM. This
prevents other potential bugs and improves performance.
This commit is contained in:
Alasdair Smith 2018-02-19 11:45:00 +00:00
parent fc1e94b14a
commit fafbbfef87

View file

@ -36,7 +36,8 @@ div.full-size(
#editor(
ace-editor="editor",
ng-if="!!editor.sharejs_doc && !editor.opening && !editor.richText"
ng-if="!editor.richText",
ng-show="!!editor.sharejs_doc && !editor.opening",
theme="settings.theme",
keybindings="settings.mode",
font-size="settings.fontSize",
@ -69,8 +70,9 @@ div.full-size(
if hasFeature('rich-text')
#editor-rich-text(
cm-editor
ng-if="!editor.opening && editor.richText"
cm-editor,
ng-if="editor.richText"
ng-show="!!editor.sharejs_doc && !editor.opening"
sharejs-doc="editor.sharejs_doc"
)