Skip to content

[WIP] Don't use menubuttons where we don't want buttons#411

Open
trigg wants to merge 13 commits into
masterfrom
less-buttons
Open

[WIP] Don't use menubuttons where we don't want buttons#411
trigg wants to merge 13 commits into
masterfrom
less-buttons

Conversation

@trigg
Copy link
Copy Markdown
Collaborator

@trigg trigg commented Mar 21, 2026

Refactor internal WayfireMenuButton to no longer actually be a menu button

MenuButton was originally chosen as it was the only way I had found to make a popover-menu for panel widgets.

We put a fair bit of extra code to make MenuButton not actually be a menubutton. So this PR will standardise an interface for all Popup-based widgets without each one having to fight to not look like a button

Advantages over not having this PR:

  • Fixed popover too big for entire screen at the source
  • Moved autohide and layer shell logic out of individual widgets.
  • Added option for popup-menu to follow mouse across other popup-menu widgets.
  • class 'with-content' when a popup of any kind is attached
  • class 'selected' when this specific widget has its popup shown
  • users custom themes don't need to carefully unset all the button-specific css rules from their theme

Currently timed-popups are suffering a bug where only one of the popups show and leaves other panels in an undefined state, very very similar to below
https://gitlab.gnome.org/GNOME/gtk/-/issues/6465

Because of the above, thorough testing on a multi-head system is required before merging

trigg added 5 commits May 2, 2026 17:42
panel: start standardising on popups
panel: fix popup too big for screen
panel: fix menu crash before init
panel: made menu-follows-mouse an option
panel: widgets can optionally have fullscreen popover
panel: merged popover classes
panel: window-list stop using button
@trigg trigg marked this pull request as ready for review May 9, 2026 10:50
@trigg
Copy link
Copy Markdown
Collaborator Author

trigg commented May 9, 2026

From my daily testing this is now in place.

BUT the change from button to box/image whatever internals has changed some of the extra padding added by button. The panel is more compact again, especially around menu button.

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