Fix status icons in GNOME and Pantheon environments
This CL changes StatusIconLinuxDbus to send the icon as a file instead of as a DBus property. All of the StatusNotifierItem client libraries send icons as files, so some StatusNotifierHosts don't behave well when given an icon property since that codepath wasn't ever tested. gnome-shell-extension-appindicator doesn't scale property icons, but does scale file icons. wingpanel-indicator-ayatana (used on Pantheon) only supports file icons. There's no way using StatusNotifierWatcher to get information about specific StatusNotifierHosts. So the only way we can detect these two hosts is based on the desktop environment. To prevent race conditions involved with cleanup up the icon file, StatusIconLinuxDbus must be made ref-counted, which adds some unfortunate complexity. BUG=10034265 R=thestig Change-Id: I79db4b83f6ab49319069b11ab761bd23985eeba3 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1815055 Commit-Queue: Thomas Anderson <thomasanderson@chromium.org> Reviewed-by:Lei Zhang <thestig@chromium.org> Cr-Commit-Position: refs/heads/master@{#699008}
Showing
This diff is collapsed.
Please register or sign in to comment