saveDraft();
};
+ // Listen to shortcuts coming via events
+ $scope.$on('editor-keydown', (event, data) => {
+ // Save shortcut (ctrl+s)
+ if (data.keyCode == 83 && (navigator.platform.match("Mac") ? data.metaKey : data.ctrlKey)) {
+ data.preventDefault();
+ saveDraft();
+ }
+ });
+
/**
* Discard the current draft and grab the current page
* content from the system via an AJAX request.
scope.mceChange(content);
});
+ editor.on('keydown', (event) => {
+ scope.$emit('editor-keydown', event);
+ });
+
editor.on('init', (e) => {
scope.mceModel = editor.getContent();
});
lastScroll = now;
});
- // Insert image shortcut
+ // Editor key-presses
input.keydown(event => {
+ // Insert image shortcut
if (event.which === 73 && event.ctrlKey && event.shiftKey) {
event.preventDefault();
var caretPos = input[0].selectionStart;
input.focus();
input[0].selectionStart = caretPos + (";
input[0].selectionEnd = caretPos + (';
+ return;
}
+ // Pass key presses to controller via event
+ scope.$emit('editor-keydown', event);
});
// Insert image from image manager