Bug 309958

Summary: Application Menu button disappears after placing the application in the systray
Product: [Plasma] kwin Reporter: Hrvoje Senjan <hrvoje.senjan>
Component: appmenuAssignee: Cédric Bellegarde <web>
Severity: normal CC: alinm.elena, kwin-bugs-null, web
Priority: NOR    
Version: git master   
Target Milestone: ---   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed In:
Attachments: Buttons before closing to systray

Description Hrvoje Senjan 2012-11-12 12:41:44 UTC
For every app that is started with appmenu button turned on, the button is correctly shown. After placing it to the systray (eg konversation, kmail, akregator) and calling it back, the button disappears.

Reproducible: Always

Steps to Reproduce:
1. Place the app in the systray
2. Open it back

Actual Results:  
Appmenu is gone

Expected Results:  
Should persist
Comment 1 Martin Flöser 2012-11-12 19:13:31 UTC
This cannot be reproduced with applications using the KStatusNotifier API. Can you confirm this observation?
Comment 2 Hrvoje Senjan 2012-11-12 19:28:41 UTC
At least konversation and ktorrent behave as originally described, so i can't confirm. So far i didn't found exception
Comment 3 Martin Flöser 2012-11-12 19:35:12 UTC
strange I used KTorrent for the test
Comment 4 Hrvoje Senjan 2012-11-12 19:59:29 UTC
To eliminate the possibility of a corrupted config, i have tried with a new user, and the issue is also there. Tested Amarok and KTorrent
Comment 5 Cédric Bellegarde 2012-11-13 08:58:07 UTC
Cannot reproduce here too: tested with amarok on Kubuntu with project-neon

Please give us more informations:
- What distro ?
- A screenshot of your kwin buttons placement
Comment 6 Hrvoje Senjan 2012-11-13 11:13:54 UTC
Created attachment 75214 [details]
Buttons before closing to systray

Distro is openSUSE, but this is reproducible for me with both vanilla, self-compiled KDE, and also using precompiled binaries (which utilize openSUSE patches)
Comment 7 Alin M Elena 2012-11-13 11:19:03 UTC
I have reproduced it with ktorrent... 
Initially seems to work... but after few times opening and closing ktorrent the button with the menu vanishes...  it is the same for konversation...

Comment 8 Cédric Bellegarde 2012-11-13 11:57:33 UTC
@Alin: please give your distro

@Hrvoje Senjan: Please give me OpenSuse version and repository to test this...

Here on Trunk + Kubuntu and kdebase-workspace-appmenu-4.9 + ArchLinux, i can't reproduce...
Comment 9 Alin M Elena 2012-11-13 12:01:11 UTC
the same as Hrvoje

opensuse factory with kde trunk from this repo...

Comment 10 Hrvoje Senjan 2012-11-13 13:23:23 UTC
If i was unclear before, by placing in systray, i meant closing it to systray (with the X button), not minimizing. Also, the top panel menubar correctly works after i restore the app.
Comment 11 Cédric Bellegarde 2012-11-13 13:35:33 UTC
I really do not understand how openSUSE works...

Can you give me zypper commands to to the update ?
Comment 12 Cédric Bellegarde 2012-11-13 13:38:45 UTC
Ok, got it, repo is only for x64 :( Reinstall :-/
Comment 13 Hrvoje Senjan 2012-11-13 13:39:34 UTC
# zypper ar http://download.opensuse.org/repositories/home:/rwooninck:/UNSTABLE_KDE4/KDE_Qt48_openSUSE_Factory/ unstable_kde

# zypper ref

# zypper dup --from unstable_kde

Note that the repo is for Factory only, not 12.2
Comment 14 Cédric Bellegarde 2012-11-13 13:52:34 UTC
Can't install x64 hosts in my virtualbox...

What appmenu-qt version are you using ?
Comment 15 Thomas Lübking 2012-11-13 17:00:49 UTC
"Minimizing" or "closing" to systray effectively destroys the window but NOT the widget (ie. client process logic).

Loosely scanning the diff i'd say the menuAvailable signal isn't sufficiently emitted by the client (has to happen on each show event of the window)

Btw, how do you cover a kwin restart? (kwin --replace)
Comment 16 Hrvoje Senjan 2012-11-13 19:15:29 UTC
(In reply to comment #14)
> What appmenu-qt version are you using ?
Cedric, the issue is present with both 0.2.4 and 0.2.6
Comment 17 Hrvoje Senjan 2012-11-13 20:11:59 UTC
(In reply to comment #16)
> (In reply to comment #14)
> > What appmenu-qt version are you using ?
> Cedric, the issue is present with both 0.2.4 and 0.2.6

Actually 0.2.6 did it. It needed a logout/in for it to work. It would be great if that could be added to CMake output, eg "appmenu-0.2.6 required for appmenu to work properly"
Comment 18 Hrvoje Senjan 2012-11-13 21:22:26 UTC
I have also found appmenu br:
Comment 19 Cédric Bellegarde 2012-11-13 21:58:56 UTC
@Thomas Lübking

On kwin restart, dbusmenu registrar emit a windowRegistered() signals and kded-appmenu forward it to kwin with a menuAvailable() signal.
Comment 20 Hrvoje Senjan 2012-12-11 20:32:29 UTC
I am re-opening, as i’m again experiencing the same issue with current master and appmenu-qt 0.2.6.
Comment 21 Cédric Bellegarde 2012-12-12 11:35:08 UTC
Git commit 844264ea3b6a67b747387386c8d9238ba21756b6 by Cedric Bellegarde.
Committed on 12/12/2012 at 12:34.
Pushed by cedric into branch 'master'.

M  +10   -6    appmenu/appmenu.cpp
M  +6    -3    appmenu/menuimporter.cpp
M  +1    -0    appmenu/menuimporter.h