-
-
Notifications
You must be signed in to change notification settings - Fork 731
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
[hyprland/workspaces] Implement workspace taskbars #3868
Open
pol-rivero
wants to merge
11
commits into
Alexays:master
Choose a base branch
from
pol-rivero:master
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add a list of window titles and icons to each workspace (like wlr/taskbar but grouped by workspace). Only implemented on hyprland for now.
Use format from config instead of hardcoding
- orientation - icon-size - icon-theme
This seems to be an old bug that has been made visible with the new workspace taskbars feature. Sometimes, when closing a window and re-opening a window of the same program, hyprland reuses the window address. Since m_orphanWindowMap was not being cleaned up on window close, the new window would not be updated properly.
Fix another older bug where the title of a window will not be updated after moving it to another monitor. In onWindowMoved, when moving an orphan window to the display of the current bar, that window should no longer be an orphan.
Use a vector instead of a map for for storing the workspace windows. This orders the windows by the time they were added to the workspace, instead of sorting by address (which is effectively a random order). The new ordering seems to match the wlr/taskbar module
Windows were not being shown or updated unless the window-rewrite config were present.
- Add missing CSS class to manpage - Fix rare segfault when address is not found (seems to only happen when compiled for production)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
This PR expands the functionality of
hyprland/workspaces
to make it behave more like thewlr/taskbar
module. See #2656 for a high-level description.A full fix of #2656 would require porting those changes to the
sway/workspaces
module as well. I don't use Sway and I'm not familiar on how it works, but if anyone is interested in giving it a go in a separate PR feel free to ping me and I'll do my best to help.Config changes
Adds the following changes to the
hyprland/workspaces
config:Notice how
workspace-taskbar.enable
defaults tofalse
, so existing configs shouldn't be affected by these changes without opting in.What's missing
I'm mainly waiting for your feedback on the config json names and structure. Once that's done I will update the wiki with the finalized spec.
Screenshots
Default CSS, old config file (defaults to old, text-based icons)
Default CSS, new config file (default format is just the icon)
Default CSS, windows with first 10 chars of title and bigger icon
Tooltip shows full window title. Clicking focuses that specific window
Allows an arbitrary format
My setup with custom CSS
Same CSS as above, vertical orientation