** Description changed: [Impact] Ubuntu AppIndicators can show two tray icons for one StatusNotifierItem object. Automatic discovery and explicit registration can use different identifiers (a well-known service name versus the unique D-Bus connection and object path), so the registry does not recognize the duplicate. Observed on Ubuntu 24.04 with gnome-shell-extension-appindicator 58-1ubuntu24.04.1 and GNOME Shell 46. One application had two registered tray entries pointing to the same D-Bus owner and object path. Both - entries exposed the same menu and state. No application configuration is - required to diagnose this. + entries exposed the same menu and state. [Upstream] Related report: https://github.com/ubuntu/gnome-shell-extension-appindicator/issues/665 Proposed fix: https://github.com/ubuntu/gnome-shell-extension-appindicator/pull/679 The proposed change keys the internal registry by resolved unique owner plus object path, while retaining the original proxy destination and advertised service. This is a request to consider an SRU for Noble after upstream review and package validation; it is not a claim that the patch is already accepted or SRU-verified. [Test Plan] - 1. Use a test StatusNotifierItem with a well-known bus name and an exported object. All identifiers below are synthetic. + 1. Use a test StatusNotifierItem with a well-known bus name and an exported object. 2. Let discovery register that object through an alternate service name, then explicitly register it through its normal service name or object path. Reverse the order and also exercise overlapping registration. 3. Verify that RegisteredStatusNotifierItems represents the object once and that the panel displays one working icon. 4. Verify separate objects on the same connection and objects on separate connections remain separate. 5. Verify explicit re-registration refreshes the existing icon; exit and restart the test application, including rapid reuse of its well-known name. 6. Disable and re-enable the extension while the test application remains running. Verify discovery restores one icon and its menu/status remain usable. 7. Verify delayed destruction and startup completion cannot remove or publish retired entries, and failed registration can be retried. [Where problems could occur] All StatusNotifierItem registration paths share this registry. A regression could hide legitimate tray items, leave stale entries after an application restart, or affect menus if proxy routing is inadvertently changed. Testing must cover path-based, service-name, service/path, and standard SNI-name clients, along with multiple objects and owner changes. [Validation so far] The upstream patch passes 15 regression tests exercising the actual watcher and helper modules with desktop/D-Bus test doubles. The initial regression suite demonstrated failures on the unpatched source. Three existing GJS menu tests and ESLint checks pass. A local Noble backport passes syntax/lint checks and is active without extension errors. Re-registering the same live object alternately through its unique owner and well-known service name preserved exactly one registered item, with the application process unchanged during verification. No Ubuntu archive test package has been verified. Activation caveat: the application aborted in its Avalonia/Tmds tray code on an unhandled D-Bus UnknownMethod reply while the watcher interface was temporarily unavailable during extension handover. The application was restored successfully before the registration checks. Seamless hot switching is not verified. - - No credentials, IP addresses, application configuration, - subscription/proxy details, or raw machine logs are attached.
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2170414 Title: Duplicate tray icons when discovery and registration use different names for one StatusNotifierItem To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/gnome-shell-extension-appindicator/+bug/2170414/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
