Move the remaining functionality of ChatDocumentHandler to ChatTextItemHelper or split into own objects

This commit is contained in:
James Graham
2025-12-31 18:49:19 +00:00
parent 22d7d90cf4
commit 9ea76ca5d0
32 changed files with 1389 additions and 1494 deletions

View File

@@ -45,11 +45,9 @@ QQC2.TextArea {
* @brief The attributes of the component.
*/
required property var componentAttributes
readonly property ChatDocumentHandler chatDocumentHandler: componentAttributes?.chatDocumentHandler ?? null
onChatDocumentHandlerChanged: if (chatDocumentHandler) {
chatDocumentHandler.type = ChatBarType.Room;
chatDocumentHandler.room = root.Message.room;
chatDocumentHandler.textItem = root;
readonly property ChatTextItemHelper chatTextItemHelper: componentAttributes?.chatTextItemHelper ?? null
onChatTextItemHelperChanged: if (chatTextItemHelper) {
chatTextItemHelper.textItem = root;
}
/**
@@ -66,16 +64,12 @@ QQC2.TextArea {
signal selectedTextChanged(string selectedText)
Keys.onUpPressed: (event) => {
event.accepted = false;
if (root.chatDocumentHandler.atFirstLine) {
Message.contentModel.focusRow = root.index - 1
}
event.accepted = true;
Message.contentModel.keyHelper.up();
}
Keys.onDownPressed: (event) => {
event.accepted = false;
if (root.chatDocumentHandler.atLastLine) {
Message.contentModel.focusRow = root.index + 1
}
event.accepted = true;
Message.contentModel.keyHelper.down();
}
Keys.onLeftPressed: (event) => {
if (cursorPosition == 1) {
@@ -94,12 +88,12 @@ QQC2.TextArea {
Keys.onDeletePressed: (event) => {
event.accepted = true;
chatDocumentHandler.deleteChar();
Message.contentModel.keyHelper.deleteChar();
}
Keys.onPressed: (event) => {
if (event.key == Qt.Key_Backspace) {
event.accepted = true;
chatDocumentHandler.backspace();
Message.contentModel.keyHelper.backspace();
return;
}
event.accepted = false;