From bb965b8e34095697da13f313673960feaee63b0f Mon Sep 17 00:00:00 2001 From: Maximilian Hils Date: Fri, 1 May 2015 20:45:27 +0200 Subject: web: try harder to fix editor --- libmproxy/web/static/app.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'libmproxy') diff --git a/libmproxy/web/static/app.js b/libmproxy/web/static/app.js index 3531174e..b9767153 100644 --- a/libmproxy/web/static/app.js +++ b/libmproxy/web/static/app.js @@ -735,9 +735,15 @@ var EditorBase = React.createClass({displayName: "EditorBase", onBlur: this._stop, onKeyDown: this.onKeyDown, onInput: this.onInput, + onPaste: this.onPaste, dangerouslySetInnerHTML: html}) ); }, + onPaste: function(e){ + e.preventDefault(); + var content = e.clipboardData.getData("text/plain"); + document.execCommand("insertHTML", false, content); + }, onFocus: function (e) { this.setState({editable: true}, function () { React.findDOMNode(this).focus(); @@ -775,7 +781,7 @@ var EditorBase = React.createClass({displayName: "EditorBase", this.cancel(); break; case utils.Key.ENTER: - if (this.props.submitOnEnter) { + if (this.props.submitOnEnter && !e.shiftKey) { e.preventDefault(); this.stop(); } @@ -787,7 +793,6 @@ var EditorBase = React.createClass({displayName: "EditorBase", onInput: function () { var node = React.findDOMNode(this); var content = this.props.nodeToContent(node); - node.innerHTML = this.props.contentToHtml(content); this.props.onInput && this.props.onInput(content); } }); -- cgit v1.2.3