AppMenu QML

Plasma 4 Widgets

Source (link to git-repo or to original if based on someone elses unmodified work): Add the source-code for this project on opencode.net

32
Score 85.6%
Description:

This plasmoid shows a menu of the installed applications, similar to Lancelot but much simpler. The purpose of the simpleness is to have a faster plasmoid which also loads faster. The plasmoid also has a list of favorites and you can search applications by application name. There are "Lock Session", "Leave" and "Switch User" and other similar buttons. Other features:
- the number of visible columns can be changed (between 1 and 4);
- the favorites section can be hidden;
- the favorites list can be locked;
- the size of all visible icons can be changed;
- closing and opening the menu remembers its state (configurable);
- change launcher icon;
- configure which "leave" buttons are shown (or show none at all);
- the favorites list can be reordered using drag-and-drop;
- the menu items can be dragged and dropping them on a panel or on the desktop creates a shortcut there.

The plasmoid can be completely manipulated with the keyboard only except for the buttons at the bottom wich must be clicked with the mouse. The menu can be browsed with the arrow keys and PageUp and PageDown, a favorite can be added with the + or = key and removed with the - key, to search an application by its name, just start typing the name.

This plasmoid is entirely written in QML + JavaScript.

Note: this plasmoid requires KDE 4.8.0 or higher. For correct resizing of the "Leave" buttons, KDE 4.9.0 is required.

Bugs I don't have control over (because of limitations in Qt or Plasma):
- make configuring the plasmoid's icon more elegant by showing the current icon on the button that launches the "Change icon" dialog and by removing the text field holding the icon's name (only possible when KConfigXT finally supports Icon)
- provide a command line to open/close the menu
- maybe add "Recent Documents" section (below Favorites?); there is no Plasma DataEngine for this, so I cannot do it
- allow to modify the ordering of the "leave" buttons (must find a way in
KConfig XT to do this)
Last changelog:

6 years ago

version 1.6 (2013-07-31):
- do not show the "Add favorite" and "Remove favorite" buttons in the search menu when the favorites are locked
- the "Add Favorite" and "Remove Favorite" buttons are not visible anymore if the favorites section is hidden
- dragging an application from the menu to the panel or the desktop creates a shortcut there
- the favorites can be reordered using drag-and-drop

C

glad

6 years ago

There is an option in version 1.5 to search more thoroughly for empty submenus (I say "more thoroughly" because by default empty submenus are already searched for, but the search is quite simplistic so it doesn't catch all empty submenus). Now all empty submenus should be hidden (if they are not, then this is a bug). The option is off by default (so you have to activate it in the configuration dialog) because it leads to a slower startup of the plasmoid and IMHO the Plasma Desktop starts up already much too slowly.

Report

herrbatka

6 years ago

hi, for some reason searching does not work for me. I can type text in but it does not bring any resoults. Same in the older versions. I'm wonder if you can suggest any reason behind this behavior.

Report

C

glad

6 years ago

This is very strange. On my machine it works perfectly and I deduce from the comments of others that on theirs it works too. Could you run the command:
Quote:plasmoidviewer -f horizontal ~/.kde/share/apps/plasma/plasmoids/appmenu-qml/
(.kde could be .kde4 on your machine) in a Konsole and see if there are any errors? Note that, unlike Kickoff and Lancelot, the search in this plasmoid only searches for entries in the menu, so the other possibilities of KRunner are not available.

Report

herrbatka

6 years ago

thanks for answer. I found out that searching gives only:

plasmapackage:/code/search.js:37: TypeError: Result of expression 'entry' [undefined] is not an object.

I must admit that i don't have any idea what is going one. My OS is pclinuxos.

Report

C

glad

6 years ago

Please try version 1.4. The file plasmapackage:/code/search.js has been removed because the search has got a completely new implementation.

Report

herrbatka

6 years ago

bingo. works. I had to uninstall it, remove all files, and install again. I thought I already run 1.4

Thank you, this applet is really nice.

Report

9

e1nste1n

6 years ago

May I ask why search field unfocused on start? It takes one extra click to perform a search and mostly unintuitive. Also I want to ask is it possible to make menu entries single-lined (without app description), like in classic menu?

Report

C

glad

6 years ago

I implemented already a few versions ago that each time the menu pops up the search textbox should be focused. However this plasmoid is a victim of the bug https://bugs.kde.org/show_bug.cgi?id=300108 or https://bugs.kde.org/show_bug.cgi?id=177674 or https://bugs.kde.org/show_bug.cgi?id=270252 (or something like that) which exist already from the day that QML plasmoids were introduced.

Note however that if the popup is focused (i.e. you can browse the menu with the keys) then you can always start typing and what you type will be entered in the search box and the search box will then become focused. Conversely, when the search box is focused, you can still use the arrow keys to browse the menus.

Report

9

e1nste1n

6 years ago

Thanks for detailed answer. What about compact one-line menu entries? Is it possible?

Report

C

glad

6 years ago

It will be available in version 1.5.

Report

9

mandyzhou

6 years ago

This is awesome! Thank you so much!

One minor quibble: the search bar is a little slow for me for some reason. It takes four seconds for search results to appear, compared to other launchers, where search results appear instantaneously. It's not a huge deal, and I will continue to use this regardless, but I was wondering if there's a fix for this that will make searching instantaneous.

Thanks again!

Report

C

glad

6 years ago

The search is reimplemented in version 1.4. Note that there is a lag on the first search after each Plasma restart because the PlasmaCore.SortFilterModel must then be loaded.

Report

gufide

6 years ago

Hi, is it possible to focus the search textbox by default when the menu is open? I love to use hotkeys to show the menu without using the mouse, but I can't do this when I'm searching. I don't know if this is possible in QML, but it would be so useful.

And thank you, your menu just saved the constancy of my desktop :)

