def ask_password(operation, message, default_user, default_domain, flags): # configure mount operation operation.set_domain(domain if domain is not None and domain != '' else default_domain) operation.set_username(username if username is not None and username != '' else default_user) if password is not None: # set password to stored one operation.set_password(password) operation.reply(gio.MOUNT_OPERATION_HANDLED) else: # we don't have stored password, ask user to provide one with gtk.gdk.lock: dialog = InputDialog(self._application) dialog.set_title(_('Mount operation')) dialog.set_label(message) dialog.set_password() response = dialog.get_response() if response[0] == gtk.RESPONSE_OK: operation.set_password(response[1]) operation.reply(gio.MOUNT_OPERATION_HANDLED)
def __unlock_keyring(self): """Unlock keyring and schedule automatic lock""" result = False dialog = InputDialog(self._application) dialog.set_title(_('Unlock keyring')) dialog.set_label(_('Please enter your keyring password:')) dialog.set_password() response = dialog.get_response() if response[0] == gtk.RESPONSE_OK: # try to unlock keyring keyring.unlock_sync(self.KEYRING_NAME, response[1]) # update status information self.__update_info() if not self.is_locked(): # set timeout for automatic locking self.__reset_timeout() result = True return result