# Overall: How is LTR meant to work? You're using it for internal layouting purposes so any genuine LTR would now be quite broken, I suspect it will all appear aligned to one side. At a minimum we would need to inverse the logic inside ChatBubble::tailBase and it needs some testing # ChatBubble: property alias inlineFooterContent: _row.data property alias inlineFooter: _row Either one makes sense, but I'm not sold on having both. What if someone set inlineFooter to a null? then used inlineFooterContent --- Why do we have Kirigami.ShadowedRectangle if the whole thing is in a DropShadow effect? # TextBubble: readonly property string textPadding: " ".repeat(Math.ceil(bubble.bubble.inlineFooter.width / dummy.implicitWidth)) + "=E2=A0=80" textPadding will affect implicitWidth, basing an implicitWidth off any current widths is a path to binding loops. using bubble.bubble.inlineFooter.implicitWidth would be ok. # Timestamp: There's some maths on the sizes, do they need rounding?