[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:13:58 UTC 2016


Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-contact-list.git;a=commitdiff;h=7d24a40

The following commit has been merged in the master branch:
commit 7d24a40edcbe7bc8efb12e212d4fa7164652450a
Author: David Edmundson <kde at davidedmundson.co.uk>
Date:   Thu Sep 12 13:42:13 2013 +0000

    Toggle between no grouping and group by groups when in kpeople mode
    
    Also this fixes expand when filtering
    
    REVIEW: 112683
    BUG: 324306
    BUG: 324305
---
 contact-list-widget.cpp | 27 ++++++++++++++++++++++-----
 contact-list-widget.h   |  4 ++++
 2 files changed, 26 insertions(+), 5 deletions(-)

diff --git a/contact-list-widget.cpp b/contact-list-widget.cpp
index cf32131..26bc9fc 100644
--- a/contact-list-widget.cpp
+++ b/contact-list-widget.cpp
@@ -113,7 +113,6 @@ ContactListWidget::ContactListWidget(QWidget *parent)
             this, SLOT(onNewGroupModelItemsInserted(QModelIndex,int,int)));
 
     header()->hide();
-    setRootIsDecorated(false);
     setSortingEnabled(true);
     setEditTriggers(NoEditTriggers);
     setContextMenuPolicy(Qt::CustomContextMenu);
@@ -387,14 +386,32 @@ void ContactListWidget::addOverlayButtons()
             fileOverlay, SLOT(setActive(bool)));
 }
 
+void ContactListWidget::setGroupMode(KTp::ContactsModel::GroupMode groupMode)
+{
+    Q_D(ContactListWidget);
+
+    d->model->setGroupMode(groupMode);
+    //we want to draw branches for contacts, but not for headers like account names or group names
+    //so we turn it on only when we are in no grouping mode
+    if (groupMode == KTp::ContactsModel::NoGrouping) {
+        setRootIsDecorated(true);
+    } else {
+        setRootIsDecorated(true);
+    }
+}
+
 void ContactListWidget::toggleGroups(bool show)
 {
     Q_D(ContactListWidget);
 
     if (show) {
-        d->model->setGroupMode(KTp::ContactsModel::GroupGrouping);
+        setGroupMode(KTp::ContactsModel::GroupGrouping);
     } else {
-        d->model->setGroupMode(KTp::ContactsModel::AccountGrouping);
+        if (KTp::kpeopleEnabled()) {
+            setGroupMode(KTp::ContactsModel::NoGrouping);
+        } else {
+            setGroupMode(KTp::ContactsModel::AccountGrouping);
+        }
     }
     d->groupMode = d->model->groupMode();
 
@@ -604,9 +621,9 @@ void ContactListWidget::setFilterString(const QString& string)
     Q_D(ContactListWidget);
 
     if (string.isEmpty()) {
-        d->model->setGroupMode(d->groupMode);
+        setGroupMode(d->groupMode);
     } else {
-        d->model->setGroupMode(KTp::ContactsModel::NoGrouping);
+        setGroupMode(KTp::ContactsModel::NoGrouping);
     }
 
     d->model->setPresenceTypeFilterFlags(string.isEmpty() && !d->showOffline ? KTp::ContactsFilterModel::ShowOnlyConnected : KTp::ContactsFilterModel::DoNotFilterByPresence);
diff --git a/contact-list-widget.h b/contact-list-widget.h
index ba32451..44fc8d5 100644
--- a/contact-list-widget.h
+++ b/contact-list-widget.h
@@ -23,6 +23,7 @@
 #include <QTreeView>
 #include <TelepathyQt/Types>
 #include <TelepathyQt/Connection>
+#include <KTp/Models/contacts-model.h>
 
 class ContactListWidgetPrivate;
 
@@ -95,6 +96,9 @@ protected:
     virtual void drawBranches(QPainter *painter, const QRect &rect, const QModelIndex &index) const;
 
 private:
+    /** Internally set the group mode used by the model. Note this function does not update d->groupMode*/
+    void setGroupMode(KTp::ContactsModel::GroupMode groupMode);
+
     void requestFileTransferChannels(const Tp::AccountPtr &account,
                                      const Tp::ContactPtr &contact,
                                      const QStringList &filenames);

-- 
ktp-contact-list packaging



More information about the pkg-kde-commits mailing list