cosmic-epoch
cosmic-epoch copied to clipboard
[Feature Request] Global Menu and Window Button applets
I'm being quite selfish with this feature request but essentially I would like to replicate the workflow I had with KDE a couple of years ago before updates to KDE made it impossible to achieve and I switched to GNOME which doesn't have some of these features.
Here is a screenshot of what I'm talking about
In the top panel, there are a few important extensions. Namely, the Global Menu and the Window Buttons. The Media Player is also useful but not as important.
With the Global Menu and the Window Buttons, I could delegate the tasks of the top bar of every window to the top panel of the desktop, and remove the top bar of each window altogether. This would give me more space on the screen for the windows. I could also conveniently pull my mouse to the top right of the screen and left click to close the active window without having to look for the close button of that window.
In the screenshot, the top bar is compact and doesn't stretch to the whole screen but I would usually keep it stretched to the whole screen.
I miss how clean and efficient this felt. I've tried cosmic and it's 90% of the way there to be able to replicate this workflow, but is missing those couple of applets at the moment.
If the cosmic devs see any potential in either any of the applet ideas or the idea of being able to turn off the top bar of windows, then I would love to see them implemented.
We get a request for a global menu a lot. The big problem here is, that there isn't a unified protocol for this to work reliably across apps. Displaying the title and window controls on the other hand would be trivial.
@Drakulix Will there be a way to disable window top bars as well?
If we would add such an applet, it should be accompanied by removing window headers, however I don't think we have concrete plans for that yet.
For that at least a protocol exists, however some apps might not respect that or decide to only hide window controls from their top bar.
It's worth stating for the record that while a global menu is (sadly) not yet implemented for Cosmic, you absolutely can put your "window buttons" in the Panel. If you go to Settings>Desktop>Panel>Applets, you should be able to add "App Tray", which is the same "window button" applet otherwise found in the dock at the bottom. I, too, hate having more than one panel/dock taking up screen space.
@Hate9 By "Window Buttons", I did not mean the app tray, I meant the minimize, maximize and close buttons. Having one set of them in the panel instead of one set for each open window makes it so that there's some screen space saved (At least in Qt applications) and also you can quickly flick your mouse to the top right of the screen to close the currently focused window.
We get a request for a global menu a lot. The big problem here is, that there isn't a unified protocol for this to work reliably across apps...
@Drakulix Hi, would a Wayland protocol be a possible solution for this, which toolkits could implement and compositors could decide whether to support the feature?
What you think about kde realisation of global menu in wayland?: https://wayland.app/protocols/kde-appmenu
We get a request for a global menu a lot. The big problem here is, that there isn't a unified protocol for this to work reliably across apps...
@Drakulix Hi, would a Wayland protocol be a possible solution for this, which toolkits could implement and compositors could decide whether to support the feature?
The protocol is not the problem, several attempts exist (e.g. kde-appmenu). The problem is getting toolkits to adopt it.
But i we can create custom applet that will add kde-appmenu (even if will work only with qt apps)? Can libcosmic devs add support for appmenu?
We get a request for a global menu a lot. The big problem here is, that there isn't a unified protocol for this to work reliably across apps...
@Drakulix Hi, would a Wayland protocol be a possible solution for this, which toolkits could implement and compositors could decide whether to support the feature?
The protocol is not the problem, several attempts exist (e.g. kde-appmenu). The problem is getting toolkits to adopt it.
Is this a case of "GTK/GNOME developers having a different vision, so they won't support the protocol—like with SSD?"
Is this a case of "GTK/GNOME developers having a different vision, so they won't support the protocol—like with SSD?"
I wouldn't necessarily say so. Their gtk-shell protocol has an option to set a menupath: https://wayland.app/protocols/gtk-shell#gtk_surface1:request:set_dbus_properties
Which doesn't seem to be used by GTK4/Adwaita apps anymore, but I am not sure there exists a statement from gnome developers on that issue.
What this needs is a common standard, but I am not sure anybody has tried to make a wayland-protocols proposal.
(Which is not an invite to open an issue at wayland-protocols. Somebody needs to actually write the protocol (which could be based on kde-appmenu), collect feedback and then drive toolkit implementations.)
As for implementing the protocol as is in COSMIC: No, I don't want to support an unstable third-party protocol. If there is common interest, that is a good reason to start standardizing.
I'd like to cast another vote of support for global menus. Beyond the perspective of customizability, to me, the biggest value in offering it is making the DE more welcoming and accessible to users coming from years of experience on macOS, building that muscle memory. So it's part of a bigger issue of offering a UX that allows users of the bigger platforms — Windows and macOS — to feel more at home.
This would give COSMIC a good edge with macOS users for being one of very few DEs that offer global menus.
Hi, It seems that there was/is work going on for a more generic protocol: https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/52
I would really love this, I'm using unite (window controls) + fildem (global menu) on my GNOME 48, it would be awesome to carry over my setup to cosmic
Hi, It seems that there was/is work going on for a more generic protocol: https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/52
Will this ever happen? There is a KDE blog post that had it's 5th birthday last saturday. Literally nothing happened since then.
As far as I know Wayland lets create protocols for a specific implementation/compositor, so it would be possible to add a Cosmic protocol to cosmic-comp so at least there would be a protocol to start with. Later KDE could adopt that too if they want to. But for now it seems like they are playing the waiting game rather than making their own protocol for KWin (for wayland at least). If my understandings are correct and this is true it would be possible to create a Cosmic specific implementation of dbus_annotation, rather than waiting forever.
It seems like Gnome devs will never do something like this, Wayland devs are uninterested, so the two community, namely KDE and Cosmic are waiting on others rather than doing it themselves.