vlc | branch: master | Fatih Uzunoglu <[email protected]> | Fri Jan 8 00:36:54 2021 +0300| [86e4caec3e8abcc35228a6f85c453994c7b4a561] | committer: Pierre Lamot
qml: add first item indicator to playlist Signed-off-by: Pierre Lamot <[email protected]> > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=86e4caec3e8abcc35228a6f85c453994c7b4a561 --- modules/gui/qt/playlist/qml/PlaylistListView.qml | 46 +++++++++++++++++++++--- 1 file changed, 42 insertions(+), 4 deletions(-) diff --git a/modules/gui/qt/playlist/qml/PlaylistListView.qml b/modules/gui/qt/playlist/qml/PlaylistListView.qml index 3c95f6560c..6058b3bf1e 100644 --- a/modules/gui/qt/playlist/qml/PlaylistListView.qml +++ b/modules/gui/qt/playlist/qml/PlaylistListView.qml @@ -320,6 +320,8 @@ Widgets.NavigableFocusScope { width: parent.width height: Math.max(VLCStyle.icon_normal, listView.height - y) + property alias firstItemIndicatorVisible: firstItemIndicator.visible + function setDropIndicatorVisible(visible) { dropIndicator.visible = visible } @@ -353,6 +355,33 @@ Widgets.NavigableFocusScope { color: colors.accent } + Rectangle { + id: firstItemIndicator + + anchors.fill: parent + anchors.margins: VLCStyle.margin_small + + border.width: VLCStyle.dp(2) + border.color: colors.accent + + color: "transparent" + + visible: false + + opacity: 0.8 + + Label { + anchors.centerIn: parent + + text: VLCIcons.add + + font.pointSize: VLCStyle.fontHeight_xxxlarge + + font.family: VLCIcons.fontFamily + color: colors.accent + } + } + DropArea { id: dropArea @@ -362,10 +391,16 @@ Widgets.NavigableFocusScope { if(!root.isDropAcceptable(drag, root.model.count)) return - dropIndicator.visible = true + if (root.model.count === 0) + firstItemIndicator.visible = true + else + dropIndicator.visible = true } onExited: { - dropIndicator.visible = false + if (root.model.count === 0) + firstItemIndicator.visible = false + else + dropIndicator.visible = false } onDropped: { if(!root.isDropAcceptable(drop, root.model.count)) @@ -373,7 +408,10 @@ Widgets.NavigableFocusScope { root.acceptDrop(root.model.count, drop) - dropIndicator.visible = false + if (root.model.count === 0) + firstItemIndicator.visible = false + else + dropIndicator.visible = false } } } @@ -520,7 +558,7 @@ Widgets.NavigableFocusScope { Column { id: noContentInfoColumn anchors.centerIn: parent - visible: model.count === 0 + visible: model.count === 0 && !listView.footerItem.firstItemIndicatorVisible Widgets.IconLabel { font.pixelSize: VLCStyle.dp(48, VLCStyle.scale) _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
