Philipp Hörist pushed to branch master at gajim / gajim
Commits:
4acf36c9 by Philipp Hörist at 2019-03-25T19:11:53Z
Add method to determine window manager
- - - - -
2 changed files:
- gajim/common/app.py
- gajim/common/const.py
Changes:
=====================================
gajim/common/app.py
=====================================
@@ -39,12 +39,14 @@ from distutils.version import LooseVersion as V
from collections import namedtuple
import nbxmpp
+from gi.repository import Gdk
import gajim
from gajim.common import config as c_config
from gajim.common import configpaths
from gajim.common import ged as ged_module
from gajim.common.i18n import LANG
+from gajim.common.const import Display
from gajim.common.contacts import LegacyContactsAPI
from gajim.common.events import Events
from gajim.common.types import NetworkEventsControllerT # pylint:
disable=unused-import
@@ -212,6 +214,18 @@ def is_installed(dependency):
def is_flatpak():
return gajim.IS_FLATPAK
+def is_display(display):
+ # XWayland reports as Display X11, so try with env var
+ is_wayland = os.environ.get('XDG_SESSION_TYPE') == 'wayland'
+ if is_wayland and display == Display.WAYLAND:
+ return True
+
+ default = Gdk.Display.get_default()
+ if default is None:
+ log('gajim').warning('Could not determine window manager')
+ return False
+ return default.__class__.__name__ == display.value
+
def disable_dependency(dependency):
_dependencies[dependency] = False
=====================================
gajim/common/const.py
=====================================
@@ -199,6 +199,7 @@ class MUCUser(IntEnum):
AFFILIATION = 3
AFFILIATION_TEXT = 4
+
@unique
class Trust(IntEnum):
UNTRUSTED = 0
@@ -206,6 +207,14 @@ class Trust(IntEnum):
BLIND = 2
VERIFIED = 3
+
+class Display(Enum):
+ X11 = 'X11Display'
+ WAYLAND = 'GdkWaylandDisplay'
+ WIN32 = 'GdkWin32Display'
+ QUARTZ = 'GdkQuartzDisplay'
+
+
EME_MESSAGES = {
'urn:xmpp:otr:0':
_('This message was encrypted with OTR '
View it on GitLab:
https://dev.gajim.org/gajim/gajim/commit/4acf36c97b79730b40ded2bbb050fd18eb3f3b23
--
View it on GitLab:
https://dev.gajim.org/gajim/gajim/commit/4acf36c97b79730b40ded2bbb050fd18eb3f3b23
You're receiving this email because of your account on dev.gajim.org.
_______________________________________________
Commits mailing list
[email protected]
https://lists.gajim.org/cgi-bin/listinfo/commits