┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/kitemviews/kitemlistview.cpp
diff options
context:
space:
mode:
authorFrank Reininghaus <[email protected]>2012-11-05 22:12:45 +0100
committerFrank Reininghaus <[email protected]>2012-11-05 22:12:45 +0100
commit15faff457dd5ff609b3d6d824e0366beae1abe28 (patch)
tree518a559c977bdb116939c0b57d8977f04db916ae /src/kitemviews/kitemlistview.cpp
parentc6eb4866d8bb601d63acedd78edaf37a8c5c3c2f (diff)
parentc0559a2a1d7d66b26e1d00b4ff59c7fce8848566 (diff)
Merge remote-tracking branch 'origin/KDE/4.9'
Diffstat (limited to 'src/kitemviews/kitemlistview.cpp')
-rw-r--r--src/kitemviews/kitemlistview.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/kitemviews/kitemlistview.cpp b/src/kitemviews/kitemlistview.cpp
index 3c60b8e43..6a68ae798 100644
--- a/src/kitemviews/kitemlistview.cpp
+++ b/src/kitemviews/kitemlistview.cpp
@@ -1454,12 +1454,16 @@ void KItemListView::slotGeometryOfGroupHeaderParentChanged()
void KItemListView::slotRoleEditingCanceled(int index, const QByteArray& role, const QVariant& value)
{
+ disconnectRoleEditingSignals(index);
+
emit roleEditingCanceled(index, role, value);
m_editingRole = false;
}
void KItemListView::slotRoleEditingFinished(int index, const QByteArray& role, const QVariant& value)
{
+ disconnectRoleEditingSignals(index);
+
emit roleEditingFinished(index, role, value);
m_editingRole = false;
}
@@ -2530,6 +2534,17 @@ bool KItemListView::hasSiblingSuccessor(int index) const
return hasSuccessor;
}
+void KItemListView::disconnectRoleEditingSignals(int index)
+{
+ KItemListWidget* widget = m_visibleItems.value(index);
+ if (!widget) {
+ return;
+ }
+
+ widget->disconnect(SIGNAL(roleEditingCanceled(int,QByteArray,QVariant)), this);
+ widget->disconnect(SIGNAL(roleEditingFinished(int,QByteArray,QVariant)), this);
+}
+
int KItemListView::calculateAutoScrollingIncrement(int pos, int range, int oldInc)
{
int inc = 0;