Skip to content

feat(layout): add flex-stretch panels and focus mode#22

Open
linniksa wants to merge 1 commit intojohannesjo:mainfrom
linniksa:feature/focus-on-task
Open

feat(layout): add flex-stretch panels and focus mode#22
linniksa wants to merge 1 commit intojohannesjo:mainfrom
linniksa:feature/focus-on-task

Conversation

@linniksa
Copy link

Summary

Task panels now stretch to fill available width using flex-grow instead of fixed pixel sizes. Added a focus mode toggle button in the task title bar that shows only the active task at full width.

Description

Flex-stretch layout (default)

Panels automatically distribute available space — 1 task fills the entire width, 2 tasks split 50/50, etc. Minimum width
(520px) is preserved; horizontal scroll appears when needed.

image

Minimum width is still enforced when there are many tasks:

image

Focus mode

A new focus button in the task title bar shows only the active task at full width. Other tasks remain alive in the background (terminals keep running). Switching tasks via sidebar or keyboard shortcuts works seamlessly while in focus mode.

image
  • Focus mode state is persisted across app restarts
  • Terminal resize events are fired on task switch to ensure proper redraw

Check List

  • New functionality includes testing. — N/A, manual UI
    testing performed
  • New functionality has been documented in the README if
    applicable. — N/A, internal UI feature

@linniksa linniksa force-pushed the feature/focus-on-task branch from a068420 to bdd5d95 Compare March 15, 2026 09:24
Task panels now stretch to fill available width using flex-grow
instead of fixed pixel sizes. Added a focus mode toggle button
in the task title bar that shows only the active task at full width.

In focus mode, hidden panels use visibility:hidden (not display:none)
so terminals keep their correct dimensions. Focus mode state is
persisted across app restarts.
@linniksa linniksa force-pushed the feature/focus-on-task branch from bdd5d95 to f5e27e1 Compare March 15, 2026 09:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant