提交 b5ac76e8 编写于 作者: B Benjamin Pasero

fix highlighting issue with overlapping ranges

上级 661d8327
......@@ -200,11 +200,20 @@ export class QuickOpenEntry {
let pathHighlights = Filters.matchesFuzzy(lookFor, pathPrefix + entry.getLabel(), true);
if (pathHighlights) {
pathHighlights.forEach(h => {
if (h.start >= pathPrefixLength) {
h.start -= (pathPrefixLength);
h.end -= (pathPrefixLength);
labelHighlights.push(h);
} else {
// Match overlaps label and description part, we need to split it up
if (h.start < pathPrefixLength && h.end > pathPrefixLength) {
labelHighlights.push({ start: 0, end: h.end - pathPrefixLength });
descriptionHighlights.push({ start: h.start, end: pathPrefixLength });
}
// Match on label part
else if (h.start >= pathPrefixLength) {
labelHighlights.push({ start: h.start - pathPrefixLength, end: h.end - pathPrefixLength });
}
// Match on description part
else {
descriptionHighlights.push(h);
}
});
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册