@@ -1028,42 +1028,6 @@ function RemoteFunctions(config) {
10281028 }
10291029 } ;
10301030
1031- function Editor ( element ) {
1032- this . onBlur = this . onBlur . bind ( this ) ;
1033- this . onKeyPress = this . onKeyPress . bind ( this ) ;
1034-
1035- this . element = element ;
1036- this . element . setAttribute ( "contenteditable" , "true" ) ;
1037- this . element . focus ( ) ;
1038- this . element . addEventListener ( "blur" , this . onBlur ) ;
1039- this . element . addEventListener ( "keypress" , this . onKeyPress ) ;
1040-
1041- this . revertText = this . element . innerHTML ;
1042-
1043- _trigger ( this . element , "edit" , 1 ) ;
1044- }
1045-
1046- Editor . prototype = {
1047- onBlur : function ( event ) {
1048- this . element . removeAttribute ( "contenteditable" ) ;
1049- this . element . removeEventListener ( "blur" , this . onBlur ) ;
1050- this . element . removeEventListener ( "keypress" , this . onKeyPress ) ;
1051- _trigger ( this . element , "edit" , 0 , true ) ;
1052- } ,
1053-
1054- onKeyPress : function ( event ) {
1055- switch ( event . which ) {
1056- case 13 : // return
1057- this . element . blur ( ) ;
1058- break ;
1059- case 27 : // esc
1060- this . element . innerHTML = this . revertText ;
1061- this . element . blur ( ) ;
1062- break ;
1063- }
1064- }
1065- } ;
1066-
10671031 function Highlight ( color , trigger ) {
10681032 this . color = color ;
10691033 this . trigger = ! ! trigger ;
@@ -1364,19 +1328,7 @@ function RemoteFunctions(config) {
13641328 }
13651329 } ;
13661330
1367- var _currentEditor ;
1368- function _toggleEditor ( element ) {
1369- _currentEditor = new Editor ( element ) ;
1370- }
1371-
13721331 var _currentMenu ;
1373- function _toggleMenu ( element ) {
1374- if ( _currentMenu ) {
1375- _currentMenu . remove ( ) ;
1376- }
1377- _currentMenu = new Menu ( element ) ;
1378- }
1379-
13801332 var _localHighlight ;
13811333 var _remoteHighlight ;
13821334 var _hoverHighlight ;
@@ -1477,6 +1429,8 @@ function RemoteFunctions(config) {
14771429 ) {
14781430 event . preventDefault ( ) ;
14791431 event . stopPropagation ( ) ;
1432+ event . stopImmediatePropagation ( ) ;
1433+
14801434 if ( _nodeMoreOptionsBox ) {
14811435 _nodeMoreOptionsBox . remove ( ) ;
14821436 _nodeMoreOptionsBox = null ;
@@ -1512,6 +1466,26 @@ function RemoteFunctions(config) {
15121466 }
15131467 }
15141468
1469+ /**
1470+ * this function handles the double click event
1471+ * @param {Event } event
1472+ */
1473+ function onDoubleClick ( event ) {
1474+ if (
1475+ isFlagActive &&
1476+ event . target . hasAttribute ( "data-brackets-id" ) &&
1477+ event . target . tagName !== "BODY" &&
1478+ event . target . tagName !== "HTML"
1479+ ) {
1480+ // because we only want to allow double click text editing where we show the edit option
1481+ if ( _shouldShowEditTextOption ( event . target ) ) {
1482+ event . preventDefault ( ) ;
1483+ event . stopPropagation ( ) ;
1484+ startEditing ( event . target ) ;
1485+ }
1486+ }
1487+ }
1488+
15151489 function onKeyUp ( event ) {
15161490 if ( _setup && ! _validEvent ( event ) ) {
15171491 window . document . removeEventListener ( "keyup" , onKeyUp ) ;
@@ -1533,7 +1507,7 @@ function RemoteFunctions(config) {
15331507 window . document . addEventListener ( "mouseover" , onMouseOver ) ;
15341508 window . document . addEventListener ( "mouseout" , onMouseOut ) ;
15351509 window . document . addEventListener ( "mousemove" , onMouseMove ) ;
1536- window . document . addEventListener ( "click" , onClick ) ;
1510+ window . document . addEventListener ( "click" , onClick , true ) ;
15371511 _localHighlight = new Highlight ( "#ecc" , true ) ;
15381512 _setup = true ;
15391513 }
@@ -2162,7 +2136,8 @@ function RemoteFunctions(config) {
21622136 // Add event listeners for hover
21632137 window . document . addEventListener ( "mouseover" , onElementHover ) ;
21642138 window . document . addEventListener ( "mouseout" , onElementHoverOut ) ;
2165- window . document . addEventListener ( "click" , onClick ) ;
2139+ window . document . addEventListener ( "click" , onClick , true ) ;
2140+ window . document . addEventListener ( "dblclick" , onDoubleClick ) ;
21662141 window . document . addEventListener ( "dragover" , onDragOver ) ;
21672142 window . document . addEventListener ( "drop" , onDrop ) ;
21682143 window . document . addEventListener ( "keydown" , onKeyDown ) ;
0 commit comments