@@ -33,14 +33,18 @@ exports["default"] = function (identifier, configure) {
3333 ( 0 , _invariant2 [ "default" ] ) ( typeof configure === "function" , "Expected configure to be a function. See %s" , displayName ) ;
3434
3535 return _react2 [ "default" ] . createClass ( {
36- displayName : displayName + "ContextMenuLayer" ,
37- componentDidMount : function componentDidMount ( ) {
38- _react2 [ "default" ] . findDOMNode ( this ) . addEventListener ( "contextmenu" , this . handleContextClick ) ;
39- } ,
40- componentWillUnmount : function componentWillUnmount ( ) {
41- _react2 [ "default" ] . findDOMNode ( this ) . removeEventListener ( "contextmenu" , this . handleContextClick ) ;
42- } ,
43- handleContextClick : function handleContextClick ( event ) {
36+ displayName : displayName + "ContextMenuLayer" ,
37+ componentDidMount : function componentDidMount ( ) {
38+ document . addEventListener ( "contextmenu" , this . handleContextClick ) ;
39+ } ,
40+ componentWillUnmount : function componentWillUnmount ( ) {
41+ document . addEventListener ( "contextmenu" , this . handleContextClick ) ;
42+ } ,
43+ handleContextClick : function handleContextClick ( event ) {
44+ var target = event . target ;
45+ var domNode = _react2 [ "default" ] . findDOMNode ( this ) ;
46+
47+ if ( target == domNode || domNode . contains ( target ) ) {
4448 var currentItem = configure ( this . props ) ;
4549
4650 ( 0 , _invariant2 [ "default" ] ) ( ( 0 , _lodashIsobject2 [ "default" ] ) ( currentItem ) , "Expected configure to return an object. See %s" , displayName ) ;
@@ -53,12 +57,14 @@ exports["default"] = function (identifier, configure) {
5357 currentItem : currentItem ,
5458 isVisible : typeof identifier === "function" ? identifier ( this . props ) : identifier
5559 } ) ;
56- } ,
57- render : function render ( ) {
58- return _react2 [ "default" ] . createElement ( Component , _extends ( { } , this . props , { identifier : identifier } ) ) ;
59- }
60- } ) ;
60+ }
61+
62+ } ,
63+ render : function render ( ) {
64+ return _react2 [ "default" ] . createElement ( Component , _extends ( { } , this . props , { identifier : identifier } ) ) ;
65+ }
66+ } ) ;
6167 } ;
6268} ;
6369
64- module . exports = exports [ "default" ] ;
70+ module . exports = exports [ "default" ] ;
0 commit comments