Skip to content

Lazy init systemtray model

Summary: SystemTray model was created in constructor, delay the initialization and create it lazily.

The SystemTray::appletAdded signal is connected to both SystemTray's model and Container. Container must be connected first, because it sets some properties of newly added applet: visible to false and parent to the root item (container). If Container is connected second, then newly created applet ios added to the model and rendered, but immediately after that Container changes visibility to false.

BUG: 420993

Test Plan:

  1. Do not play anything (no Medial Player icon at all)
  2. Run Gwenview
  3. Check if Medial Player icon in hidden view is rendered correct.

Before change: Sometimes icon is not rendered, looks like invisible or fully transparent.

After change: Icon is rendered correctly.

Merge request reports