mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-06-11 10:18:15 +09:00
LibGUI: Support multiple layers of TextDocument spans
TextDocument::set_spans() now also takes a "span collection index" argument. TextDocument keeps a map between a span collection index and its spans. It merges the spans from all collections into a single set of spans whenever set_spans() is called. This allows us to style a document with multiple layers of spans, where as previously we only supported a single layer of spans that was set from the SyntaxHighlighter.
This commit is contained in:
parent
b75ed992a6
commit
ab0b4f46f7
Notes:
sideshowbarker
2024-07-17 20:33:50 +09:00
Author: https://github.com/itamar8910
Commit: ab0b4f46f7
Pull-request: https://github.com/SerenityOS/serenity/pull/13335
Reviewed-by: https://github.com/alimpfard ✅
5 changed files with 107 additions and 2 deletions
|
@ -1951,7 +1951,7 @@ void TextEditor::set_syntax_highlighter(OwnPtr<Syntax::Highlighter> highlighter)
|
|||
m_highlighter->attach(*this);
|
||||
m_needs_rehighlight = true;
|
||||
} else
|
||||
document().set_spans({});
|
||||
document().set_spans(Syntax::HighlighterClient::span_collection_index, {});
|
||||
if (on_highlighter_change)
|
||||
on_highlighter_change();
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue