diff --git a/qml/components/InReplyToRow.qml b/qml/components/InReplyToRow.qml
index 225e7fc..3756852 100644
--- a/qml/components/InReplyToRow.qml
+++ b/qml/components/InReplyToRow.qml
@@ -58,33 +58,24 @@ Row {
spacing: Theme.paddingSmall
width: parent.width - ( inReplyToRow.editable ? ( Theme.paddingSmall + removeInReplyToIconButton.width ) : 0 )
- Text {
+ Label {
id: inReplyToUserText
width: parent.width
font.pixelSize: Theme.fontSizeExtraSmall
font.weight: Font.ExtraBold
- color: Theme.primaryColor
maximumLineCount: 1
- elide: Text.ElideRight
+ truncationMode: TruncationMode.Fade
textFormat: Text.StyledText
horizontalAlignment: Text.AlignLeft
}
- Text {
+ Label {
id: inReplyToMessageText
font.pixelSize: Theme.fontSizeExtraSmall
- color: Theme.primaryColor
width: parent.width
- elide: Text.ElideRight
textFormat: Text.StyledText
- onTruncatedChanged: {
- // There is obviously a bug in QML in truncating text with images.
- // We simply remove Emojis then...
- if (truncated) {
- text = text.replace(/\]+\/\>/g, "");
- }
- }
+ truncationMode: TruncationMode.Fade
}
}
diff --git a/qml/components/MessageListViewItem.qml b/qml/components/MessageListViewItem.qml
index f30454b..1c08c63 100644
--- a/qml/components/MessageListViewItem.qml
+++ b/qml/components/MessageListViewItem.qml
@@ -254,7 +254,7 @@ ListItem {
anchors.centerIn: messageBackground
- Text {
+ Label {
id: userText
width: parent.width
@@ -263,7 +263,7 @@ ListItem {
font.weight: Font.ExtraBold
color: messageListItem.textColor
maximumLineCount: 1
- elide: Text.ElideRight
+ truncationMode: TruncationMode.Fade
textFormat: Text.StyledText
horizontalAlignment: messageListItem.textAlign
visible: precalculatedValues.showUserInfo
@@ -341,38 +341,23 @@ ListItem {
Column {
spacing: Theme.paddingSmall
width: parent.width - forwardedThumbnail.width - Theme.paddingSmall
- Text {
+ Label {
font.pixelSize: Theme.fontSizeExtraSmall
- color: Theme.primaryColor
width: parent.width
font.italic: true
- elide: Text.ElideRight
+ truncationMode: TruncationMode.Fade
textFormat: Text.StyledText
text: qsTr("Forwarded Message")
- onTruncatedChanged: {
- // There is obviously a bug in QML in truncating text with images.
- // We simply remove Emojis then...
- if (truncated) {
- text = text.replace(/\]+\/\>/g, "");
- }
- }
}
- Text {
+ Label {
id: forwardedChannelText
font.pixelSize: Theme.fontSizeExtraSmall
color: Theme.primaryColor
width: parent.width
font.bold: true
- elide: Text.ElideRight
+ truncationMode: TruncationMode.Fade
textFormat: Text.StyledText
text: Emoji.emojify(forwardedMessageInformationRow.otherChatInformation.title, font.pixelSize)
- onTruncatedChanged: {
- // There is obviously a bug in QML in truncating text with images.
- // We simply remove Emojis then...
- if (truncated) {
- text = text.replace(/\]+\/\>/g, "");
- }
- }
}
}
}
diff --git a/qml/components/MessageOverlayFlickable.qml b/qml/components/MessageOverlayFlickable.qml
index c70f8a1..13028db 100644
--- a/qml/components/MessageOverlayFlickable.qml
+++ b/qml/components/MessageOverlayFlickable.qml
@@ -109,7 +109,7 @@ Flickable {
width: Theme.itemSizeLarge
height: Theme.itemSizeLarge
}
- Text {
+ Label {
id: overlayMessageUserText
width: parent.width - overlayMessagePictureThumbnail.width
@@ -117,9 +117,8 @@ Flickable {
text: messageOverlayFlickable.isOwnMessage ? qsTr("You") : Emoji.emojify(Functions.getUserName(messageOverlayFlickable.userInformation), font.pixelSize)
font.pixelSize: Theme.fontSizeExtraLarge
font.weight: Font.ExtraBold
- color: Theme.primaryColor
maximumLineCount: 1
- elide: Text.ElideRight
+ truncationMode: TruncationMode.Fade
textFormat: Text.StyledText
}
}
diff --git a/qml/components/PhotoTextsListItem.qml b/qml/components/PhotoTextsListItem.qml
index ceba640..a544642 100644
--- a/qml/components/PhotoTextsListItem.qml
+++ b/qml/components/PhotoTextsListItem.qml
@@ -78,63 +78,42 @@ ListItem {
width: parent.width * 5 / 6 - Theme.horizontalPageMargin
spacing: Theme.paddingSmall
- Text {
+ Label {
id: primaryText
textFormat: Text.StyledText
font.pixelSize: Theme.fontSizeMedium
- color: Theme.primaryColor
- elide: Text.ElideRight
+ truncationMode: TruncationMode.Fade
width: parent.width
- onTruncatedChanged: {
- // There is obviously a bug in QML in truncating text with images.
- // We simply remove Emojis then...
- if (truncated) {
- text = text.replace(/\]+\/\>/g, "");
- }
- }
}
Row {
id: additionalTextRow
width: parent.width
spacing: Theme.paddingSmall
- Text {
+ Label {
id: prologSecondaryText
font.pixelSize: Theme.fontSizeExtraSmall
width: Math.min(implicitWidth, parent.width)
elide: Text.ElideRight
color: Theme.highlightColor
textFormat: Text.StyledText
- onTruncatedChanged: {
- // There is obviously a bug in QML in truncating text with images.
- // We simply remove Emojis then...
- if (truncated) {
- text = text.replace(/\]+\/\>/g, "");
- }
- }
+ truncationMode: TruncationMode.Fade
}
- Text {
+ Label {
id: secondaryText
font.pixelSize: Theme.fontSizeExtraSmall
- color: Theme.primaryColor
width: parent.width - Theme.paddingMedium - prologSecondaryText.width
- elide: Text.ElideRight
+ truncationMode: TruncationMode.Fade
textFormat: Text.StyledText
- onTruncatedChanged: {
- // There is obviously a bug in QML in truncating text with images.
- // We simply remove Emojis then...
- if (truncated) {
- text = text.replace(/\]+\/\>/g, "");
- }
- }
}
}
- Text {
+ Label {
id: tertiaryText
width: parent.width
font.pixelSize: Theme.fontSizeTiny
color: Theme.secondaryColor
+ truncationMode: TruncationMode.Fade
}
}
}
diff --git a/qml/components/PinnedMessageItem.qml b/qml/components/PinnedMessageItem.qml
index 9040a8a..8a6f41a 100644
--- a/qml/components/PinnedMessageItem.qml
+++ b/qml/components/PinnedMessageItem.qml
@@ -77,7 +77,7 @@ Item {
spacing: Theme.paddingSmall
width: parent.width
- Text {
+ Label {
id: pinnedMessageUserText
width: parent.width
@@ -85,18 +85,18 @@ Item {
font.weight: Font.ExtraBold
color: Theme.primaryColor
maximumLineCount: 1
- elide: Text.ElideRight
+ truncationMode: TruncationMode.Fade
textFormat: Text.StyledText
horizontalAlignment: Text.AlignLeft
}
- Text {
+ Label {
id: pinnedMessageText
font.pixelSize: Theme.fontSizeExtraSmall
color: Theme.primaryColor
width: parent.width
- elide: Text.ElideRight
+ truncationMode: TruncationMode.Fade
maximumLineCount: 1
textFormat: Text.StyledText
}
diff --git a/qml/components/StickerPicker.qml b/qml/components/StickerPicker.qml
index 1cd6172..bc4eb93 100644
--- a/qml/components/StickerPicker.qml
+++ b/qml/components/StickerPicker.qml
@@ -63,13 +63,12 @@ Item {
id: stickerPickerColumn
spacing: Theme.paddingMedium
width: stickerPickerFlickable.width
- Text {
+ Label {
font.pixelSize: Theme.fontSizeMedium
font.bold: true
- color: Theme.primaryColor
width: parent.width
maximumLineCount: 1
- elide: Text.ElideRight
+ truncationMode: TruncationMode.Fade
text: qsTr("Recently used")
}
@@ -122,13 +121,12 @@ Item {
Column {
spacing: Theme.paddingMedium
width: parent.width
- Text {
+ Label {
font.pixelSize: Theme.fontSizeMedium
font.bold: true
- color: Theme.primaryColor
width: parent.width
maximumLineCount: 1
- elide: Text.ElideRight
+ truncationMode: TruncationMode.Fade
text: modelData.title
}
@@ -159,12 +157,11 @@ Item {
}
}
}
- Text {
+ Label {
font.pixelSize: Theme.fontSizeHuge
- color: Theme.primaryColor
anchors.fill: parent
maximumLineCount: 1
- elide: Text.ElideRight
+ truncationMode: TruncationMode.Fade
text: Emoji.emojify(modelData.emoji, font.pixelSize)
visible: !modelData.thumbnail.photo.local.is_downloading_completed
}
diff --git a/qml/components/WebPagePreview.qml b/qml/components/WebPagePreview.qml
index 3437110..e90178d 100644
--- a/qml/components/WebPagePreview.qml
+++ b/qml/components/WebPagePreview.qml
@@ -70,7 +70,7 @@ Column {
}
}
- Text {
+ Label {
id: siteNameText
width: parent.width
@@ -78,35 +78,33 @@ Column {
font.pixelSize: webPagePreviewColumn.largerFontSize ? Theme.fontSizeSmall : Theme.fontSizeExtraSmall
font.bold: true
color: Theme.secondaryHighlightColor
- elide: Text.ElideRight
+ truncationMode: TruncationMode.Fade
maximumLineCount: 1
textFormat: Text.StyledText
visible: (text !== "")
}
- Text {
+ Label {
id: titleText
width: parent.width
text: webPageData.title ? Emoji.emojify(webPageData.title, font.pixelSize) : ""
font.pixelSize: webPagePreviewColumn.largerFontSize ? Theme.fontSizeSmall : Theme.fontSizeExtraSmall
font.bold: true
- color: Theme.primaryColor
- elide: Text.ElideRight
+ truncationMode: TruncationMode.Fade
wrapMode: Text.Wrap
maximumLineCount: 2
textFormat: Text.StyledText
visible: (text !== "")
}
- Text {
+ Label {
id: descriptionText
width: parent.width
text: webPageData.description ? Emoji.emojify(webPageData.description, font.pixelSize) : ""
font.pixelSize: webPagePreviewColumn.largerFontSize ? Theme.fontSizeSmall : Theme.fontSizeExtraSmall
- color: Theme.primaryColor
- elide: Text.ElideRight
+ truncationMode: TruncationMode.Fade
wrapMode: Text.Wrap
maximumLineCount: 3
textFormat: Text.StyledText
@@ -146,7 +144,7 @@ Column {
}
}
- Text {
+ Label {
id: noPreviewAvailableText
width: parent.width
@@ -154,7 +152,7 @@ Column {
font.pixelSize: webPagePreviewColumn.largerFontSize ? Theme.fontSizeExtraSmall : Theme.fontSizeTiny
font.italic: true
color: Theme.secondaryColor
- elide: Text.ElideRight
+ truncationMode: TruncationMode.Fade
wrapMode: Text.Wrap
maximumLineCount: 1
textFormat: Text.StyledText
diff --git a/qml/components/chatInformationPage/ChatInformationTabItemMembersGroups.qml b/qml/components/chatInformationPage/ChatInformationTabItemMembersGroups.qml
index 873302c..9d9243f 100644
--- a/qml/components/chatInformationPage/ChatInformationTabItemMembersGroups.qml
+++ b/qml/components/chatInformationPage/ChatInformationTabItemMembersGroups.qml
@@ -89,7 +89,6 @@ ChatInformationTabItemBase {
tertiaryText {
maximumLineCount: 1
text: user.type["@type"] === "userTypeBot" ? (Emoji.emojify("🤖 "+bot_info.description, tertiaryText.font.pixelSize)) : Functions.getChatPartnerStatusText(user.status["@type"], user.status.was_online);
- elide: Text.ElideRight
}
onClicked: {
diff --git a/qml/pages/ChatPage.qml b/qml/pages/ChatPage.qml
index 649c1be..0a33c4c 100644
--- a/qml/pages/ChatPage.qml
+++ b/qml/pages/ChatPage.qml
@@ -603,15 +603,15 @@ Page {
Row {
id: headerRow
width: parent.width - (3 * Theme.horizontalPageMargin)
- height: chatOverviewColumn.height + ( chatPage.isPortrait ? (2 * Theme.paddingMedium) : (2 * Theme.paddingSmall) )
+ height: chatOverviewItem.height + ( chatPage.isPortrait ? (2 * Theme.paddingMedium) : (2 * Theme.paddingSmall) )
anchors.horizontalCenter: parent.horizontalCenter
spacing: Theme.paddingMedium
ProfileThumbnail {
id: chatPictureThumbnail
replacementStringHint: chatNameText.text
- width: chatOverviewColumn.height
- height: chatOverviewColumn.height
+ width: chatOverviewItem.height
+ height: chatOverviewItem.height
anchors.bottom: parent.bottom
anchors.bottomMargin: chatPage.isPortrait ? Theme.paddingMedium : Theme.paddingSmall
@@ -626,34 +626,38 @@ Page {
}
}
- Column {
- id: chatOverviewColumn
+ Item {
+ id: chatOverviewItem
width: parent.width - chatPictureThumbnail.width - Theme.paddingMedium
+ height: chatNameText.height + chatStatusText.height
anchors.bottom: parent.bottom
anchors.bottomMargin: chatPage.isPortrait ? Theme.paddingMedium : Theme.paddingSmall
- Text {
+ Label {
id: chatNameText
+ width: Math.min(implicitWidth, parent.width)
+ anchors.right: parent.right
text: chatInformation.title !== "" ? Emoji.emojify(chatInformation.title, font.pixelSize) : qsTr("Unknown")
textFormat: Text.StyledText
font.pixelSize: chatPage.isPortrait ? Theme.fontSizeLarge : Theme.fontSizeMedium
font.family: Theme.fontFamilyHeading
color: Theme.highlightColor
- elide: Text.ElideRight
- width: parent.width
+ truncationMode: TruncationMode.Fade
maximumLineCount: 1
- horizontalAlignment: Text.AlignRight
}
- Text {
+ Label {
id: chatStatusText
+ width: Math.min(implicitWidth, parent.width)
+ anchors {
+ right: parent.right
+ bottom: parent.bottom
+ }
text: ""
textFormat: Text.StyledText
font.pixelSize: chatPage.isPortrait ? Theme.fontSizeExtraSmall : Theme.fontSizeTiny
font.family: Theme.fontFamilyHeading
color: headerMouseArea.pressed ? Theme.secondaryHighlightColor : Theme.secondaryColor
- elide: Text.ElideRight
- width: parent.width
+ truncationMode: TruncationMode.Fade
maximumLineCount: 1
- horizontalAlignment: Text.AlignRight
}
}
}
@@ -1093,14 +1097,14 @@ Page {
visible: attachmentPreviewRow.isPicture || attachmentPreviewRow.isVideo
}
- Text {
+ Label {
id: attachmentPreviewText
font.pixelSize: Theme.fontSizeSmall
text: typeof attachmentPreviewRow.fileProperties !== "undefined" ? attachmentPreviewRow.fileProperties.fileName || "" : "";
anchors.verticalCenter: parent.verticalCenter
maximumLineCount: 1
- elide: Text.ElideRight
+ truncationMode: TruncationMode.Fade
color: Theme.secondaryColor
visible: attachmentPreviewRow.isDocument
}
diff --git a/qml/pages/CoverPage.qml b/qml/pages/CoverPage.qml
index 5df9580..9e5df33 100644
--- a/qml/pages/CoverPage.qml
+++ b/qml/pages/CoverPage.qml
@@ -120,15 +120,14 @@ CoverBackground {
color: Theme.primaryColor
text: Functions.getShortenedCount(coverPage.unreadMessages)
}
- Text {
+ Label {
id: unreadMessagesText
font.pixelSize: Theme.fontSizeSmall
- color: Theme.primaryColor
width: parent.width - unreadMessagesCountText.width - Theme.paddingMedium
wrapMode: Text.Wrap
anchors.verticalCenter: unreadMessagesCountText.verticalCenter
maximumLineCount: 2
- elide: Text.ElideRight
+ truncationMode: TruncationMode.Fade
}
}