+ /**
+ * Is started by announceCurrentItem().
+ * If we announce the current item as soon as it changes, we would announce multiple items while loading a folder.
+ * This timer makes sure we only announce the singular currently focused item when things have settled down.
+ */
+ QTimer *m_announceCurrentItemTimer;
+
+ /**
+ * If we want announceCurrentItem() to always announce the current item, we must be aware if this is equal to the previous current item, because
+ * - if the accessibility focus moves to a new item, it is automatically announced, but
+ * - if the focus is still on the item at the same index, the focus does not technically move to a new item even if the file at that index changed, so we
+ * need to instead send change events for the accessible name and accessible description.
+ */
+ int m_lastAnnouncedIndex = -1;
+
+ /**
+ * Is set to true in response to announceDescriptionChange(). When true, the next time slotAnnounceCurrentItemTimerTimeout() is called the description is
+ * also announced. Then this bool is set to false.
+ */
+ bool m_shouldAnnounceLocation = true;