diff --git a/components/containmentlayoutmanager/appletslayout.cpp b/components/containmentlayoutmanager/appletslayout.cpp index 4ae05b8f8..e31606f49 100644 --- a/components/containmentlayoutmanager/appletslayout.cpp +++ b/components/containmentlayoutmanager/appletslayout.cpp @@ -597,6 +597,12 @@ void AppletsLayout::mousePressEvent(QMouseEvent *event) { forceActiveFocus(Qt::MouseFocusReason); + // Only accept synthesized events i.e. touch events, because we only want + // to support press-and-hold. Click-and-hold is weird. See 457979. + if (!(event->source() == Qt::MouseEventSynthesizedBySystem || event->source() == Qt::MouseEventSynthesizedByQt)) { + return; + } + if (!m_editMode && m_editModeCondition == AppletsLayout::Manual) { return; }