summaryrefslogtreecommitdiff
path: root/src/leap/gui
diff options
context:
space:
mode:
Diffstat (limited to 'src/leap/gui')
-rw-r--r--src/leap/gui/firstrun/connect.py110
-rw-r--r--src/leap/gui/firstrun/intro.py6
-rw-r--r--src/leap/gui/firstrun/last.py27
-rw-r--r--src/leap/gui/firstrun/login.py2
-rw-r--r--src/leap/gui/firstrun/providerinfo.py9
-rw-r--r--src/leap/gui/firstrun/providerselect.py8
-rw-r--r--src/leap/gui/firstrun/providersetup.py10
-rw-r--r--src/leap/gui/firstrun/register.py4
-rwxr-xr-xsrc/leap/gui/firstrun/wizard.py1
9 files changed, 101 insertions, 76 deletions
diff --git a/src/leap/gui/firstrun/connect.py b/src/leap/gui/firstrun/connect.py
index b7688380..ad7bb13a 100644
--- a/src/leap/gui/firstrun/connect.py
+++ b/src/leap/gui/firstrun/connect.py
@@ -24,8 +24,8 @@ class ConnectionPage(ValidationPage):
self.current_page = "connect"
title = self.tr("Connecting...")
- # XXX uh... really?
- subtitle = self.tr("Checking connection with provider.")
+ subtitle = self.tr("Setting up a encrypted "
+ "connection with the provider")
self.setTitle(title)
self.setSubTitle(subtitle)
@@ -82,7 +82,7 @@ class ConnectionPage(ValidationPage):
except Exception as exc:
return self.fail(exc.message)
- yield((self.tr("Fetching provider config..."), 40),
+ yield((self.tr("Getting EIP configuration files"), 40),
fetcheipconf)
##################################################
@@ -94,7 +94,7 @@ class ConnectionPage(ValidationPage):
downloaded = pCertChecker.download_new_client_cert(
credentials=credentials)
if not downloaded:
- logger.error('Could not download client cert.')
+ logger.error('Could not download client cert')
return False
except auth.SRPAuthenticationError as exc:
@@ -106,7 +106,7 @@ class ConnectionPage(ValidationPage):
else:
return True
- yield((self.tr("Fetching eip certificate"), 80),
+ yield((self.tr("Getting EIP certificate"), 80),
fetcheipcert)
################
@@ -120,9 +120,11 @@ class ConnectionPage(ValidationPage):
called after _do_checks has finished
(connected to checker thread finished signal)
"""
- # this should be called CONNECT PAGE AGAIN.
# here we go! :)
if self.is_done():
+ nextbutton = self.wizard().button(QtGui.QWizard.NextButton)
+ nextbutton.setFocus()
+
full_domain = self.field('provider_domain')
domain, port = get_https_domain_and_port(full_domain)
_domain = u"%s:%s" % (
@@ -138,10 +140,15 @@ class ConnectionPage(ValidationPage):
if conductor:
conductor.set_provider_domain(domain)
- conductor.run_checks()
- self.conductor = conductor
- errors = self.eip_error_check()
- if not errors and start_eip_signal:
+ # we could run some of the checks to be
+ # sure everything is in order, but
+ # I see no point in doing it, we assume
+ # we've gone thru all checks during the wizard.
+ #conductor.run_checks()
+ #self.conductor = conductor
+ #errors = self.eip_error_check()
+ #if not errors and start_eip_signal:
+ if start_eip_signal:
start_eip_signal.emit()
else:
@@ -150,53 +157,58 @@ class ConnectionPage(ValidationPage):
"probably the wizard has been launched "
"in an stand-alone way.")
- # XXX look for a better place to signal
- # we are done.
- # We could probably have a fake validatePage
- # that checks if the domain transfer has been
- # done to conductor object, triggers the start_signal
- # and does the go_next()
self.set_done()
- def eip_error_check(self):
- """
- a version of the main app error checker,
- but integrated within the connecting page of the wizard.
- consumes the conductor error queue.
- pops errors, and add those to the wizard page
- """
- logger.debug('eip error check from connecting page')
- errq = self.conductor.error_queue
- # XXX missing!
-
- def _do_validation(self):
- """
- called after _do_checks has finished
- (connected to checker thread finished signal)
- """
- from_login = self.wizard().from_login
- prevpage = "login" if from_login else "signup"
-
- wizard = self.wizard()
- if self.errors:
- logger.debug('going back with errors')
- logger.error(self.errors)
- name, first_error = self.pop_first_error()
- wizard.set_validation_error(
- prevpage,
- first_error)
- self.go_back()
- else:
- logger.debug('should go next, wait for user to click next')
- #self.go_next()
+ #def eip_error_check(self):
+ #"""
+ #a version of the main app error checker,
+ #but integrated within the connecting page of the wizard.
+ #consumes the conductor error queue.
+ #pops errors, and add those to the wizard page
+ #"""
+ # TODO handle errors.
+ # We should redirect them to the log viewer
+ # with a brief message.
+ # XXX move to LAST PAGE instead.
+ #logger.debug('eip error check from connecting page')
+ #errq = self.conductor.error_queue
+
+ #def _do_validation(self):
+ #"""
+ #called after _do_checks has finished
+ #(connected to checker thread finished signal)
+ #"""
+ #from_login = self.wizard().from_login
+ #prevpage = "login" if from_login else "signup"
+
+ #wizard = self.wizard()
+ #if self.errors:
+ #logger.debug('going back with errors')
+ #logger.error(self.errors)
+ #name, first_error = self.pop_first_error()
+ #wizard.set_validation_error(
+ #prevpage,
+ #first_error)
+ #self.go_back()
def nextId(self):
wizard = self.wizard()
- #if not wizard:
- #return
return wizard.get_page_index('lastpage')
def initializePage(self):
super(ConnectionPage, self).initializePage()
self.set_undone()
+ cancelbutton = self.wizard().button(QtGui.QWizard.CancelButton)
+ cancelbutton.hide()
self.completeChanged.emit()
+
+ wizard = self.wizard()
+ eip_statuschange_signal = wizard.eip_statuschange_signal
+ if eip_statuschange_signal:
+ eip_statuschange_signal.connect(
+ lambda status: self.send_status(
+ status))
+
+ def send_status(self, status):
+ wizard = self.wizard()
+ wizard.openvpn_status.append(status)
diff --git a/src/leap/gui/firstrun/intro.py b/src/leap/gui/firstrun/intro.py
index 0425b764..b519362f 100644
--- a/src/leap/gui/firstrun/intro.py
+++ b/src/leap/gui/firstrun/intro.py
@@ -11,7 +11,7 @@ class IntroPage(QtGui.QWizardPage):
def __init__(self, parent=None):
super(IntroPage, self).__init__(parent)
- self.setTitle(self.tr("First run wizard."))
+ self.setTitle(self.tr("First run wizard"))
#self.setPixmap(
#QtGui.QWizard.WatermarkPixmap,
@@ -35,10 +35,10 @@ class IntroPage(QtGui.QWizardPage):
radiobuttonGroup = QtGui.QGroupBox()
self.sign_up = QtGui.QRadioButton(
- self.tr("Sign up for a new account."))
+ self.tr("Sign up for a new account"))
self.sign_up.setChecked(True)
self.log_in = QtGui.QRadioButton(
- self.tr("Log In with my credentials."))
+ self.tr("Log In with my credentials"))
radiobLayout = QtGui.QVBoxLayout()
radiobLayout.addWidget(self.sign_up)
diff --git a/src/leap/gui/firstrun/last.py b/src/leap/gui/firstrun/last.py
index e097b2ae..32d98acc 100644
--- a/src/leap/gui/firstrun/last.py
+++ b/src/leap/gui/firstrun/last.py
@@ -15,7 +15,8 @@ class LastPage(QtGui.QWizardPage):
def __init__(self, parent=None):
super(LastPage, self).__init__(parent)
- self.setTitle(self.tr("Connecting to Encrypted Internet Proxy service..."))
+ self.setTitle(self.tr(
+ "Connecting to Encrypted Internet Proxy service..."))
self.setPixmap(
QtGui.QWizard.LogoPixmap,
@@ -33,6 +34,7 @@ class LastPage(QtGui.QWizardPage):
self.status_line_2 = QtGui.QLabel()
self.status_line_3 = QtGui.QLabel()
self.status_line_4 = QtGui.QLabel()
+ self.status_line_5 = QtGui.QLabel()
layout = QtGui.QVBoxLayout()
layout.addWidget(self.label)
@@ -42,6 +44,7 @@ class LastPage(QtGui.QWizardPage):
layout.addWidget(self.status_line_2)
layout.addWidget(self.status_line_3)
layout.addWidget(self.status_line_4)
+ layout.addWidget(self.status_line_5)
self.setLayout(layout)
@@ -67,7 +70,7 @@ class LastPage(QtGui.QWizardPage):
# signals. See progress.py
logger.debug('logging status in last page')
self.validation_done = False
- status_count = 0
+ status_count = 1
try:
while True:
status = (yield)
@@ -84,11 +87,23 @@ class LastPage(QtGui.QWizardPage):
pass
def initializePage(self):
+ super(LastPage, self).initializePage()
wizard = self.wizard()
- if not wizard:
- return
- eip_status_handler = self.eip_status_handler()
+ handler = self.eip_status_handler()
+
+ # get statuses done in prev page
+ for st in wizard.openvpn_status:
+ self.send_status(handler.send, st)
+
+ # bind signal for events yet to come
eip_statuschange_signal = wizard.eip_statuschange_signal
if eip_statuschange_signal:
eip_statuschange_signal.connect(
- lambda status: eip_status_handler.send(status))
+ lambda status: self.send_status(
+ handler.send, status))
+
+ def send_status(self, cb, status):
+ try:
+ cb(status)
+ except StopIteration:
+ pass
diff --git a/src/leap/gui/firstrun/login.py b/src/leap/gui/firstrun/login.py
index e39eecc0..3707d3ff 100644
--- a/src/leap/gui/firstrun/login.py
+++ b/src/leap/gui/firstrun/login.py
@@ -22,7 +22,7 @@ class LogInPage(InlineValidationPage, UserFormMixIn): # InlineValidationPage
self.current_page = "login"
self.setTitle(self.tr("Log In"))
- self.setSubTitle(self.tr("Log in with your credentials."))
+ self.setSubTitle(self.tr("Log in with your credentials"))
self.current_page = "login"
self.setPixmap(
diff --git a/src/leap/gui/firstrun/providerinfo.py b/src/leap/gui/firstrun/providerinfo.py
index 357378df..cff4caca 100644
--- a/src/leap/gui/firstrun/providerinfo.py
+++ b/src/leap/gui/firstrun/providerinfo.py
@@ -16,9 +16,9 @@ class ProviderInfoPage(QtGui.QWizardPage):
def __init__(self, parent=None):
super(ProviderInfoPage, self).__init__(parent)
- self.setTitle(self.tr("Provider Info"))
+ self.setTitle(self.tr("Provider Information"))
self.setSubTitle(self.tr(
- "This is what provider says."))
+ "Services offered by this provider"))
self.setPixmap(
QtGui.QWizard.LogoPixmap,
@@ -89,10 +89,13 @@ class ProviderInfoPage(QtGui.QWizardPage):
self.description.setText(
"<i>%s</i>" % description_text)
+ # XXX should translate this...
enroll = pconfig.get('enrollment_policy')
if enroll:
self.enrollment_policy.setText(
- 'enrollment policy: %s' % enroll)
+ '<b>%s</b>: <em>%s</em>' % (
+ self.tr('enrollment policy'),
+ enroll))
def nextId(self):
wizard = self.wizard()
diff --git a/src/leap/gui/firstrun/providerselect.py b/src/leap/gui/firstrun/providerselect.py
index ccecd519..917b16fd 100644
--- a/src/leap/gui/firstrun/providerselect.py
+++ b/src/leap/gui/firstrun/providerselect.py
@@ -32,7 +32,7 @@ class SelectProviderPage(InlineValidationPage):
self.setTitle(self.tr("Enter Provider"))
self.setSubTitle(self.tr(
"Please enter the domain of the provider you want "
- "to use for your connection.")
+ "to use for your connection")
)
self.setPixmap(
QtGui.QWizard.LogoPixmap,
@@ -219,7 +219,7 @@ class SelectProviderPage(InlineValidationPage):
return True
logger.debug('checking name resolution')
- yield((self.tr("checking domain name"), 20), namecheck)
+ yield((self.tr("Checking if it is a valid provider"), 20), namecheck)
#########################
# 2) try https connection
@@ -273,7 +273,7 @@ class SelectProviderPage(InlineValidationPage):
return True
logger.debug('checking https connection')
- yield((self.tr("checking https connection"), 40), httpscheck)
+ yield((self.tr("Checking for a secure connection"), 40), httpscheck)
##################################
# 3) try download provider info...
@@ -300,7 +300,7 @@ class SelectProviderPage(InlineValidationPage):
else:
return True
- yield((self.tr("fetching provider info"), 80), fetchinfo)
+ yield((self.tr("Getting info from the provider"), 80), fetchinfo)
# done!
diff --git a/src/leap/gui/firstrun/providersetup.py b/src/leap/gui/firstrun/providersetup.py
index 981e3214..47060f6e 100644
--- a/src/leap/gui/firstrun/providersetup.py
+++ b/src/leap/gui/firstrun/providersetup.py
@@ -27,7 +27,7 @@ class ProviderSetupValidationPage(ValidationPage):
self.setTitle(self.tr("Provider setup"))
self.setSubTitle(
- self.tr("Doing autoconfig."))
+ self.tr("Gathering configuration options for this provider"))
self.setPixmap(
QtGui.QWizard.LogoPixmap,
@@ -141,18 +141,12 @@ class ProviderSetupValidationPage(ValidationPage):
wizard.set_validation_error(
prevpage,
first_error)
- # XXX don't go back, signal error
- #self.go_back()
- else:
- logger.debug('should be going next, wait on user')
- #self.go_next()
def nextId(self):
wizard = self.wizard()
from_login = wizard.from_login
if from_login:
- # XXX bad name. change to connect again.
- next_ = 'signupvalidation'
+ next_ = 'connect'
else:
next_ = 'signup'
return wizard.get_page_index(next_)
diff --git a/src/leap/gui/firstrun/register.py b/src/leap/gui/firstrun/register.py
index 741b9267..15278330 100644
--- a/src/leap/gui/firstrun/register.py
+++ b/src/leap/gui/firstrun/register.py
@@ -315,7 +315,7 @@ class RegisterUserPage(InlineValidationPage, UserFormMixIn):
return True
logger.debug('registering user')
- yield(("registering with provider", 40), register)
+ yield(("Registering username", 40), register)
self.set_done()
yield(("end_sentinel", 100), lambda: None)
@@ -376,7 +376,7 @@ class RegisterUserPage(InlineValidationPage, UserFormMixIn):
#self.tr("Register a new user with provider %s.") %
#provider)
self.setSubTitle(
- self.tr("Register a new user with provider %s." %
+ self.tr("Register a new user with provider <em>%s</em>" %
provider))
self.validationMsg.setText('')
self.userPassword2LineEdit.setText('')
diff --git a/src/leap/gui/firstrun/wizard.py b/src/leap/gui/firstrun/wizard.py
index 427f9df8..f198dca0 100755
--- a/src/leap/gui/firstrun/wizard.py
+++ b/src/leap/gui/firstrun/wizard.py
@@ -136,6 +136,7 @@ class FirstRunWizard(QtGui.QWizard):
self.add_pages_from_dict(pages_dict)
self.validation_errors = {}
+ self.openvpn_status = []
self.setPixmap(
QtGui.QWizard.BannerPixmap,