diff options
-rw-r--r-- | src/mirall/owncloudwizard.cpp | 18 | ||||
-rw-r--r-- | src/mirall/owncloudwizard.h | 3 |
2 files changed, 19 insertions, 2 deletions
diff --git a/src/mirall/owncloudwizard.cpp b/src/mirall/owncloudwizard.cpp index 3a9e18d14..7005c2d9e 100644 --- a/src/mirall/owncloudwizard.cpp +++ b/src/mirall/owncloudwizard.cpp @@ -57,6 +57,9 @@ void setupCustomMedia( QVariant variant, QLabel *label ) OwncloudSetupPage::OwncloudSetupPage() { _ui.setupUi(this); + + connect(_ui.leUrl, SIGNAL(textChanged(QString)), SLOT(handleNewOcUrl(QString))); + registerField( QLatin1String("OCUrl"), _ui.leUrl ); registerField( QLatin1String("OCUser"), _ui.leUsername ); registerField( QLatin1String("OCPasswd"), _ui.lePassword); @@ -147,6 +150,21 @@ void OwncloudSetupPage::slotSecureConChanged( int state ) } } +void OwncloudSetupPage::handleNewOcUrl(const QString& ocUrl) +{ + QUrl url(ocUrl); + + QString urlMinusScheme = url.toString(QUrl::RemoveScheme); + + // QUrl::RemoveScheme leaves the beginning slashes. Remove them + // if they're present. + if (urlMinusScheme.startsWith("//")) { + urlMinusScheme.remove(0, 2); + } + + _ui.leUrl->setText(urlMinusScheme); +} + bool OwncloudSetupPage::isComplete() const { if( _ui.leUrl->text().isEmpty() ) return false; diff --git a/src/mirall/owncloudwizard.h b/src/mirall/owncloudwizard.h index d0427c0bf..35bc7ba1d 100644 --- a/src/mirall/owncloudwizard.h +++ b/src/mirall/owncloudwizard.h @@ -45,10 +45,10 @@ public: protected slots: void slotPwdStoreChanged( int ); void slotSecureConChanged( int ); + void handleNewOcUrl(const QString& ocUrl); void setupCustomization(); private: Ui_OwncloudSetupPage _ui; - }; class OwncloudWizard: public QWizard @@ -112,7 +112,6 @@ public: private: Ui_OwncloudWizardSelectTypePage _ui; - }; class CreateAnOwncloudPage: public QWizardPage |