This is an automated email from the git hooks/post-receive script. x2go pushed a change to branch master in repository pyhoca-gui. from 8c57581 debian/control: Drop python-notify alternative dependency, rely on the GTK-3 Notify GObject. new 5414106 Work around 'AT-SPI: Could not obtain desktop path or name' error messages by disabling the AT bridge. new 51256ab pyhoca/wxgui/printingprefs.py: Set _icons_location in constructor, not outside of the class definition. (It fails to set a local icon path if PyHoca-GUI runs in PYHOCAGUI_DEVELOPMENT mode). new 426085d Don't set minimum height for wxSpinCtrl widgets. Leave min-sizing to GTK+ as it might know better what minimum size is needed. This resolves Gtk-CRITICAL: for_size smaller than min-size (28 < 32) while measuring gadget (node entry, owner GtkSpinButton) new ee25855 Don't set minimum width for wxSpinCtrl widgets. Leave min-sizing to Gtk+ as it might know better what minimum width is needed. This resolves Gtk-CRITICAL: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkSpinButton new a2e9edd Properly scale BrowseButton widgets (fixes buttons being too small). new 8db96bc Reduce 'Gtk-Critical: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkRadioButton' error message. Unfortunately, some of them left when entering profile manager. new bebe235 Introduce stdout_NotifierPopup fallback class for situations where no desktop notification service is running. new 3c9cad9 debian/control: Raise versioned dependency on python-x2go to (>= 0.6.1.0). new 069f722 pyhoca-gui.spec: Raise versioned dependency on python-x2go to (>= 0.6.1.0). new 21f711d Add support for X2Go KDrive graphical Xsession backend. The 10 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Summary of changes: debian/changelog | 24 +++++++++ debian/control | 2 +- pyhoca-gui | 3 ++ pyhoca-gui.spec | 2 +- pyhoca/wxgui/frontend.py | 6 ++- pyhoca/wxgui/notify.py | 110 +++++++++++++++++++++++++++++++++++++++++ pyhoca/wxgui/printingprefs.py | 4 +- pyhoca/wxgui/profilemanager.py | 72 +++++++++++++++++++++------ 8 files changed, 203 insertions(+), 20 deletions(-) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/pyhoca-gui.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository pyhoca-gui. commit 541410685084b32e92a3eae56bc170c3e4537b97 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Tue Jul 23 15:14:56 2019 +0200 Work around 'AT-SPI: Could not obtain desktop path or name' error messages by disabling the AT bridge. --- debian/changelog | 3 +++ pyhoca-gui | 3 +++ 2 files changed, 6 insertions(+) diff --git a/debian/changelog b/debian/changelog index 0e2f33d..62342d0 100644 --- a/debian/changelog +++ b/debian/changelog @@ -8,6 +8,9 @@ pyhoca-gui (0.5.0.9-0x2go1) UNRELEASED; urgency=medium Project-Id-Version. [ Mike Gabriel ] + * New upstream version (0.5.0.9): + - Work around 'AT-SPI: Could not obtain desktop path or name' error messages + by disabling the AT bridge. * debian/control: + Drop python-notify alternative dependency, rely on the GTK-3 Notify GObject. diff --git a/pyhoca-gui b/pyhoca-gui index 387f1c1..879376d 100755 --- a/pyhoca-gui +++ b/pyhoca-gui @@ -25,6 +25,9 @@ try: wxversion.select(['3.0', '2.9', '2.8']) except: pass +import os +os.environ['NO_AT_BRIDGE'] = '1' + PROG_NAME = "PyHoca-GUI" try: from pyhoca.wxgui.mswin_logging import setup_mswinlog -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/pyhoca-gui.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository pyhoca-gui. commit 426085d3bd103fa4eef6ca6a11aff4bec752b381 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Tue Jul 23 17:04:09 2019 +0200 Don't set minimum height for wxSpinCtrl widgets. Leave min-sizing to GTK+ as it might know better what minimum size is needed. This resolves Gtk-CRITICAL: for_size smaller than min-size (28 < 32) while measuring gadget (node entry, owner GtkSpinButton) --- debian/changelog | 4 ++++ pyhoca/wxgui/profilemanager.py | 14 +++++++------- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/debian/changelog b/debian/changelog index 547d366..1953a19 100644 --- a/debian/changelog +++ b/debian/changelog @@ -14,6 +14,10 @@ pyhoca-gui (0.5.0.9-0x2go1) UNRELEASED; urgency=medium - pyhoca/wxgui/printingprefs.py: Set _icons_location in constructor, not outside of the class definition. (It fails to set a local icon path if PyHoca-GUI runs in PYHOCAGUI_DEVELOPMENT mode). + - Don't set minimum height for wxSpinCtrl widgets. Leave min-sizing to + GTK+ as it might know better what minimum size is needed. This resolves + Gtk-CRITICAL: for_size smaller than min-size (28 < 32) while measuring + gadget (node entry, owner GtkSpinButton) * debian/control: + Drop python-notify alternative dependency, rely on the GTK-3 Notify GObject. diff --git a/pyhoca/wxgui/profilemanager.py b/pyhoca/wxgui/profilemanager.py index 753c0c7..18c72e5 100644 --- a/pyhoca/wxgui/profilemanager.py +++ b/pyhoca/wxgui/profilemanager.py @@ -510,7 +510,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.HostLabel.SetMinSize((-1, 16)) self.Host.SetMinSize((220, self._textfield_height)) self.SSHPortLabel.SetMinSize((-1, 16)) - self.SSHPort.SetMinSize((65, self._textfield_height)) + self.SSHPort.SetMinSize((65, -1)) self.SSHKeyFileLabel.SetMinSize((-1, 16)) self.SSHKeyFile.SetMinSize((220, self._textfield_height)) self.SSHProxyUserLabel.SetMinSize((-1, 16)) @@ -518,7 +518,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.SSHProxyHostLabel.SetMinSize((-1, 16)) self.SSHProxyHost.SetMinSize((220, self._textfield_height)) self.SSHProxyPortLabel.SetMinSize((-1, 16)) - self.SSHProxyPort.SetMinSize((65, self._textfield_height)) + self.SSHProxyPort.SetMinSize((65, -1)) self.SSHProxyKeyFile.SetMinSize((220, self._textfield_height)) if X2GOCLIENT_OS == 'Windows': self.LinkSpeed.SetMinSize((425, self._textfield_height)) @@ -533,13 +533,13 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.Compression.SetMinSize((180, self._textfield_height)) self.Compression.SetSelection(0) self.ImageQualityLabel.SetMinSize((120, 16)) - self.ImageQuality.SetMinSize((180, self._textfield_height)) + self.ImageQuality.SetMinSize((180, -1)) self.DisplayTypeFullscreen.SetMinSize((-1, self._textfield_height)) self.DisplayTypeMaximize.SetMinSize((-1, self._textfield_height)) - self.ScreenWidth.SetMinSize((60, self._textfield_height)) - self.ScreenHeight.SetMinSize((60, self._textfield_height)) + self.ScreenWidth.SetMinSize((60, -1)) + self.ScreenHeight.SetMinSize((60, -1)) self.SetDisplayDPI.SetMinSize((-1, self._textfield_height)) - self.DisplayDPI.SetMinSize((60, self._textfield_height)) + self.DisplayDPI.SetMinSize((60, -1)) self.EnableXinerama.SetMinSize((-1, self._textfield_height)) self.DontSetKeyboard.SetMinSize((-1, self._textfield_height)) self.AutoSetKeyboard.SetMinSize((-1, self._textfield_height)) @@ -555,7 +555,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.Arts.SetMinSize((-1, self._textfield_height)) self.Esd.SetMinSize((-1, self._textfield_height)) self.DefaultSoundPort.SetMinSize((-1, self._textfield_height)) - self.SoundPort.SetMinSize((-1, self._textfield_height)) + self.SoundPort.SetMinSize((-1, -1)) self.ClientSidePrinting.SetMinSize((-1, self._textfield_height)) self.SharedFolderPath.SetMinSize((220, self._textfield_height)) self.SharedFoldersList.SetMinSize((-1, 90)) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/pyhoca-gui.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository pyhoca-gui. commit ee25855a56e06c21c9649e53c8be946b6834ddf0 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Tue Jul 23 17:51:27 2019 +0200 Don't set minimum width for wxSpinCtrl widgets. Leave min-sizing to Gtk+ as it might know better what minimum width is needed. This resolves Gtk-CRITICAL: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkSpinButton --- debian/changelog | 4 ++++ pyhoca/wxgui/profilemanager.py | 12 ++++++------ 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/debian/changelog b/debian/changelog index 1953a19..d0beffc 100644 --- a/debian/changelog +++ b/debian/changelog @@ -18,6 +18,10 @@ pyhoca-gui (0.5.0.9-0x2go1) UNRELEASED; urgency=medium GTK+ as it might know better what minimum size is needed. This resolves Gtk-CRITICAL: for_size smaller than min-size (28 < 32) while measuring gadget (node entry, owner GtkSpinButton) + - Don't set minimum width for wxSpinCtrl widgets. Leave min-sizing to + Gtk+ as it might know better what minimum width is needed. This resolves + Gtk-CRITICAL: gtk_box_gadget_distribute: assertion 'size >= 0' failed in + GtkSpinButton * debian/control: + Drop python-notify alternative dependency, rely on the GTK-3 Notify GObject. diff --git a/pyhoca/wxgui/profilemanager.py b/pyhoca/wxgui/profilemanager.py index 18c72e5..17cce55 100644 --- a/pyhoca/wxgui/profilemanager.py +++ b/pyhoca/wxgui/profilemanager.py @@ -510,7 +510,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.HostLabel.SetMinSize((-1, 16)) self.Host.SetMinSize((220, self._textfield_height)) self.SSHPortLabel.SetMinSize((-1, 16)) - self.SSHPort.SetMinSize((65, -1)) + self.SSHPort.SetMinSize((-1, -1)) self.SSHKeyFileLabel.SetMinSize((-1, 16)) self.SSHKeyFile.SetMinSize((220, self._textfield_height)) self.SSHProxyUserLabel.SetMinSize((-1, 16)) @@ -518,7 +518,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.SSHProxyHostLabel.SetMinSize((-1, 16)) self.SSHProxyHost.SetMinSize((220, self._textfield_height)) self.SSHProxyPortLabel.SetMinSize((-1, 16)) - self.SSHProxyPort.SetMinSize((65, -1)) + self.SSHProxyPort.SetMinSize((-1, -1)) self.SSHProxyKeyFile.SetMinSize((220, self._textfield_height)) if X2GOCLIENT_OS == 'Windows': self.LinkSpeed.SetMinSize((425, self._textfield_height)) @@ -533,13 +533,13 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.Compression.SetMinSize((180, self._textfield_height)) self.Compression.SetSelection(0) self.ImageQualityLabel.SetMinSize((120, 16)) - self.ImageQuality.SetMinSize((180, -1)) + self.ImageQuality.SetMinSize((-1, -1)) self.DisplayTypeFullscreen.SetMinSize((-1, self._textfield_height)) self.DisplayTypeMaximize.SetMinSize((-1, self._textfield_height)) - self.ScreenWidth.SetMinSize((60, -1)) - self.ScreenHeight.SetMinSize((60, -1)) + self.ScreenWidth.SetMinSize((-1, -1)) + self.ScreenHeight.SetMinSize((-1, -1)) self.SetDisplayDPI.SetMinSize((-1, self._textfield_height)) - self.DisplayDPI.SetMinSize((60, -1)) + self.DisplayDPI.SetMinSize((-1, -1)) self.EnableXinerama.SetMinSize((-1, self._textfield_height)) self.DontSetKeyboard.SetMinSize((-1, self._textfield_height)) self.AutoSetKeyboard.SetMinSize((-1, self._textfield_height)) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/pyhoca-gui.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository pyhoca-gui. commit a2e9edda7726feae24408c2b35a0a6364b89d7a4 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Tue Jul 23 18:33:40 2019 +0200 Properly scale BrowseButton widgets (fixes buttons being too small). --- debian/changelog | 1 + pyhoca/wxgui/profilemanager.py | 3 +++ 2 files changed, 4 insertions(+) diff --git a/debian/changelog b/debian/changelog index d0beffc..390ca45 100644 --- a/debian/changelog +++ b/debian/changelog @@ -22,6 +22,7 @@ pyhoca-gui (0.5.0.9-0x2go1) UNRELEASED; urgency=medium Gtk+ as it might know better what minimum width is needed. This resolves Gtk-CRITICAL: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkSpinButton + - Properly scale BrowseButton widgets (fixes buttons being too small). * debian/control: + Drop python-notify alternative dependency, rely on the GTK-3 Notify GObject. diff --git a/pyhoca/wxgui/profilemanager.py b/pyhoca/wxgui/profilemanager.py index 17cce55..9568c86 100644 --- a/pyhoca/wxgui/profilemanager.py +++ b/pyhoca/wxgui/profilemanager.py @@ -513,6 +513,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.SSHPort.SetMinSize((-1, -1)) self.SSHKeyFileLabel.SetMinSize((-1, 16)) self.SSHKeyFile.SetMinSize((220, self._textfield_height)) + self.SSHKeyFileBrowseButton.SetMinSize((-1, -1)) self.SSHProxyUserLabel.SetMinSize((-1, 16)) self.SSHProxyUser.SetMinSize((220, self._textfield_height)) self.SSHProxyHostLabel.SetMinSize((-1, 16)) @@ -520,6 +521,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.SSHProxyPortLabel.SetMinSize((-1, 16)) self.SSHProxyPort.SetMinSize((-1, -1)) self.SSHProxyKeyFile.SetMinSize((220, self._textfield_height)) + self.SSHProxyKeyFileBrowseButton.SetMinSize((-1, -1)) if X2GOCLIENT_OS == 'Windows': self.LinkSpeed.SetMinSize((425, self._textfield_height)) else: @@ -558,6 +560,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.SoundPort.SetMinSize((-1, -1)) self.ClientSidePrinting.SetMinSize((-1, self._textfield_height)) self.SharedFolderPath.SetMinSize((220, self._textfield_height)) + self.SharedFolderPathBrowseButton.SetMinSize((-1, -1)) self.SharedFoldersList.SetMinSize((-1, 90)) self.ClientEncoding.SetMinSize((140, self._textfield_height)) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/pyhoca-gui.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository pyhoca-gui. commit 8db96bcbdb2fa771d59d3765b8164e983bfeeb4f Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Tue Jul 23 20:47:39 2019 +0200 Reduce 'Gtk-Critical: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkRadioButton' error message. Unfortunately, some of them left when entering profile manager. --- debian/changelog | 3 +++ pyhoca/wxgui/profilemanager.py | 17 +++++++++-------- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/debian/changelog b/debian/changelog index 390ca45..1a02b1c 100644 --- a/debian/changelog +++ b/debian/changelog @@ -23,6 +23,9 @@ pyhoca-gui (0.5.0.9-0x2go1) UNRELEASED; urgency=medium Gtk-CRITICAL: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkSpinButton - Properly scale BrowseButton widgets (fixes buttons being too small). + - Reduce 'Gtk-Critical: gtk_box_gadget_distribute: assertion 'size >= 0' + failed in GtkRadioButton' error message. Unfortunately, some of them + left when entering profile manager. * debian/control: + Drop python-notify alternative dependency, rely on the GTK-3 Notify GObject. diff --git a/pyhoca/wxgui/profilemanager.py b/pyhoca/wxgui/profilemanager.py index 9568c86..94d052d 100644 --- a/pyhoca/wxgui/profilemanager.py +++ b/pyhoca/wxgui/profilemanager.py @@ -536,16 +536,17 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.Compression.SetSelection(0) self.ImageQualityLabel.SetMinSize((120, 16)) self.ImageQuality.SetMinSize((-1, -1)) - self.DisplayTypeFullscreen.SetMinSize((-1, self._textfield_height)) - self.DisplayTypeMaximize.SetMinSize((-1, self._textfield_height)) + self.DisplayTypeFullscreen.SetMinSize((-1, -1)) + self.DisplayTypeMaximize.SetMinSize((-1, -1)) + self.DisplayTypeCustom.SetMinSize((-1, -1)) self.ScreenWidth.SetMinSize((-1, -1)) self.ScreenHeight.SetMinSize((-1, -1)) self.SetDisplayDPI.SetMinSize((-1, self._textfield_height)) self.DisplayDPI.SetMinSize((-1, -1)) self.EnableXinerama.SetMinSize((-1, self._textfield_height)) - self.DontSetKeyboard.SetMinSize((-1, self._textfield_height)) - self.AutoSetKeyboard.SetMinSize((-1, self._textfield_height)) - self.CustomSetKeyboard.SetMinSize((-1, self._textfield_height)) + self.DontSetKeyboard.SetMinSize((-1, -1)) + self.AutoSetKeyboard.SetMinSize((-1, -1)) + self.CustomSetKeyboard.SetMinSize((-1, -1)) self.ClipboardMode.SetMinSize((220, -1)) self.KeyboardModelLabel.SetMinSize((-1, 16)) self.KeyboardModel.SetMinSize((-1, self._textfield_height)) @@ -553,9 +554,9 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.KeyboardLayout.SetMinSize((-1, self._textfield_height)) self.KeyboardVariantLabel.SetMinSize((-1, 16)) self.KeyboardVariant.SetMinSize((-1, self._textfield_height)) - self.PulseAudio.SetMinSize((-1, self._textfield_height)) - self.Arts.SetMinSize((-1, self._textfield_height)) - self.Esd.SetMinSize((-1, self._textfield_height)) + self.PulseAudio.SetMinSize((-1, -1)) + self.Arts.SetMinSize((-1, -1)) + self.Esd.SetMinSize((-1, -1)) self.DefaultSoundPort.SetMinSize((-1, self._textfield_height)) self.SoundPort.SetMinSize((-1, -1)) self.ClientSidePrinting.SetMinSize((-1, self._textfield_height)) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/pyhoca-gui.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository pyhoca-gui. commit bebe2356a8b4542bc91dcff18e733cc74059848b Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Tue Jul 23 21:15:57 2019 +0200 Introduce stdout_NotifierPopup fallback class for situations where no desktop notification service is running. --- debian/changelog | 2 + pyhoca/wxgui/frontend.py | 6 ++- pyhoca/wxgui/notify.py | 110 +++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 117 insertions(+), 1 deletion(-) diff --git a/debian/changelog b/debian/changelog index 1a02b1c..3c19d30 100644 --- a/debian/changelog +++ b/debian/changelog @@ -26,6 +26,8 @@ pyhoca-gui (0.5.0.9-0x2go1) UNRELEASED; urgency=medium - Reduce 'Gtk-Critical: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkRadioButton' error message. Unfortunately, some of them left when entering profile manager. + - Introduce stdout_NotifierPopup fallback class for situations where no + desktop notification service is running. * debian/control: + Drop python-notify alternative dependency, rely on the GTK-3 Notify GObject. diff --git a/pyhoca/wxgui/frontend.py b/pyhoca/wxgui/frontend.py index 8059182..46edfb8 100644 --- a/pyhoca/wxgui/frontend.py +++ b/pyhoca/wxgui/frontend.py @@ -323,7 +323,11 @@ class PyHocaGUI(wx.App, x2go.X2GoClient): self.taskbar.Bind(wx.EVT_TASKBAR_LEFT_DOWN, self.taskbar.CreateSessionManagerPopupMenu) if x2go.X2GOCLIENT_OS in ('Linux', 'Mac'): - self.notifier = notify.libnotify_NotifierPopup(self) + if notify.notification_service_available(): + self.notifier = notify.libnotify_NotifierPopup(self) + else: + self._pyhoca_logger('no desktop notification service running, using stdout notifier', loglevel=x2go.log.loglevel_WARN, ) + self.notifier = notify.stdout_NotifierPopup(self) if x2go.X2GOCLIENT_OS in ('Windows'): self.notifier = notify.showballoon_NotifierPopup(self.about) diff --git a/pyhoca/wxgui/notify.py b/pyhoca/wxgui/notify.py index 56bd2bf..7431915 100644 --- a/pyhoca/wxgui/notify.py +++ b/pyhoca/wxgui/notify.py @@ -38,6 +38,116 @@ import x2go.utils as utils class NotSupportedException(exceptions.StandardError): pass class PyHocaNotificationException(exceptions.StandardError): pass +def notification_service_available(): + return _Notify.get_server_info()[0] + +class stdout_NotifierPopup(object): + """\ + L{PyHocaGUI} stdout notifications, used when no desktop notification service is available. + + """ + title = {} + text = {} + icon = {} + timeout = {} + + def __init__(self, _PyHocaGUI): + """\ + Notifier popup (constructor). + + @param _PyHocaGUI: main application instance + @type _PyHocaGUI: C{obj} + + """ + self._PyHocaGUI = _PyHocaGUI + self._pyhoca_logger = self._PyHocaGUI._pyhoca_logger + + def prepare(self, context, title=None, text=None, icon=None, timeout=None): + """\ + Prepare a notification that gets sent to stdout later (by the L{send()} method). + + Use C{context} as a unique identifier. When sending the notification later, C{context} + will unequivocally map to the notification content that shall get sent. + + @param context: a unique identifier for this notification preparation + @type context: C{str} + @param title: notification title + @type title: C{str} + @param text: notification text + @type text: C{str} + @param icon: icon name for an icon that appears with the notification + @type icon: C{str} + @param timeout: let notification disappear after C{<timeout>} milliseconds + @type timeout: C{int} + + """ + if title is not None: + self.title[context] = title + if text is not None: + self.text[context] = text + if icon is not None: + self.icon[context] = icon + if timeout is not None: + self.timeout[context] = timeout + + def send(self, title=None, text=None, context=None, icon=None, timeout=8000): + """\ + Send notifications directly to stdout (or use a prepared notification). + + @param title: notification title + @type title: C{str} + @param text: notification text + @type text: C{str} + @param context: an identifier that refers to a prepared notification + @type context: C{str} + @param icon: icon name for an icon that appears with the notification + @type icon: C{str} + @param timeout: let notification disappear after C{<timeout>} milliseconds + @type timeout: C{int} + + @raise PyHocaNotificationException: if notification failed + + """ + if context is not None: + try: + title = self.title[context] + del self.title[context] + except KeyError: + pass + try: + text = self.text[context] + del self.text[context] + except KeyError: + pass + try: + icon = self.icon[context] + del self.icon[context] + except KeyError: + pass + try: + timeout = self.timeout[context] + del self.timeout[context] + except KeyError: + pass + + if title and text: + self._pyhoca_logger('[%s] %s' % (title.encode(utils.get_encoding()), text.encode(utils.get_encoding())), loglevel=log.loglevel_NOTICE) + + def Close(self): + """\ + Provide a C{Close()} method which does nothing. + + """ + pass + + def Destroy(self): + """\ + Provide a C{Destroy()} method which does nothing. + + """ + pass + + class libnotify_NotifierPopup(object): """\ L{PyHocaGUI} notification utilizing C{libnotify}, used on Linux/Unix OS. -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/pyhoca-gui.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository pyhoca-gui. commit 069f7223b1984f33106e9a09f43623c2532cd22d Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Tue Jul 23 21:51:39 2019 +0200 pyhoca-gui.spec: Raise versioned dependency on python-x2go to (>= 0.6.1.0). --- debian/changelog | 2 ++ pyhoca-gui.spec | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/debian/changelog b/debian/changelog index e6ec746..304376b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -32,6 +32,8 @@ pyhoca-gui (0.5.0.9-0x2go1) UNRELEASED; urgency=medium + Drop python-notify alternative dependency, rely on the GTK-3 Notify GObject. + Raise versioned dependency on python-x2go to (>= 0.6.1.0). + * pyhoca-gui.spec: + + Raise versioned dependency on python-x2go to (>= 0.6.1.0). -- X2Go Release Manager <git-admin@x2go.org> Tue, 05 Feb 2019 07:19:24 +0100 diff --git a/pyhoca-gui.spec b/pyhoca-gui.spec index 5db894d..ec0a12b 100644 --- a/pyhoca-gui.spec +++ b/pyhoca-gui.spec @@ -27,7 +27,7 @@ BuildRequires: intltool BuildRequires: python-rpm-macros %endif Requires: python-setproctitle -Requires: python-x2go >= 0.5.0.0 +Requires: python-x2go >= 0.6.1.0 %if 0%{?suse_version} %if 0%{?suse_version} >= 1230 Requires: python-gobject -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/pyhoca-gui.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository pyhoca-gui. commit 21f711d3c84f58dd7c768acfbe72178d4da8b1fe Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Tue Jul 23 21:52:19 2019 +0200 Add support for X2Go KDrive graphical Xsession backend. --- debian/changelog | 1 + pyhoca/wxgui/profilemanager.py | 38 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+) diff --git a/debian/changelog b/debian/changelog index 304376b..734adbb 100644 --- a/debian/changelog +++ b/debian/changelog @@ -28,6 +28,7 @@ pyhoca-gui (0.5.0.9-0x2go1) UNRELEASED; urgency=medium left when entering profile manager. - Introduce stdout_NotifierPopup fallback class for situations where no desktop notification service is running. + - Add support for X2Go KDrive graphical Xsession backend. * debian/control: + Drop python-notify alternative dependency, rely on the GTK-3 Notify GObject. diff --git a/pyhoca/wxgui/profilemanager.py b/pyhoca/wxgui/profilemanager.py index 94d052d..1cad7ed 100644 --- a/pyhoca/wxgui/profilemanager.py +++ b/pyhoca/wxgui/profilemanager.py @@ -261,6 +261,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.AutoConnectSessionProfile = wx.CheckBox(self.tab_Session, -1, _(u"Login automatically after %s has started (needs --auto-connect)") % self._PyHocaGUI.appname) self.SessionTypeLabel = wx.StaticText(self.tab_Session, -1, _(u"Type")+": ") self.SessionType = wx.ComboBox(self.tab_Session, -1, choices=self.sessionChoices.values(), style=wx.CB_DROPDOWN|wx.CB_READONLY) + self.SessionTypeKDrive = wx.CheckBox(self.tab_Session, -1, _(u"Use X2Go KDrive graphical backend (experimental)")) self.ApplicationLabel = wx.StaticText(self.tab_Session, -1, _(u"Application")+": ") self.Application = wx.ComboBox(self.tab_Session, -1, choices=self.applicationChoices.values(), style=wx.CB_DROPDOWN|wx.CB_READONLY) self.CommandLabel = wx.StaticText(self.tab_Session, -1, _(u"Custom command")+": ") @@ -625,6 +626,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog): sizer_2_1_1.Add(self.RDPOptions, pos=(7,1), flag=wx.EXPAND, ) sizer_2_1_1.Add(self.RootlessSession, pos=(8,0), span=(1,2), flag=wx.EXPAND, ) sizer_2_1_1.Add(self.UsePublishedApplications, pos=(9,0), span=(1,2), flag=wx.EXPAND, ) + sizer_2_1_1.Add(self.SessionTypeKDrive, pos=(10,0), span=(1,2), flag=wx.EXPAND, ) sizer_2_1.Add(sizer_2_1_1, flag=wx.EXPAND|wx.ALL, border=7) sizer_2.Add(sizer_2_1, proportion=1, flag=wx.EXPAND|wx.ALL, border=5) self.tab_Session.SetSizerAndFit(sizer_2) @@ -979,6 +981,8 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.UsePublishedApplications.SetValue(_published) self.Application.SetItems(self.applicationChoices.values()) + self.SessionTypeKDrive.Enable(True) + self.SessionTypeKDrive.SetValue(self.profile_config['kdrive']) # XFCE4 has been renamed to XFCE for 0.2.1.0 if _command == "XFCE4": _command = "XFCE" if _command == 'RDP' and self.profile_config['directrdp']: @@ -990,6 +994,8 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.Command.SetValue('') self.AutoStartSession.Enable(False) self.AutoStartSession.SetValue(False) + self.SessionTypeKDrive.Enable(False) + self.SessionTypeKDrive.SetValue(False) elif _command in self.sessionChoices.keys(): self.SessionType.SetValue(self.sessionChoices[_command]) self.Application.SetValue('') @@ -1006,6 +1012,8 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.UsePublishedApplications.SetValue(False) self.UsePublishedApplications.Enable(False) self.RootlessSession.SetValue(True) + self.SessionTypeKDrive.Enable(False) + self.SessionTypeKDrive.SetValue(False) elif not _command and _published: self.SessionType.SetValue(self.sessionChoices['PUBLISHEDAPPLICATIONS']) self.UsePublishedApplications.Enable(False) @@ -1014,6 +1022,8 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.Command.SetValue('') self._last_pubapp_value = True self.RootlessSession.SetValue(True) + self.SessionTypeKDrive.Enable(False) + self.SessionTypeKDrive.SetValue(False) else: self.SessionType.SetValue(self.sessionChoices['CUSTOM']) self.UsePublishedApplications.SetValue(False) @@ -1021,6 +1031,8 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.Command.Enable(True) self.Command.SetValue(_command) self.RootlessSession.Enable(True) + self.SessionTypeKDrive.Enable(False) + self.SessionTypeKDrive.SetValue(False) if _command == 'XDMCP': self.XDMCPServerLabel.Enable(True) @@ -1110,6 +1122,8 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.UsePublishedApplications.Enable(False) self.RootlessSession.SetValue(False) self.RootlessSession.Enable(False) + self.SessionTypeKDrive.Enable(False) + self.SessionTypeKDrive.SetValue(False) else: self.disable_DirectRDP() self._toggle_SetKeyboard() @@ -1122,6 +1136,9 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.UsePublishedApplications.Enable(False) self.RootlessSession.SetValue(False) self.RootlessSession.Enable(False) + self.SessionTypeKDrive.Enable(False) + self.SessionTypeKDrive.SetValue(False) + else: self.disable_DirectRDP() self._toggle_SetKeyboard() @@ -1140,6 +1157,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.Esd.Enable(True) self.DefaultSoundPort.Enable(True) self._toggle_DefaultSoundPort() + else: self.EnableSound.SetValue(False) self.EnableSound.Enable(False) @@ -1341,6 +1359,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.profile_config['name'] = self.ProfileName.GetValue() self.profile_config['setsessiontitle'] = self.SetSessionWindowTitle.GetValue() _session_type = [ s for s in self.sessionChoices.keys() if self.sessionChoices[s] == self.SessionType.GetValue() ][0] + self.profile_config['kdrive'] = self.SessionTypeKDrive.GetValue() if self.UseDefaultSessionWindowTitle.GetValue(): self.profile_config['sessiontitle'] = '' else: @@ -1741,6 +1760,11 @@ class PyHocaGUI_ProfileManager(wx.Dialog): if _session_type in defaults.X2GO_DESKTOPSESSIONS.keys(): self.RootlessSession.SetValue(False) self.RootlessSession.Enable(False) + self.SessionTypeKDrive.Enable(True) + if _session_type in defaults.X2GO_DESKTOPSESSIONS_KDRIVE_PREFERRED.keys(): + self.SessionTypeKDrive.SetValue(True) + else: + self.SessionTypeKDrive.SetValue(False) if _session_type == 'APPLICATION': self.ApplicationLabel.Enable(True) @@ -1751,6 +1775,8 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.Application.SetValue(self.applicationChoices['TERMINAL']) self.RootlessSession.SetValue(True) self.RootlessSession.Enable(False) + self.SessionTypeKDrive.Enable(False) + self.SessionTypeKDrive.SetValue(False) else: self.ApplicationLabel.Enable(False) self.Application.Enable(False) @@ -1764,6 +1790,8 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.Command.SetValue('xterm') self.RootlessSession.SetValue(True) self.RootlessSession.Enable(True) + self.SessionTypeKDrive.Enable(True) + self.SessionTypeKDrive.SetValue(False) else: self.CommandLabel.Enable(False) self.Command.Enable(False) @@ -1775,6 +1803,8 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.UsePublishedApplications.Enable(False) self.RootlessSession.SetValue(False) self.RootlessSession.Enable(False) + self.SessionTypeKDrive.Enable(True) + self.SessionTypeKDrive.SetValue(False) else: self.XDMCPServerLabel.Enable(False) self.XDMCPServer.Enable(False) @@ -1806,6 +1836,8 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.UsePublishedApplications.Enable(False) self.RootlessSession.SetValue(False) self.RootlessSession.Enable(False) + self.SessionTypeKDrive.Enable(False) + self.SessionTypeKDrive.SetValue(False) elif _session_type == 'RDP': self.profile_config_bak['rdpport'] = self.SSHPort.GetValue() self.profile_config_bak['directrdpsettings'] = self.RDPOptions.GetValue() @@ -1826,6 +1858,8 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.UsePublishedApplications.Enable(False) self.RootlessSession.SetValue(False) self.RootlessSession.Enable(False) + self.SessionTypeKDrive.Enable(False) + self.SessionTypeKDrive.SetValue(False) else: self.profile_config_bak['rdpport'] = self.SSHPort.GetValue() self.profile_config_bak['directrdpsettings'] = self.RDPOptions.GetValue() @@ -1856,6 +1890,8 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.Command.SetValue('') self.RootlessSession.SetValue(True) self.RootlessSession.Enable(False) + self.SessionTypeKDrive.Enable(False) + self.SessionTypeKDrive.SetValue(False) else: if self._last_pubapp_value is not None: self.UsePublishedApplications.SetValue(self._last_pubapp_value) @@ -1879,6 +1915,8 @@ class PyHocaGUI_ProfileManager(wx.Dialog): # shadow sessions are always desktop sessions self.RootlessSession.SetValue(True) self.RootlessSession.Enable(False) + self.SessionTypeKDrive.Enable(False) + self.SessionTypeKDrive.SetValue(False) # no sound available with SHADOW sessions self.EnableSound.SetValue(False) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/pyhoca-gui.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository pyhoca-gui. commit 3c9cad91c233a441da7d27474e0e335b963be970 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Tue Jul 23 21:51:12 2019 +0200 debian/control: Raise versioned dependency on python-x2go to (>= 0.6.1.0). --- debian/changelog | 1 + debian/control | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/debian/changelog b/debian/changelog index 3c19d30..e6ec746 100644 --- a/debian/changelog +++ b/debian/changelog @@ -31,6 +31,7 @@ pyhoca-gui (0.5.0.9-0x2go1) UNRELEASED; urgency=medium * debian/control: + Drop python-notify alternative dependency, rely on the GTK-3 Notify GObject. + + Raise versioned dependency on python-x2go to (>= 0.6.1.0). -- X2Go Release Manager <git-admin@x2go.org> Tue, 05 Feb 2019 07:19:24 +0100 diff --git a/debian/control b/debian/control index c06f2cd..6645142 100644 --- a/debian/control +++ b/debian/control @@ -25,7 +25,7 @@ Architecture: all Depends: ${misc:Depends}, python, - python-x2go (>=0.5.0.0-0~), + python-x2go (>=0.6.1.0-0~), python-argparse, python-gi, gir1.2-notify-0.7, -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/pyhoca-gui.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository pyhoca-gui. commit 51256abf339a14c095f84518581ca9a78a7f45d7 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Tue Jul 23 16:34:53 2019 +0200 pyhoca/wxgui/printingprefs.py: Set _icons_location in constructor, not outside of the class definition. (It fails to set a local icon path if PyHoca-GUI runs in PYHOCAGUI_DEVELOPMENT mode). --- debian/changelog | 3 +++ pyhoca/wxgui/printingprefs.py | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/debian/changelog b/debian/changelog index 62342d0..547d366 100644 --- a/debian/changelog +++ b/debian/changelog @@ -11,6 +11,9 @@ pyhoca-gui (0.5.0.9-0x2go1) UNRELEASED; urgency=medium * New upstream version (0.5.0.9): - Work around 'AT-SPI: Could not obtain desktop path or name' error messages by disabling the AT bridge. + - pyhoca/wxgui/printingprefs.py: Set _icons_location in constructor, not + outside of the class definition. (It fails to set a local icon path + if PyHoca-GUI runs in PYHOCAGUI_DEVELOPMENT mode). * debian/control: + Drop python-notify alternative dependency, rely on the GTK-3 Notify GObject. diff --git a/pyhoca/wxgui/printingprefs.py b/pyhoca/wxgui/printingprefs.py index 51c8166..0eaa3a2 100644 --- a/pyhoca/wxgui/printingprefs.py +++ b/pyhoca/wxgui/printingprefs.py @@ -37,8 +37,6 @@ else: import basepath -_icons_location = basepath.icons_basepath - class PyHocaGUI_PrintingPreferences(wx.Dialog): """\ The print preferences dialog box allowing the configuration and re-configuration @@ -62,6 +60,8 @@ class PyHocaGUI_PrintingPreferences(wx.Dialog): self._pyhoca_logger = self._PyHocaGUI._pyhoca_logger self.mode = mode + _icons_location = basepath.icons_basepath + self._pyhoca_logger('opening client printing configuration dialog, mode: ,,%s\'\'' % self.mode, loglevel=log.loglevel_INFO) if self.mode == 'edit': -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/pyhoca-gui.git