@@ -481,7 +481,7 @@ class Text {
481481 var ranges = this . session . $bracketHighlight . ranges ;
482482 for ( var i = 0 ; i < ranges . length ; i ++ ) {
483483 if ( cursor . row !== ranges [ i ] . start . row ) {
484- this . $highlightIndentGuideMarker . end = ranges [ i ] . start . row ;
484+ this . $highlightIndentGuideMarker . end = ranges [ i ] . start . row + 1 ;
485485 if ( cursor . row > ranges [ i ] . start . row ) {
486486 this . $highlightIndentGuideMarker . dir = - 1 ;
487487 }
@@ -511,25 +511,25 @@ class Text {
511511 }
512512
513513 $clearActiveIndentGuide ( ) {
514- var cells = this . $lines . cells ;
515- for ( var i = 0 ; i < cells . length ; i ++ ) {
516- var cell = cells [ i ] ;
517- var childNodes = cell . element . childNodes ;
518- if ( childNodes . length > 0 ) {
519- for ( var j = 0 ; j < childNodes . length ; j ++ ) {
520- if ( childNodes [ j ] . classList && childNodes [ j ] . classList . contains ( "ace_indent-guide-active" ) ) {
521- childNodes [ j ] . classList . remove ( "ace_indent-guide-active" ) ;
522- break ;
523- }
524- }
525- }
526- }
514+ var activeIndentGuides = this . element . querySelectorAll ( ".ace_indent-guide-active" ) ;
515+ activeIndentGuides . forEach ( el => {
516+ el . classList . remove ( "ace_indent-guide-active" ) ;
517+ } ) ;
527518 }
528519
529520 $setIndentGuideActive ( cell , indentLevel ) {
530521 var line = this . session . doc . getLine ( cell . row ) ;
531522 if ( line !== "" ) {
532- var childNodes = cell . element . childNodes ;
523+ let element = cell . element ;
524+ if ( cell . element . classList && cell . element . classList . contains ( "ace_line_group" ) ) {
525+ if ( cell . element . childNodes . length > 0 ) {
526+ element = cell . element . childNodes [ 0 ] ;
527+ }
528+ else {
529+ return ;
530+ }
531+ }
532+ var childNodes = element . childNodes ;
533533 if ( childNodes ) {
534534 let node = childNodes [ indentLevel - 1 ] ;
535535 if ( node && node . classList && node . classList . contains ( "ace_indent-guide" ) ) node . classList . add (
@@ -558,7 +558,7 @@ class Text {
558558 for ( var i = cells . length - 1 ; i >= 0 ; i -- ) {
559559 var cell = cells [ i ] ;
560560 if ( this . $highlightIndentGuideMarker . end && cell . row < this . $highlightIndentGuideMarker . start ) {
561- if ( cell . row <= this . $highlightIndentGuideMarker . end ) break ;
561+ if ( cell . row < this . $highlightIndentGuideMarker . end ) break ;
562562 this . $setIndentGuideActive ( cell , indentLevel ) ;
563563 }
564564 }
0 commit comments