improve performance of search result folding

This commit is contained in:
nightwing 2012-07-28 16:16:10 +04:00
commit cd6ebd8467

View file

@ -48,18 +48,19 @@ oop.inherits(FoldMode, BaseFoldMode);
(function() {
this.foldingStartMarker = /^(\w.*\:|Searching for.*)$/;
this.foldingStartMarker = /^(\S.*\:|Searching for.*)$/;
this.foldingStopMarker = /^(\s+|Found.*)$/;
this.getFoldWidgetRange = function(session, foldStyle, row) {
var line = session.getLine(row);
var lines = session.doc.getAllLines(row);
var line = lines[row];
var level1 = /^(Found.*|Searching for.*)$/;
var level2 = /^(\w.*\:|\s*)$/;
var level2 = /^(\S.*\:|\s*)$/;
var re = level1.test(line) ? level1 : level2;
if (this.foldingStartMarker.test(line)) {
for (var i = row + 1, l = session.getLength(); i < l; i++) {
if (re.test(session.getLine(i)))
if (re.test(lines[i]))
break;
}
@ -68,7 +69,7 @@ oop.inherits(FoldMode, BaseFoldMode);
if (this.foldingStopMarker.test(line)) {
for (var i = row - 1; i >= 0; i--) {
line = session.getLine(i);
line = lines[i];
if (re.test(line))
break;
}