File tree Expand file tree Collapse file tree 1 file changed +12
-1
lines changed
src/LiveDevelopment/BrowserScripts Expand file tree Collapse file tree 1 file changed +12
-1
lines changed Original file line number Diff line number Diff line change @@ -2138,8 +2138,19 @@ function RemoteFunctions(config = {}) {
21382138
21392139 // we handle the svg elements differently as draggable attribute doesn't work on SVG namespace
21402140 // so for svgs we add mouse related listeners and internally we call the drag related functions
2141+ // NOTE: we don't allow svg child elements dragging. we drag the whole svg element as a single unit
21412142 if ( this . element && this . element . namespaceURI === "http://www.w3.org/2000/svg" ) {
2142- this . element . addEventListener ( "mousedown" , ( event ) => { onDragMouseDown ( event , this . element ) ; } ) ;
2143+ let svgElement = this . element ;
2144+ while ( svgElement && svgElement . tagName . toLowerCase ( ) !== 'svg' ) {
2145+ if ( svgElement . tagName . toLowerCase ( ) === 'html' || svgElement . tagName . toLowerCase ( ) === 'body' ) {
2146+ return ;
2147+ }
2148+ svgElement = svgElement . parentElement ;
2149+ }
2150+ if ( svgElement && svgElement . tagName . toLowerCase ( ) === 'svg' ) {
2151+ svgElement . addEventListener ( "mousedown" , ( event ) => { onDragMouseDown ( event , svgElement ) ; } ) ;
2152+ }
2153+
21432154 } else { // for normal elements
21442155 this . element . setAttribute ( "draggable" , "true" ) ;
21452156 this . element . addEventListener ( "dragstart" , ( event ) => { onDragStart ( event , this . element ) ; } ) ;
You can’t perform that action at this time.
0 commit comments