diff --git a/resources/qml/MessageView.qml b/resources/qml/MessageView.qml
index 5309fcf45d5e81bfdc6c3b03af5801b126a12d16..573c8344104b5a546561c66b2e7b271323eee878 100644
--- a/resources/qml/MessageView.qml
+++ b/resources/qml/MessageView.qml
@@ -379,9 +379,16 @@ Item {
                         text: Presence.userStatus(userId)
                         textFormat: Text.PlainText
                         elide: Text.ElideRight
-                        width: userInfo.remainingWidth - userName_.width - parent.spacing
+                        width: Math.min(implicitWidth, userInfo.remainingWidth - userName_.width - parent.spacing)
                         font.italic: true
-                        font.pointSize: fontMetrics.font.pointSize * 0.8
+                        font.pointSize: Math.floor(fontMetrics.font.pointSize * 0.8)
+                        ToolTip.text: qsTr("%1's status message").arg(userName)
+                        ToolTip.visible: statusMsgHoverHandler.hovered
+                        ToolTip.delay: Nheko.tooltipDelay
+
+                        HoverHandler {
+                            id: statusMsgHoverHandler
+                        }
 
                         Connections {
                             target: Presence