[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:06:08 UTC 2016


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

The following commit has been merged in the master branch:
commit 5afbad6fae519beff683a2cbd1dc84871c2f0e84
Author: Dario Freddi <dario.freddi at collabora.co.uk>
Date:   Fri Apr 22 14:41:26 2011 +0200

    AbstractWidgetDelegateOverlay: Make m_widget a QWeakPointer. Given that we strongly rely on having m_widget == 0 on deletion, just use the proper method.
---
 contact-delegate-overlay.cpp | 29 +++++++++++++----------------
 contact-delegate-overlay.h   |  2 +-
 2 files changed, 14 insertions(+), 17 deletions(-)

diff --git a/contact-delegate-overlay.cpp b/contact-delegate-overlay.cpp
index 2b8dd4c..5fe83ab 100644
--- a/contact-delegate-overlay.cpp
+++ b/contact-delegate-overlay.cpp
@@ -99,7 +99,6 @@ QAbstractItemDelegate* ContactDelegateOverlay::delegate() const
 
 AbstractWidgetDelegateOverlay::AbstractWidgetDelegateOverlay(QObject* parent)
     : ContactDelegateOverlay(parent),
-      m_widget(0),
       m_mouseButtonPressedOnWidget(false)
 {
 }
@@ -112,18 +111,17 @@ AbstractWidgetDelegateOverlay::~AbstractWidgetDelegateOverlay()
 void AbstractWidgetDelegateOverlay::setActive(bool active)
 {
     if (active) {
-        if (m_widget) {
-            delete m_widget;
-            m_widget = 0;
+        if (!m_widget.isNull()) {
+            m_widget.data()->deleteLater();
         }
 
         m_widget = createWidget();
 
-        m_widget->setFocusPolicy(Qt::NoFocus);
-        m_widget->hide(); // hide per default
+        m_widget.data()->setFocusPolicy(Qt::NoFocus);
+        m_widget.data()->hide(); // hide per default
 
         m_view->viewport()->installEventFilter(this);
-        m_widget->installEventFilter(this);
+        m_widget.data()->installEventFilter(this);
 
         if (view()->model()) {
             connect(m_view->model(), SIGNAL(rowsRemoved(const QModelIndex&, int, int)),
@@ -142,8 +140,7 @@ void AbstractWidgetDelegateOverlay::setActive(bool active)
         connect(m_view, SIGNAL(viewportEntered()),
                 this, SLOT(slotViewportEntered()));
     } else {
-        delete m_widget;
-        m_widget = 0;
+        m_widget.data()->deleteLater();
 
         if (m_view) {
             m_view->viewport()->removeEventFilter(this);
@@ -163,8 +160,8 @@ void AbstractWidgetDelegateOverlay::setActive(bool active)
 
 void AbstractWidgetDelegateOverlay::hide()
 {
-    if (m_widget) {
-        m_widget->hide();
+    if (!m_widget.isNull()) {
+        m_widget.data()->hide();
     }
 }
 
@@ -184,7 +181,7 @@ void AbstractWidgetDelegateOverlay::slotEntered(const QModelIndex& index)
 
     if (index.isValid() && checkIndex(index)) {
 //         QTimer::singleShot(500, m_widget, SLOT(show()));
-        m_widget->show();
+        m_widget.data()->show();
         emit overlayActivated(index);
     }
 }
@@ -192,7 +189,7 @@ void AbstractWidgetDelegateOverlay::slotEntered(const QModelIndex& index)
 void AbstractWidgetDelegateOverlay::slotWidgetAboutToShow(const QModelIndex& index)
 {
     Q_UNUSED(index);
-    m_widget->show();
+    m_widget.data()->show();
 }
 
 bool AbstractWidgetDelegateOverlay::checkIndex(const QModelIndex& index) const
@@ -224,7 +221,7 @@ void AbstractWidgetDelegateOverlay::viewportLeaveEvent(QObject*, QEvent*)
 
 bool AbstractWidgetDelegateOverlay::eventFilter(QObject* obj, QEvent* event)
 {
-    if (m_widget && obj == m_widget) {
+    if (!m_widget.isNull() && obj == m_widget.data()) {
         switch (event->type()) {
             case QEvent::MouseButtonPress:
                 if (static_cast<QMouseEvent*>(event)->buttons() & Qt::LeftButton) {
@@ -271,7 +268,7 @@ HoverButtonDelegateOverlay::HoverButtonDelegateOverlay(QObject* parent)
 
 ContactViewHoverButton* HoverButtonDelegateOverlay::button() const
 {
-    return qobject_cast<ContactViewHoverButton*>(m_widget);
+    return qobject_cast<ContactViewHoverButton*>(m_widget.data());
 }
 
 void HoverButtonDelegateOverlay::setActive(bool active)
@@ -290,7 +287,7 @@ QWidget* HoverButtonDelegateOverlay::createWidget()
 
 void HoverButtonDelegateOverlay::visualChange()
 {
-    if (m_widget && m_widget->isVisible()) {
+    if (!m_widget.isNull() && m_widget.data()->isVisible()) {
         updateButton(button()->index());
     }
 }
diff --git a/contact-delegate-overlay.h b/contact-delegate-overlay.h
index 5c5e295..2307044 100644
--- a/contact-delegate-overlay.h
+++ b/contact-delegate-overlay.h
@@ -143,7 +143,7 @@ protected:
 
     bool eventFilter(QObject* obj, QEvent* event);
 
-    QWidget *m_widget;
+    QWeakPointer<QWidget> m_widget;
 
     bool m_mouseButtonPressedOnWidget;
 };

-- 
ktp-contact-list packaging



More information about the pkg-kde-commits mailing list