peterfajdiga / peterfajdiga/karousel

[Bug] Increasing column width fails with Foot terminal

Open
#159 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
1.1k
Forks
45
PR merge metrics
No merged PRs in 30d

Description

Karousel version: 0.15
Plasma version: 6.6.0
X11 / Wayland: Wayland

Description: When using the Foot terminal, the karousel-column-width-increase action does (almost) nothing.
After some debugging, I found that RawResizer.increaseWidth was calling column.setWidth with one value, but on the next call the value returned by column.getWidth() was slightly less.

I'm guessing this is because Foot is resizing itself to match its character grid. One clue is that if you smash the column increase keybinding fast enough, the window will eventually increase. Probably because Foot didn't have time to shrink the window yet.

I don't know what the proper fix would be, but my temporary fix is to subtract 10 to the widths, like so:
const newWidth = findMinPositive( [ ...this.presetWidths.getWidths(column.getMinWidth(), column.getMaxWidth()), ], width => width - column.getWidth() - 10, );

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at RawResizer.increaseWidth and the karousel-column-width-increase action, then reproduce the behavior with Foot on Wayland while comparing setWidth with the next getWidth result. Done means repeated width-increase actions reliably enlarge the column without requiring rapid key presses.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.