Make the SendBox work, send plaintext messages

This commit is contained in:
miruka 2019-04-17 23:01:26 -04:00
parent 6ab4acdc84
commit a7649d1a7a
4 changed files with 18 additions and 5 deletions

View File

@ -185,3 +185,15 @@ class Client(QObject):
self.roomEventReceived.emit(
room_id, type(ev).__name__, ev.__dict__
)
@pyqtSlot(str, str)
@futurize
def sendMessage(self, room_id: str, text: str) -> None:
content = {
"body": text,
"formatted_body": text,
"format": "org.matrix.custom.html",
"msgtype": "m.text",
}
self.net.talk(self.nio.room_send, room_id, "m.room.message", content)

View File

@ -49,7 +49,10 @@ class NetworkManager:
@staticmethod
def _close_socket(sock: socket.socket) -> None:
sock.shutdown(how=socket.SHUT_RDWR)
try:
sock.shutdown(how=socket.SHUT_RDWR)
except OSError: # Already closer by server
pass
sock.close()

View File

@ -30,7 +30,6 @@ Rectangle {
property real yPos: visibleArea.yPosition
onYPosChanged: {
console.log(yPos)
if (yPos <= 0.1) {
Backend.loadPastEvents(chatPage.room.room_id)
}

View File

@ -53,9 +53,8 @@ Rectangle {
if (textArea.text === "") { return }
Backend.sendMessage(chatPage.user.user_id,
chatPage.room.room_id,
textArea.text)
Backend.clientManager.clients[chatPage.user_id]
.sendMessage(chatPage.room.room_id, textArea.text)
textArea.clear()
}
Keys.onEnterPressed: Keys.onReturnPressed(event) // numpad enter