summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCole Robinson <crobinso@redhat.com>2020-11-16 10:22:34 -0500
committerCole Robinson <crobinso@redhat.com>2020-11-16 11:11:19 -0500
commit7541065d0981c64c5baaf39575232c8fb9548e4d (patch)
tree6950bae571c694c304e99b39c0bb4fe58d128d3e
parentac7e6a09662d321841cddb0df4724b68156a5798 (diff)
downloadvirt-manager-7541065d0981c64c5baaf39575232c8fb9548e4d.tar.gz
systray: Appindicator tweaks
- Prefer ayatana if it's available, since that's the modern library - Fix some pylint and code coverage issues Signed-off-by: Cole Robinson <crobinso@redhat.com>
-rw-r--r--virtManager/systray.py24
1 files changed, 16 insertions, 8 deletions
diff --git a/virtManager/systray.py b/virtManager/systray.py
index 83a4aadc..cba06cc1 100644
--- a/virtManager/systray.py
+++ b/virtManager/systray.py
@@ -6,6 +6,7 @@
import os
+import gi
from gi.repository import Gio
from gi.repository import Gtk
@@ -16,16 +17,22 @@ from . import vmmenu
from .baseclass import vmmGObject
from .connmanager import vmmConnectionManager
-try:
- # pylint: disable=ungrouped-imports
- import gi
- gi.require_version('AppIndicator3', '0.1')
- from gi.repository import AppIndicator3
+
+# pylint: disable=ungrouped-imports
+# Prefer AyatantaAppIndicator3 which is the modern maintained
+# appindicator library.
+try: # pragma: no cover
+ # pylint: disable=no-name-in-module
+ gi.require_version('AyatanaAppIndicator3', '0.1')
+ from gi.repository import AyatanaAppIndicator3 as AppIndicator3
except Exception: # pragma: no cover
AppIndicator3 = None
- try:
- gi.require_version('AyatanaAppIndicator3', '0.1')
- from gi.repository import AyatanaAppIndicator3 as AppIndicator3
+
+if not AppIndicator3:
+ try: # pragma: no cover
+ # pylint: disable=no-name-in-module
+ gi.require_version('AppIndicator3', '0.1')
+ from gi.repository import AppIndicator3
except Exception: # pragma: no cover
AppIndicator3 = None
@@ -74,6 +81,7 @@ def _has_appindicator_dbus(): # pragma: no cover
_USING_APPINDICATOR = False
if AppIndicator3: # pragma: no cover
+ log.debug("Imported AppIndicator3=%s", AppIndicator3)
if not _has_appindicator_dbus():
log.debug("AppIndicator3 is available, but didn't "
"find any dbus watcher.")