dnkl/foot
41
2.0k
Fork
You've already forked foot
243

Spawning foot with startup tui application leads to redraw #2044

Closed
opened 2025年04月21日 17:02:47 +02:00 by valoq · 2 comments
Contributor
Copy link

Foot Version

foot version: 1.22.0 +pgo +ime +graphemes -assertions

TERM environment variable

foot

Compositor Version

sway version 1.10.1

Distribution

arch

Terminal multiplexer

No response

Shell, TUI, application

Any tui application

Server/standalone mode

  • Standalone
  • Server

Foot config

include=/home/user/.config/foot/themes/alacritty
font=monospace:size=12
[tweak]
box-drawing-base-thickness=0.02

Description of Bug and Steps to Reproduce

Spawn a new instance of foot with a startup command.
e.g. using sway: bindsym Mod5+a exec 'foot -e lf'

When the terminal appears, it shows the target application (lf in this case) filling 2/3 of the space for a split second before it redraws lf to the full size of the window. When foot is started alone before entering any command this issue never appears.

This can be reproduced with any other tui application, e.g. htop

When I played around with initial-window-size, the configured size corresponded with the initial box size drawn by lf.

What I could not find is any setting that would simply set the initial window size to the one allowed by the compositor so a redraw could be prevented.

This screen casts shows the issue multiple times, though the redraw appears a lot slower in this video. Normally the redraw happens after a split second while the video shows the initial draw for about a second for some reason.

Relevant logs, stacktraces, etc.

No response

### Foot Version foot version: 1.22.0 +pgo +ime +graphemes -assertions ### TERM environment variable foot ### Compositor Version sway version 1.10.1 ### Distribution arch ### Terminal multiplexer _No response_ ### Shell, TUI, application Any tui application ### Server/standalone mode - [x] Standalone - [x] Server ### Foot config ```ini include=/home/user/.config/foot/themes/alacritty font=monospace:size=12 [tweak] box-drawing-base-thickness=0.02 ``` ### Description of Bug and Steps to Reproduce Spawn a new instance of foot with a startup command. e.g. using sway: bindsym Mod5+a exec 'foot -e lf' When the terminal appears, it shows the target application (lf in this case) filling 2/3 of the space for a split second before it redraws lf to the full size of the window. When foot is started alone before entering any command this issue never appears. This can be reproduced with any other tui application, e.g. htop When I played around with initial-window-size, the configured size corresponded with the initial box size drawn by lf. What I could not find is any setting that would simply set the initial window size to the one allowed by the compositor so a redraw could be prevented. This screen casts shows the issue multiple times, though the redraw appears a lot slower in this video. Normally the redraw happens after a split second while the video shows the initial draw for about a second for some reason. ### Relevant logs, stacktraces, etc. _No response_
3.2 MiB
Owner
Copy link

The issue is in sway; it sends multiple size events to all newly instantiated applications. There should be an issue on the Sway tracker for this, but I can't find it right now.

The issue is in sway; it sends multiple size events to all newly instantiated applications. There should be an issue on the Sway tracker for this, but I can't find it right now.
dnkl 2025年04月21日 17:47:46 +02:00
Collaborator
Copy link

Sway issue: https://github.com/swaywm/sway/issues/2176
Proposed workaround in foot: #453
Related/duplicate issues: #195, #265, #558, #723, #904, #1133, #1211, #1543, #1733, #1745, #1998

Sway issue: https://github.com/swaywm/sway/issues/2176 Proposed workaround in foot: #453 Related/duplicate issues: #195, #265, #558, #723, #904, #1133, #1211, #1543, #1733, #1745, #1998
Sign in to join this conversation.
No Branch/Tag specified
master
osc-5522
sixel-heap-buffer-overflow
releases/1.27
releases/1.26
releases/1.25
releases/1.24
multi-cursor
releases/1.23
pixman-16f-2
releases/1.22
releases/1.21
releases/1.20
releases/1.19
releases/1.18
releases/1.17
releases/1.16
releases/1.15
releases/1.14
releases/1.13
releases/1.12
releases/1.11
releases/1.10
releases/1.9
releases/1.8
releases/1.7
releases/1.6
releases/1.5
releases/1.4
releases/1.3
releases/1.2
releases/1.1
releases/1.0
1.27.0
1.26.1
1.26.0
1.25.0
1.24.0
1.23.1
1.23.0
1.22.3
1.22.2
1.22.1
1.22.0
1.21.0
1.20.2
1.20.1
1.20.0
1.19.0
1.18.1
1.18.0
1.17.2
1.17.1
1.17.0
1.16.2
1.16.1
1.16.0
1.15.3
1.15.2
1.15.1
1.15.0
1.14.0
1.13.1
1.13.0
1.12.1
1.12.0
1.11.0
1.10.3
1.10.2
1.10.1
1.10.0
1.9.2
1.9.1
1.9.0
1.8.2
1.8.1
1.8.0
1.7.2
1.7.1
1.7.0
1.6.4
1.6.3
1.6.2
1.6.1
1.6.0
1.5.4
1.5.3
1.5.2
1.5.1
1.5.0
1.4.4
1.4.3
1.4.2
1.4.1
1.4.0
1.3.0
1.2.3
1.2.2
1.2.1
1.2.0
1.1.0
1.0.0
0.9.0
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
3 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
dnkl/foot#2044
Reference in a new issue
dnkl/foot
No description provided.
Delete branch "%!s()"

Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?