mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-06-11 02:13:56 +09:00
LibLine: Ignore empty spans when stylizing
Previously we would erroneously apply the stylization to the whoever called stylize next. Now we first check whether the span is non-empty before stylizing. All non-empty spans must have at least one character in them (end-exclusive).
This commit is contained in:
parent
ac36d272d3
commit
57c8677b5c
Notes:
sideshowbarker
2024-07-17 08:52:41 +09:00
Author: https://github.com/sin-ack
Commit: 57c8677b5c
Pull-request: https://github.com/SerenityOS/serenity/pull/14605
Reviewed-by: https://github.com/ADKaster
Reviewed-by: https://github.com/BertalanD
Reviewed-by: https://github.com/alimpfard
2 changed files with 7 additions and 0 deletions
|
@ -463,6 +463,8 @@ Editor::CodepointRange Editor::byte_offset_range_to_code_point_offset_range(size
|
|||
|
||||
void Editor::stylize(Span const& span, Style const& style)
|
||||
{
|
||||
if (!span.is_empty())
|
||||
return;
|
||||
if (style.is_empty())
|
||||
return;
|
||||
|
||||
|
|
|
@ -28,6 +28,11 @@ public:
|
|||
size_t end() const { return m_end; }
|
||||
Mode mode() const { return m_mode; }
|
||||
|
||||
bool is_empty() const
|
||||
{
|
||||
return m_beginning < m_end;
|
||||
}
|
||||
|
||||
private:
|
||||
size_t m_beginning { 0 };
|
||||
size_t m_end { 0 };
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue