[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    playground/base/plasma/applets/presence
From:       Abner Silva <abner.silva () kdemail ! net>
Date:       2009-07-28 18:33:04
Message-ID: 1248805984.714056.4094.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 1003747 by abnerf:

Cancelling editing presence msg when it lost focus.

 M  +16 -8     presencewidget.cpp  
 M  +2 -1      presencewidget.h  


--- trunk/playground/base/plasma/applets/presence/presencewidget.cpp #1003746:1003747
@@ -174,8 +174,8 @@
     m_presenceMessageLabel->nativeWidget()->setWordWrap(false);
     m_presenceMessageLabel->nativeWidget()->setAlignment(Qt::AlignTop |
             Qt::AlignCenter);
-    m_presenceMessageLabel->nativeWidget()->setSizePolicy(QSizePolicy::Expanding,
-            QSizePolicy::Fixed);
+    m_presenceMessageLabel->nativeWidget()->setSizePolicy(
+            QSizePolicy::Expanding, QSizePolicy::Fixed);
     setPresenceMessage("Set presence message here");
 
     // Create the presence msg lineedit
@@ -187,12 +187,16 @@
     m_presenceMessage->nativeWidget()->setSizePolicy(QSizePolicy::Expanding,
             QSizePolicy::Fixed);
     connect(m_presenceMessage->nativeWidget(), SIGNAL(returnPressed()),
-            this, SLOT(onPresenceMsgClicked()));
+            this, SLOT(onPresenceMsgReturn()));
 
     connect(m_presenceMessageLabel->nativeWidget(),
             SIGNAL(linkActivated(const QString&)),
-            this, SLOT(onPresenceMsgClicked()));
+            this, SLOT(onPresenceMsgSwitch()));
 
+    connect(m_presenceMessage->nativeWidget(),
+            SIGNAL(editingFinished()),
+            this, SLOT(onPresenceMsgSwitch()));
+
     m_layout->addItem(m_presenceMessageLabel);
     m_layout->setAlignment(m_presenceMessageLabel, Qt::AlignTop |
             Qt::AlignCenter);
@@ -220,8 +224,14 @@
     }
 }
 
-void PresenceWidget::onPresenceMsgClicked()
+void PresenceWidget::onPresenceMsgReturn()
 {
+    if (m_presenceMsg != m_presenceMessage->nativeWidget()->text())
+        setPresenceMessage(m_presenceMessage->nativeWidget()->text());
+}
+
+void PresenceWidget::onPresenceMsgSwitch()
+{
     if (m_presenceMessageLabel->isVisible()) {
         m_presenceMessageLabel->hide();
         m_layout->removeItem(m_presenceMessageLabel);
@@ -241,12 +251,10 @@
         m_layout->setAlignment(m_presenceMessageLabel, Qt::AlignTop |
                 Qt::AlignCenter);
 
-        if (m_presenceMsg != m_presenceMessage->nativeWidget()->text()) {
-            setPresenceMessage(m_presenceMessage->nativeWidget()->text());
-        }
         m_presenceMessageLabel->show();
     }
 }
+
 void PresenceWidget::setPresenceMessage(const QString &msg)
 {
     m_presenceMsg = msg;
--- trunk/playground/base/plasma/applets/presence/presencewidget.h #1003746:1003747
@@ -45,7 +45,8 @@
 
 private Q_SLOTS:
     void onCurrentStatusClicked();
-    void onPresenceMsgClicked();
+    void onPresenceMsgReturn();
+    void onPresenceMsgSwitch();
 
 private:
     void setPresenceMessage(const QString &msg);
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic