Summary: | Context menus of the KStatusNotifierItem systray icons randomly appear behind the autohide panels on right click (positioning issue) | ||
---|---|---|---|
Product: | [Unmaintained] plasma4 | Reporter: | Ekeluo Chukwuogor <echukwuogor> |
Component: | widget-systemtray | Assignee: | Plasma Bugs List <plasma-bugs> |
Status: | RESOLVED WORKSFORME | ||
Severity: | normal | CC: | ahlgren, andresbajotierra, aseigo, asraniel, cfeck, embeter, notmart, nt1277, orion, thelwyn, wengxt |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Ubuntu | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: |
Screenshot
Patch only to make menu about the panel Problem still presen on openSES 11.2 with compiz 0.8.4 & KDE 4.4.1 |
Description
Ekeluo Chukwuogor
2009-07-15 16:56:54 UTC
I'm pretty sure this is not a actuall bug bug a technical limitation. kmix and others use the new systray protocol, the others not. Can somebody confirm and close? Other icons in systray - klipper, fusion-icon, kde wallet manager & software updates and all display context menu properly i.e. in the foreground of the panel. Something IS wrong here. Didn't mention this before, but the panel with the system tray is set to auto-hide, at the top of the screen. This is still happening in 4.3.1, with the Knetwork manager, strigi, KMix and KDE wallet icons. The popup menus have no shadows and use the render animation for windows (unlike any other popup menus) and the menu can actually loose focus without dissappearing, i.e. show BEHIND the panel when I click elsewhere on the panel. All the other systray icons are fine (amarok, klipper, banshee, audacious, etc) This is still present in kde 4.3.2, Kubuntu Karmic Beta. This only happen when compiz is used. Archlinux KDE SC 4.3.4 compiz 0.8.4 This is still reproducible in kde SC 4.4 beta 2 on kubuntu, kmix systray icon. KDE SC 4.4 beta 2 Archlinux (KDEmod) It's the same. It is possible that make the menu in front of the panel, I have patched it for many times by adding a window flag to menu. After that though the position is not correct (just like the other right click program klipper, not like in kwin), but it can be used then, with this patch a little problem is that the left click menu position is still making things annoy, It just cover the panel... I think make the menu in front of the panel is important, the position problem can be solved after that. Not sure if related but the knetwork manager icon shows the menu at the top left of the screen, as far away as possible from where I clicked on it. I can not reproduce this bug with KDE 4.4 SVN 1068732 | Qt 4.6.0 when right-clicking on the kmix icon in system tray. The menu displays correctly. However, I've not tried with Nepomuk and KNetwork-manager, since i don't use them. (In reply to comment #10) > I can not reproduce this bug with KDE 4.4 SVN 1068732 | Qt 4.6.0 when > right-clicking on the kmix icon in system tray. The menu displays correctly. > > However, I've not tried with Nepomuk and KNetwork-manager, since i don't use > them. Do you use compiz? With kwin it works good. Weng, I indeed use KWin and not Compiz. Ekeluo do you also use Compiz? if you have a patch, attach it. if you are seeing a visual issue, take a screenshot and attach it. describing things (esp patches) that could be simply uploaded for us all to look at is not particularly helpful. thanks. Created attachment 39543 [details]
Screenshot
Case with compiz
Created attachment 39544 [details]
Patch only to make menu about the panel
Patch for KDE 4.3.4 kdelibs-experimental.
It's only a wordaround for this bug, because the position is not correct though, I think maybe kwin do some position movement to some window with special flags while compiz not, because I didn't see any thing different in position calculation in libknotification.
Sorry for the delay; I don't use compiz, use kwin only. I don't know if it matters but the panel with the system tray is centered (but not maximized) on the right side of the screen and is set to auto hide. Hope this helps. Ekeluo you're right, the case you mentioned is reproducable here. Always happened when use auto hide, seems not related to the size. I still can not reproduce it, following the last steps given by Ekeluo with KDE Development Platform: 4.4.59 I could just reproduce it, daily trunk, using the Konversation systray menu (which is a new KSNI). Panel is set to autohide, of course. Here using: Qt: 4.6.0 (kde-qt master commit 747ff8e6ef6f5a1163dfa75bc9ac4755ce7083d1 Date: Tue Dec 15 11:58:13 2009 +0100) KDE Development Platform: 4.4.59 (KDE 4.4.59 (KDE 4.5 >= 20100107)) kdelibs svn rev. 1074072 / kdebase svn rev. 1074076 on ArchLinux i686 - Kernel 2.6.32.3 I could reproduce the bug - What do you need to reproduce the bug: * A KMix icon (which is using the new systemtray protocol) * An autohide panel (I have it on the top edge) (desktop compositing is not really needed according to my tests) Steps to reproduce the bug: --- - Have a KMix icon in the systemtray - Configure the panel to be autohide - Let's the panel autohide itself - Mouse over the panel so it appears - Right click the KMix icon on several positions The popup menu appears behind or at-the-top of the panel, randomly. Interesting details: --- * When the panel is "always visible", the contextmenu of the (new KStatusNotifierItem protocol) system-tray icons appears near the panel (touching the panel's border; and not in the mouse cursor position). * If the panel is set to autohide, the contextmenu will appear exactly on the mouse cursor position (as all the other FDO tray icons do, regardless of the panel visibility) I wonder if that could be the clue to determine this issue * I managed to reproduce this bug with the KMix(4 menu-actions) and Konversation(GIT version)(5 menu-actions) icons. Interestingly enough, the Strigi icon which has a *smaller menu* (only 2 menu-actions) doesn't show this bug. - Could the context menu length/height related to this problem ? (Note that all this icons use the new KStatusNotifierItem) --- Screencast of the bug (desktop compositing enabled): http://www.youtube.com/watch?v=Jom3yeoRF9U Have the same problem on kde 4.4.0 (qt 4.6.2), compiz 0.8.4 on gentoo with vanilla kernel 2.6.32.8 The knetworkmanager tray menu is shown behind the panel. *** Bug 227180 has been marked as a duplicate of this bug. *** Created attachment 41469 [details]
Problem still presen on openSES 11.2 with compiz 0.8.4 & KDE 4.4.1
*** Bug 231121 has been marked as a duplicate of this bug. *** One more additional info to help at solving the problem: Up to until KDE 4.3 it was possible to circumvent this problem by switching the panel to "windows can cover" and back to "always visible", but since KDE 4.4 this workaround doesn't help anymore. this is fixed by the migration to dbus-menu When I left-click the klipper icon in systray, the menu still randomly appears below or above the visible autohide panel. Today's trunk. SVN commit 1131133 by mart: if a window id is not set, show the menu instead of the main widget BUG:238606 BUG:200329 M +7 -0 dbussystemtraytask.cpp M +17 -0 dbussystemtraywidget.cpp M +4 -0 dbussystemtraywidget.h WebSVN link: http://websvn.kde.org/?view=rev&revision=1131133 In fact there is still no progress in KDE 4.5.1. When using compiz, KDE systray still behaves the like described in the bugreport. Maybe it should be reopened. Since Klipper now longer uses the D-Bus menus, this bug happens again. I've actually noticed this bug earlier than when it was reported... maybe 3 years ago. I also use compiz, though as some people have mentioned it also occurs on kwin for them. This happens with knetworkmanager and kbluetooth for me, reproduced with kde4.4.5 (ubuntu lucid) and, if it matters, compiz0.8.4. i only see this happening with old style xembed icons now, and there is absolutely zero we can do about that as plasma does not control those menus. |