-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Inline images display in the wrong places after tab bar disappears #6278
Comments
Opening the tab bar will resize the window which will cause images to be |
Although, on second thoughts, generally speaking for a tab bar appearance there should be only a vertical resize, so no reflow so the images should scroll along with the text. |
If any of this is by design I would really love a way to pin images to character positions without actively redrawing them on resize. |
You definitely cannot pin images to char positions. But simple |
From Terminal graphics protocol:
Given that the primary purpose of a terminal emulator, to me, is to display characters in cells, it seems fitting for images to be anchored to the cells they were originally drawn at. This means:
Reflow behavior doesn't matter for my selfish use case, but I would like images with e.g. Regardless of the decision, best to note resizing in the protocol specification to avoid surprises :-) |
There is no guarantee in the protocol about resizes. Images should however scroll with text, regardless of the use of c/r or anything else. All placement fields simply set the initial position of the image, they have no effect on how the image is moved/resized/reflowed subsequently. The image not scrolling with the text on a vertical resize is the reason I re-opened this issue. I will look at it when I have a moment. |
Hello! Just came across this (on my way to report something else) and thought there were a few things worthy of note. It seems to me as though
For a fact, vertical resize mostly breaks image positioning (relative to surrounding text) on Kitty.
Yes. It does stretch but like you said, only while resizing, which isn't necessarily a bug (or non-compliance with the spec) but the behaviour could definitely be improved upon. The only case in which I can say horizontal resize actually breaks image positioning is when a reflow occurs.
A little rewording: If it's possible to update the spec, it'll be good to specify (at least, to a reasonable extent 1) behaviour upon resize (possibly also while resizing) and reflow, as it pertains to image positioning. Finally, I should note that both Wezterm and Konsole handle image [re-]positioning as expected upon both resize and reflow. As much as some of these behaviours do not break the spec (since it doesn't specify the expected behaviour), it'll be good to have these desired behaviours on Kitty also. Thank you. Footnotes
|
Also, I think it'll be good to reword the title of this issue. |
Specifying how images behave under resize/reflow is a whole can of worms, I am not going to open anytime soon. I have described some of the problems in another issue. This issue exists solely until I get a chance to investigate the vertical resize bug. |
Thanks! Please, how soon will a nightly with this fix be ready? |
Nightlies are built once every 24 hrs |
Sorry, should've done this sometime ago. I've tested and confirmed that images are now re-positioned correctly, along with text
The stretching is still there but that's not within the scope of this issue and like i said earlier, it's not necessarily a problem. Thanks. |
Describe the bug
After opening and closing a new tab (making the tab bar appear and disappear), images output with
c
andr
parameters are appearing in an incorrect place.To Reproduce
Steps to reproduce the behavior:
echo -n 1; printf "\e_Gf=100,t=f,a=T,c=10,r=1,q=1;$(echo -n "desktop/square.png" | base64)\e\\"; echo 2
(square.png)Screenshots
Before tabs:
After tabs:
Environment details
Additional context
Reproducible with
--config NONE
except I had to use a white image for a black background.The text was updated successfully, but these errors were encountered: