diff --git a/callwidget.cpp b/callwidget.cpp
index 088fb35ef504d1946986bad519600c823a4014e7..a4b7da8fc4f0c8d314f7549ed5eb359f3e1247e0 100644
--- a/callwidget.cpp
+++ b/callwidget.cpp
@@ -45,7 +45,6 @@
 #include "localprofilecollection.h"
 
 // client
-#include "wizarddialog.h"
 #include "windowscontactbackend.h"
 #include "globalsystemtray.h"
 #include "conversationitemdelegate.h"
@@ -847,39 +846,45 @@ CallWidget::showIMOutOfCall(const QModelIndex& nodeIdx)
     bool shouldShowSendContactRequestBtn = !isContact && isRINGAccount;
     ui->sendContactRequestButton->setVisible(shouldShowSendContactRequestBtn);
 
-    auto convModel = LRCInstance::getCurrentConversationModel();
-    auto currentConversation = Utils::getConversationFromUid(LRCInstance::getSelectedConvUid(),
-                                                             *convModel);
-
+    ui->messageView->setMessagesVisibility(false);
     ui->messageView->clear();
-    ui->messageView->printHistory(*convModel, currentConversation->interactions, true);
-
-    // Contact Avatars
-    auto accInfo = &LRCInstance::getCurrentAccountInfo();
-    auto contactUri = currentConversation->participants.front();
-    try {
-        auto& contact = accInfo->contactModel->getContact(contactUri);
-        auto bestName = Utils::bestNameForConversation(*currentConversation, *convModel);
-        ui->messageView->setInvitation(
-            (contact.profileInfo.type == lrc::api::profile::Type::PENDING),
-            bestName,
-            accInfo->contactModel->getContactProfileId(contact.profileInfo.uri)
-        );
-        if (!contact.profileInfo.avatar.empty()) {
-            ui->messageView->setSenderImage(
-                accInfo->contactModel->getContactProfileId(contactUri),
-                contact.profileInfo.avatar);
-        } else {
-            auto avatar = Utils::conversationPhoto(LRCInstance::getSelectedConvUid(), *accInfo);
-            QByteArray ba;
-            QBuffer bu(&ba);
-            avatar.save(&bu, "PNG");
-            std::string avatarString = ba.toBase64().toStdString();
-            ui->messageView->setSenderImage(
-                accInfo->contactModel->getContactProfileId(contactUri),
-                avatarString);
-        }
-    } catch (...) { }
+    Utils::oneShotConnect(ui->messageView, &MessageWebView::messagesCleared,
+        [this] {
+            auto convModel = LRCInstance::getCurrentConversationModel();
+            auto currentConversation = Utils::getConversationFromUid(LRCInstance::getSelectedConvUid(),
+                *convModel);
+            ui->messageView->printHistory(*convModel, currentConversation->interactions);
+            Utils::oneShotConnect(ui->messageView, &MessageWebView::messagesLoaded,
+                [this] {
+                    ui->messageView->setMessagesVisibility(true);
+                });
+            // Contact Avatars
+            auto accInfo = &LRCInstance::getCurrentAccountInfo();
+            auto contactUri = currentConversation->participants.front();
+            try {
+                auto& contact = accInfo->contactModel->getContact(contactUri);
+                auto bestName = Utils::bestNameForConversation(*currentConversation, *convModel);
+                ui->messageView->setInvitation(
+                    (contact.profileInfo.type == lrc::api::profile::Type::PENDING),
+                    bestName,
+                    accInfo->contactModel->getContactProfileId(contact.profileInfo.uri)
+                );
+                if (!contact.profileInfo.avatar.empty()) {
+                    ui->messageView->setSenderImage(
+                        accInfo->contactModel->getContactProfileId(contactUri),
+                        contact.profileInfo.avatar);
+                } else {
+                    auto avatar = Utils::conversationPhoto(LRCInstance::getSelectedConvUid(), *accInfo);
+                    QByteArray ba;
+                    QBuffer bu(&ba);
+                    avatar.save(&bu, "PNG");
+                    std::string avatarString = ba.toBase64().toStdString();
+                    ui->messageView->setSenderImage(
+                        accInfo->contactModel->getContactProfileId(contactUri),
+                        avatarString);
+                }
+            } catch (...) {}
+        });
 }
 
 void
@@ -909,15 +914,9 @@ void
 CallWidget::on_imBackButton_clicked()
 {
     ui->messageView->clear();
-    QMetaObject::Connection* const connection = new QMetaObject::Connection;
-    *connection = connect(ui->messageView, &MessageWebView::messagesCleared,
-        [this, connection] {
-            qDebug() << "messagesCleared";
-            if (connection) {
-                QObject::disconnect(*connection);
-                delete connection;
-            }
-            backToWelcomePage();
+    Utils::oneShotConnect(ui->messageView, &MessageWebView::messagesCleared,
+        [this] {
+            QTimer::singleShot(33, this, [this] { backToWelcomePage(); });
         });
 }
 
diff --git a/callwidget.ui b/callwidget.ui
index c024671aea0f46654cf22f975b43bf026f961903..f07019c9c8c0a7315a9b1958514b2714dafb36e5 100644
--- a/callwidget.ui
+++ b/callwidget.ui
@@ -370,7 +370,7 @@
             <verstretch>0</verstretch>
            </sizepolicy>
           </property>
-          <layout class="QVBoxLayout" name="verticalLayout">
+          <layout class="QVBoxLayout" name="mainLayout">
            <property name="spacing">
             <number>0</number>
            </property>
@@ -401,7 +401,7 @@
               <string/>
              </property>
              <property name="currentIndex">
-              <number>1</number>
+              <number>0</number>
              </property>
              <widget class="QWidget" name="welcomePage">
               <property name="sizePolicy">
diff --git a/mainwindow.cpp b/mainwindow.cpp
index 4d9984221bfb4f09722974ddb41ebcd9b2d21ce0..afc650ad8a4d233fb27d1097c686424794e1c68b 100644
--- a/mainwindow.cpp
+++ b/mainwindow.cpp
@@ -39,7 +39,6 @@
 #include "callmodel.h"
 #include "callwidget.h"
 #include "utils.h"
-#include "wizarddialog.h"
 #include "version.h"
 
 MainWindow::MainWindow(QWidget* parent) :
diff --git a/messagewebview.cpp b/messagewebview.cpp
index dd9d3537d412357e785e063ba281c0933f6d44e6..70ff753a642945460ccd5ff1e24f7c72823c8c8c 100644
--- a/messagewebview.cpp
+++ b/messagewebview.cpp
@@ -196,12 +196,11 @@ MessageWebView::removeInteraction(uint64_t interactionId)
 void
 MessageWebView::printHistory(lrc::api::ConversationModel& conversationModel,
                              const std::map<uint64_t,
-                             lrc::api::interaction::Info> interactions,
-                             bool fadeIn)
+                             lrc::api::interaction::Info> interactions)
 {
     auto interactionsStr = interactionsToJsonArrayObject(conversationModel, interactions).toUtf8();
-    QString s = QString::fromLatin1("printHistory(%1,%2);")
-        .arg(interactionsStr.constData()).arg(fadeIn);
+    QString s = QString::fromLatin1("printHistory(%1);")
+        .arg(interactionsStr.constData());
     page()->runJavaScript(s, QWebEngineScript::MainWorld);
 }
 
@@ -234,18 +233,6 @@ MessageWebView::setMessagesVisibility(bool visible)
     page()->runJavaScript(s, QWebEngineScript::MainWorld);
 }
 
-void
-MessageWebView::hideEvent(QHideEvent*)
-{
-    setMessagesVisibility(false);
-}
-
-void
-MessageWebView::showEvent(QShowEvent*)
-{
-    setMessagesVisibility(true);
-}
-
 // JS bridging incoming
 Q_INVOKABLE int
 PrivateBridging::log(const QString& arg)
@@ -255,7 +242,7 @@ PrivateBridging::log(const QString& arg)
 }
 
 Q_INVOKABLE int
-PrivateBridging::messagesCleared()
+PrivateBridging::emitMessagesCleared()
 {
     if (auto messageView = qobject_cast<MessageWebView*>(this->parent())) {
         emit messageView->messagesCleared();
@@ -263,6 +250,15 @@ PrivateBridging::messagesCleared()
     return 0;
 }
 
+Q_INVOKABLE int
+PrivateBridging::emitMessagesLoaded()
+{
+    if (auto messageView = qobject_cast<MessageWebView*>(this->parent())) {
+        emit messageView->messagesLoaded();
+    }
+    return 0;
+}
+
 Q_INVOKABLE int
 PrivateBridging::deleteInteraction(const QString& arg)
 {
diff --git a/messagewebview.h b/messagewebview.h
index 75c584e8d2c91aebc977f092a3d39416c99d7152..3c20e803b9c3b0f153aa7ff21e4d46ec95dc965e 100644
--- a/messagewebview.h
+++ b/messagewebview.h
@@ -42,7 +42,8 @@ public:
     Q_INVOKABLE int acceptInvitation();
     Q_INVOKABLE int refuseInvitation();
     Q_INVOKABLE int blockConversation();
-    Q_INVOKABLE int messagesCleared();
+    Q_INVOKABLE int emitMessagesCleared();
+    Q_INVOKABLE int emitMessagesLoaded();
 };
 
 class MessageWebView : public QWebEngineView
@@ -68,8 +69,7 @@ public:
     void removeInteraction(uint64_t interactionId);
     void printHistory(lrc::api::ConversationModel& conversationModel,
                       const std::map<uint64_t,
-                      lrc::api::interaction::Info> interactions,
-                      bool fadeIn = false);
+                      lrc::api::interaction::Info> interactions);
     void setSenderImage(const std::string& sender,
                         const std::string& senderImage);
     void setInvitation(bool show,
@@ -77,13 +77,10 @@ public:
                        const std::string& contactId = "");
     void setMessagesVisibility(bool visible);
 
-protected:
-    void hideEvent(QHideEvent*);
-    void showEvent(QShowEvent*);
-
 signals:
     void conversationRemoved();
     void messagesCleared();
+    void messagesLoaded();
 
 private slots:
     void slotLoadFinished();
