[vlc-commits] [Git][videolan/vlc][master] 8 commits: qml: move EmptyLabel* components to widgets
Jean-Baptiste Kempf (@jbk)
gitlab at videolan.org
Fri May 12 15:09:19 UTC 2023
Jean-Baptiste Kempf pushed to branch master at VideoLAN / VLC
Commits:
eb971092 by Prince Gupta at 2023-05-12T14:51:48+00:00
qml: move EmptyLabel* components to widgets
- - - - -
d7c6d39c by Prince Gupta at 2023-05-12T14:51:48+00:00
qml: use MainViewLoader in BrowseTreeDisplay
- - - - -
12797e84 by Prince Gupta at 2023-05-12T14:51:48+00:00
qml: implement BrowseTreeHeader
- - - - -
b9bb2e99 by Prince Gupta at 2023-05-12T14:51:48+00:00
qml: use BrowseTreeHeader for grid header
- - - - -
664c891b by Prince Gupta at 2023-05-12T14:51:48+00:00
qml: use BrowseTreeHeader for table header
- - - - -
05ff4fc9 by Prince Gupta at 2023-05-12T14:51:48+00:00
qml: add header to emptylabelcomponent of BrowseTreeDisplay
- - - - -
73931a0f by Prince Gupta at 2023-05-12T14:51:48+00:00
qml: show busyindicator with browse header
- - - - -
44c3da73 by Prince Gupta at 2023-05-12T14:51:48+00:00
qml: fix missing id
root is referenced as Button's Navigation parent but was never set
- - - - -
16 changed files:
- modules/gui/qt/Makefile.am
- modules/gui/qt/medialibrary/qml/MusicAlbums.qml
- modules/gui/qt/medialibrary/qml/MusicAllArtists.qml
- modules/gui/qt/medialibrary/qml/MusicArtistsAlbums.qml
- modules/gui/qt/medialibrary/qml/MusicGenres.qml
- modules/gui/qt/medialibrary/qml/MusicTracksDisplay.qml
- modules/gui/qt/medialibrary/qml/PlaylistMediaDisplay.qml
- modules/gui/qt/medialibrary/qml/PlaylistMediaList.qml
- modules/gui/qt/medialibrary/qml/VideoAll.qml
- modules/gui/qt/network/qml/BrowseTreeDisplay.qml
- + modules/gui/qt/network/qml/BrowseTreeHeader.qml
- modules/gui/qt/vlc.qrc
- modules/gui/qt/medialibrary/qml/EmptyLabel.qml → modules/gui/qt/widgets/qml/EmptyLabel.qml
- modules/gui/qt/medialibrary/qml/EmptyLabelButton.qml → modules/gui/qt/widgets/qml/EmptyLabelButton.qml
- modules/gui/qt/medialibrary/qml/EmptyLabelHint.qml → modules/gui/qt/widgets/qml/EmptyLabelHint.qml
- po/POTFILES.in
Changes:
=====================================
modules/gui/qt/Makefile.am
=====================================
@@ -847,9 +847,6 @@ libqt_plugin_la_QML = \
gui/qt/maininterface/qml/NoMedialibHome.qml \
gui/qt/medialibrary/qml/ArtistTopBanner.qml \
gui/qt/medialibrary/qml/AudioGridItem.qml \
- gui/qt/medialibrary/qml/EmptyLabel.qml \
- gui/qt/medialibrary/qml/EmptyLabelButton.qml \
- gui/qt/medialibrary/qml/EmptyLabelHint.qml \
gui/qt/medialibrary/qml/MediaGroupDisplay.qml \
gui/qt/medialibrary/qml/MusicAlbums.qml \
gui/qt/medialibrary/qml/MusicAlbumsDisplay.qml \
@@ -888,6 +885,7 @@ libqt_plugin_la_QML = \
gui/qt/network/qml/BrowseDisplay.qml \
gui/qt/network/qml/BrowseHomeDisplay.qml \
gui/qt/network/qml/BrowseTreeDisplay.qml \
+ gui/qt/network/qml/BrowseTreeHeader.qml \
gui/qt/network/qml/DiscoverDisplay.qml \
gui/qt/network/qml/DiscoverUrlDisplay.qml \
gui/qt/network/qml/NetworkAddressbar.qml \
@@ -1006,6 +1004,9 @@ libqt_plugin_la_QML = \
gui/qt/widgets/qml/DragItem.qml \
gui/qt/widgets/qml/DrawerExt.qml \
gui/qt/widgets/qml/ExpandGridView.qml \
+ gui/qt/widgets/qml/EmptyLabel.qml \
+ gui/qt/widgets/qml/EmptyLabelButton.qml \
+ gui/qt/widgets/qml/EmptyLabelHint.qml \
gui/qt/widgets/qml/GridItem.qml \
gui/qt/widgets/qml/HorizontalResizeHandle.qml \
gui/qt/widgets/qml/IconLabel.qml \
=====================================
modules/gui/qt/medialibrary/qml/MusicAlbums.qml
=====================================
@@ -269,7 +269,7 @@ MainInterface.MainViewLoader {
Component {
id: emptyLabelComponent
- EmptyLabelButton {
+ Widgets.EmptyLabelButton {
text: I18n.qtr("No albums found\nPlease try adding sources, by going to the Browse tab")
Navigation.parentItem: root
cover: VLCStyle.noArtAlbumCover
=====================================
modules/gui/qt/medialibrary/qml/MusicAllArtists.qml
=====================================
@@ -202,7 +202,7 @@ MainInterface.MainViewLoader {
Component {
id: emptyLabelComponent
- EmptyLabelButton {
+ Widgets.EmptyLabelButton {
text: I18n.qtr("No artists found\nPlease try adding sources, by going to the Browse tab")
Navigation.parentItem: root
cover: VLCStyle.noArtArtistCover
=====================================
modules/gui/qt/medialibrary/qml/MusicArtistsAlbums.qml
=====================================
@@ -248,7 +248,7 @@ FocusScope {
}
}
- EmptyLabelButton {
+ Widgets.EmptyLabelButton {
anchors.fill: parent
visible: artistModel.isReady && (artistModel.count <= 0)
focus: visible
=====================================
modules/gui/qt/medialibrary/qml/MusicGenres.qml
=====================================
@@ -281,7 +281,7 @@ MainInterface.MainViewLoader {
Component {
id: emptyLabelComponent
- EmptyLabelButton {
+ Widgets.EmptyLabelButton {
text: I18n.qtr("No genres found\nPlease try adding sources, by going to the Browse tab")
Navigation.parentItem: root
cover: VLCStyle.noArtAlbumCover
=====================================
modules/gui/qt/medialibrary/qml/MusicTracksDisplay.qml
=====================================
@@ -72,7 +72,7 @@ FocusScope {
displayMarginEnd: g_mainDisplay.displayMargin
}
- EmptyLabelButton {
+ Widgets.EmptyLabelButton {
anchors.fill: parent
visible: tracklistdisplay_id.model.isReady && (tracklistdisplay_id.model.count <= 0)
focus: visible
=====================================
modules/gui/qt/medialibrary/qml/PlaylistMediaDisplay.qml
=====================================
@@ -194,7 +194,7 @@ FocusScope {
Keys.onDeletePressed: onDelete()
}
- EmptyLabelButton {
+ Widgets.EmptyLabelButton {
anchors.fill: parent
visible: model.isReady && (model.count <= 0)
=====================================
modules/gui/qt/medialibrary/qml/PlaylistMediaList.qml
=====================================
@@ -356,7 +356,7 @@ MainInterface.MainViewLoader {
Component {
id: emptyLabel
- EmptyLabelHint {
+ Widgets.EmptyLabelHint {
visible: (model.count === 0)
focus: true
=====================================
modules/gui/qt/medialibrary/qml/VideoAll.qml
=====================================
@@ -283,7 +283,7 @@ MainInterface.MainViewLoader {
Component {
id: emptylabel
- EmptyLabelButton {
+ Widgets.EmptyLabelButton {
coverWidth : VLCStyle.dp(182, VLCStyle.scale)
coverHeight: VLCStyle.dp(114, VLCStyle.scale)
=====================================
modules/gui/qt/network/qml/BrowseTreeDisplay.qml
=====================================
@@ -26,7 +26,7 @@ import "qrc:///widgets/" as Widgets
import "qrc:///main/" as MainInterface
import "qrc:///style/"
-FocusScope {
+MainInterface.MainViewLoader {
id: root
// Properties
@@ -39,8 +39,9 @@ FocusScope {
readonly property bool isViewMultiView: true
- //the index to "go to" when the view is loaded
- property var initialIndex: 0
+ // 'parsingPending' property is not available with NetworkDevicesModel
+ readonly property bool parsing: Helpers.get(providerModel, "parsingPending", false)
+
property var sortModel: [
{ text: I18n.qtr("Alphabetic"), criteria: "name"},
{ text: I18n.qtr("Url"), criteria: "mrl" },
@@ -48,14 +49,8 @@ FocusScope {
{ text: I18n.qtr("File modified"), criteria: "fileModified" }
]
- // Aliases
-
- property alias leftPadding: view.leftPadding
- property alias rightPadding: view.rightPadding
-
- property alias model: filterModel
-
- property alias _currentView: view.currentItem
+ // fixme remove this
+ property Item _currentView: currentItem
signal browse(var tree, int reason)
@@ -63,31 +58,47 @@ FocusScope {
History.previous()
}
- onTreeChanged: providerModel.tree = tree
+ model: SortFilterProxyModel {
+ id: filterModel
- function playSelected() {
- providerModel.addAndPlay(filterModel.mapIndexesToSource(selectionModel.selectedIndexes))
+ sourceModel: providerModel
+ searchRole: "name"
}
- function playAt(index) {
- providerModel.addAndPlay(filterModel.mapIndexToSource(index))
+ // override the default currentComponent assignment from MainViewLoader
+ // because we need to show empty label when model is parsing
+ currentComponent: {
+ if (filterModel.count == 0 || root.parsing)
+ return emptyLabelComponent
+ else if (MainCtx.gridView)
+ return gridComponent
+ else
+ return tableComponent
}
- function setCurrentItemFocus(reason) {
- _currentView.setCurrentItemFocus(reason);
- }
- Util.SelectableDelegateModel{
- id: selectionModel
+ onTreeChanged: providerModel.tree = tree
- model: filterModel
+ function playSelected() {
+ providerModel.addAndPlay(filterModel.mapIndexesToSource(selectionModel.selectedIndexes))
}
- SortFilterProxyModel {
- id: filterModel
+ function playAt(index) {
+ providerModel.addAndPlay(filterModel.mapIndexToSource(index))
+ }
- sourceModel: providerModel
- searchRole: "name"
+ function _actionAtIndex(index) {
+ if ( selectionModel.selectedIndexes.length > 1 ) {
+ playSelected()
+ } else {
+ var data = filterModel.getDataAt(index)
+ if (data.type === NetworkMediaModel.TYPE_DIRECTORY
+ || data.type === NetworkMediaModel.TYPE_NODE) {
+ browse(data.tree, Qt.TabFocusReason)
+ } else {
+ playAt(index)
+ }
+ }
}
Widgets.DragItem {
@@ -125,32 +136,6 @@ FocusScope {
}
}
- function resetFocus() {
- var initialIndex = root.initialIndex
- if (initialIndex >= filterModel.count)
- initialIndex = 0
- selectionModel.select(filterModel.index(initialIndex, 0), ItemSelectionModel.ClearAndSelect)
- if (_currentView) {
- _currentView.currentIndex = initialIndex
- _currentView.positionViewAtIndex(initialIndex, ItemView.Contain)
- }
- }
-
-
- function _actionAtIndex(index) {
- if ( selectionModel.selectedIndexes.length > 1 ) {
- playSelected()
- } else {
- var data = filterModel.getDataAt(index)
- if (data.type === NetworkMediaModel.TYPE_DIRECTORY
- || data.type === NetworkMediaModel.TYPE_NODE) {
- browse(data.tree, Qt.TabFocusReason)
- } else {
- playAt(index)
- }
- }
- }
-
Component{
id: gridComponent
@@ -160,49 +145,19 @@ FocusScope {
selectionDelegateModel: selectionModel
model: filterModel
- headerDelegate: FocusScope {
- id: headerId
+ headerDelegate: BrowseTreeHeader {
+ providerModel: root.providerModel
- width: view.width
- height: layout.implicitHeight + VLCStyle.margin_large + VLCStyle.margin_normal
+ // align header content with grid content
+ leftPadding: gridView.rowX
+
+ width: gridView.width
- Navigation.navigable: btn.visible
Navigation.parentItem: root
- Navigation.downAction: function() {
+ Navigation.downAction: function () {
focus = false
gridView.forceActiveFocus(Qt.TabFocusReason)
}
-
- RowLayout {
- id: layout
-
- anchors.fill: parent
- anchors.topMargin: VLCStyle.margin_large
- anchors.bottomMargin: VLCStyle.margin_normal
- anchors.rightMargin: VLCStyle.margin_small
-
- Widgets.SubtitleLabel {
- text: providerModel.name
- leftPadding: gridView.rowX
- color: gridView.colorContext.fg.primary
-
- Layout.fillWidth: true
- }
-
- Widgets.ButtonExt {
- id: btn
-
- focus: true
- iconTxt: providerModel.indexed ? VLCIcons.remove : VLCIcons.add
- text: providerModel.indexed ? I18n.qtr("Remove from medialibrary") : I18n.qtr("Add to medialibrary")
- visible: !providerModel.is_on_provider_list && !!providerModel.canBeIndexed
- onClicked: providerModel.indexed = !providerModel.indexed
-
- Layout.preferredWidth: implicitWidth
-
- Navigation.parentItem: headerId
- }
- }
}
cellWidth: VLCStyle.gridItem_network_width
@@ -309,8 +264,6 @@ FocusScope {
}]
dragItem: networkDragItem
- height: view.height
- width: view.width
model: filterModel
@@ -325,48 +278,15 @@ FocusScope {
rowHeight: VLCStyle.tableCoverRow_height
- header: FocusScope {
- id: head
+ header: BrowseTreeHeader {
+ providerModel: root.providerModel
- width: view.width
- height: layout.implicitHeight + VLCStyle.margin_large + VLCStyle.margin_small
+ width: tableView.width
- Navigation.navigable: btn.visible
Navigation.parentItem: root
-
- RowLayout {
- id: layout
-
- anchors.fill: parent
- anchors.topMargin: VLCStyle.margin_large
- anchors.bottomMargin: VLCStyle.margin_small
- anchors.rightMargin: VLCStyle.margin_small
-
- Widgets.SubtitleLabel {
- text: providerModel.name
- leftPadding: VLCStyle.margin_large
- color: tableView.colorContext.fg.primary
-
- Layout.fillWidth: true
- }
-
- Widgets.ButtonExt {
- id: btn
-
- focus: true
- iconTxt: providerModel.indexed ? VLCIcons.remove : VLCIcons.add
- text: providerModel.indexed ? I18n.qtr("Remove from medialibrary") : I18n.qtr("Add to medialibrary")
- visible: !providerModel.is_on_provider_list && !!providerModel.canBeIndexed
- onClicked: providerModel.indexed = !providerModel.indexed
-
- Navigation.parentItem: root
- Navigation.downAction: function() {
- head.focus = false
- tableView.forceActiveFocus(Qt.TabFocusReason)
- }
-
- Layout.preferredWidth: implicitWidth
- }
+ Navigation.downAction: function () {
+ focus = false
+ tableView.forceActiveFocus(Qt.TabFocusReason)
}
}
@@ -377,28 +297,96 @@ FocusScope {
}
}
- Widgets.StackViewExt {
- id: view
+ Component {
+ id: emptyLabelComponent
- anchors.fill: parent
+ FocusScope {
+ id: focusScope
- focus: true
- initialItem: MainCtx.gridView ? gridComponent : tableComponent
+ Navigation.navigable: layout.Navigation.navigable || (emptyLabel.visible && emptyLabel.button.enabled)
- Connections {
- target: MainCtx
- onGridViewChanged: {
- if (MainCtx.gridView)
- view.replace(gridComponent)
+ // used by MainDisplay to transfer focus
+ function setCurrentItemFocus(reason) {
+ if (!focusScope.Navigation.navigable)
+ return
+
+ if (header.Navigation.navigable)
+ header.forceActiveFocus(reason)
else
- view.replace(tableComponent)
+ emptyLabel.forceActiveFocus(reason)
}
- }
- Widgets.BusyIndicatorExt {
- runningDelayed: Helpers.get(providerModel, "parsingPending", false) // 'parsingPending' property is not available with NetworkDevicesModel
- anchors.centerIn: parent
- z: 1
+ ColumnLayout {
+ id: layout
+
+ anchors.fill: parent
+
+ BrowseTreeHeader {
+ id: header
+
+ focus: true
+
+ providerModel: root.providerModel
+
+ Layout.fillWidth: true
+
+ Navigation.parentItem: root
+ Navigation.downItem: emptyLabel
+ }
+
+ Widgets.EmptyLabelButton {
+ id: emptyLabel
+
+ visible: !root.parsing
+
+ // FIXME: find better cover
+ cover: VLCStyle.noArtVideoCover
+ coverWidth : VLCStyle.dp(182, VLCStyle.scale)
+ coverHeight: VLCStyle.dp(114, VLCStyle.scale)
+
+ text: I18n.qtr("Nothing to see here, go back.")
+
+ button.iconTxt: VLCIcons.back
+ button.text: I18n.qtr("Back")
+ button.enabled: !History.previousEmpty
+ button.width: button.implicitWidth
+
+ function onNavigate() {
+ History.previous()
+ }
+
+ Layout.fillHeight: true
+ Layout.fillWidth: true
+
+ Navigation.parentItem: root
+ Navigation.upAction: function () {
+ // FIXME: for some reason default navigation flow doesn't work
+ // i.e setting Navigtaion.upItem doesn't fallthrough to parent's
+ // action if Navigtaion.upItem.Navigtaion.navigble is false
+
+ if (header.Navigation.navigable)
+ header.forceActiveFocus(Qt.TabFocusReason)
+ else
+ return false // fallthrough default action
+ }
+ }
+
+ Item {
+ visible: root.parsing
+
+ Layout.fillHeight: true
+ Layout.fillWidth: true
+
+ Widgets.BusyIndicatorExt {
+ id: busyIndicator
+
+ runningDelayed: root.parsing
+ anchors.centerIn: parent
+ z: 1
+ }
+ }
+ }
}
+
}
}
=====================================
modules/gui/qt/network/qml/BrowseTreeHeader.qml
=====================================
@@ -0,0 +1,94 @@
+
+/*****************************************************************************
+ * Copyright (C) 2023 VLC authors and VideoLAN
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * ( at your option ) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
+ *****************************************************************************/
+import QtQuick 2.11
+import QtQuick.Layouts 1.11
+
+import org.videolan.vlc 0.1
+
+import "qrc:///util/" as Util
+import "qrc:///util/Helpers.js" as Helpers
+import "qrc:///widgets/" as Widgets
+import "qrc:///style/"
+
+FocusScope {
+ id: root
+
+ // Network* model
+ /* required */ property var providerModel
+
+ readonly property ColorContext colorContext: ColorContext {
+ id: theme
+
+ colorSet: ColorContext.View
+ }
+
+ property int leftPadding: VLCStyle.margin_large
+ property int rightPadding: VLCStyle.margin_small
+
+ property int topPadding: VLCStyle.margin_large
+ property int bottomPadding: VLCStyle.margin_normal
+
+ height: implicitHeight
+ implicitHeight: layout.implicitHeight + topPadding + bottomPadding
+
+ focus: medialibraryBtn.visible
+ Navigation.navigable: medialibraryBtn.visible
+
+ RowLayout {
+ id: layout
+
+ anchors {
+ fill: parent
+
+ leftMargin: root.leftPadding
+ rightMargin: root.rightPadding
+
+ topMargin: root.topPadding
+ bottomMargin: root.bottomPadding
+ }
+
+ Widgets.SubtitleLabel {
+ text: providerModel.name
+ color: colorContext.fg.primary
+
+ Layout.fillWidth: true
+ }
+
+ Widgets.ButtonExt {
+ id: medialibraryBtn
+
+ focus: true
+
+ iconTxt: providerModel.indexed ? VLCIcons.remove : VLCIcons.add
+
+ text: providerModel.indexed
+ ? I18n.qtr("Remove from medialibrary")
+ : I18n.qtr("Add to medialibrary")
+
+ visible: !providerModel.is_on_provider_list
+ && !!providerModel.canBeIndexed
+
+ onClicked: providerModel.indexed = !providerModel.indexed
+
+ Layout.preferredWidth: implicitWidth
+
+ Navigation.parentItem: root
+ }
+ }
+}
=====================================
modules/gui/qt/vlc.qrc
=====================================
@@ -153,6 +153,9 @@
<file alias="MainViewLoader.qml">maininterface/qml/MainViewLoader.qml</file>
</qresource>
<qresource prefix="/widgets">
+ <file alias="EmptyLabel.qml">widgets/qml/EmptyLabel.qml</file>
+ <file alias="EmptyLabelButton.qml">widgets/qml/EmptyLabelButton.qml</file>
+ <file alias="EmptyLabelHint.qml">widgets/qml/EmptyLabelHint.qml</file>
<file alias="ActionButtonOverlay.qml">widgets/qml/ActionButtonOverlay.qml</file>
<file alias="ActionButtonPrimary.qml">widgets/qml/ActionButtonPrimary.qml</file>
<file alias="BannerCone.qml">widgets/qml/BannerCone.qml</file>
@@ -231,6 +234,7 @@
<file alias="BrowseDisplay.qml">network/qml/BrowseDisplay.qml</file>
<file alias="BrowseHomeDisplay.qml">network/qml/BrowseHomeDisplay.qml</file>
<file alias="BrowseTreeDisplay.qml">network/qml/BrowseTreeDisplay.qml</file>
+ <file alias="BrowseTreeHeader.qml">network/qml/BrowseTreeHeader.qml</file>
<file alias="DiscoverDisplay.qml">network/qml/DiscoverDisplay.qml</file>
<file alias="DiscoverUrlDisplay.qml">network/qml/DiscoverUrlDisplay.qml</file>
<file alias="NetworkCustomCover.qml">network/qml/NetworkCustomCover.qml</file>
@@ -242,9 +246,6 @@
<file alias="ServicesSources.qml">network/qml/ServicesSources.qml</file>
</qresource>
<qresource prefix="/medialibrary">
- <file alias="EmptyLabel.qml">medialibrary/qml/EmptyLabel.qml</file>
- <file alias="EmptyLabelButton.qml">medialibrary/qml/EmptyLabelButton.qml</file>
- <file alias="EmptyLabelHint.qml">medialibrary/qml/EmptyLabelHint.qml</file>
<file alias="MediaGroupDisplay.qml">medialibrary/qml/MediaGroupDisplay.qml</file>
<file alias="MusicAlbums.qml">medialibrary/qml/MusicAlbums.qml</file>
<file alias="MusicDisplay.qml">medialibrary/qml/MusicDisplay.qml</file>
=====================================
modules/gui/qt/medialibrary/qml/EmptyLabel.qml → modules/gui/qt/widgets/qml/EmptyLabel.qml
=====================================
=====================================
modules/gui/qt/medialibrary/qml/EmptyLabelButton.qml → modules/gui/qt/widgets/qml/EmptyLabelButton.qml
=====================================
@@ -25,6 +25,8 @@ import "qrc:///style/"
import "qrc:///widgets/" as Widgets
EmptyLabel {
+ id: root
+
// Properties
property bool _keyPressed: false
=====================================
modules/gui/qt/medialibrary/qml/EmptyLabelHint.qml → modules/gui/qt/widgets/qml/EmptyLabelHint.qml
=====================================
=====================================
po/POTFILES.in
=====================================
@@ -767,6 +767,8 @@ modules/gui/qt/maininterface/qml/BannerSources.qml
modules/gui/qt/maininterface/qml/MainDisplay.qml
modules/gui/qt/maininterface/qml/MainInterface.qml
modules/gui/qt/maininterface/qml/NoMedialibHome.qml
+modules/gui/qt/widgets/qml/EmptyLabelButton.qml
+modules/gui/qt/widgets/qml/EmptyLabel.qml
modules/gui/qt/medialibrary/mlbookmarkmodel.cpp
modules/gui/qt/medialibrary/mlbookmarkmodel.hpp
modules/gui/qt/medialibrary/mlfolder.cpp
@@ -787,7 +789,6 @@ modules/gui/qt/medialibrary/mlvideogroupsmodel.cpp
modules/gui/qt/medialibrary/mlvideogroupsmodel.hpp
modules/gui/qt/medialibrary/qml/ArtistTopBanner.qml
modules/gui/qt/medialibrary/qml/AudioGridItem.qml
-modules/gui/qt/medialibrary/qml/EmptyLabelButton.qml
modules/gui/qt/medialibrary/qml/MediaGroupDisplay.qml
modules/gui/qt/medialibrary/qml/MusicAlbums.qml
modules/gui/qt/medialibrary/qml/MusicAlbumsDisplay.qml
@@ -830,6 +831,7 @@ modules/gui/qt/network/qml/BrowseDeviceView.qml
modules/gui/qt/network/qml/BrowseDisplay.qml
modules/gui/qt/network/qml/BrowseHomeDisplay.qml
modules/gui/qt/network/qml/BrowseTreeDisplay.qml
+modules/gui/qt/network/qml/BrowseTreeHeader.qml
modules/gui/qt/network/qml/DiscoverDisplay.qml
modules/gui/qt/network/qml/DiscoverUrlDisplay.qml
modules/gui/qt/network/qml/NetworkGridItem.qml
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/aa5690bcd90387ec0d295700d73d603fb2737a9b...44c3da73667169e04e4c8a01fc27bee589caf6d7
--
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/aa5690bcd90387ec0d295700d73d603fb2737a9b...44c3da73667169e04e4c8a01fc27bee589caf6d7
You're receiving this email because of your account on code.videolan.org.
VideoLAN code repository instance
More information about the vlc-commits
mailing list