diff options
author | Tobias Markmann <tm@ayena.de> | 2014-10-03 16:02:49 (GMT) |
---|---|---|
committer | Swift Review <review@swift.im> | 2014-10-06 09:54:52 (GMT) |
commit | b09eaffed6a9b04477d51a2a4cbb428ce1149fc6 (patch) | |
tree | 08ab84645c938d20f3493efdfa5e3c23ab28b002 /Swift/QtUI | |
parent | 3742d8fe17f558f9f6a5e26ac10e5ec3f0c3ae6c (diff) | |
download | swift-contrib-b09eaffed6a9b04477d51a2a4cbb428ce1149fc6.zip swift-contrib-b09eaffed6a9b04477d51a2a4cbb428ce1149fc6.tar.bz2 |
Always bring 'Edit contact' window to the top on 'Edit contact' so it is visible
to the user and has focus.
Test-Information:
Checked via running Swift and testing in different scenarios (minimizing,
background) that this functionality works.
Change-Id: I49ed16b09d23acd052c387c3c1c4fe60f2aa9415
Diffstat (limited to 'Swift/QtUI')
-rw-r--r-- | Swift/QtUI/QtContactEditWindow.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/Swift/QtUI/QtContactEditWindow.cpp b/Swift/QtUI/QtContactEditWindow.cpp index 6520c0a..c175934 100644 --- a/Swift/QtUI/QtContactEditWindow.cpp +++ b/Swift/QtUI/QtContactEditWindow.cpp @@ -1,37 +1,37 @@ /* - * Copyright (c) 2010 Kevin Smith + * Copyright (c) 2010-2014 Kevin Smith * Licensed under the GNU General Public License v3. * See Documentation/Licenses/GPLv3.txt for more information. */ #include "QtContactEditWindow.h" #include <algorithm> #include <boost/bind.hpp> #include <QScrollArea> #include <QBoxLayout> #include <QLabel> #include <QCheckBox> #include <QLineEdit> #include <QMessageBox> #include <QPushButton> #include "Swift/QtUI/QtSwiftUtil.h" #include "QtContactEditWidget.h" namespace Swift { QtContactEditWindow::QtContactEditWindow() : contactEditWidget_(NULL) { resize(400,300); setWindowTitle(tr("Edit contact")); setContentsMargins(0,0,0,0); QBoxLayout* layout = new QVBoxLayout(this); jidLabel_ = new QLabel(this); jidLabel_->setAlignment(Qt::AlignHCenter); layout->addWidget(jidLabel_); groupsLayout_ = new QVBoxLayout(); @@ -43,64 +43,65 @@ QtContactEditWindow::QtContactEditWindow() : contactEditWidget_(NULL) { QPushButton* removeButton = new QPushButton(tr("Remove contact"), this); connect(removeButton, SIGNAL(clicked()), this, SLOT(handleRemoveContact())); buttonLayout->addWidget(removeButton); QPushButton* okButton = new QPushButton(tr("OK"), this); okButton->setDefault( true ); connect(okButton, SIGNAL(clicked()), this, SLOT(handleUpdateContact())); buttonLayout->addStretch(); buttonLayout->addWidget(okButton); } QtContactEditWindow::~QtContactEditWindow() { } void QtContactEditWindow::setNameSuggestions(const std::vector<std::string>& nameSuggestions) { if (contactEditWidget_) { contactEditWidget_->setNameSuggestions(nameSuggestions); } } void QtContactEditWindow::setContact(const JID& jid, const std::string& name, const std::vector<std::string>& groups, const std::set<std::string>& allGroups) { delete contactEditWidget_; jid_ = jid; jidLabel_->setText("<b>" + P2QSTRING(jid.toString()) + "</b>"); contactEditWidget_ = new QtContactEditWidget(allGroups, this); groupsLayout_->addWidget(contactEditWidget_); contactEditWidget_->setName(name); contactEditWidget_->setSelectedGroups(groups); } void QtContactEditWindow::setEnabled(bool b) { QWidget::setEnabled(b); } void QtContactEditWindow::show() { - QWidget::show(); + QWidget::showNormal(); QWidget::activateWindow(); + QWidget::raise(); } void QtContactEditWindow::hide() { QWidget::hide(); } void QtContactEditWindow::handleRemoveContact() { if (confirmContactDeletion(jid_)) { onRemoveContactRequest(); } } bool QtContactEditWindow::confirmContactDeletion(const JID& jid) { QMessageBox msgBox; msgBox.setWindowTitle(tr("Confirm contact deletion")); msgBox.setText(tr("Are you sure you want to delete this contact?")); msgBox.setInformativeText(QString(tr("This will remove the contact '%1' from all groups they may be in.")).arg(P2QSTRING(jid.toString()))); msgBox.setStandardButtons(QMessageBox::Yes | QMessageBox::No); msgBox.setDefaultButton(QMessageBox::Yes); return msgBox.exec() == QMessageBox::Yes; } void QtContactEditWindow::handleUpdateContact() { onChangeContactRequest(contactEditWidget_->getName(), contactEditWidget_->getSelectedGroups()); } } |