[konsole] [Bug 456354] New text writes on top of sixel image instead of erasing part of the image
Kurt Hindenburg
bugzilla_noreply at kde.org
Fri Oct 11 15:47:50 BST 2024
https://bugs.kde.org/show_bug.cgi?id=456354
Kurt Hindenburg <khindenburg at kde.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|--- |FIXED
Status|ASSIGNED |RESOLVED
Latest Commit| |https://invent.kde.org/util
| |ities/konsole/-/commit/cc45
| |39f6bfd8e5b6beac23ecd13897c
| |666e88eaa
--- Comment #11 from Kurt Hindenburg <khindenburg at kde.org> ---
Git commit cc4539f6bfd8e5b6beac23ecd13897c666e88eaa by Kurt Hindenburg, on
behalf of Matan Ziv-Av.
Committed on 11/10/2024 at 14:47.
Pushed by hindenburg into branch 'master'.
Change text over sixel image behaviour to be compatible with xterm
With this MR, if a character with the default background color is
printed on a sixel image, the background color is displayed rather
than considered transparent.
In more details: The "standard" (_VT330/VT340 Programmer Reference
Manual_) does not define what happens when a character is printed on
a sixel image. `xterm`, and some other (maybe all?) terminals
implementing sixel protocol chose to hide the image under the whole
character cell. `Konsole` always treated the default background color
as transparent, which makes sense when there is a background image or
when the terminal background is transparent. When implementing graphics
I chose to use this behaviour, since it seems more flexible to me.
But, there are programs that depend on xterm behaviour, and I read
complaints about this in various platforms.
For implementing this change it is necessary to store with each image
its source protocol (since unlike sixel, `kitty` protocol defines the
behaviour as the one currently used in `konsole`.) and when drawing
the background of a character to be aware if there is a sixel image
under it, in order to not change the behaviour for background image.
(MR#1031)
M +17 -3 src/Screen.cpp
M +3 -0 src/Screen.h
M +3 -2 src/Vt102Emulation.cpp
M +1 -1 src/characters/Character.h
M +15 -5 src/terminalDisplay/TerminalPainter.cpp
M +4 -2 src/terminalDisplay/TerminalPainter.h
https://invent.kde.org/utilities/konsole/-/commit/cc4539f6bfd8e5b6beac23ecd13897c666e88eaa
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the konsole-devel
mailing list