[SCM] ktp-contact-list packaging branch, master, updated. debian/15.12.1-2-1070-g6c56f91
Maximiliano Curia
maxy at moszumanska.debian.org
Sat May 28 00:07:54 UTC 2016
Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-contact-list.git;a=commitdiff;h=92e87b7
The following commit has been merged in the master branch:
commit 92e87b7914b37c64e237faaac3562f3f2ae19c62
Author: Martin Klapetek <martin.klapetek at gmail.com>
Date: Sun Oct 23 22:05:03 2011 +0200
Make enter key in the custom presence dialog work
Reviewed-by: David Edmundson
REVIEW: 102865
BUG: 283802
---
dialogs/custom-presence-dialog.cpp | 23 +++++++++++++++++++++--
dialogs/custom-presence-dialog.h | 1 +
2 files changed, 22 insertions(+), 2 deletions(-)
diff --git a/dialogs/custom-presence-dialog.cpp b/dialogs/custom-presence-dialog.cpp
index 94e2f75..3a59fd6 100644
--- a/dialogs/custom-presence-dialog.cpp
+++ b/dialogs/custom-presence-dialog.cpp
@@ -36,6 +36,7 @@
#include <TelepathyQt4/Presence>
#include <QLineEdit>
+#include <QKeyEvent>
class FilteredModel : public QSortFilterProxyModel {
public:
@@ -76,7 +77,6 @@ void CustomPresenceDialog::setupDialog()
m_listView->setModel(filteredModel);
m_statusMessage = new KComboBox(true, mainDialogWidget);
- m_statusMessage->setTrapReturnKey(false);
m_statusMessage->addItem(KIcon("user-online"), i18n("Set custom available message ..."),qVariantFromValue(Tp::Presence::available()));
m_statusMessage->addItem(KIcon("user-busy"), i18n("Set custom busy message ..."), qVariantFromValue(Tp::Presence::busy()));
@@ -110,8 +110,9 @@ void CustomPresenceDialog::setupDialog()
connect(addStatus, SIGNAL(clicked()), SLOT(addCustomPresence()));
connect(removeStatus, SIGNAL(clicked()), SLOT(removeCustomPresence()));
- connect(m_statusMessage, SIGNAL(returnPressed()), SLOT(addCustomPresence()));
connect(m_statusMessage, SIGNAL(currentIndexChanged(QString)), SLOT(comboboxIndexChanged(QString)));
+
+ m_statusMessage->installEventFilter(this);
}
void CustomPresenceDialog::addCustomPresence()
@@ -138,3 +139,21 @@ void CustomPresenceDialog::comboboxIndexChanged(const QString& text)
m_statusMessage->lineEdit()->setText(QString());
m_statusMessage->lineEdit()->setPlaceholderText(text);
}
+
+bool CustomPresenceDialog::eventFilter(QObject* obj, QEvent* event)
+{
+ if (obj == m_statusMessage && event->type() == QEvent::KeyPress) {
+ QKeyEvent *keyEvent = static_cast<QKeyEvent *>(event);
+ if (keyEvent->modifiers() == Qt::NoModifier && (keyEvent->key() == Qt::Key_Return || keyEvent->key() == Qt::Key_Enter)) {
+ addCustomPresence();
+ m_statusMessage->lineEdit()->clear();
+ m_listView->setFocus();
+ return true;
+ } else {
+ return false;
+ }
+ } else {
+ // standard event processing
+ return QObject::eventFilter(obj, event);
+ }
+}
diff --git a/dialogs/custom-presence-dialog.h b/dialogs/custom-presence-dialog.h
index 4a764a9..b6a343e 100644
--- a/dialogs/custom-presence-dialog.h
+++ b/dialogs/custom-presence-dialog.h
@@ -36,6 +36,7 @@ class CustomPresenceDialog : public KDialog
public:
explicit CustomPresenceDialog(PresenceModel *model, QWidget *parent = 0);
+ bool eventFilter(QObject* obj, QEvent* event);
private Q_SLOTS:
void addCustomPresence();
--
ktp-contact-list packaging
More information about the pkg-kde-commits
mailing list