vlc | branch: master | Fatih Uzunoglu <[email protected]> | Fri Nov 20 21:32:33 2020 +0300| [8849d00e9e2f52dfe7e3880c2b0883af50171fce] | committer: Pierre Lamot
qml: elide artwork info when it is clipped instead of fade out Signed-off-by: Pierre Lamot <[email protected]> > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8849d00e9e2f52dfe7e3880c2b0883af50171fce --- modules/gui/qt/player/qml/ControlButtons.qml | 81 ++++++---------------------- modules/gui/qt/style/VLCStyle.qml | 2 +- 2 files changed, 18 insertions(+), 65 deletions(-) diff --git a/modules/gui/qt/player/qml/ControlButtons.qml b/modules/gui/qt/player/qml/ControlButtons.qml index f6df20918b..f9b41cacdd 100644 --- a/modules/gui/qt/player/qml/ControlButtons.qml +++ b/modules/gui/qt/player/qml/ControlButtons.qml @@ -782,10 +782,8 @@ Item{ id: artworkInfoItem property bool paintOnly: false - readonly property bool isClipped: implicitWidth < playingItemInfoRow.implicitWidth - implicitWidth: Math.min(playingItemInfoRow.implicitWidth, VLCStyle.artworkInfoMaxWidth) + implicitWidth: playingItemInfoRow.implicitWidth implicitHeight: playingItemInfoRow.implicitHeight - clip: isClipped Keys.onPressed: { if (KeyHelper.matchOk(event) ) { @@ -842,12 +840,15 @@ Item{ } Column { - id: rightPart - anchors.verticalCenter: parent.verticalCenter leftPadding: VLCStyle.margin_xsmall ToolTip { + text: i18n.qtr("%1\n%2").arg(titleLabel.text).arg(artistLabel.text) + visible: (titleLabel.implicitWidth > titleLabel.width || artistLabel.implicitWidth > titleLabel.width) + && (artworkInfoMouseArea.containsMouse || artworkInfoItem.active) + delay: 500 + contentItem: Text { text: i18n.qtr("%1\n%2").arg(titleLabel.text).arg(artistLabel.text) color: VLCStyle.colors.tooltipTextColor @@ -856,74 +857,26 @@ Item{ background: Rectangle { color: VLCStyle.colors.tooltipColor } - - visible: artworkInfoItem.isClipped && (artworkInfoMouseArea.containsMouse || artworkInfoItem.active) - delay: 500 } - Item { - id: titleLabelItem - implicitWidth: titleLabel.width - implicitHeight: titleLabel.height - - readonly property point realWidth: Qt.point(artworkInfoItem.width - playingItemInfoRow.mapFromItem(rightPart, titleLabelItem.x, titleLabelItem.y).x, 0) - readonly property bool isTextClipped: titleLabelItem.implicitWidth > realWidth.x - - Widgets.MenuLabel { - id: titleLabel - text: mainPlaylistController.currentItem.title - - visible: !titleLabelItem.isTextClipped - } - - LinearGradient { - anchors.fill: titleLabel - source: titleLabel - start: Qt.point(0, 0) - end: titleLabelItem.realWidth - - visible: titleLabelItem.isTextClipped - - gradient: Gradient { - GradientStop { position: 0.75; color: titleLabel.color } - GradientStop { position: 1.00; color: "transparent" } - } - } + Widgets.MenuLabel { + id: titleLabel + width: implicitWidth < VLCStyle.artworkInfoTextWidth ? implicitWidth : VLCStyle.artworkInfoTextWidth + text: mainPlaylistController.currentItem.title + visible: text !== "" } - Item { - id: artistLabelItem - implicitWidth: artistLabel.width - implicitHeight: artistLabel.height - - readonly property point realWidth: Qt.point(artworkInfoItem.width - playingItemInfoRow.mapFromItem(rightPart, artistLabelItem.x, artistLabelItem.y).x, 0) - readonly property bool isTextClipped: artistLabelItem.implicitWidth > realWidth.x - - Widgets.MenuCaption { - id: artistLabel - text: mainPlaylistController.currentItem.artist - - visible: !artistLabelItem.isTextClipped - } - - LinearGradient { - anchors.fill: artistLabel - source: artistLabel - start: Qt.point(0, 0) - end: artistLabelItem.realWidth - - visible: artistLabelItem.isTextClipped - - gradient: Gradient { - GradientStop { position: 0.75; color: titleLabel.color } - GradientStop { position: 1.00; color: "transparent" } - } - } + Widgets.MenuCaption { + id: artistLabel + width: implicitWidth < VLCStyle.artworkInfoTextWidth ? implicitWidth : VLCStyle.artworkInfoTextWidth + text: mainPlaylistController.currentItem.artist + visible: text !== "" } Widgets.MenuCaption { id: progressIndicator text: player.time.toString() + " / " + player.length.toString() + visible: text !== "" } } } diff --git a/modules/gui/qt/style/VLCStyle.qml b/modules/gui/qt/style/VLCStyle.qml index 562c91d071..d32d24086f 100644 --- a/modules/gui/qt/style/VLCStyle.qml +++ b/modules/gui/qt/style/VLCStyle.qml @@ -124,7 +124,7 @@ Item { property int expandAlbumTracksHeight: dp(200, scale) - property int artworkInfoMaxWidth: dp(350, scale) + readonly property real artworkInfoTextWidth: (appWidth / 6) //combobox property int combobox_width_small: dp(64, scale) _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
