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

List:       kde-commits
Subject:    playground/base/plasma/applets/presence
From:       Siraj Razick <siraj () kdemail ! net>
Date:       2009-03-02 16:38:19
Message-ID: 1236011899.743248.14943.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 934268 by siraj:

Fix the infinitely status changing bug with mission control

 M  +7 -2      presence.cpp  
 M  +1 -0      presence.h  
 M  +2 -0      presenceitemdelegate.h  


--- trunk/playground/base/plasma/applets/presence/presence.cpp #934267:934268
@@ -223,14 +223,19 @@
 
     // \brief: setup account presence
     Telepathy::SimplePresence currentPresence
-    	= data.value("current_presence").value<Telepathy::SimplePresence>();
+        = data.value("current_presence").value<Telepathy::SimplePresence>();
+    if (m_currentPresence == currentPresence.status) {
+        return;
+    }
+
+    m_currentPresence = currentPresence.status;
+
     presence_type->setData(static_cast<uint>(currentPresence.type),
     						Qt::DisplayRole);
     presence_state->setData(currentPresence.status, Qt::DisplayRole);
     message->setData(currentPresence.statusMessage, Qt::DisplayRole);
     accountItem->setData(source, Qt::DisplayRole);
 
-   
     /*
      * so, we need to look in the first column
      * to see if we can find a row with that value
--- trunk/playground/base/plasma/applets/presence/presence.h #934267:934268
@@ -85,6 +85,7 @@
     QWidget *m_widget;
     Telepathy::Client::AccountManager* m_accountManager;
     bool m_userSet;
+    QString m_currentPresence;
 
     QString m_masterStatusMessage;
 
--- trunk/playground/base/plasma/applets/presence/presenceitemdelegate.h #934267:934268
@@ -29,6 +29,8 @@
 public:
     PresenceItemDelegate(QWidget * parent = 0);
 
+    void setPresence(uint type);
+
     void paint(QPainter * painter, const QStyleOptionViewItem & option,
                const QModelIndex & index) const;
     QSize sizeHint(const QStyleOptionViewItem & option,
[prev in list] [next in list] [prev in thread] [next in thread] 

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