keyboard.handleKey(e, this);
}.bind(this));
+ var mouseDown;
+ this.wrapper.on('mousedown', '[document-node-element], [document-text-element]', function(e) {
+ mouseDown = e.target;
+ });
+
this.wrapper.on('click', '[document-node-element], [document-text-element]', function(e) {
e.stopPropagation();
if(e.originalEvent.detail === 3) {
e.preventDefault();
canvas._moveCaretToTextElement(canvas.getDocumentElement(e.currentTarget), 'whole');
} else {
- canvas.setCurrentElement(canvas.getDocumentElement(e.currentTarget), {caretTo: false});
+ if(mouseDown === e.target) {
+ canvas.setCurrentElement(canvas.getDocumentElement(e.currentTarget), {caretTo: false});
+ }
}
});
canvas._moveCaretToTextElement(canvas.getDocumentElement(mutation.target), 'end');
}
observer.observe(canvas.wrapper[0], config);
- canvas.publisher('contentChanged');
var textElement = canvas.getDocumentElement(mutation.target),
toSet = mutation.target.data !== utils.unicode.ZWS ? mutation.target.data : '';
} else {
this.wrapper.find('.current-node-element').removeClass('current-node-element');
element._container().addClass('current-node-element');
- this.publisher('currentElementChanged', element);
}
}.bind(this);