diff --git a/src/dialogs/JoinRoom.cpp b/src/dialogs/JoinRoom.cpp
index 1ff6bba1..135cb4f5 100644
--- a/src/dialogs/JoinRoom.cpp
+++ b/src/dialogs/JoinRoom.cpp
@@ -1,11 +1,11 @@
#include <QLabel>
+#include <QPushButton>
#include <QStyleOption>
#include <QVBoxLayout>
#include "dialogs/JoinRoom.h"
#include "Config.h"
-#include "ui/FlatButton.h"
#include "ui/TextField.h"
#include "ui/Theme.h"
@@ -14,6 +14,11 @@ using namespace dialogs;
JoinRoom::JoinRoom(QWidget *parent)
: QFrame(parent)
{
+ setAutoFillBackground(true);
+ setWindowFlags(Qt::Tool | Qt::WindowStaysOnTopHint);
+ setWindowModality(Qt::WindowModal);
+ setAttribute(Qt::WA_DeleteOnClose, true);
+
setMinimumWidth(conf::modals::MIN_WIDGET_WIDTH);
setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Maximum);
@@ -22,21 +27,15 @@ JoinRoom::JoinRoom(QWidget *parent)
layout->setMargin(conf::modals::WIDGET_MARGIN);
auto buttonLayout = new QHBoxLayout();
- buttonLayout->setSpacing(0);
- buttonLayout->setMargin(0);
-
- QFont buttonFont;
- buttonFont.setPointSizeF(buttonFont.pointSizeF() * conf::modals::BUTTON_TEXT_SIZE_RATIO);
-
- confirmBtn_ = new FlatButton("JOIN", this);
- confirmBtn_->setFont(buttonFont);
+ buttonLayout->setSpacing(15);
- cancelBtn_ = new FlatButton(tr("CANCEL"), this);
- cancelBtn_->setFont(buttonFont);
+ confirmBtn_ = new QPushButton(tr("Join"), this);
+ cancelBtn_ = new QPushButton(tr("Cancel"), this);
+ cancelBtn_->setDefault(true);
buttonLayout->addStretch(1);
- buttonLayout->addWidget(confirmBtn_);
buttonLayout->addWidget(cancelBtn_);
+ buttonLayout->addWidget(confirmBtn_);
roomInput_ = new TextField(this);
roomInput_->setLabel(tr("Room ID or alias"));
@@ -47,7 +46,7 @@ JoinRoom::JoinRoom(QWidget *parent)
connect(roomInput_, &QLineEdit::returnPressed, this, &JoinRoom::handleInput);
connect(confirmBtn_, &QPushButton::clicked, this, &JoinRoom::handleInput);
- connect(cancelBtn_, &QPushButton::clicked, [this]() { emit closing(false, ""); });
+ connect(cancelBtn_, &QPushButton::clicked, this, &JoinRoom::close);
}
void
@@ -57,20 +56,11 @@ JoinRoom::handleInput()
return;
// TODO: input validation with error messages.
- emit closing(true, roomInput_->text());
+ emit joinRoom(roomInput_->text());
roomInput_->clear();
}
void
-JoinRoom::paintEvent(QPaintEvent *)
-{
- QStyleOption opt;
- opt.init(this);
- QPainter p(this);
- style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this);
-}
-
-void
JoinRoom::showEvent(QShowEvent *event)
{
roomInput_->setFocus();
|