Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • videolan/vlc
  • chouquette/vlc
  • bakiewicz.marek122/vlc
  • devnexen/vlc
  • rohanrajpal/vlc
  • blurrrb/vlc
  • gsoc/gsoc2019/darkapex/vlc
  • b1ue/vlc
  • fkuehne/vlc
  • magsoft/vlc
  • chub/vlc
  • cramiro9/vlc
  • robUx4/vlc
  • rom1v/vlc
  • akshayaky/vlc
  • tmk907/vlc
  • akymaster/vlc
  • govind.sharma/vlc
  • psilokos/vlc
  • xjbeta/vlc
  • jahan/vlc
  • 1480c1/vlc
  • amanchande/vlc
  • aaqib/vlc
  • rist/vlc
  • apol/vlc
  • mindfreeze/vlc
  • alexandre-janniaux/vlc
  • sandsmark/vlc
  • jagannatharjun/vlc
  • gsoc/gsoc2020/matiaslgonzalez/vlc
  • gsoc/gsoc2020/jagannatharjun/vlc
  • mstorsjo/vlc
  • gsoc/gsoc2020/vedenta/vlc
  • gsoc/gsoc2020/arnav-ishaan/vlc
  • gsoc/gsoc2020/andreduong/vlc
  • fuzun/vlc
  • gsoc/gsoc2020/vatsin/vlc
  • gsoc/gsoc2020/sagid/vlc
  • yaron/vlc
  • Phoenix/vlc
  • Garf/vlc
  • ePiratWorkarounds/vlc
  • tguillem/vlc
  • jnqnfe/vlc
  • mdc/vlc
  • Vedaa/vlc
  • rasa/vlc
  • quink/vlc
  • yealo/vlc
  • aleksey_ak/vlc
  • ePirat/vlc
  • ilya.yanok/vlc
  • asenat/vlc
  • m/vlc
  • bunjee/vlc
  • BLumia/vlc
  • sagudev/vlc
  • hamedmonji30/vlc
  • nullgemm/vlc
  • DivyamAhuja/vlc
  • thesamesam/vlc
  • dag7/vlc
  • snehil101/vlc
  • haasn/vlc
  • jbk/vlc
  • ValZapod/vlc
  • mfkl/vlc
  • WangChuan/vlc
  • core1024/vlc
  • GhostVaibhav/vlc
  • dfuhrmann/vlc
  • davide.prade/vlc
  • tmatth/vlc
  • Courmisch/vlc
  • zouya/vlc
  • hpi/vlc
  • EwoutH/vlc
  • aleung27/vlc
  • hengwu0/vlc
  • saladin/vlc
  • ashuio/vlc
  • richselwood/vlc
  • verma16Ayush/vlc
  • chemicalflash/vlc
  • PoignardAzur/vlc
  • huangjieNT/vlc
  • Blake-Haydon/vlc
  • AnuthaDev/vlc
  • gsoc/gsoc2021/mpd/vlc
  • nicolas_lequec/vlc
  • sambassaly/vlc
  • thresh/vlc
  • bonniegong/vlc
  • myaashish/vlc
  • stavros.vagionitis/vlc
  • ileoo/vlc
  • louis-santucci/vlc
  • cchristiansen/vlc
  • sabyasachi07/vlc
  • AbduAmeen/vlc
  • ashishb0410/vlc
  • urbanhusky/vlc
  • davidepietrasanta/vlc
  • riksleutelstad/vlc
  • jeremyVignelles/vlc
  • komh/vlc
  • iamjithinjohn/vlc
  • JohannesKauffmann/vlc2
  • kunglao/vlc
  • natzberg/vlc
  • jill/vlc
  • cwendling/vlc
  • adufou/vlc
  • ErwanAirone/vlc
  • HasinduDilshan10/vlc
  • vagrantc/vlc
  • rafiv/macos-bigsur-icon
  • Aymeriic/vlc
  • saranshg20/vlc
  • metzlove24/vlc
  • linkfanel/vlc
  • Ds886/vlc
  • metehan-arslan/vlc
  • Skantes/vlc
  • kgsandundananjaya96/vlc
  • mitchcapper/vlc
  • advaitgupta/vlc
  • StefanBruens/vlc
  • ratajs/vlc
  • T.M.F.B.3761/vlc
  • m222059/vlc
  • casemerrick/vlc
  • joshuaword2alt/vlc
  • sjwaddy/vlc
  • dima/vlc
  • Ybalrid/vlc
  • umxprime/vlc
  • eschmidt/vlc
  • vannieuwenhuysenmichelle/vlc
  • badcf00d/vlc
  • wesinator/vlc
  • louis/vlc
  • xqq/vlc
  • EmperorYP7/vlc
  • NicoLiam/vlc
  • loveleen/vlc
  • rofferom/vlc
  • rbultje/vlc
  • TheUnamed/vlc
  • pratiksharma341/vlc
  • Saurab17/vlc
  • purist.coder/vlc
  • Shuicheng/vlc
  • mdrrubel292/vlc
  • silverbleu00/vlc
  • metif12/vlc
  • asher-m/vlc
  • jeffk/vlc
  • Brandonbr1/vlc
  • beautyyuyanli/vlc
  • rego21/vlc
  • muyangren907/vlc
  • collectionbylawrencejason/vlc
  • evelez/vlc
  • GSMgeeth/vlc
  • Oneric/vlc
  • TJ5/vlc
  • XuanTung95/vlc
  • darrenjenny21/vlc
  • Trenly/vlc
  • RockyTDR/vlc
  • mjakubowski/vlc
  • caprica/vlc
  • ForteFrankie/vlc
  • seannamiller19/vlc
  • junlon2006/vlc
  • kiwiren6666/vlc
  • iuseiphonexs/vlc
  • fenngtun/vlc
  • Rajdutt999/vlc
  • typx/vlc
  • leon.vitanos/vlc
  • robertogarci0938/vlc
  • gsoc/gsoc2022/luc65r/vlc-mpd
  • skeller/vlc
  • MCJack123/vlc
  • luc65r/vlc-mpd
  • popov895/vlc
  • claucambra/vlc
  • brad/vlc
  • matthewmurua88/vlc
  • Tomas8874/vlc
  • philenotfound/vlc
  • makita-do3/vlc
  • LZXCorp/vlc
  • mar0x/vlc
  • senojetkennedy0102/vlc
  • shaneb243/vlc
  • ahmadbader/vlc
  • rajduttcse26/vlc-audio-filters
  • Juniorzito8415/vlc
  • achernyakov/vlc
  • lucasjetgroup/vlc
  • pupdoggy666/vlc
  • gmde9363/vlc
  • alexnwayne/vlc
  • bahareebrahimi781/vlc
  • hamad633666/vlc
  • umghof3112/vlc
  • joe0199771874/vlc
  • Octocats66666666/vlc
  • jjm_223/vlc
  • btech10110.19/vlc
  • sunnykfc028/vlc-audio-filters
  • loic/vlc
  • nguyenminhducmx1/vlc
  • JanekKrueger/vlc
  • bstubbington2/vlc
  • rcombs/vlc
  • Ordissimo/vlc
  • king7532/vlc
  • noobsauce101/vlc
  • schong0525/vlc
  • myQwil/vlc
  • apisbg91/vlc
  • geeboy0101017/vlc
  • kim.faughey/vlc
  • nurupo/vlc
  • yyusea/vlc
  • 0711235879.khco/vlc
  • ialo/vlc
  • iloveyeye2/vlc
  • gdtdftdqtd/vlc
  • leandroconsiglio/vlc
  • AndyHTML2012/vlc
  • ncz/vlc
  • lucenticus/vlc
  • knr1931/vlc
  • kjoonlee/vlc
  • chandrakant100/vlc-qt
  • johge42/vlc
  • polter/vlc
  • hexchain/vlc
  • Tushwrld/vlc
  • mztea928/vlc
  • jbelloncastro/vlc
  • alvinhochun/vlc
  • ghostpiratecrow/vlc
  • ujjwaltwitx/vlc
  • alexsonarin06/vlc
  • adrianbon76/vlc
  • altsod/vlc
  • damien.lucas44/vlc
  • dmytrivtaisa/vlc
  • utk202/vlc
  • aaxhrj/vlc
  • thomas.hermes/vlc
  • structurenewworldorder/vlc
  • slomo/vlc
  • wantlamy/vlc
  • musc.o3cminc/vlc
  • thebarshablog/vlc
  • kerrick/vlc
  • kratos142518/vlc
  • leogps/vlc
  • vacantron/vlc
  • luna_koly/vlc
  • Ratio2/vlc
  • anuoshemohammad/vlc
  • apsun/vlc
  • aaa1115910/vlc
  • alimotmoyo/vlc
  • Ambossmann/vlc
  • Sam-LearnsToCode/vlc
  • Chilledheart/vlc
  • Labnann/vlc
  • ktcoooot1/vlc
  • mohit-marathe/vlc
  • johnddx/vlc
  • manstabuk/vlc
  • Omar-ahmed314/vlc
  • vineethkm/vlc
  • 9Enemi86/vlc
  • radoslav.m.panteleev/vlc
  • ashishami2002/vlc
  • Corbax/vlc
  • firnasahmed/vlc
  • pelayarmalam4/vlc
  • c0ff330k/vlc
  • shikhindahikar/vlc
  • l342723951/vlc
  • christianschwandner/vlc
  • douniwan5788/vlc
  • 7damian7/vlc
  • ferdnyc/vlc
  • f.ales1/vlc
  • pandagby/vlc
  • BaaBaa/vlc
  • jewe37/vlc
  • w00drow/vlc
  • russelltg/vlc
  • ironicallygod/vlc
  • soumyaDghosh/vlc
  • linzihao1999/vlc
  • deyayush6/vlc
  • mibi88/vlc
  • newabdallah10/vlc
  • jhorbincolombia/vlc
  • rimvihaqueshupto/vlc
  • andrewkhon98/vlc
  • fab78/vlc
  • lapaz17/vlc
  • amanna13/vlc
  • mdakram28/vlc
  • 07jw1980/vlc
  • sohamgupta/vlc
  • Eson-Jia1/vlc
  • Sumou/vlc
  • vikram-kangotra/vlc
  • chalice191/vlc
  • olivercalder/vlc
  • aaasg4001/vlc
  • zipdox/vlc
  • kwizart/vlc
  • Dragon-S/vlc
  • jdemeule/vlc
  • gabriel_lt/vlc
  • locutusofborg/vlc
  • sammirata/vlc-librist
  • another/vlc
  • Benjamin_Loison/vlc
  • ahmedmoselhi/vlc
  • petergaal/vlc
  • huynhsontung/vlc
  • dariusmihut/vlc
  • tvermaashutosh/vlc
  • buti/vlc
  • Niram7777/vlc
  • rohan-here/vlc
  • balaji-sivasakthi/vlc
  • rlindner81/vlc
  • Kakadus/vlc
  • djain/vlc
  • ABBurmeister/vlc
  • craighuggins/vlc
  • orbea/vlc
  • maxos/vlc
  • aakarshmj/vlc
  • kblaschke/vlc
  • ankitm/vlc
  • advait-0/vlc
  • mohak2003/vlc
  • yselkowitz/vlc
  • AZM999/vlc-azm
  • andrey.turkin/vlc
  • Disha-Baghel/vlc
  • nowrep/vlc
  • Apeng/vlc
  • Choucroute_melba/vlc
  • autra/vlc
  • eclipseo/vlc
  • fhuber/vlc
  • olafhering/vlc
  • sdasda7777/vlc
  • 1div0/vlc
  • skosnits/vlc-extended-playlist-support
  • dnicolson/vlc
  • Timshel/vlc
  • octopols/vlc
  • MangalK/vlc
  • nima64/vlc
  • misawai/vlc
  • Alexander-Wilms/vlc
  • Maxime2/vlc-fork-for-visualizer
  • ww/vlc
  • jeske/vlc
  • sgross-emlix/vlc
  • morenonatural/vlc
  • freakingLovesVLC/vlc
  • borisgolovnev/vlc
  • mpromonet/vlc
  • diogo.simao-marques/vlc
  • masstock/vlc
  • pratikpatel8982/vlc
  • hugok79/vlc
  • longervision/vlc
  • abhiudaysurya/vlc
  • rishabhgarg/vlc
  • tumic/vlc
  • cart/vlc
  • shubham442/vlc
  • Aditya692005/vlc
  • sammirata/vlc4
  • syrykh/vlc
  • Vvorcun/macos-new-icon
  • AyaanshC/vlc
  • nasso/vlc
  • Quark/vlc
  • sebastinas/vlc
  • rhstone/vlc
  • talregev/vlc
  • Managor/vlc
