Disallow event menu in edit mode
This commit is contained in:
@@ -79,8 +79,8 @@ QQC2.TextArea {
|
|||||||
event.accepted = Message.contentModel.keyHelper.handleKey(event.key, event.modifiers);
|
event.accepted = Message.contentModel.keyHelper.handleKey(event.key, event.modifiers);
|
||||||
}
|
}
|
||||||
|
|
||||||
onFocusChanged: if (focus && !root.currentFocus) {
|
onFocusChanged: if (focus && !currentFocus && editable) {
|
||||||
Message.contentModel.setFocusRow(root.index, true)
|
Message.contentModel.setFocusRow(index, true)
|
||||||
}
|
}
|
||||||
|
|
||||||
ListView.onReused: Qt.binding(() => !hasSpoiler.test(display))
|
ListView.onReused: Qt.binding(() => !hasSpoiler.test(display))
|
||||||
@@ -124,6 +124,9 @@ QQC2.TextArea {
|
|||||||
(QQC2.ApplicationWindow.window as Main).hoverLinkIndicator.text = "";
|
(QQC2.ApplicationWindow.window as Main).hoverLinkIndicator.text = "";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// To prevent the dfault QQC2 desktop style menu inconjuction with https://invent.kde.org/frameworks/qqc2-desktop-style/-/merge_requests/507
|
||||||
|
onPressed: event => event.accepted = true;
|
||||||
|
|
||||||
HoverHandler {
|
HoverHandler {
|
||||||
cursorShape: root.hoveredLink || (!(root.componentAttributes?.spoilerRevealed ?? false) && root.hasSpoiler) ? Qt.PointingHandCursor : Qt.IBeamCursor
|
cursorShape: root.hoveredLink || (!(root.componentAttributes?.spoilerRevealed ?? false) && root.hasSpoiler) ? Qt.PointingHandCursor : Qt.IBeamCursor
|
||||||
}
|
}
|
||||||
@@ -132,23 +135,26 @@ QQC2.TextArea {
|
|||||||
onTapped: root.Message.contentModel.toggleSpoiler(root.Message.contentFilterModel.mapToSource(root.Message.contentFilterModel.index(root.index, 0)))
|
onTapped: root.Message.contentModel.toggleSpoiler(root.Message.contentFilterModel.mapToSource(root.Message.contentFilterModel.index(root.index, 0)))
|
||||||
}
|
}
|
||||||
TapHandler {
|
TapHandler {
|
||||||
enabled: !root.hoveredLink
|
enabled: !root.hoveredLink && !root.editable
|
||||||
acceptedButtons: Qt.LeftButton
|
acceptedButtons: Qt.LeftButton
|
||||||
acceptedDevices: PointerDevice.TouchScreen
|
acceptedDevices: PointerDevice.TouchScreen
|
||||||
onLongPressed: {
|
onLongPressed: {
|
||||||
const event = root.Message.room.findEvent(root.eventId);
|
requestMenu();
|
||||||
RoomManager.viewEventMenu(root.QQC2.Overlay.overlay, event, root.Message.room, root.Message.selectedText, root.Message.hoveredLink);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
TapHandler {
|
TapHandler {
|
||||||
|
enabled: !root.editable
|
||||||
acceptedButtons: Qt.RightButton
|
acceptedButtons: Qt.RightButton
|
||||||
acceptedDevices: PointerDevice.Mouse | PointerDevice.TouchPad | PointerDevice.Stylus
|
acceptedDevices: PointerDevice.Mouse | PointerDevice.TouchPad | PointerDevice.Stylus
|
||||||
gesturePolicy: TapHandler.WithinBounds
|
|
||||||
onTapped: {
|
onTapped: {
|
||||||
const event = root.Message.room.findEvent(root.eventId);
|
requestMenu();
|
||||||
RoomManager.viewEventMenu(root.QQC2.Overlay.overlay, event, root.Message.room, root.Message.selectedText, root.Message.hoveredLink);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function requestMenu() {
|
||||||
|
const event = root.Message.room.findEvent(root.eventId);
|
||||||
|
RoomManager.viewEventMenu(root.QQC2.Overlay.overlay, event, root.Message.room, root.Message.selectedText, root.Message.hoveredLink);
|
||||||
|
}
|
||||||
|
|
||||||
background: null
|
background: null
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user