Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-61765

Linux QSystemTrayIcon context menu: inaccurate behavior, faulty functions & signals



    • Type: Bug
    • Status: Reported
    • Priority: P2: Important
    • Resolution: Unresolved
    • Affects Version/s: 5.8.0
    • Fix Version/s: None
    • Component/s: Other
    • Labels:
    • Environment:
      Ubuntu 16.04 LTS (Unity), Qt 5.8, 64bit

      Ubuntu 16.10 (Unity), Qt 5.8, 64bit

      Kubuntu 16.10 (KDE), Qt 5.7, 64bit


      On some Linux platforms (see Environment) QSystemTrayIcon's context menu (QMenu) does not emit some signals and some slots & functions are not working (or are incorrect).

      1) contextMenu does not emit aboutToHide signal. doesn't matter if closed by triggering a menu action or by clicking outside of the menu (here is a related bug, older Qt)

      2) contextMenu slot hide() is not working. However, slot show() displays some kind of copy of the systray menu, it appears in the upper left corner of the screen. For the rest of the report I will reference to it as a ghost menu.

      3) contextMenu functions isVisible() / isHidden() says that menu is hidden, even though it is clearly visible and corrrectly displayed. However, if the ghost menu is displayed, functions  properly react to the ghost menu's state.

      4) contextMenu function move() is not working. However, it works with the ghost menu - moving it properly.

      5) contextMenu items signal hovered when hovering over QActions is not emitted. However, it is emitted if ghost menu is displayed and item is selected in the ghost menu.

      It looks like the context menu is not properly 'connected' with systray icon and is not reflecting it states/attributes, instead it is reflecting state of the unwanted ghost menu. Probably some other contextMenu functions are not working neither, the points stated above are just tested & confirmed examples.

      I tested all the stated bugs on Ubuntu and Kubuntu and they may appear on other platforms, too. However, my tip is that the bugs are specific for Unity and Plasma, because on both Unity and Plasma, Qt is using the Status Notifier protocol, so it may relate.


        No reviews matched the request. Check your Options in the drop-down menu of this sections header.



            • Assignee:
              richard Richard Moe Gustavsen
              filip Filip Happy
            • Votes:
              1 Vote for this issue
              6 Start watching this issue


              • Created:

                Gerrit Reviews

                There are no open Gerrit changes