403 results
Show changes
Commits on Source (10)
Showing
with 146 additions and 124 deletions
...@@ -931,7 +931,6 @@ libqt_plugin_la_QML = \ ...@@ -931,7 +931,6 @@ libqt_plugin_la_QML = \
menus/qml/Menubar.qml \ menus/qml/Menubar.qml \
menus/qml/ShortcutExt.qml \ menus/qml/ShortcutExt.qml \
network/qml/AddressbarButton.qml \ network/qml/AddressbarButton.qml \
network/qml/BrowseDeviceHeader.qml \
network/qml/BrowseDeviceView.qml \ network/qml/BrowseDeviceView.qml \
network/qml/BrowseDisplay.qml \ network/qml/BrowseDisplay.qml \
network/qml/BrowseHomeDisplay.qml \ network/qml/BrowseHomeDisplay.qml \
...@@ -1108,7 +1107,8 @@ libqt_plugin_la_QML = \ ...@@ -1108,7 +1107,8 @@ libqt_plugin_la_QML = \
widgets/qml/FadingEdge.qml \ widgets/qml/FadingEdge.qml \
widgets/qml/FadingEdgeForListView.qml \ widgets/qml/FadingEdgeForListView.qml \
widgets/qml/PopupIconToolButton.qml \ widgets/qml/PopupIconToolButton.qml \
widgets/qml/PartialEffect.qml widgets/qml/PartialEffect.qml \
widgets/qml/ViewHeader.qml
lib_qt_plugin_la_QRC = vlc.qrc lib_qt_plugin_la_QRC = vlc.qrc
......
...@@ -373,7 +373,7 @@ FocusScope { ...@@ -373,7 +373,7 @@ FocusScope {
focus: true focus: true
rightPadding: VLCStyle.applicationHorizontalMargin rightPadding: VLCStyle.applicationHorizontalMargin
topPadding: VLCStyle.margin_xlarge // NOTE: why the design mandates such large top padding? topPadding: VLCStyle.layoutTitle_top_padding
bottomPadding: VLCStyle.margin_normal + Math.max(VLCStyle.applicationVerticalMargin - g_mainDisplay.displayMargin, 0) bottomPadding: VLCStyle.margin_normal + Math.max(VLCStyle.applicationVerticalMargin - g_mainDisplay.displayMargin, 0)
Navigation.parentItem: mainColumn Navigation.parentItem: mainColumn
......
...@@ -54,15 +54,9 @@ VideoAll { ...@@ -54,15 +54,9 @@ VideoAll {
contextMenu: Util.MLContextMenu { model: modelVideo; showPlayAsAudioAction: true } contextMenu: Util.MLContextMenu { model: modelVideo; showPlayAsAudioAction: true }
header: Widgets.SubtitleLabel { header: Widgets.ViewHeader {
width: root.width view: root
// NOTE: We want this to be properly aligned with the grid items. text: view.title
leftPadding: root.contentMargin
topPadding: VLCStyle.margin_large
bottomPadding: VLCStyle.margin_normal
text: root.title
color: root.colorContext.fg.primary
} }
} }
...@@ -31,12 +31,11 @@ MainInterface.MainViewLoader { ...@@ -31,12 +31,11 @@ MainInterface.MainViewLoader {
// Properties // Properties
property int gridViewMarginTop: VLCStyle.margin_large
property var gridViewRowX: Helpers.get(currentItem, "rowX", 0) property var gridViewRowX: Helpers.get(currentItem, "rowX", 0)
readonly property var currentIndex: Helpers.get(currentItem, "currentIndex", - 1) readonly property var currentIndex: Helpers.get(currentItem, "currentIndex", - 1)
property Component header: Item {} property Component header: null
readonly property Item headerItem: Helpers.get(currentItem, "headerItem", null) readonly property Item headerItem: Helpers.get(currentItem, "headerItem", null)
readonly property int contentLeftMargin: Helpers.get(currentItem, "contentLeftMargin", 0) readonly property int contentLeftMargin: Helpers.get(currentItem, "contentLeftMargin", 0)
...@@ -100,7 +99,6 @@ MainInterface.MainViewLoader { ...@@ -100,7 +99,6 @@ MainInterface.MainViewLoader {
id: gridView_id id: gridView_id
activeFocusOnTab:true activeFocusOnTab:true
topMargin: root.gridViewMarginTop
cellWidth: VLCStyle.gridItem_music_width cellWidth: VLCStyle.gridItem_music_width
cellHeight: VLCStyle.gridItem_music_height cellHeight: VLCStyle.gridItem_music_height
...@@ -241,7 +239,6 @@ MainInterface.MainViewLoader { ...@@ -241,7 +239,6 @@ MainInterface.MainViewLoader {
header: root.header header: root.header
dragItem: albumDragItem dragItem: albumDragItem
rowHeight: VLCStyle.tableCoverRow_height rowHeight: VLCStyle.tableCoverRow_height
headerTopPadding: VLCStyle.margin_normal
sortModel: (availableRowWidth < VLCStyle.colWidth(4)) ? _modelSmall sortModel: (availableRowWidth < VLCStyle.colWidth(4)) ? _modelSmall
: _modelMedium : _modelMedium
......
...@@ -26,6 +26,12 @@ import "qrc:///widgets/" as Widgets ...@@ -26,6 +26,12 @@ import "qrc:///widgets/" as Widgets
MusicAlbums { MusicAlbums {
id: root id: root
header: Widgets.ViewHeader {
view: root
text: I18n.qtr("Albums")
}
searchPattern: MainCtx.search.pattern searchPattern: MainCtx.search.pattern
sortCriteria: MainCtx.sort.criteria sortCriteria: MainCtx.sort.criteria
sortOrder: MainCtx.sort.order sortOrder: MainCtx.sort.order
......
...@@ -34,6 +34,11 @@ MainInterface.MainViewLoader { ...@@ -34,6 +34,11 @@ MainInterface.MainViewLoader {
readonly property int currentIndex: Helpers.get(currentItem, "currentIndex", - 1) readonly property int currentIndex: Helpers.get(currentItem, "currentIndex", - 1)
property Component header: null
readonly property int contentLeftMargin: Helpers.get(currentItem, "contentLeftMargin", 0)
readonly property int contentRightMargin: Helpers.get(currentItem, "contentRightMargin", 0)
property alias parentId: artistModel.parentId property alias parentId: artistModel.parentId
property alias searchPattern: artistModel.searchPattern property alias searchPattern: artistModel.searchPattern
property alias sortOrder: artistModel.sortOrder property alias sortOrder: artistModel.sortOrder
...@@ -79,13 +84,13 @@ MainInterface.MainViewLoader { ...@@ -79,13 +84,13 @@ MainInterface.MainViewLoader {
MainInterface.MainGridView { MainInterface.MainGridView {
id: artistGrid id: artistGrid
topMargin: VLCStyle.margin_large
selectionModel: root.selectionModel selectionModel: root.selectionModel
model: artistModel model: artistModel
focus: true focus: true
cellWidth: VLCStyle.colWidth(1) cellWidth: VLCStyle.colWidth(1)
cellHeight: VLCStyle.gridItem_music_height cellHeight: VLCStyle.gridItem_music_height
headerDelegate: root.header
Navigation.parentItem: root Navigation.parentItem: root
onActionAtIndex: (index) => { onActionAtIndex: (index) => {
...@@ -184,8 +189,8 @@ MainInterface.MainViewLoader { ...@@ -184,8 +189,8 @@ MainInterface.MainViewLoader {
focus: true focus: true
dragItem: artistsDragItem dragItem: artistsDragItem
rowHeight: VLCStyle.tableCoverRow_height rowHeight: VLCStyle.tableCoverRow_height
headerTopPadding: VLCStyle.margin_normal
header: root.header
Navigation.parentItem: root Navigation.parentItem: root
onActionForSelection: (selection) => { onActionForSelection: (selection) => {
......
...@@ -87,7 +87,6 @@ FocusScope { ...@@ -87,7 +87,6 @@ FocusScope {
height: implicitHeight height: implicitHeight
width: headerFs.width width: headerFs.width
bottomPadding: VLCStyle.margin_normal
ArtistTopBanner { ArtistTopBanner {
id: artistBanner id: artistBanner
...@@ -115,6 +114,16 @@ FocusScope { ...@@ -115,6 +114,16 @@ FocusScope {
} }
} }
Widgets.ViewHeader {
view: root
leftPadding: VLCStyle.margin_xlarge
bottomPadding: VLCStyle.layoutTitle_bottom_padding -
(MainCtx.gridView ? 0 : VLCStyle.gridItemSelectedBorder)
text: I18n.qtr("Albums")
}
Loader { Loader {
id: albumsLoader id: albumsLoader
...@@ -133,15 +142,7 @@ FocusScope { ...@@ -133,15 +142,7 @@ FocusScope {
width: albumsList.width width: albumsList.width
height: implicitHeight height: implicitHeight
Widgets.SubtitleLabel { spacing: VLCStyle.tableView_spacing
id: albumsText
text: I18n.qtr("Albums")
color: theme.fg.primary
leftPadding: VLCStyle.margin_xlarge
topPadding: VLCStyle.margin_normal
bottomPadding: VLCStyle.margin_xsmall
}
Widgets.KeyNavigableListView { Widgets.KeyNavigableListView {
id: albumsList id: albumsList
...@@ -152,8 +153,8 @@ FocusScope { ...@@ -152,8 +153,8 @@ FocusScope {
width: root.width - root.rightPadding width: root.width - root.rightPadding
leftMargin: VLCStyle.margin_xlarge leftMargin: VLCStyle.margin_xlarge
topMargin: VLCStyle.margin_xsmall topMargin: VLCStyle.gridItemSelectedBorder
bottomMargin: VLCStyle.margin_xsmall bottomMargin: VLCStyle.gridItemSelectedBorder
model: albumModel model: albumModel
selectionModel: albumSelectionModel selectionModel: albumSelectionModel
orientation: ListView.Horizontal orientation: ListView.Horizontal
...@@ -210,13 +211,13 @@ FocusScope { ...@@ -210,13 +211,13 @@ FocusScope {
onActionAtIndex: (index) => { albumModel.addAndPlay( new Array(index) ) } onActionAtIndex: (index) => { albumModel.addAndPlay( new Array(index) ) }
} }
Widgets.SubtitleLabel { Widgets.ViewHeader {
id: tracksText view: root
text: I18n.qtr("Tracks")
color: theme.fg.primary
leftPadding: VLCStyle.margin_xlarge leftPadding: VLCStyle.margin_xlarge
topPadding: VLCStyle.margin_large topPadding: 0
text: I18n.qtr("Tracks")
} }
} }
} }
......
...@@ -182,13 +182,14 @@ FocusScope { ...@@ -182,13 +182,14 @@ FocusScope {
artistList.setCurrentItem(0) artistList.setCurrentItem(0)
} }
header: Widgets.SubtitleLabel { header: Widgets.ViewHeader {
text: I18n.qtr("Artists") view: artistList
font.pixelSize: VLCStyle.fontSize_large
color: artistList.colorContext.fg.primary
leftPadding: root.leftPadding + VLCStyle.margin_normal leftPadding: root.leftPadding + VLCStyle.margin_normal
bottomPadding: VLCStyle.margin_small
topPadding: VLCStyle.margin_xlarge topPadding: VLCStyle.margin_xlarge
bottomPadding: VLCStyle.margin_small
text: I18n.qtr("Artists")
} }
Widgets.MLDragItem { Widgets.MLDragItem {
......
...@@ -46,6 +46,13 @@ Widgets.PageLoader { ...@@ -46,6 +46,13 @@ Widgets.PageLoader {
id: allArtistsComponent id: allArtistsComponent
MusicAllArtists { MusicAllArtists {
id: artistsView
header: Widgets.ViewHeader {
view: artistsView
text: I18n.qtr("Artists")
}
searchPattern: MainCtx.search.pattern searchPattern: MainCtx.search.pattern
sortOrder: MainCtx.sort.order sortOrder: MainCtx.sort.order
......
...@@ -35,6 +35,11 @@ MainInterface.MainViewLoader { ...@@ -35,6 +35,11 @@ MainInterface.MainViewLoader {
// Properties // Properties
readonly property var currentIndex: Helpers.get(currentItem, "currentIndex", - 1) readonly property var currentIndex: Helpers.get(currentItem, "currentIndex", - 1)
property Component header: null
readonly property int contentLeftMargin: Helpers.get(currentItem, "contentLeftMargin", 0)
readonly property int contentRightMargin: Helpers.get(currentItem, "contentRightMargin", 0)
property alias searchPattern: genreModel.searchPattern property alias searchPattern: genreModel.searchPattern
property alias sortOrder: genreModel.sortOrder property alias sortOrder: genreModel.sortOrder
property alias sortCriteria: genreModel.sortCriteria property alias sortCriteria: genreModel.sortCriteria
...@@ -118,9 +123,10 @@ MainInterface.MainViewLoader { ...@@ -118,9 +123,10 @@ MainInterface.MainViewLoader {
selectionModel: root.selectionModel selectionModel: root.selectionModel
model: genreModel model: genreModel
topMargin: VLCStyle.margin_large
delegate: Widgets.GridItem { headerDelegate: root.header
delegate: Widgets.GridItem {
id: item id: item
property var model: ({}) property var model: ({})
...@@ -261,7 +267,8 @@ MainInterface.MainViewLoader { ...@@ -261,7 +267,8 @@ MainInterface.MainViewLoader {
Navigation.parentItem: root Navigation.parentItem: root
dragItem: genreDragItem dragItem: genreDragItem
rowHeight: VLCStyle.tableCoverRow_height rowHeight: VLCStyle.tableCoverRow_height
headerTopPadding: VLCStyle.margin_normal
header: root.header
onItemDoubleClicked: (index, model) => { onItemDoubleClicked: (index, model) => {
root.showAlbumView(model.id, model.name, Qt.MouseFocusReason) root.showAlbumView(model.id, model.name, Qt.MouseFocusReason)
......
...@@ -41,6 +41,14 @@ Widgets.PageLoader { ...@@ -41,6 +41,14 @@ Widgets.PageLoader {
id: genresComponent id: genresComponent
/* List View */ /* List View */
MusicGenres { MusicGenres {
id: genresView
header: Widgets.ViewHeader {
view: genresView
text: I18n.qtr("Genres")
}
onCurrentIndexChanged: History.viewProp.initialIndex = currentIndex onCurrentIndexChanged: History.viewProp.initialIndex = currentIndex
searchPattern: MainCtx.search.pattern searchPattern: MainCtx.search.pattern
...@@ -61,16 +69,10 @@ Widgets.PageLoader { ...@@ -61,16 +69,10 @@ Widgets.PageLoader {
property string genreName: "" property string genreName: ""
gridViewMarginTop: 0 header: Widgets.ViewHeader {
view: albumsView
header: Widgets.SubtitleLabel {
text: I18n.qtr("Genres - %1").arg(genreName) text: I18n.qtr("Genres - %1").arg(genreName)
leftPadding: albumsView.contentLeftMargin
rightPadding: albumsView.contentRightMargin
topPadding: VLCStyle.margin_large
bottomPadding: VLCStyle.margin_normal
width: root.width
color: colorContext.fg.primary
} }
searchPattern: MainCtx.search.pattern searchPattern: MainCtx.search.pattern
......
...@@ -51,6 +51,14 @@ Widgets.PageLoader { ...@@ -51,6 +51,14 @@ Widgets.PageLoader {
id: componentAll id: componentAll
PlaylistMediaList { PlaylistMediaList {
id: playlistView
header: Widgets.ViewHeader {
view: playlistView
text: I18n.qtr("Playlists")
}
isMusic: true isMusic: true
searchPattern: MainCtx.search.pattern searchPattern: MainCtx.search.pattern
......
...@@ -62,8 +62,12 @@ FocusScope { ...@@ -62,8 +62,12 @@ FocusScope {
visible: model.count > 0 visible: model.count > 0
focus: model.count > 0 focus: model.count > 0
headerTopPadding: VLCStyle.margin_normal
header: Widgets.ViewHeader {
view: tracklistdisplay_id
text: I18n.qtr("Tracks")
}
searchPattern: MainCtx.search.pattern searchPattern: MainCtx.search.pattern
sortOrder: MainCtx.sort.order sortOrder: MainCtx.sort.order
......
...@@ -45,6 +45,8 @@ FocusScope { ...@@ -45,6 +45,8 @@ FocusScope {
property int leftPadding: 0 property int leftPadding: 0
property int rightPadding: 0 property int rightPadding: 0
property alias playlistView: view
readonly property int currentIndex: view.currentIndex readonly property int currentIndex: view.currentIndex
property string name: "" property string name: ""
...@@ -168,21 +170,12 @@ FocusScope { ...@@ -168,21 +170,12 @@ FocusScope {
isMusic: root.isMusic isMusic: root.isMusic
header: Widgets.SubtitleLabel { header: Widgets.ViewHeader {
id: label view: root.playlistView
leftPadding: view.contentLeftMargin
rightPadding: view.contentRightMargin
topPadding: VLCStyle.margin_normal
bottomPadding: VLCStyle.margin_xsmall
text: root.name text: root.name
color: view.colorContext.fg.primary
} }
headerTopPadding: VLCStyle.margin_normal
Navigation.parentItem: root Navigation.parentItem: root
Navigation.cancelAction: function () { Navigation.cancelAction: function () {
......
...@@ -43,6 +43,11 @@ MainInterface.MainViewLoader { ...@@ -43,6 +43,11 @@ MainInterface.MainViewLoader {
readonly property int currentIndex: Helpers.get(currentItem, "currentIndex", -1) readonly property int currentIndex: Helpers.get(currentItem, "currentIndex", -1)
property Component header: null
readonly property int contentLeftMargin: Helpers.get(currentItem, "contentLeftMargin", 0)
readonly property int contentRightMargin: Helpers.get(currentItem, "contentRightMargin", 0)
property alias searchPattern: playlistModel.searchPattern property alias searchPattern: playlistModel.searchPattern
property alias sortOrder: playlistModel.sortOrder property alias sortOrder: playlistModel.sortOrder
property alias sortCriteria: playlistModel.sortCriteria property alias sortCriteria: playlistModel.sortCriteria
...@@ -171,12 +176,12 @@ MainInterface.MainViewLoader { ...@@ -171,12 +176,12 @@ MainInterface.MainViewLoader {
cellWidth : _width cellWidth : _width
cellHeight: _height cellHeight: _height
topMargin: VLCStyle.margin_large
model: root.model model: root.model
selectionModel: root.selectionModel selectionModel: root.selectionModel
headerDelegate: root.header
Navigation.parentItem: root Navigation.parentItem: root
delegate: VideoGridItem { delegate: VideoGridItem {
...@@ -304,8 +309,6 @@ MainInterface.MainViewLoader { ...@@ -304,8 +309,6 @@ MainInterface.MainViewLoader {
rowHeight: VLCStyle.tableCoverRow_height rowHeight: VLCStyle.tableCoverRow_height
headerTopPadding: VLCStyle.margin_normal
model: root.model model: root.model
sortModel: (availableRowWidth < VLCStyle.colWidth(4)) ? _modelSmall sortModel: (availableRowWidth < VLCStyle.colWidth(4)) ? _modelSmall
...@@ -315,6 +318,8 @@ MainInterface.MainViewLoader { ...@@ -315,6 +318,8 @@ MainInterface.MainViewLoader {
dragItem: dragItemPlaylist dragItem: dragItemPlaylist
header: root.header
Navigation.parentItem: root Navigation.parentItem: root
//------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------
......
...@@ -35,13 +35,18 @@ MainInterface.MainViewLoader { ...@@ -35,13 +35,18 @@ MainInterface.MainViewLoader {
// Properties // Properties
readonly property int contentMargin: Helpers.get(currentItem, "contentLeftMargin", 0) readonly property int contentLeftMargin: Helpers.get(currentItem, "contentLeftMargin", 0)
readonly property int contentRightMargin: Helpers.get(currentItem, "contentRightMargin", 0)
property bool fadingEdgeList: true
// NOTE: Specify an optional header for the view. // NOTE: Specify an optional header for the view.
property Component header: null property Component header: null
property Item headerItem: Helpers.get(currentItem, "headerItem", null) property Item headerItem: Helpers.get(currentItem, "headerItem", null)
property int headerPositioning: ListView.OverlayHeader
readonly property int currentIndex: Helpers.get(currentItem, "currentIndex", -1) readonly property int currentIndex: Helpers.get(currentItem, "currentIndex", -1)
// 'role' used for tableview's section text // 'role' used for tableview's section text
...@@ -185,12 +190,14 @@ MainInterface.MainViewLoader { ...@@ -185,12 +190,14 @@ MainInterface.MainViewLoader {
header: root.header header: root.header
headerPositioning: ListView.InlineHeader headerPositioning: root.headerPositioning
activeFocusOnTab: true activeFocusOnTab: true
section.property: root.sectionProperty section.property: root.sectionProperty
fadingEdge.enableEndFade: root.fadingEdgeList
// Navigation // Navigation
Navigation.parentItem: root Navigation.parentItem: root
......
...@@ -60,6 +60,8 @@ VideoAll { ...@@ -60,6 +60,8 @@ VideoAll {
sectionProperty: !!_meta && !!_meta.sectionProperty ? _meta.sectionProperty : "" sectionProperty: !!_meta && !!_meta.sectionProperty ? _meta.sectionProperty : ""
headerPositioning: headerItem.model.count > 0 ? ListView.InlineHeader : ListView.OverlayHeader
// Functions // Functions
function _updateMetaModel(groupping) { function _updateMetaModel(groupping) {
...@@ -259,8 +261,6 @@ VideoAll { ...@@ -259,8 +261,6 @@ VideoAll {
header: VideoRecentVideos { header: VideoRecentVideos {
width: root.width width: root.width
// spacing between header and content
bottomPadding: VLCStyle.margin_normal
leftPadding: root.leftPadding leftPadding: root.leftPadding
rightPadding: root.rightPadding rightPadding: root.rightPadding
......
...@@ -51,6 +51,13 @@ Widgets.PageLoader { ...@@ -51,6 +51,13 @@ Widgets.PageLoader {
id: componentAll id: componentAll
PlaylistMediaList { PlaylistMediaList {
id: playlistView
header: Widgets.ViewHeader {
view: playlistView
text: I18n.qtr("Playlists")
}
isMusic: false isMusic: false
......
...@@ -37,11 +37,12 @@ FocusScope { ...@@ -37,11 +37,12 @@ FocusScope {
property alias subtitleText: subtitleLabel.text property alias subtitleText: subtitleLabel.text
property int bottomPadding: recentVideosColumn.bottomPadding
property int leftPadding: VLCStyle.margin_xsmall property int leftPadding: VLCStyle.margin_xsmall
property int rightPadding: VLCStyle.margin_xsmall property int rightPadding: VLCStyle.margin_xsmall
property int nbItemPerRow property int nbItemPerRow
property alias model: recentModel
// Settings // Settings
...@@ -80,52 +81,30 @@ FocusScope { ...@@ -80,52 +81,30 @@ FocusScope {
width: root.width width: root.width
topPadding: VLCStyle.margin_large topPadding: VLCStyle.layoutTitle_top_padding
spacing: VLCStyle.margin_normal Widgets.ViewHeader {
id: viewHeader
bottomPadding: root.bottomPadding view: root
RowLayout { visible: recentModel.count > 0
anchors.left: parent.left seeAllButton.visible: recentModel.maximumCount > recentModel.count
anchors.right: parent.right
anchors.leftMargin: view.currentItem.contentLeftMargin
anchors.rightMargin: view.currentItem.contentRightMargin
Widgets.SubtitleLabel {
id: label
Layout.fillWidth: true
text: I18n.qtr("Continue Watching")
// NOTE: Setting this to gridView.visible seems to causes unnecessary implicitHeight
// calculations in the Column parent.
visible: recentModel.count > 0
color: theme.fg.primary
}
Widgets.TextToolButton {
id: button
visible: recentModel.maximumCount > recentModel.count
Layout.preferredWidth: implicitWidth
focus: true Layout.fillWidth: true
text: I18n.qtr("See All") leftPadding: Helpers.get(view.currentItem, "contentLeftMargin", 0)
rightPadding: Helpers.get(view.currentItem, "contentRightMargin", 0)
topPadding: 0
font.pixelSize: VLCStyle.fontSize_large text: I18n.qtr("Continue Watching")
Navigation.parentItem: root onSeeAllButtonClicked: History.push(["mc", "video", "all", "recentVideos"]);
Navigation.downAction: function() { Navigation.parentItem: root
view.setCurrentItemFocus(Qt.TabFocusReason)
}
onClicked: History.push(["mc", "video", "all", "recentVideos"]); Navigation.downAction: function() {
view.setCurrentItemFocus(Qt.TabFocusReason)
} }
} }
...@@ -137,8 +116,7 @@ FocusScope { ...@@ -137,8 +116,7 @@ FocusScope {
visible: recentModel.count > 0 visible: recentModel.count > 0
width: root.width width: root.width
height: MainCtx.gridView ? VLCStyle.gridItem_video_height + VLCStyle.gridItemSelectedBorder + VLCStyle.margin_xlarge height: currentItem.contentHeight
: VLCStyle.margin_xxlarge + Math.min(recentModel.count, 5) * VLCStyle.tableCoverRow_height
leftPadding: root.leftPadding leftPadding: root.leftPadding
rightPadding: root.rightPadding rightPadding: root.rightPadding
...@@ -149,6 +127,8 @@ FocusScope { ...@@ -149,6 +127,8 @@ FocusScope {
sectionProperty: "" sectionProperty: ""
fadingEdgeList: false
sortModel: [] sortModel: []
contextMenu: Util.MLContextMenu { contextMenu: Util.MLContextMenu {
...@@ -159,17 +139,21 @@ FocusScope { ...@@ -159,17 +139,21 @@ FocusScope {
Navigation.parentItem: root Navigation.parentItem: root
Navigation.upItem: button Navigation.upItem: viewHeader.seeAllButton
} }
Widgets.SubtitleLabel { Widgets.ViewHeader {
id: subtitleLabel id: subtitleLabel
visible: text !== "" visible: text !== ""
color: theme.fg.primary
leftPadding: view.currentItem.contentLeftMargin view: root
rightPadding: view.currentItem.contentRightMargin
leftPadding: Helpers.get(view.currentItem, "contentLeftMargin", 0)
topPadding: MainCtx.gridView ? VLCStyle.gridView_spacing + VLCStyle.margin_xsmall + VLCStyle.margin_xxxsmall
: VLCStyle.tableView_spacing
text: view.title
} }
} }
} }
...@@ -47,15 +47,9 @@ VideoAll { ...@@ -47,15 +47,9 @@ VideoAll {
contextMenu: Util.MLContextMenu { model: recentModel; showPlayAsAudioAction: true } contextMenu: Util.MLContextMenu { model: recentModel; showPlayAsAudioAction: true }
header: Widgets.SubtitleLabel { header: Widgets.ViewHeader {
width: root.width view: root
// NOTE: We want this to be properly aligned with the grid items.
leftPadding: root.contentMargin
topPadding: VLCStyle.margin_large
bottomPadding: VLCStyle.margin_normal
text: I18n.qtr("Continue Watching") text: I18n.qtr("Continue Watching")
color: root.colorContext.fg.primary
} }
} }