on long touch (and not on mouse press) don't pop up the context menu
anymore but enter selection mode, similar behavior to mobile applications.
the full context menu is still available from the actions toolbar
appearing in selection mode
m_pressedIndex = m_view->itemAt(m_pressedMousePos);
if (m_dragActionOrRightClick) {
m_pressedIndex = m_view->itemAt(m_pressedMousePos);
if (m_dragActionOrRightClick) {
- onPress(tap->hotSpot().toPoint(), tap->position().toPoint(), Qt::NoModifier, Qt::RightButton);
- onRelease(transform.map(tap->position()), Qt::NoModifier, Qt::RightButton, false);
m_dragActionOrRightClick = false;
}
else {
m_dragActionOrRightClick = false;
}
else {
if (m_pressedIndex.has_value() && !m_selectionManager->isSelected(m_pressedIndex.value())) {
m_selectionManager->clearSelection();
m_selectionManager->setSelected(m_pressedIndex.value());
if (m_pressedIndex.has_value() && !m_selectionManager->isSelected(m_pressedIndex.value())) {
m_selectionManager->clearSelection();
m_selectionManager->setSelected(m_pressedIndex.value());
+ if (!m_selectionMode) {
+ Q_EMIT selectionModeChangeRequested(true);
+ }
} else if (!m_pressedIndex.has_value()) {
m_selectionManager->clearSelection();
startRubberBand();
} else if (!m_pressedIndex.has_value()) {
m_selectionManager->clearSelection();
startRubberBand();