@@ -1047,6 +1047,7 @@ function RemoteFunctions(config) {
10471047 event . target . tagName !== "BODY" &&
10481048 event . target . tagName !== "HTML"
10491049 ) {
1050+ event . stopPropagation ( ) ;
10501051 if ( _nodeMoreOptionsBox ) {
10511052 _nodeMoreOptionsBox . remove ( ) ;
10521053 _nodeMoreOptionsBox = null ;
@@ -1063,6 +1064,13 @@ function RemoteFunctions(config) {
10631064 }
10641065
10651066 _nodeMoreOptionsBox = new NodeMoreOptionsBox ( event . target ) ;
1067+
1068+ // show the info box when a DOM element is clicked
1069+ if ( _nodeInfoBox ) {
1070+ _nodeInfoBox . remove ( ) ;
1071+ }
1072+ _nodeInfoBox = new NodeInfoBox ( event . target ) ;
1073+
10661074 event . target . _originalOutline = event . target . style . outline ;
10671075 event . target . style . outline = "1px solid #4285F4" ;
10681076 previouslyClickedElement = event . target ; // add the current element to the previouslyClickedElement
@@ -1122,10 +1130,6 @@ function RemoteFunctions(config) {
11221130 if ( _hoverHighlight ) {
11231131 _hoverHighlight . clear ( ) ;
11241132 }
1125- if ( _nodeInfoBox ) {
1126- _nodeInfoBox . remove ( ) ;
1127- _nodeInfoBox = null ;
1128- }
11291133 }
11301134
11311135 // highlight a node
@@ -1168,6 +1172,11 @@ function RemoteFunctions(config) {
11681172 const element = _nodeMoreOptionsBox . element ;
11691173 _nodeMoreOptionsBox . remove ( ) ;
11701174 _nodeMoreOptionsBox = new NodeMoreOptionsBox ( element ) ;
1175+
1176+ if ( _nodeInfoBox ) {
1177+ _nodeInfoBox . remove ( ) ;
1178+ _nodeInfoBox = new NodeInfoBox ( element ) ;
1179+ }
11711180 }
11721181 }
11731182
@@ -1499,11 +1508,15 @@ function RemoteFunctions(config) {
14991508 window . document . removeEventListener ( "mouseover" , onElementHover ) ;
15001509 window . document . removeEventListener ( "mouseout" , onElementHoverOut ) ;
15011510
1502- // Remove info box if highlight is disabled
1511+ // Remove info box and more options box if highlight is disabled
15031512 if ( _nodeInfoBox ) {
15041513 _nodeInfoBox . remove ( ) ;
15051514 _nodeInfoBox = null ;
15061515 }
1516+ if ( _nodeMoreOptionsBox ) {
1517+ _nodeMoreOptionsBox . remove ( ) ;
1518+ _nodeMoreOptionsBox = null ;
1519+ }
15071520 }
15081521 return JSON . stringify ( config ) ;
15091522 }
0 commit comments