diff --git a/newwizardwidget.cpp b/newwizardwidget.cpp
index 6acce359162ffa37ecafea65976b3f42fdd02bd1..65e895c1c1ce16b8ca1919e2853acf6e351351f7 100644
--- a/newwizardwidget.cpp
+++ b/newwizardwidget.cpp
@@ -406,9 +406,8 @@ NewWizardWidget::createRingAccount(const QString &displayName,
     const QString &pin,
     const QString &archivePath)
 {
-    QMetaObject::Connection* const connection = new QMetaObject::Connection;
-    *connection = connect(&LRCInstance::accountModel(), &lrc::api::NewAccountModel::accountAdded,
-        [this, connection](const std::string& accountId) {
+    Utils::oneShotConnect(&LRCInstance::accountModel(), &lrc::api::NewAccountModel::accountAdded,
+        [this](const std::string& accountId) {
             //set default ringtone
             auto confProps = LRCInstance::accountModel().getAccountConfig(accountId);
             confProps.Ringtone.ringtonePath = Utils::GetRingtonePath().toStdString();
@@ -428,10 +427,6 @@ NewWizardWidget::createRingAccount(const QString &displayName,
             if (ui->setAvatarWidget->hasAvatar()) {
                 LRCInstance::setCurrAccAvatar(ui->setAvatarWidget->getAvatarPixmap());
             }
-            QObject::disconnect(*connection);
-            if (connection) {
-                delete connection;
-            }
         });
     QtConcurrent::run(
         [=] {
diff --git a/ring-client-windows.vcxproj b/ring-client-windows.vcxproj
index 16aefc1f7f248c9ad712adc0db650930a6e3f0b2..a77c79e94c4b4aa59ad44da4164bf44c75c176d9 100644
--- a/ring-client-windows.vcxproj
+++ b/ring-client-windows.vcxproj
@@ -69,7 +69,7 @@
     <TargetExt>.lib</TargetExt>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
-    <PreBuildEventUseInBuild>false</PreBuildEventUseInBuild>
+    <PreBuildEventUseInBuild>true</PreBuildEventUseInBuild>
   </PropertyGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
     <ClCompile>
@@ -284,16 +284,8 @@
     <ClCompile Include="videowidget.cpp" />
     <ClCompile Include="webchathelpers.cpp" />
     <ClCompile Include="windowscontactbackend.cpp" />
-    <ClCompile Include="wizarddialog.cpp" />
-    <ClCompile Include="wizardwidget.cpp" />
   </ItemGroup>
   <ItemGroup>
-    <QtMoc Include="wizardwidget.h">
-      <IncludePath Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\.;.\GeneratedFiles;.;$(ProjectDir)..\daemon\contrib\msvc\include;$(ProjectDir)..\lrc\src;$(ProjectDir)..\client-windows\winsparkle\include;$(ProjectDir)..\client-windows\qrencode-win32\qrencode-win32;$(QTDIR)\include;$(QTDIR)\include\QtSvg;$(QTDIR)\include\QtWidgets;$(QTDIR)\include\QtWinExtras;$(QTDIR)\include\QtGui;$(QTDIR)\include\QtANGLE;$(QTDIR)\include\QtXml;$(QTDIR)\include\QtNetwork;$(QTDIR)\include\QtCore;$(QTDIR)\mkspecs\win32-msvc;.\release</IncludePath>
-      <IncludePath Condition="'$(Configuration)|$(Platform)'=='ReleaseCompile|x64'">.\GeneratedFiles\$(ConfigurationName)\.;.\GeneratedFiles;.;$(ProjectDir)..\daemon\contrib\msvc\include;$(ProjectDir)..\lrc\src;$(ProjectDir)..\client-windows\winsparkle\include;$(ProjectDir)..\client-windows\qrencode-win32\qrencode-win32;$(QTDIR)\include;$(QTDIR)\include\QtSvg;$(QTDIR)\include\QtWidgets;$(QTDIR)\include\QtWinExtras;$(QTDIR)\include\QtGui;$(QTDIR)\include\QtANGLE;$(QTDIR)\include\QtXml;$(QTDIR)\include\QtNetwork;$(QTDIR)\include\QtCore;$(QTDIR)\mkspecs\win32-msvc;.\release</IncludePath>
-      <Define Condition="'$(Configuration)|$(Platform)'=='Release|x64'">_WINDOWS;UNICODE;_UNICODE;WIN32;WIN64;NIGHTLY_VERSION=20180706;ENABLE_AUTOUPDATE;QT_NO_DEBUG;NDEBUG</Define>
-      <Define Condition="'$(Configuration)|$(Platform)'=='ReleaseCompile|x64'">_WINDOWS;UNICODE;_UNICODE;WIN32;WIN64;NIGHTLY_VERSION=20180706;ENABLE_AUTOUPDATE;QT_NO_DEBUG;NDEBUG</Define>
-    </QtMoc>
     <QtMoc Include="aboutdialog.h">
     </QtMoc>
     <QtMoc Include="bannedcontactswidget.h">
@@ -451,8 +443,6 @@
     <ClInclude Include="version.h" />
     <ClInclude Include="webchathelpers.h" />
     <ClInclude Include="windowscontactbackend.h" />
-    <QtMoc Include="wizarddialog.h">
-    </QtMoc>
   </ItemGroup>
   <ItemGroup>
     <CustomBuild Include="debug\moc_predefs.h.cbt">
@@ -481,7 +471,6 @@
     <ClInclude Include="ui_ringbutton.h" />
     <ClInclude Include="ui_videooverlay.h" />
     <ClInclude Include="ui_videoview.h" />
-    <ClInclude Include="ui_wizarddialog.h" />
   </ItemGroup>
   <ItemGroup>
     <None Include="translations\ring_client_windows.ts" />
@@ -588,11 +577,6 @@
     </QtUic>
     <QtUic Include="videoview.ui">
     </QtUic>
-    <QtUic Include="wizarddialog.ui">
-    </QtUic>
-    <QtUic Include="wizardwidget.ui">
-      <SubType>Designer</SubType>
-    </QtUic>
   </ItemGroup>
   <ItemGroup>
     <None Include="images\FontAwesome.otf" />
diff --git a/ring-client-windows.vcxproj.filters b/ring-client-windows.vcxproj.filters
index 2c61ba0b42cb048ab33c55bff4e2022762c007ef..541e1f4ca3f0c160e49322bdf2a86e5cb278217f 100644
--- a/ring-client-windows.vcxproj.filters
+++ b/ring-client-windows.vcxproj.filters
@@ -117,9 +117,6 @@
     <ClCompile Include="windowscontactbackend.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="wizarddialog.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="smartlistview.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
@@ -147,9 +144,6 @@
     <ClCompile Include="invitebuttonswidget.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="wizardwidget.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="currentaccountcombobox.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
@@ -266,9 +260,6 @@
     <ClInclude Include="windowscontactbackend.h">
       <Filter>Header Files</Filter>
     </ClInclude>
-    <QtMoc Include="wizarddialog.h">
-      <Filter>Header Files</Filter>
-    </QtMoc>
     <QtMoc Include="smartlistmodel.h">
       <Filter>Header Files</Filter>
     </QtMoc>
@@ -293,9 +284,6 @@
     <QtMoc Include="invitebuttonswidget.h">
       <Filter>Header Files</Filter>
     </QtMoc>
-    <QtMoc Include="wizardwidget.h">
-      <Filter>Header Files</Filter>
-    </QtMoc>
     <QtMoc Include="currentaccountcombobox.h">
       <Filter>Header Files</Filter>
     </QtMoc>
@@ -373,9 +361,6 @@
     <ClInclude Include="ui_videoview.h">
       <Filter>Generated Files</Filter>
     </ClInclude>
-    <ClInclude Include="ui_wizarddialog.h">
-      <Filter>Generated Files</Filter>
-    </ClInclude>
   </ItemGroup>
   <ItemGroup>
     <None Include="translations\ring_client_windows.ts">
@@ -587,15 +572,9 @@
     <QtUic Include="videoview.ui">
       <Filter>Form Files</Filter>
     </QtUic>
-    <QtUic Include="wizarddialog.ui">
-      <Filter>Form Files</Filter>
-    </QtUic>
     <QtUic Include="invitebuttonswidget.ui">
       <Filter>Form Files</Filter>
     </QtUic>
-    <QtUic Include="wizardwidget.ui">
-      <Filter>Form Files</Filter>
-    </QtUic>
     <QtUic Include="settingswidget.ui">
       <Filter>Form Files</Filter>
     </QtUic>
diff --git a/settingswidget.cpp b/settingswidget.cpp
index 1a317dfe95648c30217d1a0509ae7a023de4aa8c..3afc09128254ea6ddc1c361648dab3dd69ddab25 100644
--- a/settingswidget.cpp
+++ b/settingswidget.cpp
@@ -16,8 +16,12 @@
  * GNU General Public License for more details.                            *
  *                                                                         *
  * You should have received a copy of the GNU General Public License       *
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.   *
+ * along with this program.  If not, see <https://www.gnu.org/licenses/>.  *
  **************************************************************************/
+
+#include "settingswidget.h"
+#include "ui_settingswidget.h"
+
 #include <QPixmap>
 #include <QTimer>
 #include <QModelIndex>
@@ -27,43 +31,27 @@
 #include <QMessageBox>
 #include <QSettings>
 
-// account settings
-#include "api/newdevicemodel.h"
+#include "utils.h"
 #include "settingsitemwidget.h"
-
-#include "settingswidget.h"
-#include "ui_settingswidget.h"
-
-#include "ui_advancedsettingswidget.h"
-
 #include "passworddialog.h"
-
 #include "regnamedialog.h"
-#include "ui_regnamedialog.h"
-
 #include "setavatardialog.h"
-#include "ui_setavatardialog.h"
-
 #include "deleteaccountdialog.h"
-#include "ui_deleteaccountdialog.h"
 
-// general Settings
-#include "winsparkle.h"
+#include "api/newdevicemodel.h"
 #include "media/recordingmodel.h"
-
-// av setttings
 #include "audio/settings.h"
 #include "audio/outputdevicemodel.h"
 #include "audio/inputdevicemodel.h"
-
 #include "video/devicemodel.h"
 #include "video/channel.h"
 #include "video/resolution.h"
 #include "video/rate.h"
 #include "video/previewmanager.h"
-
 #include "callmodel.h"
 
+#include "winsparkle.h"
+
 SettingsWidget::SettingsWidget(QWidget* parent)
     : NavWidget(parent),
     ui(new Ui::SettingsWidget),
@@ -130,13 +118,11 @@ SettingsWidget::SettingsWidget(QWidget* parent)
 
     auto accountList = LRCInstance::accountModel().getAccountList();
     if (!accountList.size()) {
-        QMetaObject::Connection* toDisconnect = &accountAddedConnection_;
-        accountAddedConnection_ = connect(&LRCInstance::accountModel(),
+        Utils::oneShotConnect(&LRCInstance::accountModel(),
             &lrc::api::NewAccountModel::accountAdded,
-            [this, toDisconnect](const std::string& accountId) {
+            [this](const std::string& accountId) {
                 Q_UNUSED(accountId);
                 setConnections();
-                QObject::disconnect(*toDisconnect);
             });
     } else {
         setConnections();
diff --git a/settingswidget.h b/settingswidget.h
index d02c6c6fb08a98b15e60857636c502d8401ecd77..04ccdf8f572cadc2813e279a776ef6588c036625 100644
--- a/settingswidget.h
+++ b/settingswidget.h
@@ -36,7 +36,6 @@
 // av settings
 #include "video/devicemodel.h"
 
-
 namespace Ui {
     class SettingsWidget;
 }
@@ -122,11 +121,9 @@ private slots:
 
     void setButtonIconSlot(int frame);
 
-
     // *************************  General Settings  *************************
 private:
     void populateGeneralSettings();
-    QMetaObject::Connection accountAddedConnection_;
 
 private slots:
     void setNotificationsSlot(int state);
diff --git a/utils.cpp b/utils.cpp
index cb80f03dc6600f53ef7e2aeb230ae111b4d12865..8828b023255625e31b9aac84af21d80c81d3dae3 100644
--- a/utils.cpp
+++ b/utils.cpp
@@ -358,16 +358,6 @@ Utils::formatTimeString(const std::time_t& timestamp)
     }
 }
 
-const lrc::api::conversation::Info*
-Utils::getConversationPtrFromUid(const std::string& uid, const lrc::api::ConversationModel& model) {
-    auto currentConversation = Utils::getConversationFromUid(LRCInstance::getSelectedConvUid(), model);
-    auto conversations = model.allFilteredConversations();
-    if (currentConversation == conversations.end()) {
-        return nullptr;
-    }
-    return &(conversations[std::distance(model.allFilteredConversations().begin(), currentConversation)]);
-}
-
 lrc::api::ConversationModel::ConversationQueue::const_iterator
 Utils::getConversationFromUid(const std::string& uid, const lrc::api::ConversationModel& model) {
     return std::find_if(model.allFilteredConversations().begin(), model.allFilteredConversations().end(),
@@ -453,4 +443,4 @@ Utils::getConversationFromCallId(const std::string& callId)
         }
     }
     return "";
-}
\ No newline at end of file
+}
diff --git a/utils.h b/utils.h
index 4e4125e53d718b6c18229cf7aa5105c18929906a..25665f7a90d18c7c1eff9b22398ac85949dc8712 100644
--- a/utils.h
+++ b/utils.h
@@ -71,7 +71,6 @@ namespace Utils
     std::string secondBestNameForAccount(const lrc::api::account::Info& account); // returns empty string if only infoHash is available
     lrc::api::profile::Type profileType(const lrc::api::conversation::Info & conv, const lrc::api::ConversationModel & model);
     std::string formatTimeString(const std::time_t& timestamp);
-    const lrc::api::conversation::Info * getConversationPtrFromUid(const std::string & uid, const lrc::api::ConversationModel & model);
     lrc::api::ConversationModel::ConversationQueue::const_iterator getConversationFromUid(const std::string& uid, const lrc::api::ConversationModel& model);
     lrc::api::ConversationModel::ConversationQueue::const_iterator getConversationFromUri(const std::string& uri, const lrc::api::ConversationModel& model);
     bool isInteractionGenerated(const lrc::api::interaction::Type& interaction);
@@ -81,6 +80,26 @@ namespace Utils
     QPixmap generateTintedPixmap(const QString& filename, QColor color);
     std::string getConversationFromCallId(const std::string& callId);
 
+    template <typename Func1, typename Func2>
+    void
+    oneShotConnect(const typename QtPrivate::FunctionPointer<Func1>::Object* sender, Func1 signal, Func2 slot)
+    {
+        QMetaObject::Connection* const connection = new QMetaObject::Connection;
+        *connection = QObject::connect(sender, signal, slot);
+        QMetaObject::Connection* const disconnectConnection = new QMetaObject::Connection;
+        *disconnectConnection = QObject::connect(sender, signal,
+            [connection, disconnectConnection] {
+                if (connection) {
+                    QObject::disconnect(*connection);
+                    delete connection;
+                }
+                if (disconnectConnection) {
+                    QObject::disconnect(*disconnectConnection);
+                    delete disconnectConnection;
+                }
+            });
+    }
+
     template<typename E>
     constexpr inline typename std::enable_if<   std::is_enum<E>::value,
         typename std::underlying_type<E>::type
diff --git a/videooverlay.cpp b/videooverlay.cpp
index 8ba491917961b130f772e80b0890a4cacd23bea4..aeac7511ed6a8f2b2b33a41182f03c0941024b84 100644
--- a/videooverlay.cpp
+++ b/videooverlay.cpp
@@ -48,19 +48,14 @@ VideoOverlay::VideoOverlay(QWidget* parent) :
 
     auto accountList = LRCInstance::accountModel().getAccountList();
     if (!accountList.size()) {
-        QMetaObject::Connection* const connection = new QMetaObject::Connection;
-        connect(&LRCInstance::accountModel(),
+        Utils::oneShotConnect(&LRCInstance::accountModel(),
             &lrc::api::NewAccountModel::accountAdded,
-            [this, connection](const std::string& accountId) {
+            [this](const std::string& accountId) {
                 Q_UNUSED(accountId);
                 connect(LRCInstance::getCurrentCallModel(), &lrc::api::NewCallModel::callStarted,
                     [this](const std::string& tempCallId) {
                         callId = tempCallId;
                     });
-                if (connection) {
-                    QObject::disconnect(*connection);
-                    delete connection;
-                }
             });
     } else {
         connect(LRCInstance::getCurrentCallModel(), &lrc::api::NewCallModel::callStarted,
diff --git a/web/chatview.js b/web/chatview.js
index c9d42d717289ff16694d703f5a7e6c13bfdd0d51..76ee32796b293c809a1a2e377c90698cd596acee 100644
--- a/web/chatview.js
+++ b/web/chatview.js
@@ -283,20 +283,6 @@ function sendFile()
     window.jsbridge.sendFile();
 }
 
-/**
- * Clear all messages.
- */
-/* exported clearMessages */
-function clearMessages()
-{
-    while (messages.firstChild) {
-        messages.removeChild(messages.firstChild)
-    }
-    canLazyLoad = false
-
-    window.jsbridge.messagesCleared()
-}
-
 /**
  * Convert text to HTML.
  */
@@ -1480,6 +1466,20 @@ function showMessagesDiv()
     }
 }
 
+/**
+ * Clear all messages.
+ */
+/* exported clearMessages */
+function clearMessages()
+{
+    canLazyLoad = false
+    while (messages.firstChild) {
+        messages.removeChild(messages.firstChild)
+    }
+
+    window.jsbridge.emitMessagesCleared()
+}
+
 /**
  * Set history buffer, initialize messages div and display a first batch
  * of messages.
@@ -1490,11 +1490,8 @@ function showMessagesDiv()
  * @param messages_array should contain history to be printed
  */
 /* exported printHistory */
-function printHistory(messages_array, fadein = false)
+function printHistory(messages_array)
 {
-    if(fadein)
-        hideMessagesDiv()
-
     historyBuffer = messages_array
     historyBufferIndex = 0
 
@@ -1504,8 +1501,7 @@ function printHistory(messages_array, fadein = false)
 
     canLazyLoad = true
 
-    if(fadein)
-        showMessagesDiv()
+    window.jsbridge.emitMessagesLoaded()
 }
 
 /**
diff --git a/wizarddialog.cpp b/wizarddialog.cpp
deleted file mode 100644
index eb2653c4593f509a7ca400458b8b10184b217b7b..0000000000000000000000000000000000000000
--- a/wizarddialog.cpp
+++ /dev/null
@@ -1,410 +0,0 @@
- /**************************************************************************
- * Copyright (C) 2015-2017 by Savoir-faire Linux                           *
- * Author: Edric Ladent Milaret <edric.ladent-milaret@savoirfairelinux.com>*
- * Author: Anthony Léonard <anthony.leonard@savoirfairelinux.com>          *
- * Author: Olivier Soldano <olivier.soldano@savoirfairelinux.com>          *
- * Author: Andreas Traczyk <andreas.traczyk@savoirfairelinux.com>          *
- *                                                                         *
- * This program is free software; you can redistribute it and/or modify    *
- * it under the terms of the GNU General Public License as published by    *
- * the Free Software Foundation; either version 3 of the License, or       *
- * (at your option) any later version.                                     *
- *                                                                         *
- * This program is distributed in the hope that it will be useful,         *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of          *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the           *
- * GNU General Public License for more details.                            *
- *                                                                         *
- * You should have received a copy of the GNU General Public License       *
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.   *
- **************************************************************************/
-
-#include "wizarddialog.h"
-#include "ui_wizarddialog.h"
-
-#include <QMovie>
-#include <QMessageBox>
-#include <QFileDialog>
-
-#include "accountmodel.h"
-#include "account.h"
-#include "profilemodel.h"
-#include "profile.h"
-#include "namedirectory.h"
-
-#include "utils.h"
-
-const QString DEFAULT_RING_ACCT_ALIAS = QObject::tr("Jami account", "Default alias for new Jami account");
-
-WizardDialog::WizardDialog(WizardMode wizardMode, AccountInfo* toBeMigrated, QWidget* parent) :
-    QDialog(parent),
-    ui(new Ui::WizardDialog),
-    account_(toBeMigrated),
-    wizardMode_(wizardMode),
-    nameLookupTimer_(this)
-{
-    ui->setupUi(this);
-
-    Qt::WindowFlags flags = windowFlags();
-    flags = flags & (~Qt::WindowContextHelpButtonHint);
-
-    setWindowFlags(flags);
-
-    QPixmap logo(":/images/logo-jami-standard-coul.png");
-
-    ui->welcomeLogo->setPixmap(logo.scaledToHeight(65, Qt::SmoothTransformation));
-    ui->welcomeLogo->setAlignment(Qt::AlignHCenter);
-
-    ui->fullNameEdit->setText(Utils::GetCurrentUserName());
-
-    movie_ = new QMovie(":/images/loading.gif");
-    ui->spinnerLabel->setMovie(movie_);
-    movie_->start();
-
-    if (wizardMode_ == MIGRATION) {
-        Utils::setStackWidget(ui->stackedWidget, ui->profilePage);
-        ui->usernameEdit->setEnabled(false);
-        ui->usernameEdit->setText(QString::fromStdString(toBeMigrated->profileInfo.alias));
-        ui->previousButton->hide();
-        ui->photoBooth->hide();
-        ui->pinEdit->hide();
-        ui->infoLabel->setText(tr("Your account needs to be migrated. Enter your password."));
-    } else {
-        ui->navBarWidget->hide();
-    }
-
-    ui->searchingStateLabel->clear();
-    connect(&NameDirectory::instance(), SIGNAL(registeredNameFound(Account*,NameDirectory::LookupStatus,const QString&,const QString&)),
-            this, SLOT(handle_registeredNameFound(Account*,NameDirectory::LookupStatus,const QString&,const QString&)));
-
-    nameLookupTimer_.setSingleShot(true);
-    connect(&nameLookupTimer_, &QTimer::timeout, this, &WizardDialog::timeoutNameLookupTimer);
-    connect(ui->photoBooth, &PhotoboothWidget::photoTaken, this, &WizardDialog::on_photoTaken);
-    ui->avatarLabel->hide();
-}
-
-WizardDialog::~WizardDialog()
-{
-    disconnect(&NameDirectory::instance(), SIGNAL(registeredNameFound(Account*,NameDirectory::LookupStatus,const QString&,const QString&)),
-               this, SLOT(handle_registeredNameFound(Account*,NameDirectory::LookupStatus,const QString&,const QString&)));
-    delete ui;
-}
-
-void
-WizardDialog::processWizardInformations()
-{
-    if (wizardMode_ == MIGRATION)
-        ui->progressLabel->setText(tr("Migrating your Jami account..."));
-    else if (wizardMode_ == IMPORT)
-        ui->progressLabel->setText(tr("Importing account archive..."));
-    else
-        ui->progressLabel->setText(tr("Generating your Jami account..."));
-
-    if (wizardMode_ != IMPORT) {
-        if (ui->pinEdit->isVisible() && ui->pinEdit->text().isEmpty()) {
-            ui->pinEdit->setStyleSheet("border-color: rgb(204, 0, 0);");
-            return;
-        }
-
-        if (ui->passwordEdit->text() != ui->confirmPasswordEdit->text()) {
-            ui->passwordEdit->setStyleSheet("border-color: rgb(204, 0, 0);");
-            ui->confirmPasswordEdit->setStyleSheet("border-color: rgb(204, 0, 0);");
-            return;
-        } else {
-            ui->passwordEdit->setStyleSheet("border-color: rgb(0, 192, 212);");
-            ui->confirmPasswordEdit->setStyleSheet("border-color: rgb(0, 192, 212);");
-            ui->pinEdit->setStyleSheet("border-color: rgb(0, 192, 212);");
-        }
-
-        QString accountAlias = (ui->fullNameEdit->text().isEmpty() ||
-                                ui->fullNameEdit->text().isNull()) ? DEFAULT_RING_ACCT_ALIAS : ui->fullNameEdit->text();
-        QString archivePin = (ui->pinEdit->text().isEmpty() || ui->pinEdit->text().isNull()) ? QString() : ui->pinEdit->text();
-
-        createRingAccount(accountAlias, ui->passwordEdit->text(), archivePin);
-
-        ui->passwordEdit->clear();
-        ui->confirmPasswordEdit->clear();
-        ui->pinEdit->clear();
-    }
-
-    Utils::CreateStartupLink();
-}
-
-void
-WizardDialog::closeEvent(QCloseEvent* event)
-{
-    Q_UNUSED(event);
-    if (wizardMode_ == WIZARD){
-        done(QDialog::Rejected);
-    } else {
-        QDialog::closeEvent(event);
-    }
-}
-
-void
-WizardDialog::on_photoTaken(QString fileName)
-{
-    auto image = QImage(fileName);
-    auto avatar = image.scaled(100, 100, Qt::KeepAspectRatioByExpanding, Qt::SmoothTransformation);
-    ProfileModel::instance().selectedProfile()->person()->setPhoto(avatar);
-    ui->avatarLabel->setPixmap(QPixmap::fromImage(Utils::getCirclePhoto(avatar, ui->avatarLabel->width())));
-    ui->photoBooth->stopBooth();
-    ui->avatarLabel->show();
-}
-
-void
-WizardDialog::on_existingPushButton_clicked()
-{
-    ui->navBarWidget->show();
-    ui->nextButton->hide();
-    Utils::setStackWidget(ui->stackedWidget, ui->linkMethodPage);
-}
-
-void
-WizardDialog::on_newAccountButton_clicked()
-{
-    wizardMode_ = NEW_ACCOUNT;
-    changePage(false);
-}
-
-void
-WizardDialog::changePage(bool existingAccount)
-{
-    if (existingAccount) { // If user want to add a device
-        ui->accountLabel->setText(tr("Add a device"));
-        Utils::setStackWidget(ui->stackedWidget, ui->explanationPage);
-        ui->photoBooth->hide();
-    } else { // If user want to create a new account
-        ui->accountLabel->setText(tr("Create your account"));
-        Utils::setStackWidget(ui->stackedWidget, ui->profilePage);
-        ui->photoBooth->startBooth();
-        ui->photoBooth->show();
-    }
-    ui->navBarWidget->show();
-    ui->avatarLabel->setHidden(true);
-    ui->infoLabel->setHidden(existingAccount);
-    ui->usernameEdit->setHidden(existingAccount);
-    ui->signUpCheckbox->setHidden(existingAccount);
-    ui->signUpCheckbox->setChecked(!existingAccount);
-    ui->confirmPasswordEdit->setHidden(existingAccount);
-    ui->searchingStateLabel->setHidden(existingAccount);
-
-    ui->pinEdit->setVisible(existingAccount);
-}
-
-void
-WizardDialog::on_nextButton_clicked()
-{
-    const QWidget* curWidget = ui->stackedWidget->currentWidget();
-    if (curWidget == ui->profilePage) {
-        ui->photoBooth->stopBooth();
-    }
-    if (curWidget == ui->profilePage || curWidget == ui->explanationPage) {
-        Utils::setStackWidget(ui->stackedWidget, ui->accountPage);
-    } else if (curWidget == ui->accountPage) {
-        processWizardInformations();
-    } else if (curWidget == ui->fileImportPage) {
-        validateFileImport();
-    }
-}
-
-void
-WizardDialog::on_previousButton_clicked()
-{
-    const QWidget* curWidget = ui->stackedWidget->currentWidget();
-
-    if (curWidget == ui->profilePage) {
-        ui->navBarWidget->hide();
-        Utils::setStackWidget(ui->stackedWidget, ui->welcomePage);
-    } else if (curWidget == ui->explanationPage || curWidget == ui->fileImportPage) {
-        ui->navBarWidget->show();
-        ui->nextButton->hide();
-        Utils::setStackWidget(ui->stackedWidget, ui->linkMethodPage);
-    } else if (curWidget == ui->accountPage) {
-
-        if (ui->pinEdit->isVisible()) {
-            // If we are adding a device
-            Utils::setStackWidget(ui->stackedWidget, ui->explanationPage);
-        } else {
-            ui->photoBooth->startBooth();
-            ui->photoBooth->show();
-            Utils::setStackWidget(ui->stackedWidget, ui->profilePage);
-        }
-
-        ui->passwordEdit->setStyleSheet("border-color: rgb(0, 192, 212);");
-        ui->confirmPasswordEdit->setStyleSheet("border-color: rgb(0, 192, 212);");
-        ui->pinEdit->setStyleSheet("border-color: rgb(0, 192, 212);");
-
-    } else if (curWidget == ui->linkMethodPage) {
-        ui->navBarWidget->hide();
-        ui->nextButton->show();
-        Utils::setStackWidget(ui->stackedWidget, ui->welcomePage);
-    } else if (curWidget == ui->spinnerPage) {
-        ui->nextButton->show();
-        ui->navBarWidget->hide();
-        Utils::setStackWidget(ui->stackedWidget, ui->welcomePage);
-    }
-}
-
-void
-WizardDialog::on_passwordEdit_textChanged(const QString& arg1)
-{
-    Q_UNUSED(arg1)
-
-    if (ui->pinEdit->isVisible()) {
-        ui->confirmPasswordEdit->setText(ui->passwordEdit->text());
-    }
-}
-
-void
-WizardDialog::on_usernameEdit_textChanged(const QString &arg1)
-{
-    Q_UNUSED(arg1)
-    if(ui->signUpCheckbox->isChecked() && !arg1.isEmpty()) {
-        ui->searchingStateLabel->setText(tr("Searching..."));
-        nameLookupTimer_.start(1500);
-    } else {
-        ui->searchingStateLabel->clear();
-        nameLookupTimer_.stop();
-    }
-}
-
-void
-WizardDialog::timeoutNameLookupTimer()
-{
-    if(ui->signUpCheckbox->isChecked() && !ui->usernameEdit->text().isEmpty()) {
-        NameDirectory::instance().lookupName(nullptr, QString(), ui->usernameEdit->text());
-    } else {
-        ui->searchingStateLabel->clear();
-    }
-}
-
-void
-WizardDialog::handle_registeredNameFound (Account* account, NameDirectory::LookupStatus status, const QString& address, const QString& name)
-{
-    Q_UNUSED(account)
-    Q_UNUSED(address)
-    Q_UNUSED(name)
-#pragma push_macro("ERROR")
-#undef ERROR
-    switch(status) {
-    case NameDirectory::LookupStatus::SUCCESS:
-        ui->searchingStateLabel->setText(tr("Username not available."));
-        break;
-    case NameDirectory::LookupStatus::NOT_FOUND:
-        ui->searchingStateLabel->setText(tr("Username is available."));
-        break;
-    case NameDirectory::LookupStatus::INVALID_NAME:
-        ui->searchingStateLabel->setText(tr("Username is invalid."));
-        break;
-    case NameDirectory::LookupStatus::ERROR:
-        ui->searchingStateLabel->setText(tr("Network error."));
-        break;
-    }
-#pragma pop_macro("ERROR")
-}
-
-void
-WizardDialog::handle_nameRegistrationEnded(NameDirectory::RegisterNameStatus status, const QString& name)
-{
-    Q_UNUSED(name);
-    Q_UNUSED(status);
-    accept();
-}
-
-void
-WizardDialog::on_signUpCheckbox_toggled(bool checked)
-{
-    if (checked) {
-        ui->usernameEdit->setEnabled(true);
-    } else {
-        ui->usernameEdit->setEnabled(false);
-        ui->usernameEdit->clear();
-    }
-}
-
-void
-WizardDialog::validateFileImport()
-{
-    // reset original color
-    ui->archivePasswordInput->setStyleSheet("border-color: rgb(0, 192, 212);");
-
-    // A file has been selected
-    if (! ui->archivePathSelector->text().isEmpty() && ! ui->archivePathSelector->text().isNull()){
-        ui->archivePasswordInput->setEnabled(true);
-        Profile *profile = ProfileModel::instance().selectedProfile();
-        ui->signUpCheckbox->setChecked(false);
-        createRingAccount(profile->person()->formattedName(),
-                          ui->archivePasswordInput->text(),
-                          QString(),
-                          ui->archivePathSelector->text());
-        processWizardInformations();
-    }
-}
-
-void WizardDialog::on_archivePathSelector_clicked()
-{
-    QString filePath;
-    filePath = QFileDialog::getOpenFileName(this,
-                                            tr("Open File"),
-                                            QString(),
-                                            tr("Jami archive files (*.gz);; All files (*)"));
-
-    // for export get current account archive path
-    // for import use set path
-    // check if archive has password
-    // if it has, prompt for password
-    filePath = QDir::toNativeSeparators(filePath);
-    ui->archivePathSelector->setText(filePath);
-}
-
-void
-WizardDialog::createRingAccount(const QString &displayName,
-                                const QString &password,
-                                const QString &pin,
-                                const QString &archivePath)
-{
-    QtConcurrent::run(
-        [=] {
-            LRCInstance::accountModel().createNewAccount(
-                lrc::api::profile::Type::RING,
-                displayName.toStdString(),
-                archivePath.toStdString(),
-                password.toStdString(),
-                pin.toStdString()
-            );
-        });
-
-    connect(&LRCInstance::accountModel(), &lrc::api::NewAccountModel::accountAdded,
-            this, &WizardDialog::slotAccountAdded);
-
-    ui->navBarWidget->hide();
-    Utils::setStackWidget(ui->stackedWidget, ui->spinnerPage);
-    repaint();
-}
-
-void
-WizardDialog::slotAccountAdded(const std::string& accountId)
-{
-    auto confProps = LRCInstance::accountModel().getAccountConfig(accountId);
-    confProps.Ringtone.ringtonePath = Utils::GetRingtonePath().toStdString();
-    LRCInstance::accountModel().setAccountConfig(accountId, confProps);
-    accept();
-}
-
-void
-WizardDialog::on_dhtImportBtn_clicked()
-{
-    ui->nextButton->show();
-    changePage(true);
-}
-
-void
-WizardDialog::on_fileImportBtn_clicked()
-{
-    ui->navBarWidget->show();
-    ui->nextButton->show();
-    wizardMode_ = IMPORT;
-    Utils::setStackWidget(ui->stackedWidget, ui->fileImportPage);
-
-}
diff --git a/wizarddialog.h b/wizarddialog.h
deleted file mode 100644
index b4ca1863dd9d4f5c1d793a29bb3afaf3f6817e2f..0000000000000000000000000000000000000000
--- a/wizarddialog.h
+++ /dev/null
@@ -1,89 +0,0 @@
-/**************************************************************************
-* Copyright (C) 2015-2017 by Savoir-faire Linux                           *
-* Author: Edric Ladent Milaret <edric.ladent-milaret@savoirfairelinux.com>*
-* Author: Anthony Léonard <anthony.leonard@savoirfairelinux.com>          *
-* Author: Olivier Soldano <olivier.soldano@savoirfairelinux.com>          *
-*                                                                         *
-* This program is free software; you can redistribute it and/or modify    *
-* it under the terms of the GNU General Public License as published by    *
-* the Free Software Foundation; either version 3 of the License, or       *
-* (at your option) any later version.                                     *
-*                                                                         *
-* This program is distributed in the hope that it will be useful,         *
-* but WITHOUT ANY WARRANTY; without even the implied warranty of          *
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the           *
-* GNU General Public License for more details.                            *
-*                                                                         *
-* You should have received a copy of the GNU General Public License       *
-* along with this program.  If not, see <http://www.gnu.org/licenses/>.   *
-**************************************************************************/
-
-#pragma once
-
-#include <QDialog>
-#include <QtConcurrent/QtConcurrent>
-
-#include "account.h"
-#include "person.h"
-
-#include "lrcinstance.h"
-
-namespace Ui {
-class WizardDialog;
-}
-
-class WizardDialog : public QDialog
-{
-    Q_OBJECT
-
-public:
-    using AccountInfo = lrc::api::account::Info;
-
-    enum WizardMode {
-        WIZARD,
-        NEW_ACCOUNT,
-        IMPORT,
-        MIGRATION
-    };
-
-public:
-    explicit WizardDialog(WizardMode wizardMode = WIZARD, AccountInfo* toBeMigrated = nullptr, QWidget* parent = 0);
-    ~WizardDialog();
-
-//UI Slots
-private slots:
-    void on_existingPushButton_clicked();
-    void on_newAccountButton_clicked();
-    void on_nextButton_clicked();
-    void on_previousButton_clicked();
-    void on_passwordEdit_textChanged(const QString& arg1);
-
-private slots:
-    void on_usernameEdit_textChanged(const QString& arg1);
-    void handle_registeredNameFound(Account *account, NameDirectory::LookupStatus status, const QString& address, const QString& name);
-    void handle_nameRegistrationEnded(NameDirectory::RegisterNameStatus status, const QString& name);
-    void timeoutNameLookupTimer();
-    void on_photoTaken(QString fileName);
-    void on_signUpCheckbox_toggled(bool checked);
-    void closeEvent(QCloseEvent* event);
-    void on_archivePathSelector_clicked();
-    void on_dhtImportBtn_clicked();
-    void on_fileImportBtn_clicked();
-    void slotAccountAdded(const std::string & accountId);
-
-private:
-    Ui::WizardDialog* ui;
-    AccountInfo* account_;
-    WizardMode wizardMode_;
-    QMovie* movie_;
-    QTimer nameLookupTimer_;
-
-    void setup();
-    void changePage(bool existingAccount);
-    void validateFileImport();
-    void createRingAccount(const QString &displayName = QString(),
-                           const QString &password = QString(),
-                           const QString &pin = QString(),
-                           const QString &archivePath = QString());
-    void processWizardInformations();
-};
diff --git a/wizarddialog.ui b/wizarddialog.ui
deleted file mode 100644
index 1f5cccbaba172486dcb760e08a4a80fcd204e25e..0000000000000000000000000000000000000000
--- a/wizarddialog.ui
+++ /dev/null
@@ -1,1048 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ui version="4.0">
- <class>WizardDialog</class>
- <widget class="QDialog" name="WizardDialog">
-  <property name="geometry">
-   <rect>
-    <x>0</x>
-    <y>0</y>
-    <width>500</width>
-    <height>500</height>
-   </rect>
-  </property>
-  <property name="sizePolicy">
-   <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
-    <horstretch>0</horstretch>
-    <verstretch>0</verstretch>
-   </sizepolicy>
-  </property>
-  <property name="minimumSize">
-   <size>
-    <width>500</width>
-    <height>500</height>
-   </size>
-  </property>
-  <property name="windowTitle">
-   <string/>
-  </property>
-  <property name="windowIcon">
-   <iconset resource="ressources.qrc">
-    <normaloff>:/images/jami.png</normaloff>:/images/jami.png</iconset>
-  </property>
-  <property name="accessibleName">
-   <string>Wizard Dialog</string>
-  </property>
-  <property name="accessibleDescription">
-   <string>Account creation wizard dialog</string>
-  </property>
-  <layout class="QVBoxLayout" name="verticalLayout">
-   <property name="bottomMargin">
-    <number>0</number>
-   </property>
-   <item>
-    <widget class="QStackedWidget" name="stackedWidget">
-     <property name="currentIndex">
-      <number>0</number>
-     </property>
-     <widget class="QWidget" name="welcomePage">
-      <layout class="QVBoxLayout" name="verticalLayout_3">
-       <item>
-        <spacer name="verticalSpacer_6">
-         <property name="orientation">
-          <enum>Qt::Vertical</enum>
-         </property>
-         <property name="sizeHint" stdset="0">
-          <size>
-           <width>20</width>
-           <height>40</height>
-          </size>
-         </property>
-        </spacer>
-       </item>
-       <item alignment="Qt::AlignHCenter">
-        <widget class="QLabel" name="welcomeLabel">
-         <property name="font">
-          <font>
-           <pointsize>30</pointsize>
-           <weight>50</weight>
-           <bold>false</bold>
-          </font>
-         </property>
-         <property name="accessibleName">
-          <string>Welcome Label</string>
-         </property>
-         <property name="styleSheet">
-          <string notr="true">color: rgb(63, 63, 63)</string>
-         </property>
-         <property name="text">
-          <string> Welcome to</string>
-         </property>
-         <property name="margin">
-          <number>0</number>
-         </property>
-         <property name="indent">
-          <number>0</number>
-         </property>
-        </widget>
-       </item>
-       <item>
-        <spacer name="verticalSpacer_12">
-         <property name="orientation">
-          <enum>Qt::Vertical</enum>
-         </property>
-         <property name="sizeType">
-          <enum>QSizePolicy::Fixed</enum>
-         </property>
-         <property name="sizeHint" stdset="0">
-          <size>
-           <width>20</width>
-           <height>10</height>
-          </size>
-         </property>
-        </spacer>
-       </item>
-       <item>
-        <widget class="QLabel" name="welcomeLogo">
-         <property name="accessibleName">
-          <string>Welcome Logo</string>
-         </property>
-         <property name="text">
-          <string/>
-         </property>
-        </widget>
-       </item>
-       <item>
-        <spacer name="verticalSpacer_7">
-         <property name="orientation">
-          <enum>Qt::Vertical</enum>
-         </property>
-         <property name="sizeType">
-          <enum>QSizePolicy::Fixed</enum>
-         </property>
-         <property name="sizeHint" stdset="0">
-          <size>
-           <width>10</width>
-           <height>20</height>
-          </size>
-         </property>
-        </spacer>
-       </item>
-       <item>
-        <widget class="QPushButton" name="newAccountButton">
-         <property name="minimumSize">
-          <size>
-           <width>85</width>
-           <height>30</height>
-          </size>
-         </property>
-         <property name="toolTip">
-          <string>Create Jami account button</string>
-         </property>
-         <property name="accessibleName">
-          <string/>
-         </property>
-         <property name="accessibleDescription">
-          <string>Push button for Jami account creation start trigger</string>
-         </property>
-         <property name="layoutDirection">
-          <enum>Qt::LeftToRight</enum>
-         </property>
-         <property name="text">
-          <string>Create Jami account</string>
-         </property>
-        </widget>
-       </item>
-       <item>
-        <widget class="QPushButton" name="existingPushButton">
-         <property name="minimumSize">
-          <size>
-           <width>85</width>
-           <height>30</height>
-          </size>
-         </property>
-         <property name="toolTip">
-          <string>Link device button</string>
-         </property>
-         <property name="accessibleName">
-          <string/>
-         </property>
-         <property name="accessibleDescription">
-          <string>Push button for device linkage start trigger</string>
-         </property>
-         <property name="text">
-          <string>Link this device to an account</string>
-         </property>
-        </widget>
-       </item>
-       <item>
-        <spacer name="verticalSpacer_5">
-         <property name="orientation">
-          <enum>Qt::Vertical</enum>
-         </property>
-         <property name="sizeHint" stdset="0">
-          <size>
-           <width>20</width>
-           <height>40</height>
-          </size>
-         </property>
-        </spacer>
-       </item>
-      </layout>
-     </widget>
-     <widget class="QWidget" name="linkMethodPage">
-      <layout class="QVBoxLayout" name="verticalLayout_7">
-       <item alignment="Qt::AlignHCenter">
-        <widget class="QLabel" name="label_3">
-         <property name="font">
-          <font>
-           <pointsize>30</pointsize>
-          </font>
-         </property>
-         <property name="styleSheet">
-          <string notr="true">color: rgb(63, 63, 63)</string>
-         </property>
-         <property name="text">
-          <string>Select link method</string>
-         </property>
-        </widget>
-       </item>
-       <item>
-        <spacer name="verticalSpacer_14">
-         <property name="orientation">
-          <enum>Qt::Vertical</enum>
-         </property>
-         <property name="sizeHint" stdset="0">
-          <size>
-           <width>20</width>
-           <height>139</height>
-          </size>
-         </property>
-        </spacer>
-       </item>
-       <item>
-        <layout class="QHBoxLayout" name="horizontalLayout" stretch="1,2,1">
-         <property name="topMargin">
-          <number>0</number>
-         </property>
-         <item>
-          <spacer name="horizontalSpacer_4">
-           <property name="orientation">
-            <enum>Qt::Horizontal</enum>
-           </property>
-           <property name="sizeHint" stdset="0">
-            <size>
-             <width>40</width>
-             <height>20</height>
-            </size>
-           </property>
-          </spacer>
-         </item>
-         <item>
-          <layout class="QVBoxLayout" name="verticalLayout_8">
-           <property name="leftMargin">
-            <number>0</number>
-           </property>
-           <item>
-            <widget class="QPushButton" name="dhtImportBtn">
-             <property name="minimumSize">
-              <size>
-               <width>0</width>
-               <height>30</height>
-              </size>
-             </property>
-             <property name="toolTip">
-              <string>Link account to device from the network</string>
-             </property>
-             <property name="text">
-              <string>Link account from DHT</string>
-             </property>
-            </widget>
-           </item>
-           <item>
-            <widget class="QPushButton" name="fileImportBtn">
-             <property name="minimumSize">
-              <size>
-               <width>0</width>
-               <height>30</height>
-              </size>
-             </property>
-             <property name="toolTip">
-              <string>Link from exported account archive file</string>
-             </property>
-             <property name="text">
-              <string>Link account from file</string>
-             </property>
-            </widget>
-           </item>
-          </layout>
-         </item>
-         <item>
-          <spacer name="horizontalSpacer_3">
-           <property name="orientation">
-            <enum>Qt::Horizontal</enum>
-           </property>
-           <property name="sizeHint" stdset="0">
-            <size>
-             <width>40</width>
-             <height>20</height>
-            </size>
-           </property>
-          </spacer>
-         </item>
-        </layout>
-       </item>
-       <item>
-        <spacer name="verticalSpacer_13">
-         <property name="orientation">
-          <enum>Qt::Vertical</enum>
-         </property>
-         <property name="sizeHint" stdset="0">
-          <size>
-           <width>20</width>
-           <height>139</height>
-          </size>
-         </property>
-        </spacer>
-       </item>
-      </layout>
-     </widget>
-     <widget class="QWidget" name="explanationPage">
-      <layout class="QVBoxLayout" name="verticalLayout_6">
-       <item alignment="Qt::AlignHCenter">
-        <widget class="QLabel" name="label">
-         <property name="font">
-          <font>
-           <pointsize>30</pointsize>
-          </font>
-         </property>
-         <property name="styleSheet">
-          <string notr="true">color: rgb(63, 63, 63)</string>
-         </property>
-         <property name="text">
-          <string>How to add a device</string>
-         </property>
-        </widget>
-       </item>
-       <item>
-        <widget class="QTextBrowser" name="textBrowser">
-         <property name="html">
-          <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
-&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
-p, li { white-space: pre-wrap; }
-&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Cantarell'; font-size:11pt; font-weight:400; font-style:normal;&quot;&gt;
-&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'Ubuntu'; font-size:12pt;&quot;&gt;To link this device to another account, you first &lt;/span&gt;&lt;span style=&quot; font-family:'Ubuntu'; font-size:12pt; font-weight:600;&quot;&gt;need to obtain a PIN&lt;/span&gt;&lt;span style=&quot; font-family:'Ubuntu'; font-size:12pt;&quot;&gt; code. To generate the PIN code:&lt;/span&gt;&lt;/p&gt;
-&lt;ol style=&quot;margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;&quot;&gt;&lt;li style=&quot; font-family:'Ubuntu'; font-size:12pt;&quot; style=&quot; margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Go to the &lt;span style=&quot; font-weight:600;&quot;&gt;Account management setting&lt;/span&gt; of a previous device&lt;/li&gt;
-&lt;li style=&quot; font-family:'Ubuntu'; font-size:12pt;&quot; style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Choose the &lt;span style=&quot; font-weight:600;&quot;&gt;Jami account&lt;/span&gt; you want to use&lt;/li&gt;
-&lt;li style=&quot; font-family:'Ubuntu'; font-size:12pt;&quot; style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Go to the &lt;span style=&quot; font-weight:600;&quot;&gt;Devices&lt;/span&gt; tab&lt;/li&gt;
-&lt;li style=&quot; font-family:'Ubuntu'; font-size:12pt;&quot; style=&quot; margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Select &lt;span style=&quot; font-weight:600;&quot;&gt;Add a device&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;
-&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'Ubuntu'; font-size:12pt;&quot;&gt;You will get the necessary PIN to complete this form. The PIN is only valid for &lt;/span&gt;&lt;span style=&quot; font-family:'Ubuntu'; font-size:12pt; font-weight:600;&quot;&gt;10 minutes&lt;/span&gt;&lt;span style=&quot; font-family:'Ubuntu'; font-size:12pt;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
-         </property>
-        </widget>
-       </item>
-      </layout>
-     </widget>
-     <widget class="QWidget" name="fileImportPage">
-      <layout class="QVBoxLayout" name="verticalLayout_9">
-       <item alignment="Qt::AlignHCenter">
-        <widget class="QLabel" name="label_2">
-         <property name="font">
-          <font>
-           <pointsize>30</pointsize>
-          </font>
-         </property>
-         <property name="styleSheet">
-          <string notr="true">color: rgb(63, 63, 63)</string>
-         </property>
-         <property name="text">
-          <string>Select file to import</string>
-         </property>
-        </widget>
-       </item>
-       <item>
-        <spacer name="verticalSpacer_16">
-         <property name="orientation">
-          <enum>Qt::Vertical</enum>
-         </property>
-         <property name="sizeHint" stdset="0">
-          <size>
-           <width>20</width>
-           <height>126</height>
-          </size>
-         </property>
-        </spacer>
-       </item>
-       <item>
-        <layout class="QHBoxLayout" name="horizontalLayout_3" stretch="1,2">
-         <property name="topMargin">
-          <number>0</number>
-         </property>
-         <item>
-          <widget class="QLabel" name="archivePathLabel">
-           <property name="text">
-            <string>Account archive path:</string>
-           </property>
-          </widget>
-         </item>
-         <item>
-          <widget class="RingButton" name="archivePathSelector">
-           <property name="toolTip">
-            <string>Account archive path selector</string>
-           </property>
-           <property name="text">
-            <string/>
-           </property>
-          </widget>
-         </item>
-        </layout>
-       </item>
-       <item>
-        <layout class="QHBoxLayout" name="horizontalLayout_4" stretch="1,2">
-         <property name="topMargin">
-          <number>0</number>
-         </property>
-         <item>
-          <widget class="QLabel" name="archivePasswordLabel">
-           <property name="text">
-            <string>Archive password:</string>
-           </property>
-          </widget>
-         </item>
-         <item>
-          <widget class="QLineEdit" name="archivePasswordInput">
-           <property name="toolTip">
-            <string>Archive passord input</string>
-           </property>
-           <property name="echoMode">
-            <enum>QLineEdit::Password</enum>
-           </property>
-          </widget>
-         </item>
-        </layout>
-       </item>
-       <item>
-        <spacer name="verticalSpacer_15">
-         <property name="orientation">
-          <enum>Qt::Vertical</enum>
-         </property>
-         <property name="sizeHint" stdset="0">
-          <size>
-           <width>20</width>
-           <height>126</height>
-          </size>
-         </property>
-        </spacer>
-       </item>
-      </layout>
-     </widget>
-     <widget class="QWidget" name="profilePage">
-      <layout class="QVBoxLayout" name="verticalLayout_2">
-       <item alignment="Qt::AlignHCenter">
-        <widget class="QLabel" name="profileLabel">
-         <property name="font">
-          <font>
-           <pointsize>30</pointsize>
-          </font>
-         </property>
-         <property name="styleSheet">
-          <string notr="true">color: rgb(63, 63, 63)</string>
-         </property>
-         <property name="text">
-          <string>Create your profile</string>
-         </property>
-        </widget>
-       </item>
-       <item>
-        <spacer name="verticalSpacer_4">
-         <property name="orientation">
-          <enum>Qt::Vertical</enum>
-         </property>
-         <property name="sizeHint" stdset="0">
-          <size>
-           <width>0</width>
-           <height>0</height>
-          </size>
-         </property>
-        </spacer>
-       </item>
-       <item alignment="Qt::AlignHCenter">
-        <widget class="PhotoboothWidget" name="photoBooth" native="true">
-         <property name="sizePolicy">
-          <sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding">
-           <horstretch>0</horstretch>
-           <verstretch>0</verstretch>
-          </sizepolicy>
-         </property>
-         <property name="minimumSize">
-          <size>
-           <width>300</width>
-           <height>300</height>
-          </size>
-         </property>
-         <property name="toolTip">
-          <string>Photobooth Widget</string>
-         </property>
-         <property name="accessibleName">
-          <string/>
-         </property>
-        </widget>
-       </item>
-       <item alignment="Qt::AlignHCenter">
-        <widget class="QLabel" name="avatarLabel">
-         <property name="enabled">
-          <bool>true</bool>
-         </property>
-         <property name="minimumSize">
-          <size>
-           <width>100</width>
-           <height>100</height>
-          </size>
-         </property>
-         <property name="font">
-          <font>
-           <kerning>true</kerning>
-          </font>
-         </property>
-         <property name="mouseTracking">
-          <bool>false</bool>
-         </property>
-         <property name="toolTip">
-          <string>Avatar display</string>
-         </property>
-         <property name="autoFillBackground">
-          <bool>false</bool>
-         </property>
-         <property name="text">
-          <string/>
-         </property>
-         <property name="textFormat">
-          <enum>Qt::AutoText</enum>
-         </property>
-         <property name="pixmap">
-          <pixmap resource="ressources.qrc">:/images/user/btn-default-userpic.svg</pixmap>
-         </property>
-         <property name="scaledContents">
-          <bool>false</bool>
-         </property>
-         <property name="openExternalLinks">
-          <bool>false</bool>
-         </property>
-         <property name="textInteractionFlags">
-          <set>Qt::NoTextInteraction</set>
-         </property>
-        </widget>
-       </item>
-       <item>
-        <spacer name="verticalSpacer_2">
-         <property name="orientation">
-          <enum>Qt::Vertical</enum>
-         </property>
-         <property name="sizeType">
-          <enum>QSizePolicy::Fixed</enum>
-         </property>
-         <property name="sizeHint" stdset="0">
-          <size>
-           <width>20</width>
-           <height>30</height>
-          </size>
-         </property>
-        </spacer>
-       </item>
-       <item alignment="Qt::AlignHCenter">
-        <widget class="QLabel" name="fullNameLabel">
-         <property name="minimumSize">
-          <size>
-           <width>0</width>
-           <height>17</height>
-          </size>
-         </property>
-         <property name="font">
-          <font>
-           <pointsize>12</pointsize>
-          </font>
-         </property>
-         <property name="text">
-          <string>Enter your full name:</string>
-         </property>
-        </widget>
-       </item>
-       <item alignment="Qt::AlignHCenter">
-        <widget class="QLineEdit" name="fullNameEdit">
-         <property name="minimumSize">
-          <size>
-           <width>200</width>
-           <height>0</height>
-          </size>
-         </property>
-         <property name="maximumSize">
-          <size>
-           <width>200</width>
-           <height>16777215</height>
-          </size>
-         </property>
-         <property name="font">
-          <font>
-           <pointsize>11</pointsize>
-          </font>
-         </property>
-         <property name="toolTip">
-          <string>Full name edit</string>
-         </property>
-         <property name="accessibleName">
-          <string/>
-         </property>
-         <property name="accessibleDescription">
-          <string>Text entry for full name input</string>
-         </property>
-        </widget>
-       </item>
-       <item>
-        <spacer name="verticalSpacer_8">
-         <property name="orientation">
-          <enum>Qt::Vertical</enum>
-         </property>
-         <property name="sizeType">
-          <enum>QSizePolicy::Expanding</enum>
-         </property>
-         <property name="sizeHint" stdset="0">
-          <size>
-           <width>0</width>
-           <height>0</height>
-          </size>
-         </property>
-        </spacer>
-       </item>
-      </layout>
-     </widget>
-     <widget class="QWidget" name="accountPage">
-      <layout class="QVBoxLayout" name="verticalLayout_5">
-       <item alignment="Qt::AlignHCenter">
-        <widget class="QLabel" name="accountLabel">
-         <property name="font">
-          <font>
-           <pointsize>30</pointsize>
-          </font>
-         </property>
-         <property name="styleSheet">
-          <string notr="true">color: rgb(63, 63, 63)</string>
-         </property>
-         <property name="text">
-          <string>Create your account</string>
-         </property>
-        </widget>
-       </item>
-       <item>
-        <spacer name="verticalSpacer_9">
-         <property name="orientation">
-          <enum>Qt::Vertical</enum>
-         </property>
-         <property name="sizeHint" stdset="0">
-          <size>
-           <width>0</width>
-           <height>0</height>
-          </size>
-         </property>
-        </spacer>
-       </item>
-       <item>
-        <widget class="QLabel" name="infoLabel">
-         <property name="font">
-          <font>
-           <pointsize>12</pointsize>
-          </font>
-         </property>
-         <property name="text">
-          <string/>
-         </property>
-         <property name="alignment">
-          <set>Qt::AlignCenter</set>
-         </property>
-         <property name="wordWrap">
-          <bool>true</bool>
-         </property>
-         <property name="buddy">
-          <cstring>usernameEdit</cstring>
-         </property>
-        </widget>
-       </item>
-       <item alignment="Qt::AlignHCenter">
-        <widget class="QCheckBox" name="signUpCheckbox">
-         <property name="toolTip">
-          <string>Register your username on the network. This will reserve the username so that only you can use it. Your friends will be able to call you with your usename instead of using your ID.</string>
-         </property>
-         <property name="accessibleName">
-          <string>Public username checkbox</string>
-         </property>
-         <property name="accessibleDescription">
-          <string>Checkbox selecting if the user wants a public username</string>
-         </property>
-         <property name="text">
-          <string>Register public username (experimental)</string>
-         </property>
-         <property name="checked">
-          <bool>true</bool>
-         </property>
-        </widget>
-       </item>
-       <item>
-        <layout class="QHBoxLayout" name="horizontalLayout_2">
-         <property name="spacing">
-          <number>0</number>
-         </property>
-         <item>
-          <spacer name="horizontalSpacer_2">
-           <property name="orientation">
-            <enum>Qt::Horizontal</enum>
-           </property>
-           <property name="sizeHint" stdset="0">
-            <size>
-             <width>40</width>
-             <height>20</height>
-            </size>
-           </property>
-          </spacer>
-         </item>
-         <item>
-          <widget class="QLineEdit" name="usernameEdit">
-           <property name="minimumSize">
-            <size>
-             <width>200</width>
-             <height>0</height>
-            </size>
-           </property>
-           <property name="maximumSize">
-            <size>
-             <width>200</width>
-             <height>16777215</height>
-            </size>
-           </property>
-           <property name="font">
-            <font>
-             <pointsize>11</pointsize>
-            </font>
-           </property>
-           <property name="toolTip">
-            <string>Public username edit</string>
-           </property>
-           <property name="accessibleName">
-            <string/>
-           </property>
-           <property name="placeholderText">
-            <string>Choose your username</string>
-           </property>
-           <property name="clearButtonEnabled">
-            <bool>true</bool>
-           </property>
-          </widget>
-         </item>
-         <item>
-          <widget class="QLabel" name="searchingStateLabel">
-           <property name="sizePolicy">
-            <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
-             <horstretch>0</horstretch>
-             <verstretch>0</verstretch>
-            </sizepolicy>
-           </property>
-           <property name="accessibleName">
-            <string>Public username validation status</string>
-           </property>
-           <property name="text">
-            <string>Searching...</string>
-           </property>
-           <property name="margin">
-            <number>6</number>
-           </property>
-          </widget>
-         </item>
-        </layout>
-       </item>
-       <item alignment="Qt::AlignHCenter">
-        <widget class="QLineEdit" name="pinEdit">
-         <property name="minimumSize">
-          <size>
-           <width>200</width>
-           <height>0</height>
-          </size>
-         </property>
-         <property name="maximumSize">
-          <size>
-           <width>200</width>
-           <height>16777215</height>
-          </size>
-         </property>
-         <property name="font">
-          <font>
-           <pointsize>11</pointsize>
-          </font>
-         </property>
-         <property name="toolTip">
-          <string>PIN edit</string>
-         </property>
-         <property name="accessibleName">
-          <string/>
-         </property>
-         <property name="accessibleDescription">
-          <string>Device linking PIN text entry</string>
-         </property>
-         <property name="placeholderText">
-          <string>Enter your pin</string>
-         </property>
-         <property name="clearButtonEnabled">
-          <bool>false</bool>
-         </property>
-        </widget>
-       </item>
-       <item alignment="Qt::AlignHCenter">
-        <widget class="QLineEdit" name="passwordEdit">
-         <property name="minimumSize">
-          <size>
-           <width>200</width>
-           <height>0</height>
-          </size>
-         </property>
-         <property name="maximumSize">
-          <size>
-           <width>200</width>
-           <height>16777215</height>
-          </size>
-         </property>
-         <property name="font">
-          <font>
-           <pointsize>11</pointsize>
-          </font>
-         </property>
-         <property name="toolTip">
-          <string>Password text input</string>
-         </property>
-         <property name="accessibleName">
-          <string/>
-         </property>
-         <property name="accessibleDescription">
-          <string>Password text entry</string>
-         </property>
-         <property name="echoMode">
-          <enum>QLineEdit::Password</enum>
-         </property>
-         <property name="placeholderText">
-          <string>Password</string>
-         </property>
-         <property name="clearButtonEnabled">
-          <bool>false</bool>
-         </property>
-        </widget>
-       </item>
-       <item alignment="Qt::AlignHCenter">
-        <widget class="QLineEdit" name="confirmPasswordEdit">
-         <property name="minimumSize">
-          <size>
-           <width>200</width>
-           <height>0</height>
-          </size>
-         </property>
-         <property name="maximumSize">
-          <size>
-           <width>200</width>
-           <height>16777215</height>
-          </size>
-         </property>
-         <property name="font">
-          <font>
-           <pointsize>11</pointsize>
-          </font>
-         </property>
-         <property name="toolTip">
-          <string>Password confirmation text input</string>
-         </property>
-         <property name="accessibleName">
-          <string/>
-         </property>
-         <property name="accessibleDescription">
-          <string>Password confirmation text input</string>
-         </property>
-         <property name="echoMode">
-          <enum>QLineEdit::Password</enum>
-         </property>
-         <property name="placeholderText">
-          <string>Confirm password</string>
-         </property>
-         <property name="clearButtonEnabled">
-          <bool>false</bool>
-         </property>
-        </widget>
-       </item>
-       <item>
-        <spacer name="verticalSpacer">
-         <property name="orientation">
-          <enum>Qt::Vertical</enum>
-         </property>
-         <property name="sizeHint" stdset="0">
-          <size>
-           <width>0</width>
-           <height>0</height>
-          </size>
-         </property>
-        </spacer>
-       </item>
-      </layout>
-     </widget>
-     <widget class="QWidget" name="spinnerPage">
-      <layout class="QVBoxLayout" name="verticalLayout_4">
-       <item>
-        <spacer name="verticalSpacer_3">
-         <property name="orientation">
-          <enum>Qt::Vertical</enum>
-         </property>
-         <property name="sizeHint" stdset="0">
-          <size>
-           <width>20</width>
-           <height>40</height>
-          </size>
-         </property>
-        </spacer>
-       </item>
-       <item alignment="Qt::AlignHCenter">
-        <widget class="QLabel" name="spinnerLabel">
-         <property name="text">
-          <string/>
-         </property>
-         <property name="pixmap">
-          <pixmap resource="ressources.qrc">:/images/loading.gif</pixmap>
-         </property>
-        </widget>
-       </item>
-       <item>
-        <spacer name="verticalSpacer_11">
-         <property name="orientation">
-          <enum>Qt::Vertical</enum>
-         </property>
-         <property name="sizeHint" stdset="0">
-          <size>
-           <width>20</width>
-           <height>40</height>
-          </size>
-         </property>
-        </spacer>
-       </item>
-       <item alignment="Qt::AlignHCenter">
-        <widget class="QLabel" name="progressLabel">
-         <property name="font">
-          <font>
-           <pointsize>11</pointsize>
-          </font>
-         </property>
-         <property name="text">
-          <string>Generating your Jami account...</string>
-         </property>
-        </widget>
-       </item>
-       <item>
-        <spacer name="verticalSpacer_10">
-         <property name="orientation">
-          <enum>Qt::Vertical</enum>
-         </property>
-         <property name="sizeType">
-          <enum>QSizePolicy::Minimum</enum>
-         </property>
-         <property name="sizeHint" stdset="0">
-          <size>
-           <width>20</width>
-           <height>20</height>
-          </size>
-         </property>
-        </spacer>
-       </item>
-      </layout>
-     </widget>
-    </widget>
-   </item>
-   <item>
-    <widget class="QWidget" name="navBarWidget" native="true">
-     <layout class="QHBoxLayout" name="_2">
-      <item>
-       <widget class="QPushButton" name="previousButton">
-        <property name="minimumSize">
-         <size>
-          <width>85</width>
-          <height>30</height>
-         </size>
-        </property>
-        <property name="toolTip">
-         <string>Previous page button</string>
-        </property>
-        <property name="accessibleName">
-         <string/>
-        </property>
-        <property name="accessibleDescription">
-         <string>push button to access previous page of wizard</string>
-        </property>
-        <property name="text">
-         <string>Previous</string>
-        </property>
-       </widget>
-      </item>
-      <item>
-       <spacer name="horizontalSpacer">
-        <property name="orientation">
-         <enum>Qt::Horizontal</enum>
-        </property>
-        <property name="sizeHint" stdset="0">
-         <size>
-          <width>40</width>
-          <height>20</height>
-         </size>
-        </property>
-       </spacer>
-      </item>
-      <item>
-       <widget class="QPushButton" name="nextButton">
-        <property name="minimumSize">
-         <size>
-          <width>85</width>
-          <height>30</height>
-         </size>
-        </property>
-        <property name="maximumSize">
-         <size>
-          <width>85</width>
-          <height>30</height>
-         </size>
-        </property>
-        <property name="toolTip">
-         <string>Next page Button</string>
-        </property>
-        <property name="accessibleName">
-         <string/>
-        </property>
-        <property name="accessibleDescription">
-         <string>Push button to access next page of wizard</string>
-        </property>
-        <property name="text">
-         <string>Next</string>
-        </property>
-        <property name="flat">
-         <bool>false</bool>
-        </property>
-       </widget>
-      </item>
-     </layout>
-    </widget>
-   </item>
-  </layout>
- </widget>
- <customwidgets>
-  <customwidget>
-   <class>RingButton</class>
-   <extends>QPushButton</extends>
-   <header>ringbutton.h</header>
-  </customwidget>
-  <customwidget>
-   <class>PhotoboothWidget</class>
-   <extends>QWidget</extends>
-   <header>photoboothwidget.h</header>
-   <container>1</container>
-  </customwidget>
- </customwidgets>
- <resources>
-  <include location="ressources.qrc"/>
- </resources>
- <connections/>
-</ui>
diff --git a/wizardwidget.cpp b/wizardwidget.cpp
deleted file mode 100644
index 48bcf813f632a00df74782a29dd86afc21b2f592..0000000000000000000000000000000000000000
--- a/wizardwidget.cpp
+++ /dev/null
@@ -1,403 +0,0 @@
-/**************************************************************************
-* Copyright (C) 2015-2019 by Savoir-faire Linux                           *
-* Author: Edric Ladent Milaret <edric.ladent-milaret@savoirfairelinux.com>*
-* Author: Anthony Léonard <anthony.leonard@savoirfairelinux.com>          *
-* Author: Olivier Soldano <olivier.soldano@savoirfairelinux.com>          *
-* Author: Andreas Traczyk <andreas.traczyk@savoirfairelinux.com>          *
-*                                                                         *
-* This program is free software; you can redistribute it and/or modify    *
-* it under the terms of the GNU General Public License as published by    *
-* the Free Software Foundation; either version 3 of the License, or       *
-* (at your option) any later version.                                     *
-*                                                                         *
-* This program is distributed in the hope that it will be useful,         *
-* but WITHOUT ANY WARRANTY; without even the implied warranty of          *
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the           *
-* GNU General Public License for more details.                            *
-*                                                                         *
-* You should have received a copy of the GNU General Public License       *
-* along with this program.  If not, see <http://www.gnu.org/licenses/>.   *
-**************************************************************************/
-
-#include "wizardwidget.h"
-#include "ui_wizardwidget.h"
-
-#include <QMovie>
-#include <QMessageBox>
-#include <QFileDialog>
-
-#include "accountmodel.h"
-#include "account.h"
-#include "profilemodel.h"
-#include "profile.h"
-#include "namedirectory.h"
-
-#include "utils.h"
-
-const QString DEFAULT_RING_ACCT_ALIAS = QObject::tr("Jami account", "Default alias for new Jami account");
-
-WizardWidget::WizardWidget(WizardMode wizardMode, AccountInfo* toBeMigrated, QWidget* parent) :
-    NavWidget(parent),
-    ui(new Ui::WizardWidget),
-    account_(toBeMigrated),
-    wizardMode_(wizardMode),
-    nameLookupTimer_(this)
-{
-    ui->setupUi(this);
-
-    QPixmap logo(":/images/logo-jami-standard-coul.png");
-
-    ui->welcomeLogo->setPixmap(logo.scaledToHeight(65, Qt::SmoothTransformation));
-    ui->welcomeLogo->setAlignment(Qt::AlignHCenter);
-
-    ui->fullNameEdit->setText(Utils::GetCurrentUserName());
-
-    movie_ = new QMovie(":/images/loading.gif");
-    ui->spinnerLabel->setMovie(movie_);
-    movie_->start();
-
-    if (wizardMode_ == MIGRATION) {
-        Utils::setStackWidget(ui->stackedWidget, ui->profilePage);
-        ui->usernameEdit->setEnabled(false);
-        ui->usernameEdit->setText(QString::fromStdString(toBeMigrated->profileInfo.alias));
-        ui->previousButton->hide();
-        ui->photoBooth->hide();
-        ui->pinEdit->hide();
-        ui->infoLabel->setText(tr("Your account needs to be migrated. Enter your password."));
-    } else {
-        ui->navBarWidget->hide();
-    }
-
-    ui->searchingStateLabel->clear();
-    connect(&NameDirectory::instance(), SIGNAL(registeredNameFound(Account*,NameDirectory::LookupStatus,const QString&,const QString&)),
-            this, SLOT(handle_registeredNameFound(Account*,NameDirectory::LookupStatus,const QString&,const QString&)));
-
-    nameLookupTimer_.setSingleShot(true);
-    connect(&nameLookupTimer_, &QTimer::timeout, this, &WizardWidget::timeoutNameLookupTimer);
-    connect(ui->photoBooth, &PhotoboothWidget::photoTaken, this, &WizardWidget::on_photoTaken);
-    ui->avatarLabel->hide();
-
-    ui->containerWidget->setVisible(false);
-}
-
-WizardWidget::~WizardWidget()
-{
-    disconnect(&NameDirectory::instance(), SIGNAL(registeredNameFound(Account*,NameDirectory::LookupStatus,const QString&,const QString&)),
-               this, SLOT(handle_registeredNameFound(Account*,NameDirectory::LookupStatus,const QString&,const QString&)));
-    delete ui;
-}
-
-void
-WizardWidget::navigated(bool to)
-{
-    ui->containerWidget->setVisible(to);
-    Utils::setStackWidget(ui->stackedWidget, ui->welcomePage);
-}
-
-void
-WizardWidget::processWizardInformations()
-{
-    if (wizardMode_ == MIGRATION)
-        ui->progressLabel->setText(tr("Migrating your Jami account..."));
-    else if (wizardMode_ == IMPORT)
-        ui->progressLabel->setText(tr("Importing account archive..."));
-    else
-        ui->progressLabel->setText(tr("Generating your Jami account..."));
-
-    if (wizardMode_ != IMPORT) {
-        if (ui->pinEdit->isVisible() && ui->pinEdit->text().isEmpty()) {
-            ui->pinEdit->setStyleSheet("border-color: rgb(204, 0, 0);");
-            return;
-        }
-
-        if (ui->passwordEdit->text() != ui->confirmPasswordEdit->text()) {
-            ui->passwordEdit->setStyleSheet("border-color: rgb(204, 0, 0);");
-            ui->confirmPasswordEdit->setStyleSheet("border-color: rgb(204, 0, 0);");
-            return;
-        } else {
-            ui->passwordEdit->setStyleSheet("border-color: rgb(0, 192, 212);");
-            ui->confirmPasswordEdit->setStyleSheet("border-color: rgb(0, 192, 212);");
-            ui->pinEdit->setStyleSheet("border-color: rgb(0, 192, 212);");
-        }
-
-        QString accountAlias = (ui->fullNameEdit->text().isEmpty() ||
-                                ui->fullNameEdit->text().isNull()) ? DEFAULT_RING_ACCT_ALIAS : ui->fullNameEdit->text();
-        QString archivePin = (ui->pinEdit->text().isEmpty() || ui->pinEdit->text().isNull()) ? QString() : ui->pinEdit->text();
-
-        createRingAccount(accountAlias, ui->passwordEdit->text(), archivePin);
-
-        ui->passwordEdit->clear();
-        ui->confirmPasswordEdit->clear();
-        ui->pinEdit->clear();
-    }
-
-    Utils::CreateStartupLink();
-}
-
-void
-WizardWidget::on_photoTaken(QString fileName)
-{
-    auto image = QImage(fileName);
-    auto avatar = image.scaled(100, 100, Qt::KeepAspectRatioByExpanding, Qt::SmoothTransformation);
-    ProfileModel::instance().selectedProfile()->person()->setPhoto(avatar);
-    ui->avatarLabel->setPixmap(QPixmap::fromImage(Utils::getCirclePhoto(avatar, ui->avatarLabel->width())));
-    ui->photoBooth->stopBooth();
-    ui->avatarLabel->show();
-}
-
-void
-WizardWidget::on_existingPushButton_clicked()
-{
-    ui->navBarWidget->show();
-    ui->nextButton->hide();
-    Utils::setStackWidget(ui->stackedWidget, ui->linkMethodPage);
-}
-
-void
-WizardWidget::on_newAccountButton_clicked()
-{
-    wizardMode_ = NEW_ACCOUNT;
-    changePage(false);
-}
-
-void
-WizardWidget::changePage(bool existingAccount)
-{
-    if (existingAccount) { // If user want to add a device
-        ui->accountLabel->setText(tr("Add a device"));
-        Utils::setStackWidget(ui->stackedWidget, ui->explanationPage);
-        ui->photoBooth->hide();
-    } else { // If user want to create a new account
-        ui->accountLabel->setText(tr("Create your account"));
-        Utils::setStackWidget(ui->stackedWidget, ui->profilePage);
-        ui->photoBooth->startBooth();
-        ui->photoBooth->show();
-    }
-    ui->navBarWidget->show();
-    ui->avatarLabel->setHidden(true);
-    ui->infoLabel->setHidden(existingAccount);
-    ui->usernameEdit->setHidden(existingAccount);
-    ui->signUpCheckbox->setHidden(existingAccount);
-    ui->signUpCheckbox->setChecked(!existingAccount);
-    ui->confirmPasswordEdit->setHidden(existingAccount);
-    ui->searchingStateLabel->setHidden(existingAccount);
-
-    ui->pinEdit->setVisible(existingAccount);
-}
-
-void
-WizardWidget::on_nextButton_clicked()
-{
-    const QWidget* curWidget = ui->stackedWidget->currentWidget();
-    if (curWidget == ui->profilePage) {
-        ui->photoBooth->stopBooth();
-    }
-    if (curWidget == ui->profilePage || curWidget == ui->explanationPage) {
-        Utils::setStackWidget(ui->stackedWidget, ui->accountPage);
-    } else if (curWidget == ui->accountPage) {
-        processWizardInformations();
-    } else if (curWidget == ui->fileImportPage) {
-        validateFileImport();
-    }
-}
-
-void
-WizardWidget::on_previousButton_clicked()
-{
-    const QWidget* curWidget = ui->stackedWidget->currentWidget();
-
-    if (curWidget == ui->profilePage) {
-        ui->navBarWidget->hide();
-        Utils::setStackWidget(ui->stackedWidget, ui->welcomePage);
-    } else if (curWidget == ui->explanationPage || curWidget == ui->fileImportPage) {
-        ui->navBarWidget->show();
-        ui->nextButton->hide();
-        Utils::setStackWidget(ui->stackedWidget, ui->linkMethodPage);
-    } else if (curWidget == ui->accountPage) {
-
-        if (ui->pinEdit->isVisible()) {
-            // If we are adding a device
-            Utils::setStackWidget(ui->stackedWidget, ui->explanationPage);
-        } else {
-            ui->photoBooth->startBooth();
-            ui->photoBooth->show();
-            Utils::setStackWidget(ui->stackedWidget, ui->profilePage);
-        }
-
-        ui->passwordEdit->setStyleSheet("border-color: rgb(0, 192, 212);");
-        ui->confirmPasswordEdit->setStyleSheet("border-color: rgb(0, 192, 212);");
-        ui->pinEdit->setStyleSheet("border-color: rgb(0, 192, 212);");
-
-    } else if (curWidget == ui->linkMethodPage) {
-        ui->navBarWidget->hide();
-        ui->nextButton->show();
-        Utils::setStackWidget(ui->stackedWidget, ui->welcomePage);
-    } else if (curWidget == ui->spinnerPage) {
-        ui->nextButton->show();
-        ui->navBarWidget->hide();
-        Utils::setStackWidget(ui->stackedWidget, ui->welcomePage);
-    }
-}
-
-void
-WizardWidget::on_passwordEdit_textChanged(const QString& arg1)
-{
-    Q_UNUSED(arg1)
-
-    if (ui->pinEdit->isVisible()) {
-        ui->confirmPasswordEdit->setText(ui->passwordEdit->text());
-    }
-}
-
-void
-WizardWidget::on_usernameEdit_textChanged(const QString &arg1)
-{
-    Q_UNUSED(arg1)
-    if(ui->signUpCheckbox->isChecked() && !arg1.isEmpty()) {
-        ui->searchingStateLabel->setText(tr("Searching..."));
-        nameLookupTimer_.start(1500);
-    } else {
-        ui->searchingStateLabel->clear();
-        nameLookupTimer_.stop();
-    }
-}
-
-void
-WizardWidget::timeoutNameLookupTimer()
-{
-    if(ui->signUpCheckbox->isChecked() && !ui->usernameEdit->text().isEmpty()) {
-        NameDirectory::instance().lookupName(nullptr, QString(), ui->usernameEdit->text());
-    } else {
-        ui->searchingStateLabel->clear();
-    }
-}
-
-void
-WizardWidget::handle_registeredNameFound (Account* account, NameDirectory::LookupStatus status, const QString& address, const QString& name)
-{
-    Q_UNUSED(account)
-    Q_UNUSED(address)
-    Q_UNUSED(name)
-#pragma push_macro("ERROR")
-#undef ERROR
-    switch(status) {
-    case NameDirectory::LookupStatus::SUCCESS:
-        ui->searchingStateLabel->setText(tr("Username not available."));
-        break;
-    case NameDirectory::LookupStatus::NOT_FOUND:
-        ui->searchingStateLabel->setText(tr("Username is available."));
-        break;
-    case NameDirectory::LookupStatus::INVALID_NAME:
-        ui->searchingStateLabel->setText(tr("Username is invalid."));
-        break;
-    case NameDirectory::LookupStatus::ERROR:
-        ui->searchingStateLabel->setText(tr("Network error."));
-        break;
-    }
-#pragma pop_macro("ERROR")
-}
-
-void
-WizardWidget::handle_nameRegistrationEnded(NameDirectory::RegisterNameStatus status, const QString& name)
-{
-    Q_UNUSED(name);
-    Q_UNUSED(status);
-}
-
-void
-WizardWidget::on_signUpCheckbox_toggled(bool checked)
-{
-    if (checked) {
-        ui->usernameEdit->setEnabled(true);
-    } else {
-        ui->usernameEdit->setEnabled(false);
-        ui->usernameEdit->clear();
-    }
-}
-
-void
-WizardWidget::validateFileImport()
-{
-    // reset original color
-    ui->archivePasswordInput->setStyleSheet("border-color: rgb(0, 192, 212);");
-
-    // A file has been selected
-    if (! ui->archivePathSelector->text().isEmpty() && ! ui->archivePathSelector->text().isNull()){
-        ui->archivePasswordInput->setEnabled(true);
-        Profile *profile = ProfileModel::instance().selectedProfile();
-        ui->signUpCheckbox->setChecked(false);
-        createRingAccount(profile->person()->formattedName(),
-                          ui->archivePasswordInput->text(),
-                          QString(),
-                          ui->archivePathSelector->text());
-        processWizardInformations();
-    }
-}
-
-void WizardWidget::on_archivePathSelector_clicked()
-{
-    QString filePath;
-    filePath = QFileDialog::getOpenFileName(this,
-                                            tr("Open File"),
-                                            QString(),
-                                            tr("Jami archive files (*.gz);; All files (*)"));
-
-    // for export get current account archive path
-    // for import use set path
-    // check if archive has password
-    // if it has, prompt for password
-    filePath = QDir::toNativeSeparators(filePath);
-    ui->archivePathSelector->setText(filePath);
-}
-
-void
-WizardWidget::createRingAccount(const QString &displayName,
-                                const QString &password,
-                                const QString &pin,
-                                const QString &archivePath)
-{
-    QtConcurrent::run(
-        [=] {
-            LRCInstance::accountModel().createNewAccount(
-                lrc::api::profile::Type::RING,
-                displayName.toStdString(),
-                archivePath.toStdString(),
-                password.toStdString(),
-                pin.toStdString()
-            );
-        });
-
-    QMetaObject::Connection* toDisconnect = &accountAddedConnection_;
-    accountAddedConnection_ = connect(&LRCInstance::accountModel(),
-        &lrc::api::NewAccountModel::accountAdded,
-        [this, toDisconnect](const std::string& accountId) {
-            //set default ringtone
-            auto confProps = LRCInstance::accountModel().getAccountConfig(accountId);
-            confProps.Ringtone.ringtonePath = Utils::GetRingtonePath().toStdString();
-            LRCInstance::accountModel().setAccountConfig(accountId, confProps);
-            emit NavigationRequested(ScreenEnum::CallScreen);
-            QObject::disconnect(*toDisconnect);
-        });
-
-
-    ui->navBarWidget->hide();
-    Utils::setStackWidget(ui->stackedWidget, ui->spinnerPage);
-    repaint();
-}
-
-void
-WizardWidget::on_dhtImportBtn_clicked()
-{
-    ui->nextButton->show();
-    changePage(true);
-}
-
-void
-WizardWidget::on_fileImportBtn_clicked()
-{
-    ui->navBarWidget->show();
-    ui->nextButton->show();
-    wizardMode_ = IMPORT;
-    Utils::setStackWidget(ui->stackedWidget, ui->fileImportPage);
-
-}
diff --git a/wizardwidget.h b/wizardwidget.h
deleted file mode 100644
index 29228ece9892e55f30f858b84c4e85146d96eb52..0000000000000000000000000000000000000000
--- a/wizardwidget.h
+++ /dev/null
@@ -1,94 +0,0 @@
-/**************************************************************************
-* Copyright (C) 2015-2019 by Savoir-faire Linux                           *
-* Author: Edric Ladent Milaret <edric.ladent-milaret@savoirfairelinux.com>*
-* Author: Anthony Léonard <anthony.leonard@savoirfairelinux.com>          *
-* Author: Olivier Soldano <olivier.soldano@savoirfairelinux.com>          *
-* Author: Andreas Traczyk <andreas.traczyk@savoirfairelinux.com>          *
-*                                                                         *
-* This program is free software; you can redistribute it and/or modify    *
-* it under the terms of the GNU General Public License as published by    *
-* the Free Software Foundation; either version 3 of the License, or       *
-* (at your option) any later version.                                     *
-*                                                                         *
-* This program is distributed in the hope that it will be useful,         *
-* but WITHOUT ANY WARRANTY; without even the implied warranty of          *
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the           *
-* GNU General Public License for more details.                            *
-*                                                                         *
-* You should have received a copy of the GNU General Public License       *
-* along with this program.  If not, see <http://www.gnu.org/licenses/>.   *
-**************************************************************************/
-
-#pragma once
-
-#include <QDialog>
-#include <QtConcurrent/QtConcurrent>
-
-#include "account.h"
-#include "person.h"
-
-#include "lrcinstance.h"
-#include "navwidget.h"
-
-namespace Ui {
-class WizardWidget;
-}
-
-class WizardWidget : public NavWidget
-{
-    Q_OBJECT
-
-public:
-    using AccountInfo = lrc::api::account::Info;
-
-    enum WizardMode {
-        WIZARD,
-        NEW_ACCOUNT,
-        IMPORT,
-        MIGRATION
-    };
-
-public:
-    explicit WizardWidget(WizardMode wizardMode = WIZARD, AccountInfo* toBeMigrated = nullptr, QWidget* parent = 0);
-    ~WizardWidget();
-
-    // NavWidget
-    virtual void navigated(bool to);
-
-//UI Slots
-private slots:
-    void on_existingPushButton_clicked();
-    void on_newAccountButton_clicked();
-    void on_nextButton_clicked();
-    void on_previousButton_clicked();
-    void on_passwordEdit_textChanged(const QString& arg1);
-
-private slots:
-    void on_usernameEdit_textChanged(const QString& arg1);
-    void handle_registeredNameFound(Account *account, NameDirectory::LookupStatus status, const QString& address, const QString& name);
-    void handle_nameRegistrationEnded(NameDirectory::RegisterNameStatus status, const QString& name);
-    void timeoutNameLookupTimer();
-    void on_photoTaken(QString fileName);
-    void on_signUpCheckbox_toggled(bool checked);
-    void on_archivePathSelector_clicked();
-    void on_dhtImportBtn_clicked();
-    void on_fileImportBtn_clicked();
-
-private:
-    Ui::WizardWidget* ui;
-    AccountInfo* account_;
-    WizardMode wizardMode_;
-    QMovie* movie_;
-    QTimer nameLookupTimer_;
-
-    QMetaObject::Connection accountAddedConnection_;
-
-    void setup();
-    void changePage(bool existingAccount);
-    void validateFileImport();
-    void createRingAccount(const QString &displayName = QString(),
-                           const QString &password = QString(),
-                           const QString &pin = QString(),
-                           const QString &archivePath = QString());
-    void processWizardInformations();
-};
diff --git a/wizardwidget.ui b/wizardwidget.ui
deleted file mode 100644
index 3c607e2472ad71b0a5156c7cf7c048279daf0228..0000000000000000000000000000000000000000
--- a/wizardwidget.ui
+++ /dev/null
@@ -1,1078 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ui version="4.0">
- <class>WizardWidget</class>
- <widget class="QWidget" name="WizardWidget">
-  <property name="geometry">
-   <rect>
-    <x>0</x>
-    <y>0</y>
-    <width>500</width>
-    <height>500</height>
-   </rect>
-  </property>
-  <property name="sizePolicy">
-   <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
-    <horstretch>0</horstretch>
-    <verstretch>0</verstretch>
-   </sizepolicy>
-  </property>
-  <property name="minimumSize">
-   <size>
-    <width>500</width>
-    <height>500</height>
-   </size>
-  </property>
-  <property name="windowTitle">
-   <string/>
-  </property>
-  <property name="windowIcon">
-   <iconset resource="ressources.qrc">
-    <normaloff>:/images/jami.png</normaloff>:/images/jami.png</iconset>
-  </property>
-  <property name="accessibleName">
-   <string>Wizard Dialog</string>
-  </property>
-  <property name="accessibleDescription">
-   <string>Account creation wizard dialog</string>
-  </property>
-  <layout class="QVBoxLayout" name="verticalLayout">
-   <property name="spacing">
-    <number>0</number>
-   </property>
-   <property name="leftMargin">
-    <number>0</number>
-   </property>
-   <property name="topMargin">
-    <number>0</number>
-   </property>
-   <property name="rightMargin">
-    <number>0</number>
-   </property>
-   <property name="bottomMargin">
-    <number>0</number>
-   </property>
-   <item>
-    <widget class="QWidget" name="containerWidget" native="true">
-     <layout class="QGridLayout" name="gridLayout_3">
-      <property name="leftMargin">
-       <number>0</number>
-      </property>
-      <property name="topMargin">
-       <number>0</number>
-      </property>
-      <property name="rightMargin">
-       <number>0</number>
-      </property>
-      <property name="bottomMargin">
-       <number>0</number>
-      </property>
-      <item row="0" column="0">
-       <widget class="QStackedWidget" name="stackedWidget">
-        <property name="currentIndex">
-         <number>0</number>
-        </property>
-        <widget class="QWidget" name="welcomePage">
-         <layout class="QVBoxLayout" name="verticalLayout_3">
-          <item>
-           <spacer name="verticalSpacer_6">
-            <property name="orientation">
-             <enum>Qt::Vertical</enum>
-            </property>
-            <property name="sizeHint" stdset="0">
-             <size>
-              <width>20</width>
-              <height>40</height>
-             </size>
-            </property>
-           </spacer>
-          </item>
-          <item alignment="Qt::AlignHCenter">
-           <widget class="QLabel" name="welcomeLabel">
-            <property name="font">
-             <font>
-              <pointsize>30</pointsize>
-              <weight>50</weight>
-              <bold>false</bold>
-             </font>
-            </property>
-            <property name="accessibleName">
-             <string>Welcome Label</string>
-            </property>
-            <property name="styleSheet">
-             <string notr="true">color: rgb(63, 63, 63)</string>
-            </property>
-            <property name="text">
-             <string> Welcome to</string>
-            </property>
-            <property name="margin">
-             <number>0</number>
-            </property>
-            <property name="indent">
-             <number>0</number>
-            </property>
-           </widget>
-          </item>
-          <item>
-           <spacer name="verticalSpacer_12">
-            <property name="orientation">
-             <enum>Qt::Vertical</enum>
-            </property>
-            <property name="sizeType">
-             <enum>QSizePolicy::Fixed</enum>
-            </property>
-            <property name="sizeHint" stdset="0">
-             <size>
-              <width>20</width>
-              <height>10</height>
-             </size>
-            </property>
-           </spacer>
-          </item>
-          <item>
-           <widget class="QLabel" name="welcomeLogo">
-            <property name="accessibleName">
-             <string>Welcome Logo</string>
-            </property>
-            <property name="text">
-             <string/>
-            </property>
-           </widget>
-          </item>
-          <item>
-           <spacer name="verticalSpacer_7">
-            <property name="orientation">
-             <enum>Qt::Vertical</enum>
-            </property>
-            <property name="sizeType">
-             <enum>QSizePolicy::Fixed</enum>
-            </property>
-            <property name="sizeHint" stdset="0">
-             <size>
-              <width>10</width>
-              <height>20</height>
-             </size>
-            </property>
-           </spacer>
-          </item>
-          <item>
-           <widget class="QPushButton" name="newAccountButton">
-            <property name="minimumSize">
-             <size>
-              <width>85</width>
-              <height>30</height>
-             </size>
-            </property>
-            <property name="toolTip">
-             <string>Create Jami account button</string>
-            </property>
-            <property name="accessibleName">
-             <string/>
-            </property>
-            <property name="accessibleDescription">
-             <string>Push button for Jami account creation start trigger</string>
-            </property>
-            <property name="layoutDirection">
-             <enum>Qt::LeftToRight</enum>
-            </property>
-            <property name="text">
-             <string>Create Jami account</string>
-            </property>
-           </widget>
-          </item>
-          <item>
-           <widget class="QPushButton" name="existingPushButton">
-            <property name="minimumSize">
-             <size>
-              <width>85</width>
-              <height>30</height>
-             </size>
-            </property>
-            <property name="toolTip">
-             <string>Link device button</string>
-            </property>
-            <property name="accessibleName">
-             <string/>
-            </property>
-            <property name="accessibleDescription">
-             <string>Push button for device linkage start trigger</string>
-            </property>
-            <property name="text">
-             <string>Link this device to an account</string>
-            </property>
-           </widget>
-          </item>
-          <item>
-           <spacer name="verticalSpacer_5">
-            <property name="orientation">
-             <enum>Qt::Vertical</enum>
-            </property>
-            <property name="sizeHint" stdset="0">
-             <size>
-              <width>20</width>
-              <height>40</height>
-             </size>
-            </property>
-           </spacer>
-          </item>
-         </layout>
-        </widget>
-        <widget class="QWidget" name="linkMethodPage">
-         <layout class="QVBoxLayout" name="verticalLayout_7">
-          <item alignment="Qt::AlignHCenter">
-           <widget class="QLabel" name="label_3">
-            <property name="font">
-             <font>
-              <pointsize>30</pointsize>
-             </font>
-            </property>
-            <property name="styleSheet">
-             <string notr="true">color: rgb(63, 63, 63)</string>
-            </property>
-            <property name="text">
-             <string>Select link method</string>
-            </property>
-           </widget>
-          </item>
-          <item>
-           <spacer name="verticalSpacer_14">
-            <property name="orientation">
-             <enum>Qt::Vertical</enum>
-            </property>
-            <property name="sizeHint" stdset="0">
-             <size>
-              <width>20</width>
-              <height>139</height>
-             </size>
-            </property>
-           </spacer>
-          </item>
-          <item>
-           <layout class="QHBoxLayout" name="horizontalLayout" stretch="1,2,1">
-            <property name="topMargin">
-             <number>0</number>
-            </property>
-            <item>
-             <spacer name="horizontalSpacer_4">
-              <property name="orientation">
-               <enum>Qt::Horizontal</enum>
-              </property>
-              <property name="sizeHint" stdset="0">
-               <size>
-                <width>40</width>
-                <height>20</height>
-               </size>
-              </property>
-             </spacer>
-            </item>
-            <item>
-             <layout class="QVBoxLayout" name="verticalLayout_8">
-              <property name="leftMargin">
-               <number>0</number>
-              </property>
-              <item>
-               <widget class="QPushButton" name="dhtImportBtn">
-                <property name="minimumSize">
-                 <size>
-                  <width>0</width>
-                  <height>30</height>
-                 </size>
-                </property>
-                <property name="toolTip">
-                 <string>Link account to device from the network</string>
-                </property>
-                <property name="text">
-                 <string>Link account from DHT</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QPushButton" name="fileImportBtn">
-                <property name="minimumSize">
-                 <size>
-                  <width>0</width>
-                  <height>30</height>
-                 </size>
-                </property>
-                <property name="toolTip">
-                 <string>Link from exported account archive file</string>
-                </property>
-                <property name="text">
-                 <string>Link account from file</string>
-                </property>
-               </widget>
-              </item>
-             </layout>
-            </item>
-            <item>
-             <spacer name="horizontalSpacer_3">
-              <property name="orientation">
-               <enum>Qt::Horizontal</enum>
-              </property>
-              <property name="sizeHint" stdset="0">
-               <size>
-                <width>40</width>
-                <height>20</height>
-               </size>
-              </property>
-             </spacer>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <spacer name="verticalSpacer_13">
-            <property name="orientation">
-             <enum>Qt::Vertical</enum>
-            </property>
-            <property name="sizeHint" stdset="0">
-             <size>
-              <width>20</width>
-              <height>139</height>
-             </size>
-            </property>
-           </spacer>
-          </item>
-         </layout>
-        </widget>
-        <widget class="QWidget" name="explanationPage">
-         <layout class="QVBoxLayout" name="verticalLayout_6">
-          <item alignment="Qt::AlignHCenter">
-           <widget class="QLabel" name="label">
-            <property name="font">
-             <font>
-              <pointsize>30</pointsize>
-             </font>
-            </property>
-            <property name="styleSheet">
-             <string notr="true">color: rgb(63, 63, 63)</string>
-            </property>
-            <property name="text">
-             <string>How to add a device</string>
-            </property>
-           </widget>
-          </item>
-          <item>
-           <widget class="QTextBrowser" name="textBrowser">
-            <property name="html">
-             <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
-&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
-p, li { white-space: pre-wrap; }
-&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'MS Shell Dlg 2'; font-size:7.8pt; font-weight:400; font-style:normal;&quot;&gt;
-&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'Ubuntu'; font-size:12pt;&quot;&gt;To link this device to another account, you first &lt;/span&gt;&lt;span style=&quot; font-family:'Ubuntu'; font-size:12pt; font-weight:600;&quot;&gt;need to obtain a PIN&lt;/span&gt;&lt;span style=&quot; font-family:'Ubuntu'; font-size:12pt;&quot;&gt; code. To generate the PIN code:&lt;/span&gt;&lt;/p&gt;
-&lt;ol style=&quot;margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;&quot;&gt;&lt;li style=&quot; font-family:'Ubuntu'; font-size:12pt;&quot; style=&quot; margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Go to the &lt;span style=&quot; font-weight:600;&quot;&gt;Account management setting&lt;/span&gt; of a previous device&lt;/li&gt;
-&lt;li style=&quot; font-family:'Ubuntu'; font-size:12pt;&quot; style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Choose the &lt;span style=&quot; font-weight:600;&quot;&gt;Jami account&lt;/span&gt; you want to use&lt;/li&gt;
-&lt;li style=&quot; font-family:'Ubuntu'; font-size:12pt;&quot; style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Go to the &lt;span style=&quot; font-weight:600;&quot;&gt;Devices&lt;/span&gt; tab&lt;/li&gt;
-&lt;li style=&quot; font-family:'Ubuntu'; font-size:12pt;&quot; style=&quot; margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Select &lt;span style=&quot; font-weight:600;&quot;&gt;Add a device&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;
-&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'Ubuntu'; font-size:12pt;&quot;&gt;You will get the necessary PIN to complete this form. The PIN is only valid for &lt;/span&gt;&lt;span style=&quot; font-family:'Ubuntu'; font-size:12pt; font-weight:600;&quot;&gt;10 minutes&lt;/span&gt;&lt;span style=&quot; font-family:'Ubuntu'; font-size:12pt;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </widget>
-        <widget class="QWidget" name="fileImportPage">
-         <layout class="QVBoxLayout" name="verticalLayout_9">
-          <item alignment="Qt::AlignHCenter">
-           <widget class="QLabel" name="label_2">
-            <property name="font">
-             <font>
-              <pointsize>30</pointsize>
-             </font>
-            </property>
-            <property name="styleSheet">
-             <string notr="true">color: rgb(63, 63, 63)</string>
-            </property>
-            <property name="text">
-             <string>Select file to import</string>
-            </property>
-           </widget>
-          </item>
-          <item>
-           <spacer name="verticalSpacer_16">
-            <property name="orientation">
-             <enum>Qt::Vertical</enum>
-            </property>
-            <property name="sizeHint" stdset="0">
-             <size>
-              <width>20</width>
-              <height>126</height>
-             </size>
-            </property>
-           </spacer>
-          </item>
-          <item>
-           <layout class="QHBoxLayout" name="horizontalLayout_3" stretch="1,2">
-            <property name="topMargin">
-             <number>0</number>
-            </property>
-            <item>
-             <widget class="QLabel" name="archivePathLabel">
-              <property name="text">
-               <string>Account archive path:</string>
-              </property>
-             </widget>
-            </item>
-            <item>
-             <widget class="RingButton" name="archivePathSelector">
-              <property name="toolTip">
-               <string>Account archive path selector</string>
-              </property>
-              <property name="text">
-               <string/>
-              </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <layout class="QHBoxLayout" name="horizontalLayout_4" stretch="1,2">
-            <property name="topMargin">
-             <number>0</number>
-            </property>
-            <item>
-             <widget class="QLabel" name="archivePasswordLabel">
-              <property name="text">
-               <string>Archive password:</string>
-              </property>
-             </widget>
-            </item>
-            <item>
-             <widget class="QLineEdit" name="archivePasswordInput">
-              <property name="toolTip">
-               <string>Archive passord input</string>
-              </property>
-              <property name="echoMode">
-               <enum>QLineEdit::Password</enum>
-              </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <spacer name="verticalSpacer_15">
-            <property name="orientation">
-             <enum>Qt::Vertical</enum>
-            </property>
-            <property name="sizeHint" stdset="0">
-             <size>
-              <width>20</width>
-              <height>126</height>
-             </size>
-            </property>
-           </spacer>
-          </item>
-         </layout>
-        </widget>
-        <widget class="QWidget" name="profilePage">
-         <layout class="QVBoxLayout" name="verticalLayout_2">
-          <item alignment="Qt::AlignHCenter">
-           <widget class="QLabel" name="profileLabel">
-            <property name="font">
-             <font>
-              <pointsize>30</pointsize>
-             </font>
-            </property>
-            <property name="styleSheet">
-             <string notr="true">color: rgb(63, 63, 63)</string>
-            </property>
-            <property name="text">
-             <string>Create your profile</string>
-            </property>
-           </widget>
-          </item>
-          <item>
-           <spacer name="verticalSpacer_4">
-            <property name="orientation">
-             <enum>Qt::Vertical</enum>
-            </property>
-            <property name="sizeHint" stdset="0">
-             <size>
-              <width>0</width>
-              <height>0</height>
-             </size>
-            </property>
-           </spacer>
-          </item>
-          <item alignment="Qt::AlignHCenter">
-           <widget class="PhotoboothWidget" name="photoBooth" native="true">
-            <property name="sizePolicy">
-             <sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding">
-              <horstretch>0</horstretch>
-              <verstretch>0</verstretch>
-             </sizepolicy>
-            </property>
-            <property name="minimumSize">
-             <size>
-              <width>300</width>
-              <height>300</height>
-             </size>
-            </property>
-            <property name="toolTip">
-             <string>Photobooth Widget</string>
-            </property>
-            <property name="accessibleName">
-             <string/>
-            </property>
-           </widget>
-          </item>
-          <item alignment="Qt::AlignHCenter">
-           <widget class="QLabel" name="avatarLabel">
-            <property name="enabled">
-             <bool>true</bool>
-            </property>
-            <property name="minimumSize">
-             <size>
-              <width>100</width>
-              <height>100</height>
-             </size>
-            </property>
-            <property name="font">
-             <font>
-              <kerning>true</kerning>
-             </font>
-            </property>
-            <property name="mouseTracking">
-             <bool>false</bool>
-            </property>
-            <property name="toolTip">
-             <string>Avatar display</string>
-            </property>
-            <property name="autoFillBackground">
-             <bool>false</bool>
-            </property>
-            <property name="text">
-             <string/>
-            </property>
-            <property name="textFormat">
-             <enum>Qt::AutoText</enum>
-            </property>
-            <property name="pixmap">
-             <pixmap>:/images/user/btn-default-userpic.svg</pixmap>
-            </property>
-            <property name="scaledContents">
-             <bool>false</bool>
-            </property>
-            <property name="openExternalLinks">
-             <bool>false</bool>
-            </property>
-            <property name="textInteractionFlags">
-             <set>Qt::NoTextInteraction</set>
-            </property>
-           </widget>
-          </item>
-          <item>
-           <spacer name="verticalSpacer_2">
-            <property name="orientation">
-             <enum>Qt::Vertical</enum>
-            </property>
-            <property name="sizeType">
-             <enum>QSizePolicy::Fixed</enum>
-            </property>
-            <property name="sizeHint" stdset="0">
-             <size>
-              <width>20</width>
-              <height>30</height>
-             </size>
-            </property>
-           </spacer>
-          </item>
-          <item alignment="Qt::AlignHCenter">
-           <widget class="QLabel" name="fullNameLabel">
-            <property name="minimumSize">
-             <size>
-              <width>0</width>
-              <height>17</height>
-             </size>
-            </property>
-            <property name="font">
-             <font>
-              <pointsize>12</pointsize>
-             </font>
-            </property>
-            <property name="text">
-             <string>Enter your full name:</string>
-            </property>
-           </widget>
-          </item>
-          <item alignment="Qt::AlignHCenter">
-           <widget class="QLineEdit" name="fullNameEdit">
-            <property name="minimumSize">
-             <size>
-              <width>200</width>
-              <height>0</height>
-             </size>
-            </property>
-            <property name="maximumSize">
-             <size>
-              <width>200</width>
-              <height>16777215</height>
-             </size>
-            </property>
-            <property name="font">
-             <font>
-              <pointsize>11</pointsize>
-             </font>
-            </property>
-            <property name="toolTip">
-             <string>Full name edit</string>
-            </property>
-            <property name="accessibleName">
-             <string/>
-            </property>
-            <property name="accessibleDescription">
-             <string>Text entry for full name input</string>
-            </property>
-           </widget>
-          </item>
-          <item>
-           <spacer name="verticalSpacer_8">
-            <property name="orientation">
-             <enum>Qt::Vertical</enum>
-            </property>
-            <property name="sizeType">
-             <enum>QSizePolicy::Expanding</enum>
-            </property>
-            <property name="sizeHint" stdset="0">
-             <size>
-              <width>0</width>
-              <height>0</height>
-             </size>
-            </property>
-           </spacer>
-          </item>
-         </layout>
-        </widget>
-        <widget class="QWidget" name="accountPage">
-         <layout class="QVBoxLayout" name="verticalLayout_5">
-          <item alignment="Qt::AlignHCenter">
-           <widget class="QLabel" name="accountLabel">
-            <property name="font">
-             <font>
-              <pointsize>30</pointsize>
-             </font>
-            </property>
-            <property name="styleSheet">
-             <string notr="true">color: rgb(63, 63, 63)</string>
-            </property>
-            <property name="text">
-             <string>Create your account</string>
-            </property>
-           </widget>
-          </item>
-          <item>
-           <spacer name="verticalSpacer_9">
-            <property name="orientation">
-             <enum>Qt::Vertical</enum>
-            </property>
-            <property name="sizeHint" stdset="0">
-             <size>
-              <width>0</width>
-              <height>0</height>
-             </size>
-            </property>
-           </spacer>
-          </item>
-          <item>
-           <widget class="QLabel" name="infoLabel">
-            <property name="font">
-             <font>
-              <pointsize>12</pointsize>
-             </font>
-            </property>
-            <property name="text">
-             <string/>
-            </property>
-            <property name="alignment">
-             <set>Qt::AlignCenter</set>
-            </property>
-            <property name="wordWrap">
-             <bool>true</bool>
-            </property>
-            <property name="buddy">
-             <cstring>usernameEdit</cstring>
-            </property>
-           </widget>
-          </item>
-          <item alignment="Qt::AlignHCenter">
-           <widget class="QCheckBox" name="signUpCheckbox">
-            <property name="toolTip">
-             <string>Register your username on the Jami. This will reserve the username so that only you can use it. Your friends will be able to call you with your usename instead of using your ID.</string>
-            </property>
-            <property name="accessibleName">
-             <string>Public username checkbox</string>
-            </property>
-            <property name="accessibleDescription">
-             <string>Checkbox selecting if the user wants a public username</string>
-            </property>
-            <property name="text">
-             <string>Register public username (experimental)</string>
-            </property>
-            <property name="checked">
-             <bool>true</bool>
-            </property>
-           </widget>
-          </item>
-          <item>
-           <layout class="QHBoxLayout" name="horizontalLayout_2">
-            <property name="spacing">
-             <number>0</number>
-            </property>
-            <item>
-             <spacer name="horizontalSpacer_2">
-              <property name="orientation">
-               <enum>Qt::Horizontal</enum>
-              </property>
-              <property name="sizeHint" stdset="0">
-               <size>
-                <width>40</width>
-                <height>20</height>
-               </size>
-              </property>
-             </spacer>
-            </item>
-            <item>
-             <widget class="QLineEdit" name="usernameEdit">
-              <property name="minimumSize">
-               <size>
-                <width>200</width>
-                <height>0</height>
-               </size>
-              </property>
-              <property name="maximumSize">
-               <size>
-                <width>200</width>
-                <height>16777215</height>
-               </size>
-              </property>
-              <property name="font">
-               <font>
-                <pointsize>11</pointsize>
-               </font>
-              </property>
-              <property name="toolTip">
-               <string>Public username edit</string>
-              </property>
-              <property name="accessibleName">
-               <string/>
-              </property>
-              <property name="placeholderText">
-               <string>Choose your username</string>
-              </property>
-              <property name="clearButtonEnabled">
-               <bool>true</bool>
-              </property>
-             </widget>
-            </item>
-            <item>
-             <widget class="QLabel" name="searchingStateLabel">
-              <property name="sizePolicy">
-               <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
-                <horstretch>0</horstretch>
-                <verstretch>0</verstretch>
-               </sizepolicy>
-              </property>
-              <property name="accessibleName">
-               <string>Public username validation status</string>
-              </property>
-              <property name="text">
-               <string>Searching...</string>
-              </property>
-              <property name="margin">
-               <number>6</number>
-              </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item alignment="Qt::AlignHCenter">
-           <widget class="QLineEdit" name="pinEdit">
-            <property name="minimumSize">
-             <size>
-              <width>200</width>
-              <height>0</height>
-             </size>
-            </property>
-            <property name="maximumSize">
-             <size>
-              <width>200</width>
-              <height>16777215</height>
-             </size>
-            </property>
-            <property name="font">
-             <font>
-              <pointsize>11</pointsize>
-             </font>
-            </property>
-            <property name="toolTip">
-             <string>PIN edit</string>
-            </property>
-            <property name="accessibleName">
-             <string/>
-            </property>
-            <property name="accessibleDescription">
-             <string>Device linking PIN text entry</string>
-            </property>
-            <property name="placeholderText">
-             <string>Enter your pin</string>
-            </property>
-            <property name="clearButtonEnabled">
-             <bool>false</bool>
-            </property>
-           </widget>
-          </item>
-          <item alignment="Qt::AlignHCenter">
-           <widget class="QLineEdit" name="passwordEdit">
-            <property name="minimumSize">
-             <size>
-              <width>200</width>
-              <height>0</height>
-             </size>
-            </property>
-            <property name="maximumSize">
-             <size>
-              <width>200</width>
-              <height>16777215</height>
-             </size>
-            </property>
-            <property name="font">
-             <font>
-              <pointsize>11</pointsize>
-             </font>
-            </property>
-            <property name="toolTip">
-             <string>Password text input</string>
-            </property>
-            <property name="accessibleName">
-             <string/>
-            </property>
-            <property name="accessibleDescription">
-             <string>Password text entry</string>
-            </property>
-            <property name="echoMode">
-             <enum>QLineEdit::Password</enum>
-            </property>
-            <property name="placeholderText">
-             <string>Password</string>
-            </property>
-            <property name="clearButtonEnabled">
-             <bool>false</bool>
-            </property>
-           </widget>
-          </item>
-          <item alignment="Qt::AlignHCenter">
-           <widget class="QLineEdit" name="confirmPasswordEdit">
-            <property name="minimumSize">
-             <size>
-              <width>200</width>
-              <height>0</height>
-             </size>
-            </property>
-            <property name="maximumSize">
-             <size>
-              <width>200</width>
-              <height>16777215</height>
-             </size>
-            </property>
-            <property name="font">
-             <font>
-              <pointsize>11</pointsize>
-             </font>
-            </property>
-            <property name="toolTip">
-             <string>Password confirmation text input</string>
-            </property>
-            <property name="accessibleName">
-             <string/>
-            </property>
-            <property name="accessibleDescription">
-             <string>Password confirmation text input</string>
-            </property>
-            <property name="echoMode">
-             <enum>QLineEdit::Password</enum>
-            </property>
-            <property name="placeholderText">
-             <string>Confirm password</string>
-            </property>
-            <property name="clearButtonEnabled">
-             <bool>false</bool>
-            </property>
-           </widget>
-          </item>
-          <item>
-           <spacer name="verticalSpacer">
-            <property name="orientation">
-             <enum>Qt::Vertical</enum>
-            </property>
-            <property name="sizeHint" stdset="0">
-             <size>
-              <width>0</width>
-              <height>0</height>
-             </size>
-            </property>
-           </spacer>
-          </item>
-         </layout>
-        </widget>
-        <widget class="QWidget" name="spinnerPage">
-         <layout class="QVBoxLayout" name="verticalLayout_4">
-          <item>
-           <spacer name="verticalSpacer_3">
-            <property name="orientation">
-             <enum>Qt::Vertical</enum>
-            </property>
-            <property name="sizeHint" stdset="0">
-             <size>
-              <width>20</width>
-              <height>40</height>
-             </size>
-            </property>
-           </spacer>
-          </item>
-          <item alignment="Qt::AlignHCenter">
-           <widget class="QLabel" name="spinnerLabel">
-            <property name="text">
-             <string/>
-            </property>
-            <property name="pixmap">
-             <pixmap resource="ressources.qrc">:/images/loading.gif</pixmap>
-            </property>
-           </widget>
-          </item>
-          <item>
-           <spacer name="verticalSpacer_11">
-            <property name="orientation">
-             <enum>Qt::Vertical</enum>
-            </property>
-            <property name="sizeHint" stdset="0">
-             <size>
-              <width>20</width>
-              <height>40</height>
-             </size>
-            </property>
-           </spacer>
-          </item>
-          <item alignment="Qt::AlignHCenter">
-           <widget class="QLabel" name="progressLabel">
-            <property name="font">
-             <font>
-              <pointsize>11</pointsize>
-             </font>
-            </property>
-            <property name="text">
-             <string>Generating your Jami account...</string>
-            </property>
-           </widget>
-          </item>
-          <item>
-           <spacer name="verticalSpacer_10">
-            <property name="orientation">
-             <enum>Qt::Vertical</enum>
-            </property>
-            <property name="sizeType">
-             <enum>QSizePolicy::Minimum</enum>
-            </property>
-            <property name="sizeHint" stdset="0">
-             <size>
-              <width>20</width>
-              <height>20</height>
-             </size>
-            </property>
-           </spacer>
-          </item>
-         </layout>
-        </widget>
-       </widget>
-      </item>
-      <item row="1" column="0">
-       <widget class="QWidget" name="navBarWidget" native="true">
-        <layout class="QHBoxLayout" name="_2">
-         <item>
-          <widget class="QPushButton" name="previousButton">
-           <property name="minimumSize">
-            <size>
-             <width>85</width>
-             <height>30</height>
-            </size>
-           </property>
-           <property name="toolTip">
-            <string>Previous page button</string>
-           </property>
-           <property name="accessibleName">
-            <string/>
-           </property>
-           <property name="accessibleDescription">
-            <string>push button to access previous page of wizard</string>
-           </property>
-           <property name="text">
-            <string>Previous</string>
-           </property>
-          </widget>
-         </item>
-         <item>
-          <spacer name="horizontalSpacer">
-           <property name="orientation">
-            <enum>Qt::Horizontal</enum>
-           </property>
-           <property name="sizeHint" stdset="0">
-            <size>
-             <width>40</width>
-             <height>20</height>
-            </size>
-           </property>
-          </spacer>
-         </item>
-         <item>
-          <widget class="QPushButton" name="nextButton">
-           <property name="minimumSize">
-            <size>
-             <width>85</width>
-             <height>30</height>
-            </size>
-           </property>
-           <property name="maximumSize">
-            <size>
-             <width>85</width>
-             <height>30</height>
-            </size>
-           </property>
-           <property name="toolTip">
-            <string>Next page Button</string>
-           </property>
-           <property name="accessibleName">
-            <string/>
-           </property>
-           <property name="accessibleDescription">
-            <string>Push button to access next page of wizard</string>
-           </property>
-           <property name="text">
-            <string>Next</string>
-           </property>
-           <property name="flat">
-            <bool>false</bool>
-           </property>
-          </widget>
-         </item>
-        </layout>
-       </widget>
-      </item>
-     </layout>
-    </widget>
-   </item>
-  </layout>
- </widget>
- <customwidgets>
-  <customwidget>
-   <class>RingButton</class>
-   <extends>QPushButton</extends>
-   <header>ringbutton.h</header>
-  </customwidget>
-  <customwidget>
-   <class>PhotoboothWidget</class>
-   <extends>QWidget</extends>
-   <header>photoboothwidget.h</header>
-   <container>1</container>
-  </customwidget>
- </customwidgets>
- <resources>
-  <include location="ressources.qrc"/>
- </resources>
- <connections/>
-</ui>