diff --git a/resources/qml/TimelineBubbleMessageStyle.qml b/resources/qml/TimelineBubbleMessageStyle.qml index 6ca5c8e1..add701a1 100644 --- a/resources/qml/TimelineBubbleMessageStyle.qml +++ b/resources/qml/TimelineBubbleMessageStyle.qml @@ -281,6 +281,8 @@ TimelineEvent { data: [replyRow, wrapper.main] } + + } padding: wrapper.isStateEvent ? 0 : 4 @@ -291,6 +293,27 @@ TimelineEvent { border.width: wrapper.notificationlevel == MtxEvent.Highlight ? 1 : 0 } } + + DragHandler { + id: replyDragHandler + yAxis.enabled: false + xAxis.enabled: true + xAxis.minimum: wrapper.avatarMargin - 100 + xAxis.maximum: wrapper.avatarMargin + onActiveChanged: { + if (!replyDragHandler.active) { + if (replyDragHandler.xAxis.minimum <= replyDragHandler.xAxis.activeValue + 1) { + wrapper.room.reply = wrapper.eventId + } + gridContainer.x = wrapper.avatarMargin; + } + } + } + + TapHandler { + onDoubleTapped: wrapper.room.reply = wrapper.eventId + } + }, Reactions { id: reactionRow diff --git a/resources/qml/TimelineDefaultMessageStyle.qml b/resources/qml/TimelineDefaultMessageStyle.qml index f09fbc79..e9b52e93 100644 --- a/resources/qml/TimelineDefaultMessageStyle.qml +++ b/resources/qml/TimelineDefaultMessageStyle.qml @@ -269,6 +269,25 @@ TimelineEvent { ] } + DragHandler { + id: replyDragHandler + yAxis.enabled: false + xAxis.enabled: true + xAxis.minimum: wrapper.avatarMargin - 100 + xAxis.maximum: wrapper.avatarMargin + onActiveChanged: { + if (!replyDragHandler.active) { + if (replyDragHandler.xAxis.minimum <= replyDragHandler.xAxis.activeValue + 1) { + wrapper.room.reply = wrapper.eventId + } + gridContainer.x = wrapper.avatarMargin; + } + } + } + + TapHandler { + onDoubleTapped: wrapper.room.reply = wrapper.eventId + } }, TimelineMetadata { id: metadata