[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