-namespace {
- // Time in ms until reaching the autoscroll margin triggers
- // an initial autoscrolling
- const int InitialAutoScrollDelay = 700;
-
- // Delay in ms for triggering the next autoscroll
- const int RepeatingAutoScrollDelay = 1000 / 60;
-}
-
-KItemListView::KItemListView(QGraphicsWidget* parent) :
- QGraphicsWidget(parent),
- m_enabledSelectionToggles(false),
- m_grouped(false),
- m_supportsItemExpanding(false),
- m_editingRole(false),
- m_activeTransactions(0),
- m_endTransactionAnimationHint(Animation),
- m_itemSize(),
- m_controller(0),
- m_model(0),
- m_visibleRoles(),
- m_widgetCreator(0),
- m_groupHeaderCreator(0),
- m_styleOption(),
- m_visibleItems(),
- m_visibleGroups(),
- m_visibleCells(),
- m_sizeHintResolver(0),
- m_layouter(0),
- m_animation(0),
- m_layoutTimer(0),
- m_oldScrollOffset(0),
- m_oldMaximumScrollOffset(0),
- m_oldItemOffset(0),
- m_oldMaximumItemOffset(0),
- m_skipAutoScrollForRubberBand(false),
- m_rubberBand(0),
- m_mousePos(),
- m_autoScrollIncrement(0),
- m_autoScrollTimer(0),
- m_header(0),
- m_headerWidget(0),
- m_dropIndicator()
+namespace
+{
+// Time in ms until reaching the autoscroll margin triggers
+// an initial autoscrolling
+const int InitialAutoScrollDelay = 700;
+
+// Delay in ms for triggering the next autoscroll
+const int RepeatingAutoScrollDelay = 1000 / 60;
+
+// Copied from the Kirigami.Units.shortDuration
+const int RubberFadeSpeed = 150;
+
+const char *RubberPropertyName = "_kitemviews_rubberBandPosition";
+}
+
+#ifndef QT_NO_ACCESSIBILITY
+QAccessibleInterface *accessibleInterfaceFactory(const QString &key, QObject *object)
+{
+ Q_UNUSED(key)
+
+ if (KItemListContainer *container = qobject_cast<KItemListContainer *>(object)) {
+ return new KItemListContainerAccessible(container);
+ } else if (KItemListView *view = qobject_cast<KItemListView *>(object)) {
+ return new KItemListViewAccessible(view);
+ }
+
+ return nullptr;
+}
+#endif
+
+KItemListView::KItemListView(QGraphicsWidget *parent)
+ : QGraphicsWidget(parent)
+ , m_enabledSelectionToggles(false)
+ , m_grouped(false)
+ , m_highlightEntireRow(false)
+ , m_alternateBackgrounds(false)
+ , m_supportsItemExpanding(false)
+ , m_editingRole(false)
+ , m_activeTransactions(0)
+ , m_endTransactionAnimationHint(Animation)
+ , m_itemSize()
+ , m_controller(nullptr)
+ , m_model(nullptr)
+ , m_visibleRoles()
+ , m_widgetCreator(nullptr)
+ , m_groupHeaderCreator(nullptr)
+ , m_styleOption()
+ , m_visibleItems()
+ , m_visibleGroups()
+ , m_visibleCells()
+ , m_scrollBarExtent(0)
+ , m_layouter(nullptr)
+ , m_animation(nullptr)
+ , m_oldScrollOffset(0)
+ , m_oldMaximumScrollOffset(0)
+ , m_oldItemOffset(0)
+ , m_oldMaximumItemOffset(0)
+ , m_skipAutoScrollForRubberBand(false)
+ , m_rubberBand(nullptr)
+ , m_tapAndHoldIndicator(nullptr)
+ , m_mousePos()
+ , m_autoScrollIncrement(0)
+ , m_autoScrollTimer(nullptr)
+ , m_header(nullptr)
+ , m_headerWidget(nullptr)
+ , m_indicatorAnimation(nullptr)
+ , m_dropIndicator()
+ , m_sizeHintResolver(nullptr)