Report

C

glad

6 years ago

I implemented already a few versions ago that each time the menu pops up the search textbox should be focused. However this plasmoid is a victim of the bug https://bugs.kde.org/show_bug.cgi?id=300108 or https://bugs.kde.org/show_bug.cgi?id=177674 or https://bugs.kde.org/show_bug.cgi?id=270252 (or something like that) which exist already from the day that QML plasmoids were introduced.

Note however that if the popup is focused (i.e. you can browse the menu with the keys) then you can always start typing and what you type will be entered in the search box and the search box will then become focused. Conversely, when the search box is focused, you can still use the arrow keys to browse the menus.

Report

ctown

6 years ago

Thanks a lot for making this Plasmoid! It's pretty configurable and it works well with the keyboard. This Plasmoid is progressing exceptionally well.

Report

C

glad

6 years ago

Thanks! :-)

Report

9

schnelle

6 years ago

Can you please add suspend to ram (sleep) button?

Report

C

glad

6 years ago

"Sleep" (suspend to RAM) and "Hibernate" (suspend to disk) will be available in the next version.

Report

biglinux

6 years ago

You can enter the option of submenus that look like a classic menu?
Similar to this picture: http://i.imgur.com/tcNpr.jpg

Report

C

glad

6 years ago

Sorry, this is not planned (at least not for the short term). It will make my code much more complicated with no real benefit (as far as I can currently see). If you can make a patch that does not invade the existing code too much (i.e. keep the code for this submenu as separate from the main code as possible), then I might consider it for inclusion.

Report

9

Syvolc

6 years ago

Very nice, I use it instead of default.

Just sad that empty folders appear.

Thank you
Syvolc

Report

9

janet

7 years ago

Is there a way to keep the settings and favorites when updating to/installing a new version?

Report

C

glad

7 years ago

Yes, by installing the new version without removing it from the panel. Of course the plasmoid will then only work correctly after restarting Plasma. I didn't test "Get Hot New Stuff", but the following certainly works: you download the plasmoid, open a konsole and execute the following 4 commands consecutively:
Quote:plasmapkg -r appmenu-qml
plasmapkg -i plasma-applet-appmenu-qml-1.3.plasmoid
kquitapp plasma-desktop
plasma-desktop
(where you replace the name of the .plasmoid file by the actual name of the downloaded file). You do all this without ever removing the plasmoid from the panel.

This situation is the same for every plasmoid. For C++ plasmoids it is technically possible to implement persistent settings which survive removal and re-addition of the plasmoid (but IIRC this is not recommended), for QML plasmoids like this one it is simply impossible to implement this.

Report

9

janet

7 years ago

Thanks a lot for this explanation! I always removed the widget via the widget manager which removes the widget from the panel.

Report

9

BigCityCat

7 years ago

Great work.

Report

6 years ago

version 1.6 (2013-07-31):
- do not show the "Add favorite" and "Remove favorite" buttons in the search menu when the favorites are locked
- the "Add Favorite" and "Remove Favorite" buttons are not visible anymore if the favorites section is hidden
- dragging an application from the menu to the panel or the desktop creates a shortcut there
- the favorites can be reordered using drag-and-drop

