diff options
Diffstat (limited to 'Swift/QtUI')
| -rw-r--r-- | Swift/QtUI/QtLoginWindow.cpp | 13 | ||||
| -rw-r--r-- | Swift/QtUI/QtLoginWindow.h | 1 | ||||
| -rw-r--r-- | Swift/QtUI/QtSwift.cpp | 7 | 
3 files changed, 19 insertions, 2 deletions
| diff --git a/Swift/QtUI/QtLoginWindow.cpp b/Swift/QtUI/QtLoginWindow.cpp index 4302c10..45d7c7e 100644 --- a/Swift/QtUI/QtLoginWindow.cpp +++ b/Swift/QtUI/QtLoginWindow.cpp @@ -197,6 +197,15 @@ QtLoginWindow::QtLoginWindow(UIEventStream* uiEventStream) : QMainWindow() {  	this->show();  } +void QtLoginWindow::setRememberingAllowed(bool allowed) { +	remember_->setEnabled(allowed); +	loginAutomatically_->setEnabled(allowed); +	if (!allowed) { +		remember_->setChecked(false); +		loginAutomatically_->setChecked(false); +	} +} +  bool QtLoginWindow::eventFilter(QObject *obj, QEvent *event) {  	if (obj == username_->view() && event->type() == QEvent::KeyPress) {  		QKeyEvent *keyEvent = static_cast<QKeyEvent*>(event); @@ -304,6 +313,10 @@ void QtLoginWindow::setIsLoggingIn(bool loggingIn) {  void QtLoginWindow::loginClicked() {  	if (username_->isEnabled()) {  		onLoginRequest(Q2PSTRING(username_->currentText()), Q2PSTRING(password_->text()), Q2PSTRING(certificateFile_), remember_->isChecked(), loginAutomatically_->isChecked()); +		if (!remember_->isEnabled()) { /* Mustn't remember logins */ +			username_->clearEditText(); +			password_->setText(""); +		}  	} else {  		onCancelLoginRequest();  	} diff --git a/Swift/QtUI/QtLoginWindow.h b/Swift/QtUI/QtLoginWindow.h index b667a4b..410ed0a 100644 --- a/Swift/QtUI/QtLoginWindow.h +++ b/Swift/QtUI/QtLoginWindow.h @@ -36,6 +36,7 @@ namespace Swift {  			virtual void removeAvailableAccount(const std::string& jid);  			virtual void setLoginAutomatically(bool loginAutomatically);  			virtual void setIsLoggingIn(bool loggingIn); +			virtual void setRememberingAllowed(bool allowed);  			void selectUser(const std::string& user);  			bool askUserToTrustCertificatePermanently(const std::string& message, Certificate::ref certificate);  			void hide(); diff --git a/Swift/QtUI/QtSwift.cpp b/Swift/QtUI/QtSwift.cpp index d7a1f78..f0c876c 100644 --- a/Swift/QtUI/QtSwift.cpp +++ b/Swift/QtUI/QtSwift.cpp @@ -1,5 +1,5 @@  /* - * Copyright (c) 2010 Kevin Smith + * Copyright (c) 2010-2011 Kevin Smith   * Licensed under the GNU General Public License v3.   * See Documentation/Licenses/GPLv3.txt for more information.   */ @@ -73,6 +73,7 @@ po::options_description QtSwift::getOptionsDescription() {  		("latency-debug", "use latency debugging (unsupported)")  		("multi-account", po::value<int>()->default_value(1), "number of accounts to open windows for (unsupported)")  		("start-minimized", "don't show the login/roster window at startup") +		("eagle-mode", "Settings more suitable for military/secure deployments")  		;  	return result;  } @@ -103,6 +104,7 @@ QtSwift::QtSwift(const po::variables_map& options) : networkFactories_(&clientMa  	tabs_ = options.count("no-tabs") && !(splitter_ > 0) ? NULL : new QtChatTabs();  	bool startMinimized = options.count("start-minimized") > 0; +	bool eagleMode = options.count("eagle-mode") > 0;  	settings_ = new QtSettingsProvider();  	applicationPathProvider_ = new PlatformApplicationPathProvider(SWIFT_APPLICATION_NAME);  	storagesFactory_ = new FileStoragesFactory(applicationPathProvider_->getDataDir()); @@ -162,7 +164,8 @@ QtSwift::QtSwift(const po::variables_map& options) : networkFactories_(&clientMa  				dock_,  				notifier_,  				uriHandler_, -				options.count("latency-debug") > 0); +				options.count("latency-debug") > 0, +				eagleMode);  		mainControllers_.push_back(mainController);  	} | 
 Swift
 Swift