-
Notifications
You must be signed in to change notification settings - Fork 135
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
Fancy Menu: New main menu similar to XFCE Whiskermenu #1975
Conversation
Nice work! Is "adding to favorites" not implemented yet or did I miss something? |
@stefonarch I've not yet implemented it because I'm still deciding where to store the info. |
|
I've added "add to favorites" but it's not working yet |
Now favorites are stored inside |
I've noticed some parts of lxqt-panel use Examples of code using
|
Happy to see that you're working on this. I know that this is a WIP, but please remove translations and also changes not related to Fancy Menu (if any) from the final PR. Translations will be handled by @stefonarch later.
It sounds good to me. |
It makes no difference here. You could use the Qt method. |
Nice work really! Some things I noticed:
Very nice that also search results can be added to favorites! |
On top of the context menu there are app-specific actions defined in desktop file (es. "Open Anonymous Window" for Firefox). For the other issues I've already noticed them, will fix next week. About translations I can provide the Italian one, the other files are just copy renamed from main-menu plugin |
I meant at the top of the "copy" and "add to desktop" items, but a separator is fine too. |
I'll try it when the PR is ready, but @stefonarch's screenshot shows that it should be a very nice plugin. IMHO, there's no need to try to consider every minute detail in the first PR; a clean code that works is enough. Details, issues and needed features might surface only when several devs and git users start to use it — as is the case with any code — and then, everyone will be able to report and/or work on some of them. |
00c8414
to
b51d03b
Compare
Rebased on current master and fixed search related issues. What remains to do:
|
Also when dragging an app to panel quicklaunch, the menu popup is not closed. I don't think it's a bad behavior though |
It's the same with the mainmenu. EDIT: oh, probably you mean that with "Share some small parts with Main Menu (shortcut hack, context menu)"
What do you mean with this? The buttons displayed at top? |
Tooltips in previous version had keywords appended to test search accuracy. It needs imprpvment, maybe share cose with The context menu code can be shared with main menu. It's a few lines but future improvments to common code would benefit both plugins. I think main menu closes itself after drag drop to quicklaunch. But in order to reproduce that we loose standat Qt item view drag and drop code. Meaning we should subclass |
Yes. We could add also user name and icon ( |
I guess the empty name issue come from an accidental removing of the "translations" folder, tried to readd the translations and after removing and readding the plugin the italian name is shown again here, also the translations of the settings. For the buttons I had the same idea, but I thought that those are just .desktop files, but configuring icons and commands sounds nice.
|
I compiled this and it's completely usable, albeit for a small amount of bugs. Really the only things I see to adjust are: -- Because there already is Favorites, custom menus, and lxqt-panel's Quick Launch, I don't think the buttons at the top should get overly complicated. -- The left and right displays of menu items would profit from separators. |
EDIT: I had to clean rebuild and now it generates |
Hi, what do you mean by this? Separator between category items? |
Main Menu has separators in categories and their sub-menus. It's defined as "<Separator/>" in menu files |
Also about buttons. Whisker menu has them on bottom, below item views. It seems slightly better. |
In the wing menu position was configurable, personally I'm fine with both. There are the same icons for "Shutdown" and "Leave", looking at the translations I assume it's "Shutdown" at the moment, IMHO the "Leave" menu should be default. Translations can be reused from mainmenu plugin so there are only few new items to translate. I've them ready but I see that "Favorites" is not translatable atm. For the menu file: I see that the default |
I'm afraid that is not backwards compatible as it will remove the menu when users update. |
Only if you change the plugin name. But if you just change name in desktop file I think it should be fine. |
Oops, that is indeed a scrollbar ;) |
Here Fancy Menu makes the panel crash on two occasions: (1) when it's removed from the panel; and (2) when the panel's process is stopped. No crash happens without adding Fancy Menu if the panel's process is stopped. I didn't check the code, but the backtrace wasn't informative in either case. For (1):
For (2), it was as short as this:
|
Apart from the above change, I think the plugin should have either an icon (preferable) or a text when the user adds it to the panel (currently it's an empty space on the panel by default). |
Also, the categories panel is on the right by default when the user adds the widget to the panel, while "Left" is chosen in the config dialog. |
I don't understand how EDIT: After some digging I've found the icon comes from |
I've found another issue which affects also MainMenu: |
It shows font size from |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you very much for your contribution to LXQt Panel! I didn't find an urgent issue that should be fixed here. The code is written neatly, and probable problems, details or new features could be addressed later, in separate PRs. Well done!
@gfgit
Please squash all commits into one and add a short comment for having a clean history before merging.
- Based on MainMenu plugin - Looks like XFCE Whisker Menu. - Has Favorites support, which get stored inside `panel.conf` file - Supports search by keyword and comment fields of `.desktop` file - MenuCache support is removed.
9deb85d
to
76e7c0e
Compare
Thank you for the kind words! |
You're welcome.
Not at all. Let's give it to git users :) |
A draft for themes is here: lxqt/lxqt-themes#105 |
@gfgit would you be open to changing the name of this widget? How does "Colibri Menu" (or Kolibri with a k) sound? Since LXQt has a hummingbird motif and all, comparing with Xfce's mouse branding and Whisker Menu :) Wanted to ask before too much was done in the way of code changes... |
We agreed on the original name. Each user/dev may dislike the current name or have a suggestion according to his/her taste, but it isn't practical to change names based on that. |
@tsujan @AzumaHazuki well Colibri Menu sounds good, Kolibri is too much KDE style I think. |
Colibri is better than "Fancy" IMO too. But we'd change only the name in the ·desktop file I suppose, not in the themes and in the codes. |
I see nothing silly at all about your first choice (fancy, meaning "elaborate in structure or decoration" in English), and translations don't need to be literal. And why a non-English word like Colibri?! Anyway, we could talk about such things for hours, days or months to no avail because the taste isn't a matter of agreement by nature. |
The issue comes in other languages. "Colibri" won't be translated by most as will be seen as a name like "Whisker", while fancy is translated: https://translate.lxqt-project.org/search/lxqt-panel/plugin-fancymenu-name-and-description/?offset=1&q=application&sort_by=-priority%2Cposition&checksum=, mostly like stylish or elegant while in italian it would look strange IMO so I prefer to see it as a name. |
PS: in italian maybe "Menu delle applicazioni avanzato"? @gfgit |
It's too long in my opinion. |
Too many languages in my mind, I'll change it. |
@tsujan the reason why is that this is actually closer to the word for "hummingbird" in vastly many other languages! If you don't believe me, try Google Translate. It's kind of like how almost every language but English refers to the fruit "pineapple" as some variant on "ananas" =P English: hummingbird Afrikaans: kolibrie Most of the languages using the Cyrillic alphabet say колибри. Several Southeast Asian ones, like Malay for example, are closer to "$BIRD kolibri" as loan words. I think I've made my point :) If anything this is easier to localize. |
Hello,
as promised this is a first working draft of "Fancy Menu"
DISCLAIMER: The name is the first thing that came to my mind, git history is messy, will be cleaned up before final version.
TODOs:
QMenu
or should I keep the workaround?QStyle
subclass?Related issues: #1870 #1196
Possibly related PRs: #1698 #1771