12345678910
371
product-maker agq54 Jul 23 2014 9 excellent
product-maker gustawho Jun 15 2014 9 excellent
product-maker UnderTheGun May 01 2014 9 excellent
product-maker tago Apr 08 2014 9 excellent
product-maker Broker Feb 06 2014 9 excellent
product-maker migue Jul 31 2013 9 excellent
product-maker distopic Feb 20 2013 9 excellent
product-maker frag Feb 20 2013 9 excellent
product-maker brdn25 Feb 09 2013 9 excellent
product-maker KDesk Feb 08 2013 9 excellent
product-maker Contrast Feb 05 2013 9 excellent
product-maker mandyzhou Jan 15 2013 9 excellent
product-maker pieter Dec 18 2012 9 excellent
product-maker Syvolc Dec 17 2012 9 excellent
product-maker LuizRios Nov 25 2012 9 excellent
product-maker dotNet Nov 18 2012 9 excellent
product-maker josaniel Nov 06 2012 9 excellent
product-maker froksen Oct 13 2012 9 excellent
product-maker Phrosztbyte Oct 07 2012 9 excellent
product-maker abatyche1x Oct 04 2012 3 bad
product-maker yhmfyhhcf Oct 04 2012 3 bad
product-maker jimmy600 Oct 03 2012 3 bad
product-maker juank202 Aug 31 2012 9 excellent
product-maker sealbhach Aug 31 2012 9 excellent
product-maker rthomsen Aug 31 2012 9 excellent
product-maker Grobelard Aug 30 2012 9 excellent
product-maker oOSplashOo Aug 30 2012 9 excellent
product-maker sumski Aug 29 2012 9 excellent
product-maker dmeyer Aug 29 2012 9 excellent
product-maker ulihox Jul 22 2012 9 excellent
product-maker shsetyana Jul 05 2012 9 excellent
product-maker miawallace Jul 04 2012 9 excellent
product-maker ArthurTaborda Jul 03 2012 9 excellent
product-maker BigCityCat Jun 18 2012 9 excellent
product-maker RAIDENSUB Jun 12 2012 9 excellent
product-maker SCO2land May 26 2012 9 excellent
product-maker swiftscythe May 11 2012 9 excellent
product-maker mblondee May 09 2012 9 excellent
product-maker Refused Apr 04 2012 9 excellent
product-maker janet Apr 01 2012 9 excellent
product-maker step-2 Mar 28 2012 9 excellent
product-maker freemanoid Mar 27 2012 9 excellent
product-maker gardmo Mar 15 2012 9 excellent
product-maker thetall82 Mar 13 2012 9 excellent
product-maker gcala Mar 12 2012 9 excellent
product-maker schleby Mar 12 2012 9 excellent
product-maker snakebite Mar 09 2012 9 excellent
product-maker darthroe Mar 09 2012 9 excellent
product-maker negas Mar 01 2012 9 excellent
product-maker jmc88 Jan 24 2012 9 excellent
product-maker grayhawk Jan 11 2012 9 excellent
product-maker dimitarpopov Jan 02 2012 9 excellent
product-maker nikore90 Dec 13 2011 9 excellent
product-maker StrikeHoreges Dec 10 2011 9 excellent
product-maker pru Nov 27 2011 9 excellent
product-maker Guil1aume Nov 26 2011 9 excellent
product-maker stevencolbear Nov 20 2011 9 excellent
product-maker simone84 Nov 11 2011 9 excellent
product-maker soee Nov 06 2011 9 excellent
product-maker fancase Nov 02 2011 9 excellent
product-maker onizou Nov 01 2011 9 excellent
product-maker agaya Oct 31 2011 9 excellent
product-maker vitoubien Oct 31 2011 9 excellent
product-maker TommyCZ Oct 23 2011 9 excellent
product-maker nowardev Oct 21 2011 9 excellent
product-maker robyshot Oct 19 2011 9 excellent
product-maker schnelle Oct 19 2011 9 excellent
product-maker mityukov Oct 19 2011 9 excellent
product-maker 67GTA Oct 18 2011 9 excellent
product-maker unikum111 Oct 18 2011 9 excellent
product-maker FraMari Oct 18 2011 9 excellent
product-maker reves121 Oct 18 2011 9 excellent
product-maker e1nste1n Oct 17 2011 9 excellent
product-maker joetux Oct 17 2011 9 excellent
product-maker Base: 4 x 5.0 Ratings
Be the first to comment
Landis
Aug 27 2015
agq54
Jul 23 2014
UnderTheGun
May 01 2014
Broker
Feb 06 2014
migue
Jul 31 2013
FraMari
Feb 19 2013
brdn25
Feb 09 2013
mandyzhou
Jan 15 2013
LuizRios
Nov 25 2012
carlcarl
Nov 04 2012
nekoprog
Sep 12 2012
juank202
Aug 31 2012
rthomsen
Aug 31 2012
Grobelard
Aug 30 2012
ArthurTaborda
Jul 04 2012
miawallace
Jul 04 2012
mblondee
May 09 2012
snakebite
Apr 12 2012
thetall82
Mar 12 2012
jmiahman
Mar 09 2012
edio
Nov 26 2011
pvt14
Nov 10 2011
egatop
Nov 07 2011
soee
Nov 06 2011
Mte90
Oct 26 2011
socialinux
Oct 24 2011
TommyCZ
Oct 23 2011
janet
Oct 22 2011
Sparrowmelody
Oct 21 2011
kdekda
Oct 19 2011
marcotangaro
Oct 19 2011
tetris4
Oct 18 2011
File (click to download) Version Description Downloads Date Filesize DL OCS-Install MD5SUM
*Needs pling-store or ocs-url to install things
Pling
0 Affiliates
Details
license
version
1.6
updated Jul 31 2013
added Oct 17 2011
downloads 24h
0
mediaviews 24h 0
pageviews 24h 8