diff options
author | Miquel Lionel <lionel@les-miquelots.net> | 2021-12-20 21:10:36 +0100 |
---|---|---|
committer | Miquel Lionel <lionel@les-miquelots.net> | 2021-12-20 21:28:08 +0100 |
commit | 96555dfc65034c46578309f39ae0f754e1acb0f8 (patch) | |
tree | 1670bcb917b12c71b8596647067a5f30802ea6f6 /qml/ComposePane.qml | |
parent | b51a3e81dd2178c681226458ca4bb73ae98a5e34 (diff) | |
download | kdeltachat-96555dfc65034c46578309f39ae0f754e1acb0f8.tar.gz kdeltachat-96555dfc65034c46578309f39ae0f754e1acb0f8.zip |
Less clicks: focus compose pane on chat selection.
- Also we now use Enter to send chat, and
Ctrl/Shift+Enter to add newlines. Updated
the F1 help accordingly.
- there was no way to refresh the message
list until you clicked on the chat again, so
I moved updateMessagelist() to trigger on every
incoming message. We have working block mechanisms
now, so it shouldn't be that much of a bother if
someone spams you.
- To speed up the delay between the UI displaying the
message has waiting to be sent, upon sending a
message, the startIo() function is now triggered.
Diffstat (limited to 'qml/ComposePane.qml')
-rw-r--r-- | qml/ComposePane.qml | 33 |
1 files changed, 19 insertions, 14 deletions
diff --git a/qml/ComposePane.qml b/qml/ComposePane.qml index 254e484..14bfb36 100644 --- a/qml/ComposePane.qml +++ b/qml/ComposePane.qml @@ -82,6 +82,20 @@ Pane { placeholderText: qsTr("Message") wrapMode: TextArea.Wrap selectByMouse: true + Keys.onReturnPressed: { + if (event.key === Qt.Key_Return) { + if (event.modifiers & (Qt.ControlModifier | Qt.ShiftModifier)){ + messageField.append(""); + } else { + if(sendButton.enabled){ + sendButton.clicked(); + dcAccounts.startIo(); + event.accepted = true; + } + } + } + } + Component.onCompleted: { let draft = root.context.getDraft(chatId); if (draft) @@ -118,22 +132,9 @@ Pane { Button { id: sendButton - action: Kirigami.Action { - checked: false - shortcut: "Ctrl+S" - onTriggered:{ - if (sendButton.enabled) { - root.focus = true; - sendButton.focus = true; - sendButton.down = true; - sendButton.clicked(); - sendButton.down = false; - } - } - } hoverEnabled: true ToolTip.visible: hovered - ToolTip.text: "Ctrl+S" + ToolTip.text: "Press Enter" visible: root.canSend Layout.alignment: Qt.AlignBottom icon.name: "document-send" @@ -145,6 +146,7 @@ Pane { attachFileUrl = ""; messageField.text = ""; root.context.setDraft(chatId, null); + messageField.forceActiveFocus(); } } @@ -192,4 +194,7 @@ Pane { } } + Component.onCompleted : { + messageField.forceActiveFocus(); + } } |