aboutsummaryrefslogtreecommitdiffstats
path: root/web
diff options
context:
space:
mode:
authorMaximilian Hils <git@maximilianhils.com>2016-03-05 13:20:43 +0100
committerMaximilian Hils <git@maximilianhils.com>2016-03-05 13:20:43 +0100
commit34d19cf12e72a50b1d2e6fd1977c559ed9a80068 (patch)
treec15a367b92aabf066d1cae681eeeebdb4351a5ff /web
parentf59770e949854f8a246ad41fc7beca7d54505004 (diff)
parent1d002182e318be64190c4616ac4931e98feb31eb (diff)
downloadmitmproxy-34d19cf12e72a50b1d2e6fd1977c559ed9a80068.tar.gz
mitmproxy-34d19cf12e72a50b1d2e6fd1977c559ed9a80068.tar.bz2
mitmproxy-34d19cf12e72a50b1d2e6fd1977c559ed9a80068.zip
Merge pull request #994 from gzzhanghao/common
[web] remove common.ChildFocus
Diffstat (limited to 'web')
-rw-r--r--web/src/js/components/common.js12
-rw-r--r--web/src/js/components/editor.js7
-rw-r--r--web/src/js/components/header.js8
-rw-r--r--web/src/js/components/prompt.js7
-rw-r--r--web/src/js/components/proxyapp.js2
5 files changed, 15 insertions, 21 deletions
diff --git a/web/src/js/components/common.js b/web/src/js/components/common.js
index 5fae7415..293cff49 100644
--- a/web/src/js/components/common.js
+++ b/web/src/js/components/common.js
@@ -52,18 +52,6 @@ export var SettingsState = {
};
-export var ChildFocus = {
- contextTypes: {
- returnFocus: React.PropTypes.func
- },
- returnFocus: function () {
- ReactDOM.findDOMNode(this).blur();
- window.getSelection().removeAllRanges();
- this.context.returnFocus();
- }
-};
-
-
export var Router = {
contextTypes: {
location: React.PropTypes.object,
diff --git a/web/src/js/components/editor.js b/web/src/js/components/editor.js
index c929a244..eed2f7c6 100644
--- a/web/src/js/components/editor.js
+++ b/web/src/js/components/editor.js
@@ -1,6 +1,5 @@
import React from "react";
import ReactDOM from 'react-dom';
-import {ChildFocus} from "./common.js";
import {Key} from "../utils.js";
var contentToHtml = function (content) {
@@ -214,7 +213,9 @@ var ValidateEditor = React.createClass({
Text Editor with mitmweb-specific convenience features
*/
export var ValueEditor = React.createClass({
- mixins: [ChildFocus],
+ contextTypes: {
+ returnFocus: React.PropTypes.func
+ },
propTypes: {
content: React.PropTypes.string.isRequired,
onDone: React.PropTypes.func.isRequired,
@@ -232,6 +233,6 @@ export var ValueEditor = React.createClass({
ReactDOM.findDOMNode(this).focus();
},
onStop: function () {
- this.returnFocus();
+ this.context.returnFocus();
}
}); \ No newline at end of file
diff --git a/web/src/js/components/header.js b/web/src/js/components/header.js
index 3833a6ee..96b522f0 100644
--- a/web/src/js/components/header.js
+++ b/web/src/js/components/header.js
@@ -4,7 +4,7 @@ import $ from "jquery";
import Filt from "../filt/filt.js";
import {Key} from "../utils.js";
-import {Router, SettingsState, ChildFocus} from "./common.js";
+import {Router, SettingsState} from "./common.js";
import {SettingsActions, FlowActions} from "../actions.js";
import {Query} from "../actions.js";
@@ -51,7 +51,9 @@ var FilterDocs = React.createClass({
}
});
var FilterInput = React.createClass({
- mixins: [ChildFocus],
+ contextTypes: {
+ returnFocus: React.PropTypes.func
+ },
getInitialState: function () {
// Consider both focus and mouseover for showing/hiding the tooltip,
// because onBlur of the input is triggered before the click on the tooltip
@@ -118,7 +120,7 @@ var FilterInput = React.createClass({
},
blur: function () {
ReactDOM.findDOMNode(this.refs.input).blur();
- this.returnFocus();
+ this.context.returnFocus();
},
select: function () {
ReactDOM.findDOMNode(this.refs.input).select();
diff --git a/web/src/js/components/prompt.js b/web/src/js/components/prompt.js
index 7b398038..e324f7d4 100644
--- a/web/src/js/components/prompt.js
+++ b/web/src/js/components/prompt.js
@@ -3,10 +3,11 @@ import ReactDOM from 'react-dom';
import _ from "lodash";
import {Key} from "../utils.js";
-import {ChildFocus} from "./common.js"
var Prompt = React.createClass({
- mixins: [ChildFocus],
+ contextTypes: {
+ returnFocus: React.PropTypes.func
+ },
propTypes: {
options: React.PropTypes.array.isRequired,
done: React.PropTypes.func.isRequired,
@@ -35,7 +36,7 @@ var Prompt = React.createClass({
},
done: function (ret) {
this.props.done(ret);
- this.returnFocus();
+ this.context.returnFocus();
},
getOptions: function () {
var opts = [];
diff --git a/web/src/js/components/proxyapp.js b/web/src/js/components/proxyapp.js
index 24f45ff5..97acfbde 100644
--- a/web/src/js/components/proxyapp.js
+++ b/web/src/js/components/proxyapp.js
@@ -55,6 +55,8 @@ var ProxyAppMain = React.createClass({
};
},
focus: function () {
+ document.activeElement.blur();
+ window.getSelection().removeAllRanges();
ReactDOM.findDOMNode(this).focus();
},
getMainComponent: function () {