[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:12:06 UTC 2016
Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-contact-list.git;a=commitdiff;h=3c63fe3
The following commit has been merged in the master branch:
commit 3c63fe385f597e8d14bb5b31155cd1b3b1c3b667
Author: Martin Klapetek <martin.klapetek at gmail.com>
Date: Thu Jan 17 10:54:40 2013 +0100
Handle the uninitialized presence chooser state differently
This moves part of the logic to KTp::GlobalPresence which now
sets Unknown presence before it's properly initialized. We catch
this here and show an empty combobox with a spinner. This fixes
the case where the presence was Offline, but the presence chooser
was empty and spinning away happily. After GlobalPresence is
initialized with AccountManager, it emits presenceChanged with
Offline presence, changing the combobox value properly.
Reviewed-by: David Edmundson
---
global-presence-chooser.cpp | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/global-presence-chooser.cpp b/global-presence-chooser.cpp
index d3e4908..9e7994f 100644
--- a/global-presence-chooser.cpp
+++ b/global-presence-chooser.cpp
@@ -179,11 +179,6 @@ GlobalPresenceChooser::GlobalPresenceChooser(QWidget *parent) :
m_modelExtended(new PresenceModelExtended(m_model, this))
{
this->setModel(m_modelExtended);
- //set an invalid index, which makes the combobox empty and not showing incorrect presence
- //for short time, this will be changed as soon as GlobalPresence has been init'd
- //see bug #310529
- setCurrentIndex(-1);
-
setEditable(false);
//needed for mousemove events
setMouseTracking(true);
@@ -191,8 +186,8 @@ GlobalPresenceChooser::GlobalPresenceChooser(QWidget *parent) :
m_busyOverlay = new KPixmapSequenceOverlayPainter(this);
m_busyOverlay->setSequence(KPixmapSequence("process-working"));
m_busyOverlay->setWidget(this);
- //start the spinner before the combobox shows correct presence
- m_busyOverlay->start();
+
+ onPresenceChanged(m_globalPresence->currentPresence());
m_changePresenceMessageButton = new QPushButton(this);
m_changePresenceMessageButton->setIcon(KIcon("document-edit"));
@@ -365,7 +360,12 @@ void GlobalPresenceChooser::onCurrentIndexChanged(int index)
void GlobalPresenceChooser::onPresenceChanged(const KTp::Presence &presence)
{
- for (int i=0; i < count() ; i++) {
+ if (presence.type() == Tp::ConnectionPresenceTypeUnknown) {
+ setCurrentIndex(-1);
+ m_busyOverlay->start();
+ return;
+ }
+ for (int i = 0; i < count() ; i++) {
KTp::Presence itemPresence = itemData(i, PresenceModel::PresenceRole).value<KTp::Presence>();
if (itemPresence.type() == presence.type() && itemPresence.statusMessage() == presence.statusMessage()) {
setCurrentIndex(i);
--
ktp-contact-list packaging
More information about the pkg-kde-commits
mailing list