diff options
| author | Maxime Coste <mawww@kakoune.org> | 2022-10-17 17:46:26 +1100 |
|---|---|---|
| committer | Maxime Coste <mawww@kakoune.org> | 2022-10-17 17:48:39 +1100 |
| commit | 287217b98715faaddab019f4e17ab54fccaaec70 (patch) | |
| tree | 5eeed3d98eb645f242a6f02033ac1e1be7936c69 /src/display_buffer.hh | |
| parent | 360a6847be5c79a57da73c15efbbb954cd8ba749 (diff) | |
Fix splitting of display atoms accross multi-columns codepoint
Honor the split request by inserting an empty atom to make sure
client code can assume splitting does replace one atom with two
Fixes #4753
Diffstat (limited to 'src/display_buffer.hh')
| -rw-r--r-- | src/display_buffer.hh | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/display_buffer.hh b/src/display_buffer.hh index 8008f86a..c164cb08 100644 --- a/src/display_buffer.hh +++ b/src/display_buffer.hh @@ -24,11 +24,11 @@ struct DisplayAtom : public UseMemoryDomain<MemoryDomain::Display> public: enum Type { Range, ReplacedRange, Text }; - DisplayAtom(const Buffer& buffer, BufferCoord begin, BufferCoord end, Face face = {}) - : face(face), m_type(Range), m_buffer(&buffer), m_range{begin, end} {} + DisplayAtom(const Buffer& buffer, BufferRange range, Face face = {}) + : face(face), m_type(Range), m_buffer(&buffer), m_range{range} {} - DisplayAtom(const Buffer& buffer, BufferCoord begin, BufferCoord end, String str, Face face = {}) - : face(face), m_type(ReplacedRange), m_buffer(&buffer), m_range{begin, end}, m_text{std::move(str)} {} + DisplayAtom(const Buffer& buffer, BufferRange range, String str, Face face = {}) + : face(face), m_type(ReplacedRange), m_buffer(&buffer), m_range{range}, m_text{std::move(str)} {} DisplayAtom(String str, Face face) : face(face), m_type(Text), m_text(std::move(str)) {} |
