GNOME Bugzilla – Bug 602743
Alacarte is too slow
Last modified: 2012-08-16 09:17:26 UTC
Hi to the Gnome team and many thanks for your great work ! Many changes I do take 2 seconds to be applied in Alarte. For example: - when I click on a "show" box, the application name takes 2s to change font size - same when I "hide" any application - when I click on "New separator", it comes after 2s - when I drag and drop an item to move it, it desappears during 2s and then appears at its final location. - same when I click on "Move up", "Move down", or "Delete" - to create a new menu or new item On the other hand, other actions are immediate: - left-click on an item immediatly selects it - window immediately appear when I double left-click an an item - right-click on an item immediately displays the options - window immediately appear when I click on "New menu" , "New item" on Ubuntu 9.10 , Mobile AMD sempron 3200+, 900Mio RAM
I looked into this a bit and made the following observations: When a user has made a modification to the menu, a corresponding event handler (e.g. on_[menu|item]_tree_drag_received) is executed. Modifications are not committed to the GUI menu tree by these event handlers. Instead, exactly one second after the event handler has been executed, the menuChanged() method gets called and the whole GUI menu tree is reloaded. The menuChanged() event handler is set up with the add_monitor() method of a gmenu.Tree instance. There is no timeout argument in the call. I didn't dig too deep into the C source of libmenu and glib/gio, but I suspect the delay originates from there. By always updating the UI based on notifications from underlying libraries, the program keeps in sync with the menus even if they are being changed elsewhere. Try running two copies of Alacarte: editing in one causes changes to appear in the other as well. To make the UI responsive, the only solutions I see are either: 1) somehow reduce the monitor timeout used by underlying libraries, or 2) commit modifications into the visible menu tree in the event handlers even though the menu tree will be replaced 1-2 seconds later. I wonder if these conclusions are accurate and whether the core team is willing to accept patches even though a rewrite of Alacarte in Vala seems to be underway.
Thank you for the answer. I re-checked today : I confirm I still have the bug with an updated ubuntu 9.10 .
(In reply to comment #1) > whether the core team is willing to accept patches What core team? > even though a rewrite of Alacarte in Vala seems to be underway. Any links to that?
It is now May 2011 and alacarte is nowhere closer to being a sufficient menu editor. I would like the same answers Andre. Who is working on this? Is progress being made? See comments #9 and #10 in this Ubuntu bug report for a detailed explication of the problems with this menu editor: https://bugs.launchpad.net/ubuntu/+source/alacarte/+bug/111896
(In reply to comment #4) > Who is working on this? Nobody. > Is progress being made? No. For general activity see http://git.gnome.org/browse/alacarte/log/
Thank you Andre! Wow. It's nice to see those Loco teams hard at work, making a alacarte available in every conceivable language... But it looks like about two years since the core program got any attention. Looks like were on our own. Time to relearn C++
I'm maintaining Alacarte now. I am not going to rewrite it in Vala. If there are performance problems, I will look into them.
Yann: Do these performance issues still happen in a recent version (if so, which version and distribution)? If so, which hardware is used? How to reproduce? Not even sure if this report is still valid because it's rather old, and a bit vague (covering several issues).
Hello Andre, i have a different laptop now (Clevo i3, 4GB RAM), and i use Ubuntu 12.04. I played a bit with Alacarte in order to check, but can't reproduce the bug. I'll let you know if i find a bug with this configuration.