https://bugs.kde.org/show_bug.cgi?id=359790
Bug ID: 359790 Summary: Cannot change system tray icon's context menu items of an app built with Qt 5.5.1 Product: kdelibs Version: unspecified Platform: Kubuntu Packages OS: Linux Status: UNCONFIRMED Severity: major Priority: NOR Component: qt Assignee: kdelibs-b...@kde.org Reporter: lpu...@insynchq.com I have an app that needs to be able to update the context menu items of its system tray icon. We are using Qt 5.5.1 and we include the Qt libs with the app when we package it so we can't use the system libs. This works in other desktop environments but in KDE the context menu items cannot be changed. It happens in Kubuntu 12.04 until 15.10 and probably in other distributions as well (was able to confirm it on Debian too). Reproducible: Always Steps to Reproduce: 1. Download Qt's official binary installer from https://download.qt.io/archive/qt/5.5/5.5.1/. 2. Install required packages for Qt Creator. In Kubuntu 12.04 these are g++, libgl1-mesa-dev, and libglu1-mesa-dev. 3. Download Qt project that contains minimal code to reproduce issue here: https://goo.gl/GZxO6q. 4. Open Qt Creator: <Qt installation path>/Tools/QtCreator/bin/qtcreator. 5. Open and run project. 6. Right click on tray icon and click on the "On" entry. It should change to "Off" when the context menu is reopened. Alternative way: 1. Download the executable with Qt libraries here: https://goo.gl/FYLhIo. 2. export LD_LIBRARY_PATH=/path/to/extracted/folder 3. cd /path/to/extracted/folder 4 ./systray 5. Right click on tray icon and click on the "On" entry. It should change to "Off" when the context menu is reopened. Actual Results: Reopening the tray icon's context menu still shows the "On" entry, it was not replaced with "Off". Expected Results: It should show "Off" instead, and clicking it should show "On". In the Qt project's tray.cpp file, setContextMenu() is called again after the context menu was updated with new items. This is probably a bug in Qt 5.5.1 since the context menu does not show the new items unless setContextMenu() is called again. This happens on all desktop environments. -- You are receiving this mail because: You are watching all bug changes.