The branch, build-59a18b6e3b5d3f1dd8f07f26433d37fe5984a57d has been updated via b02efa5de765be1bf6338e55fd26915552a651d0 (commit) from 9f350b77bae6f7f772d8a079a8191b3f031a75a5 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: pyhoca/wxgui/logon.py | 106 ++++++++++++++++++++-------------------- pyhoca/wxgui/profilemanager.py | 4 +- 2 files changed, 54 insertions(+), 56 deletions(-) The diff of changes is: diff --git a/pyhoca/wxgui/logon.py b/pyhoca/wxgui/logon.py index fe88e5d..f5c4529 100644 --- a/pyhoca/wxgui/logon.py +++ b/pyhoca/wxgui/logon.py @@ -42,6 +42,7 @@ import wx.lib.scrolledpanel as scrolled import wx.lib.mixins.listctrl as listmix import time +import os import sys import platform import types @@ -51,6 +52,11 @@ import threading # PyHoca-GUI modules # ... NONE ... +if os.environ.has_key('DESKTOP_SESSION'): + WINDOW_MANAGER = os.environ['DESKTOP_SESSION'] +else: + WINDOW_MANAGER = 'generic' + class PyHocaGUI_DialogBoxPassword(wx.Dialog): """\ STILL UNDOCUMENTED @@ -67,41 +73,41 @@ class PyHocaGUI_DialogBoxPassword(wx.Dialog): self.current_profile_name = profile_name self.current_profile_config = self._PyHocaGUI.session_profiles.get_profile_config(profile_name) - if self.sshproxy_auth: - size=(450, 190) - else: - size=(210, 150) - - wx.Dialog.__init__(self, None, -1, profile_name, size=size) - - self.SetFont(wx.Font(8, wx.DEFAULT, wx.NORMAL, wx.NORMAL, 0, "")) + wx.Dialog.__init__(self, None, -1, profile_name) if self.sshproxy_auth: self.sshproxy_started = False self.SetTitle(_(u'%s (via %s)') % (profile_name, self.current_profile_config['sshproxyhost'])) - self.userLbl = wx.StaticText(self, wx.ID_ANY, _(u'Username')+':', size=(90, -1)) - self.userTxt = wx.TextCtrl(self, wx.ID_ANY, '', style=wx.TE_PROCESS_ENTER, size=(80, -1)) - self.passwordLbl = wx.StaticText(self, wx.ID_ANY, _(u'Password')+':', size=(90, -1)) - self.passwordTxt = wx.TextCtrl(self, wx.ID_ANY, '', style=wx.TE_PROCESS_ENTER|wx.TE_PASSWORD, size=(80, -1)) + self.userLbl = wx.StaticText(self, wx.ID_ANY, _(u'Username')+':', size=(-1, -1)) + self.userTxt = wx.TextCtrl(self, wx.ID_ANY, '', style=wx.TE_PROCESS_ENTER, size=(120, -1)) + self.passwordLbl = wx.StaticText(self, wx.ID_ANY, _(u'Password')+':', size=(-1, -1)) + self.passwordTxt = wx.TextCtrl(self, wx.ID_ANY, '', style=wx.TE_PROCESS_ENTER|wx.TE_PASSWORD, size=(120, -1)) self.passwordTxt.SetFocus() self.loginBtn = wx.Button(self, wx.ID_OK, _(u'Authenticate')) self.loginBtn.SetDefault() # widgets if self.sshproxy_auth: - self.headerLbl = wx.StaticText(self, wx.ID_ANY, _(u'Session login')+':', size=(200, -1)) - self.sshProxyHeaderLbl = wx.StaticText(self, wx.ID_ANY, _(u'SSH proxy server login')+':', size=(200, -1)) - self.headerLbl.SetFont(wx.Font(8, wx.DEFAULT, wx.NORMAL, wx.FONTWEIGHT_BOLD, 0, "")) - self.sshProxyHeaderLbl.SetFont(wx.Font(8, wx.DEFAULT, wx.NORMAL, wx.FONTWEIGHT_BOLD, 0, "")) - self.sshProxyUserLbl = wx.StaticText(self, wx.ID_ANY, _(u'Username')+':', size=(90, -1)) - self.sshProxyUserTxt = wx.TextCtrl(self, wx.ID_ANY, '', style=wx.TE_PROCESS_ENTER, size=(80, -1)) - self.sshProxyPasswordLbl = wx.StaticText(self, wx.ID_ANY, _(u'Password')+':', size=(90, -1)) - self.sshProxyPasswordTxt = wx.TextCtrl(self, wx.ID_ANY, '', style=wx.TE_PROCESS_ENTER|wx.TE_PASSWORD, size=(80, -1)) + self.sshProxyUserLbl = wx.StaticText(self, wx.ID_ANY, _(u'Username')+':', size=(-1, -1)) + self.sshProxyUserTxt = wx.TextCtrl(self, wx.ID_ANY, '', style=wx.TE_PROCESS_ENTER, size=(120, -1)) + self.sshProxyPasswordLbl = wx.StaticText(self, wx.ID_ANY, _(u'Password')+':', size=(-1, -1)) + self.sshProxyPasswordTxt = wx.TextCtrl(self, wx.ID_ANY, '', style=wx.TE_PROCESS_ENTER|wx.TE_PASSWORD, size=(120, -1)) self.sshProxyPasswordTxt.SetFocus() self.sshProxyLoginBtn = wx.Button(self, wx.ID_OK, _(u' Start SSH tunnel ')) self.sshProxyLoginBtn.SetDefault() + headerWidth = max(self.userLbl.GetSize().GetWidth(), self.passwordLbl.GetSize().GetWidth()) + 150 + sshProxyHeaderWidth = max(self.sshProxyUserLbl.GetSize().GetWidth(), self.sshProxyPasswordLbl.GetSize().GetWidth()) + 150 + + print headerWidth + print sshProxyHeaderWidth + + self.headerLbl = wx.StaticText(self, wx.ID_ANY, _(u'Session login')+':', size=(headerWidth, -1)) + self.sshProxyHeaderLbl = wx.StaticText(self, wx.ID_ANY, _(u'SSH proxy server login')+':', size=(sshProxyHeaderWidth, -1)) + self.headerLbl.SetFont(wx.Font(-1, wx.DEFAULT, wx.NORMAL, wx.FONTWEIGHT_BOLD, 0, "")) + self.sshProxyHeaderLbl.SetFont(wx.Font(-1, wx.DEFAULT, wx.NORMAL, wx.FONTWEIGHT_BOLD, 0, "")) + self.headerLbl.Enable(False) self.userLbl.Enable(False) self.userTxt.Enable(False) @@ -121,50 +127,42 @@ class PyHocaGUI_DialogBoxPassword(wx.Dialog): self.Bind(wx.EVT_TEXT_ENTER, self.OnLogin, self.passwordTxt) self.Bind(wx.EVT_BUTTON, self.OnCancel, self.cancelBtn) - userSizer = wx.BoxSizer(wx.HORIZONTAL) - passwordSizer = wx.BoxSizer(wx.HORIZONTAL) + btnSizer = wx.BoxSizer(wx.HORIZONTAL) + if not self.sshproxy_auth: + credSizer = wx.GridSizer(2, 2, 0, 0) + mainSizer = wx.BoxSizer(wx.VERTICAL) # sizer / layout if self.sshproxy_auth: - sshProxySizer = wx.BoxSizer(wx.VERTICAL) - sshProxyUserSizer = wx.BoxSizer(wx.HORIZONTAL) - sshProxyPasswordSizer = wx.BoxSizer(wx.HORIZONTAL) - sessionSizer = wx.BoxSizer(wx.VERTICAL) - btnSizer = wx.BoxSizer(wx.HORIZONTAL) - credentialsSizer = wx.BoxSizer(wx.HORIZONTAL) - mainSizer = wx.BoxSizer(wx.VERTICAL) + headerSizer = wx.BoxSizer(wx.HORIZONTAL) + headerSizer.Add(self.sshProxyHeaderLbl, 0, wx.ALL|wx.EXPAND, 5) + headerSizer.Add(self.headerLbl, 0, wx.ALL|wx.EXPAND, 5) - if self.sshproxy_auth: - sshProxySizer.Add(self.sshProxyHeaderLbl, 0, wx.ALL, 5) - sessionSizer.Add(self.headerLbl, 0, wx.ALL, 5) - sshProxyUserSizer.Add(self.sshProxyUserLbl, 0, wx.LEFT|wx.ALIGN_CENTER_VERTICAL, 5) - sshProxyUserSizer.Add(self.sshProxyUserTxt, 0, wx.ALL, 5) - sshProxySizer.Add(sshProxyUserSizer, 0, 0, 0) + mainSizer.Add(headerSizer, 0, 0, 0) - userSizer.Add(self.userLbl, 0, wx.LEFT|wx.ALIGN_CENTER_VERTICAL, 5) - userSizer.Add(self.userTxt, 0, wx.ALL, 5) - sessionSizer.Add(userSizer, 0, 0, 0) + credSizer = wx.GridSizer(2, 4, 0, 0) - if self.sshproxy_auth: - sshProxyPasswordSizer.Add(self.sshProxyPasswordLbl, 0, wx.LEFT|wx.ALIGN_CENTER_VERTICAL, 5) - sshProxyPasswordSizer.Add(self.sshProxyPasswordTxt, 0, wx.ALL, 5) - sshProxySizer.Add(sshProxyPasswordSizer, 0, 0, 0) + credSizer.Add(self.sshProxyUserLbl, 0, wx.LEFT|wx.ALIGN_CENTER_VERTICAL, 5) + credSizer.Add(self.sshProxyUserTxt, 0, wx.ALL, 5) - passwordSizer.Add(self.passwordLbl, 0, wx.LEFT|wx.ALIGN_CENTER_VERTICAL, 5) - passwordSizer.Add(self.passwordTxt, 0, wx.ALL, 5) - sessionSizer.Add(passwordSizer, 0, 0, 0) + credSizer.Add(self.userLbl, 0, wx.LEFT|wx.ALIGN_CENTER_VERTICAL, 5) + credSizer.Add(self.userTxt, 0, wx.ALL, 5) if self.sshproxy_auth: - credentialsSizer.Add(sshProxySizer, 0, 0, 0) - credentialsSizer.Add(sessionSizer, 0, 0, 0) + + credSizer.Add(self.sshProxyPasswordLbl, 0, wx.LEFT|wx.ALIGN_CENTER_VERTICAL, 5) + credSizer.Add(self.sshProxyPasswordTxt, 0, wx.ALL, 5) + + credSizer.Add(self.passwordLbl, 0, wx.LEFT|wx.ALIGN_CENTER_VERTICAL, 5) + credSizer.Add(self.passwordTxt, 0, wx.ALL, 5) if self.sshproxy_auth: btnSizer.Add(self.sshProxyLoginBtn, 0, wx.ALL, 5) btnSizer.Add(self.loginBtn, 0, wx.ALL, 5) btnSizer.Add(self.cancelBtn, 0, wx.ALL, 5) - mainSizer.Add(credentialsSizer, 0, wx.ALL, 0) + mainSizer.Add(credSizer, 0, wx.ALL, 5) mainSizer.Add(btnSizer, 0, wx.ALL|wx.ALIGN_RIGHT, 5) if self.current_profile_config.has_key('user'): @@ -180,15 +178,15 @@ class PyHocaGUI_DialogBoxPassword(wx.Dialog): # Logged in variable self.loggedIn = False - self.SetSizer(mainSizer) - self.Fit() + self.SetSizerAndFit(mainSizer) self.Layout() maxX, maxY = wx.GetDisplaySize() - if x2go.X2GOCLIENT_OS == 'Linux': - self.Move((maxX-225,35)) - elif x2go.X2GOCLIENT_OS == 'Windows': - self.Move((maxX-225,maxY-160)) + + if (x2go.X2GOCLIENT_OS == 'Linux') and (WINDOW_MANAGER == 'gnome'): + self.Move((maxX - (self.GetSize().GetWidth() + 20), 35)) + else: + self.Move((maxX - (self.GetSize().GetWidth() + 20), maxY - (self.GetSize().GetHeight() + 70), )) self.Show() diff --git a/pyhoca/wxgui/profilemanager.py b/pyhoca/wxgui/profilemanager.py index e6402b3..ce30c0a 100644 --- a/pyhoca/wxgui/profilemanager.py +++ b/pyhoca/wxgui/profilemanager.py @@ -166,13 +166,13 @@ class PyHocaGUI_ProfileManager(wx.Dialog): self.SSHKeyFile = wx.TextCtrl(self.tab_Connection, -1, style=wx.TE_PROCESS_ENTER) self.SSHKeyFileBrowseButton = wx.BitmapButton(self.tab_Connection, -1, wx.Bitmap('%s/PyHoca/16x16/system-search.png' % _icons_location, wx.BITMAP_TYPE_ANY)) self.UseSSHProxy = wx.CheckBox(self.tab_Connection, -1, _(u"Server behind SSH proxy")) - self.SSHProxyHostLabel = wx.StaticText(self.tab_Connection, -1, _(u"Host[:Port]")+':') - self.SSHProxyHost = wx.TextCtrl(self.tab_Connection, -1, "", size=wx.Size(80,20)) self.SSHProxyUserLabel = wx.StaticText(self.tab_Connection, -1, _(u"User")+':') self.SSHProxyUser = wx.TextCtrl(self.tab_Connection, -1, "", size=wx.Size(80,20)) self.SSHProxyKeyFileLabel = wx.StaticText(self.tab_Connection, -1, _(u"Key file")+':') self.SSHProxyKeyFile = wx.TextCtrl(self.tab_Connection, -1, style=wx.TE_PROCESS_ENTER) self.SSHProxyKeyFileBrowseButton = wx.BitmapButton(self.tab_Connection, -1, wx.Bitmap('%s/PyHoca/16x16/system-search.png' % _icons_location, wx.BITMAP_TYPE_ANY)) + self.SSHProxyHostLabel = wx.StaticText(self.tab_Connection, -1, _(u"Host[:Port]")+':') + self.SSHProxyHost = wx.TextCtrl(self.tab_Connection, -1, "", size=wx.Size(80,20)) self.SSHProxyTunnelLabel = wx.StaticText(self.tab_Connection, -1, _(u"SSH Proxy Tunnel")+':') self.SSHProxyTunnelFromHost = wx.TextCtrl(self.tab_Connection, -1, "", size=wx.Size(200,20)) self.SSHProxyTunnelFromPort = wx.SpinCtrl(self.tab_Connection, -1, "0", min=22, max=64000) hooks/post-receive -- pyhoca-gui.git (Python X2Go Client (wxPython GUI)) This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "pyhoca-gui.git" (Python X2Go Client (wxPython GUI)).