Skip to content
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

feat(ui): status bar redesign #3475

Merged
merged 14 commits into from
Jul 5, 2024
Merged

feat(ui): status bar redesign #3475

merged 14 commits into from
Jul 5, 2024

Conversation

imsnif
Copy link
Member

@imsnif imsnif commented Jul 5, 2024

This is a redesign of the default status-bar plugin in order to accommodate the new non-colliding-keybindings setup (upcoming). This redesign also improves upon the user experience when using the default keybindings. For those who do not like the new default UI, it's possible to load the old one with zellij -l classic. The compact layout remains unchanged.

basic-default
basic-tokyonight
basic-pencil

Main changes for the default configuration + keybindings

  1. The status-bar now only uses up 1 line (as opposed to 2 before)
  2. The quicknav tip was moved to be part of the UI, and will now also include a floating toggle (now also included in the default configuration keybindings)
  3. The "secondary navigation" is now clearer and included in line for each mode
  4. The swap-layout toggle now appears on the top-right side of the UI (in the tab-bar) when relevant (more than 1 pane).

basic

Base-mode Awareness (unlock-first)

Many users have been working around the "colliding keybindings" problem by setting their base mode to LOCKED and unlocking it when they wanted to perform actions in the Zellij UI. With this change, the Zellij UI is now aware of this configuration method and provides helpful guidelines to indicate this to the user:

unlock-first

Context and upcoming steps

This PR is a continuation of the work in #3422 and #3383. The ultimate goal is to provide a toggleable-at-runtime solution for the colliding keys problem, allowing the user to either:

  1. Use the above "unlock first" solution
  2. Rebinding the colliding keys easily, through the UI, at runtime
  3. A combination of the two above

The next PRs will tie up this solution together with some sort of UI configuration interface (which will also show the various runtime tips that have been removed in this PR).

@imsnif imsnif merged commit a6d6c0e into main Jul 5, 2024
6 checks passed
Tomcat-42 pushed a commit to Tomcat-42/zellij that referenced this pull request Nov 9, 2024
* work

* work

* working

* get default mode from server and some ui responsiveness

* work

* finish design and get tests to pass

* get e2e tests to pass

* add classic layout

* add classic layout assets

* fix e2e tests

* style(fmt): rustfmt

* fix plugin system test

* style(fmt): some cleanups
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