1
mirror of https://code.videolan.org/videolan/vlc synced 2024-09-24 20:48:52 +02:00

macosx: Move VLCLibraryGroupDataSource to own file, rename to VLCLibraryAudioGroupDataSource

Signed-off-by: Claudio Cambra <developer@claudiocambra.com>
This commit is contained in:
Claudio Cambra 2022-12-24 18:52:44 +01:00
parent f4b9dd883e
commit 154647b89c
No known key found for this signature in database
GPG Key ID: 37F593F3658DB492
10 changed files with 186 additions and 107 deletions

View File

@ -94,6 +94,7 @@
53628403291147C500640C15 /* VLCSubScrollView.m in Sources */ = {isa = PBXBuildFile; fileRef = 53628400291147C500640C15 /* VLCSubScrollView.m */; };
536EFBF5295BCB8300F4CB13 /* VLCLibraryUIUnits.m in Sources */ = {isa = PBXBuildFile; fileRef = 536EFBF4295BCB8300F4CB13 /* VLCLibraryUIUnits.m */; };
536EFC39295E521600F4CB13 /* VLCLibraryVideoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 536EFC38295E521600F4CB13 /* VLCLibraryVideoViewController.m */; };
53903D3A29576ED500D0B308 /* VLCLibraryAudioGroupDataSource.m in Sources */ = {isa = PBXBuildFile; fileRef = 53903D3929576ED500D0B308 /* VLCLibraryAudioGroupDataSource.m */; };
53B447CA2939823E00857588 /* VLCLibrarySongsTableViewSongPlayingTableCellView.m in Sources */ = {isa = PBXBuildFile; fileRef = 53B447C92939823E00857588 /* VLCLibrarySongsTableViewSongPlayingTableCellView.m */; };
53B447F6293BB47B00857588 /* VLCLibraryVideoCollectionViewContainerView.m in Sources */ = {isa = PBXBuildFile; fileRef = 53B447EC293BB47A00857588 /* VLCLibraryVideoCollectionViewContainerView.m */; };
53B447F7293BB47B00857588 /* VLCLibraryVideoCollectionViewContainerViewDataSource.m in Sources */ = {isa = PBXBuildFile; fileRef = 53B447ED293BB47A00857588 /* VLCLibraryVideoCollectionViewContainerViewDataSource.m */; };
@ -277,6 +278,8 @@
536EFBF4295BCB8300F4CB13 /* VLCLibraryUIUnits.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = VLCLibraryUIUnits.m; sourceTree = "<group>"; };
536EFC37295E521600F4CB13 /* VLCLibraryVideoViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = VLCLibraryVideoViewController.h; sourceTree = "<group>"; };
536EFC38295E521600F4CB13 /* VLCLibraryVideoViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = VLCLibraryVideoViewController.m; sourceTree = "<group>"; };
53903D3829576ED500D0B308 /* VLCLibraryAudioGroupDataSource.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = VLCLibraryAudioGroupDataSource.h; sourceTree = "<group>"; };
53903D3929576ED500D0B308 /* VLCLibraryAudioGroupDataSource.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = VLCLibraryAudioGroupDataSource.m; sourceTree = "<group>"; };
53B447C82939823E00857588 /* VLCLibrarySongsTableViewSongPlayingTableCellView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = VLCLibrarySongsTableViewSongPlayingTableCellView.h; sourceTree = "<group>"; };
53B447C92939823E00857588 /* VLCLibrarySongsTableViewSongPlayingTableCellView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = VLCLibrarySongsTableViewSongPlayingTableCellView.m; sourceTree = "<group>"; };
53B447EC293BB47A00857588 /* VLCLibraryVideoCollectionViewContainerView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = VLCLibraryVideoCollectionViewContainerView.m; sourceTree = "<group>"; };
@ -1299,6 +1302,8 @@
536283DF291146BC00640C15 /* VLCLibraryAlbumTracksDataSource.m */,
7DE2F0422282C84A0040DD0A /* VLCLibraryAudioDataSource.h */,
7DE2F0432282C84A0040DD0A /* VLCLibraryAudioDataSource.m */,
53903D3829576ED500D0B308 /* VLCLibraryAudioGroupDataSource.h */,
53903D3929576ED500D0B308 /* VLCLibraryAudioGroupDataSource.m */,
536283E8291146BC00640C15 /* VLCLibraryCollectionViewAlbumSupplementaryDetailView.h */,
536283E1291146BC00640C15 /* VLCLibraryCollectionViewAlbumSupplementaryDetailView.m */,
536283E7291146BC00640C15 /* VLCLibraryCollectionViewAudioGroupSupplementaryDetailView.h */,
@ -1906,6 +1911,7 @@
536283F9291146BC00640C15 /* VLCLibraryCollectionViewFlowLayout.m in Sources */,
6BBBF9851F7B257100B404CD /* VLCLogMessage.m in Sources */,
7D445D8E2203375100263D34 /* VLCPlaylistMenuController.m in Sources */,
53903D3A29576ED500D0B308 /* VLCLibraryAudioGroupDataSource.m in Sources */,
1C31139A1E508C6900D4DD76 /* VLCBookmarksWindowController.m in Sources */,
6B0AB0F01F1AC8B3003A1B4E /* VLCSlider.m in Sources */,
7D28E6362275B4820098D30E /* NSColor+VLCAdditions.m in Sources */,

View File

@ -117,6 +117,8 @@ libmacosx_plugin_la_SOURCES = \
gui/macosx/library/audio-library/VLCLibraryAlbumTracksDataSource.m \
gui/macosx/library/audio-library/VLCLibraryAudioDataSource.h \
gui/macosx/library/audio-library/VLCLibraryAudioDataSource.m \
gui/macosx/library/audio-library/VLCLibraryAudioGroupDataSource.h \
gui/macosx/library/audio-library/VLCLibraryAudioGroupDataSource.m \
gui/macosx/library/audio-library/VLCLibraryAudioViewController.h \
gui/macosx/library/audio-library/VLCLibraryAudioViewController.m \
gui/macosx/library/audio-library/VLCLibraryCollectionViewAlbumSupplementaryDetailView.h \

View File

@ -26,6 +26,7 @@
#import "library/VLCLibraryUIUnits.h"
#import "library/audio-library/VLCLibraryAudioDataSource.h"
#import "library/audio-library/VLCLibraryAudioGroupDataSource.h"
#import "library/audio-library/VLCLibraryCollectionViewAlbumSupplementaryDetailView.h"
#import "library/audio-library/VLCLibraryCollectionViewAudioGroupSupplementaryDetailView.h"
@ -240,7 +241,7 @@ static CVReturn detailViewAnimationCallback(CVDisplayLinkRef displayLink,
break;
}
} else if ([self.collectionView.dataSource isKindOfClass:[VLCLibraryGroupDataSource class]]) {
} else if ([self.collectionView.dataSource isKindOfClass:[VLCLibraryAudioGroupDataSource class]]) {
[layoutAttributesArray addObject:[self layoutAttributesForSupplementaryViewOfKind:VLCLibraryCollectionViewAlbumSupplementaryDetailViewKind atIndexPath:self.selectedIndexPath]];
} else if ([self.collectionView.dataSource isKindOfClass:[VLCLibraryVideoCollectionViewContainerViewDataSource class]]) {

View File

@ -28,7 +28,7 @@
NS_ASSUME_NONNULL_BEGIN
@class VLCLibraryModel;
@class VLCLibraryGroupDataSource;
@class VLCLibraryAudioGroupDataSource;
@class VLCMediaLibraryAlbum;
typedef NS_ENUM(NSUInteger, VLCAudioLibrarySegment) {
@ -41,7 +41,7 @@ typedef NS_ENUM(NSUInteger, VLCAudioLibrarySegment) {
@interface VLCLibraryAudioDataSource : NSObject <VLCLibraryTableViewDataSource, NSTableViewDelegate, VLCLibraryCollectionViewDataSource>
@property (readwrite, assign) VLCLibraryModel *libraryModel;
@property (readwrite, assign) VLCLibraryGroupDataSource *groupDataSource;
@property (readwrite, assign) VLCLibraryAudioGroupDataSource *audioGroupDataSource;
@property (readwrite, assign) NSTableView *collectionSelectionTableView;
@property (readwrite, assign) NSTableView *groupSelectionTableView;
@property (readwrite, assign) NSTableView *songsTableView;
@ -57,10 +57,4 @@ typedef NS_ENUM(NSUInteger, VLCAudioLibrarySegment) {
@end
@interface VLCLibraryGroupDataSource : NSObject <VLCLibraryTableViewDataSource, NSTableViewDelegate, NSCollectionViewDataSource>
@property (readwrite, retain, nullable) NSArray <VLCMediaLibraryAlbum *> *representedListOfAlbums;
@end
NS_ASSUME_NONNULL_END

View File

@ -37,6 +37,7 @@
#import "library/VLCLibraryCollectionViewMediaItemSupplementaryDetailView.h"
#import "library/audio-library/VLCLibraryAlbumTableCellView.h"
#import "library/audio-library/VLCLibraryAudioGroupDataSource.h"
#import "library/audio-library/VLCLibraryCollectionViewAlbumSupplementaryDetailView.h"
#import "library/audio-library/VLCLibraryCollectionViewAudioGroupSupplementaryDetailView.h"
#import "library/audio-library/VLCLibrarySongsTableViewSongPlayingTableCellView.h"
@ -472,7 +473,7 @@ static NSString *VLCLibraryYearSortDescriptorKey = @"VLCLibraryYearSortDescripto
break;
}
_groupDataSource.representedListOfAlbums = nil; // Clear whatever was being shown before
_audioGroupDataSource.representedListOfAlbums = nil; // Clear whatever was being shown before
[self reloadData];
}
@ -586,16 +587,16 @@ static NSString *VLCLibraryYearSortDescriptorKey = @"VLCLibraryYearSortDescripto
NSInteger libraryItemIndex = showingAllItemsEntry ? selectedRow - 1 : selectedRow;
if (libraryItemIndex < 0 && showingAllItemsEntry) {
_groupDataSource.representedListOfAlbums = _libraryModel.listOfAlbums;
_audioGroupDataSource.representedListOfAlbums = _libraryModel.listOfAlbums;
} else {
id<VLCMediaLibraryItemProtocol> libraryItem = _displayedCollection[libraryItemIndex];
if (_currentParentType == VLC_ML_PARENT_ALBUM) {
_groupDataSource.representedListOfAlbums = @[(VLCMediaLibraryAlbum *)libraryItem];
_audioGroupDataSource.representedListOfAlbums = @[(VLCMediaLibraryAlbum *)libraryItem];
} else if(_currentParentType != VLC_ML_PARENT_UNKNOWN) {
_groupDataSource.representedListOfAlbums = [_libraryModel listAlbumsOfParentType:_currentParentType forID:libraryItem.libraryID];
_audioGroupDataSource.representedListOfAlbums = [_libraryModel listAlbumsOfParentType:_currentParentType forID:libraryItem.libraryID];
} else { // FIXME: we have nothing to show here
_groupDataSource.representedListOfAlbums = nil;
_audioGroupDataSource.representedListOfAlbums = nil;
}
}
@ -641,7 +642,7 @@ static NSString *VLCLibraryYearSortDescriptorKey = @"VLCLibraryYearSortDescripto
- (void)groubSelectionDoubleClickAction:(id)sender
{
NSArray *listOfAlbums = _groupDataSource.representedListOfAlbums;
NSArray *listOfAlbums = _audioGroupDataSource.representedListOfAlbums;
NSUInteger albumCount = listOfAlbums.count;
NSInteger clickedRow = _groupSelectionTableView.clickedRow;
@ -739,88 +740,3 @@ viewForSupplementaryElementOfKind:(NSCollectionViewSupplementaryElementKind)kind
}
@end
@implementation VLCLibraryGroupDataSource
- (NSInteger)numberOfRowsInTableView:(NSTableView *)tableView
{
if (_representedListOfAlbums != nil) {
return _representedListOfAlbums.count;
}
return 0;
}
- (NSView *)tableView:(NSTableView *)tableView viewForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row
{
VLCLibraryAlbumTableCellView *cellView = [tableView makeViewWithIdentifier:VLCAudioLibraryCellIdentifier owner:self];
if (cellView == nil) {
cellView = [VLCLibraryAlbumTableCellView fromNibWithOwner:self];
cellView.identifier = VLCAudioLibraryCellIdentifier;
}
cellView.representedAlbum = (VLCMediaLibraryAlbum *)[self libraryItemAtRow:row forTableView:tableView];
return cellView;
}
- (id<VLCMediaLibraryItemProtocol>)libraryItemAtRow:(NSInteger)row
forTableView:(NSTableView *)tableView
{
return _representedListOfAlbums[row];
}
- (CGFloat)tableView:(NSTableView *)tableView heightOfRow:(NSInteger)row
{
VLCLibraryAlbumTableCellView *cellView = (VLCLibraryAlbumTableCellView *)[self tableView:tableView viewForTableColumn:[[NSTableColumn alloc] initWithIdentifier:VLCLibraryAlbumTableCellTableViewColumnIdentifier] row:row];
return cellView == nil ? -1 : cellView.height;
}
- (BOOL)tableView:(NSTableView *)tableView shouldSelectRow:(NSInteger)rowIndex
{
// We use this with nested table views, since the table view cell is the VLCLibraryAlbumTableCellView.
// We don't want to select the outer cell, only the inner cells in the album view's table.
return NO;
}
- (NSInteger)collectionView:(NSCollectionView *)collectionView
numberOfItemsInSection:(NSInteger)section
{
return _representedListOfAlbums.count;
}
- (NSInteger)numberOfSectionsInCollectionView:(NSCollectionView *)collectionView
{
return 1;
}
- (NSCollectionViewItem *)collectionView:(NSCollectionView *)collectionView
itemForRepresentedObjectAtIndexPath:(NSIndexPath *)indexPath
{
VLCLibraryCollectionViewItem *viewItem = [collectionView makeItemWithIdentifier:VLCLibraryCellIdentifier forIndexPath:indexPath];
viewItem.representedItem = _representedListOfAlbums[indexPath.item];
return viewItem;
}
- (NSView *)collectionView:(NSCollectionView *)collectionView
viewForSupplementaryElementOfKind:(NSCollectionViewSupplementaryElementKind)kind
atIndexPath:(NSIndexPath *)indexPath
{
if ([kind isEqualToString:VLCLibraryCollectionViewAlbumSupplementaryDetailViewKind]) {
VLCLibraryCollectionViewAlbumSupplementaryDetailView* albumSupplementaryDetailView = [collectionView makeSupplementaryViewOfKind:kind withIdentifier:VLCLibraryCollectionViewAlbumSupplementaryDetailViewKind forIndexPath:indexPath];
VLCMediaLibraryAlbum *album = _representedListOfAlbums[indexPath.item];
albumSupplementaryDetailView.representedAlbum = album;
albumSupplementaryDetailView.selectedItem = [collectionView itemAtIndex:indexPath.item];
albumSupplementaryDetailView.parentScrollView = [VLCMain sharedInstance].libraryWindow.audioCollectionViewScrollView;
albumSupplementaryDetailView.internalScrollView.scrollParentY = YES;
return albumSupplementaryDetailView;
}
return nil;
}
@end

View File

@ -0,0 +1,39 @@
/*****************************************************************************
* VLCLibraryAudioGroupDataSource.h: MacOS X interface module
*****************************************************************************
* Copyright (C) 2022 VLC authors and VideoLAN
*
* Authors: Claudio Cambra <developer@claudiocambra.com>
*
* 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 <Cocoa/Cocoa.h>
#import "library/VLCLibraryTableView.h"
NS_ASSUME_NONNULL_BEGIN
@class VLCLibraryModel;
@class VLCLibraryAudioGroupDataSource;
@class VLCMediaLibraryAlbum;
@interface VLCLibraryAudioGroupDataSource : NSObject <VLCLibraryTableViewDataSource, NSTableViewDelegate, NSCollectionViewDataSource>
@property (readwrite, retain, nullable) NSArray <VLCMediaLibraryAlbum *> *representedListOfAlbums;
@end
NS_ASSUME_NONNULL_END

View File

@ -0,0 +1,120 @@
/*****************************************************************************
* VLCLibraryAudioGroupDataSource.m: MacOS X interface module
*****************************************************************************
* Copyright (C) 2022 VLC authors and VideoLAN
*
* Authors: Claudio Cambra <developer@claudiocambra.com>
*
* 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 "VLCLibraryAudioGroupDataSource.h"
#import "main/VLCMain.h"
#import "library/VLCLibraryDataTypes.h"
#import "library/VLCLibraryCollectionViewItem.h"
#import "library/VLCLibraryCollectionViewFlowLayout.h"
#import "library/VLCLibraryWindow.h"
#import "library/audio-library/VLCLibraryAlbumTableCellView.h"
#import "library/audio-library/VLCLibraryCollectionViewAlbumSupplementaryDetailView.h"
#import "views/VLCSubScrollView.h"
@implementation VLCLibraryAudioGroupDataSource
- (NSInteger)numberOfRowsInTableView:(NSTableView *)tableView
{
if (_representedListOfAlbums != nil) {
return _representedListOfAlbums.count;
}
return 0;
}
- (NSView *)tableView:(NSTableView *)tableView viewForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row
{
VLCLibraryAlbumTableCellView *cellView = [tableView makeViewWithIdentifier:VLCAudioLibraryCellIdentifier owner:self];
if (cellView == nil) {
cellView = [VLCLibraryAlbumTableCellView fromNibWithOwner:self];
cellView.identifier = VLCAudioLibraryCellIdentifier;
}
cellView.representedAlbum = (VLCMediaLibraryAlbum *)[self libraryItemAtRow:row forTableView:tableView];
return cellView;
}
- (id<VLCMediaLibraryItemProtocol>)libraryItemAtRow:(NSInteger)row
forTableView:(NSTableView *)tableView
{
return _representedListOfAlbums[row];
}
- (CGFloat)tableView:(NSTableView *)tableView heightOfRow:(NSInteger)row
{
VLCLibraryAlbumTableCellView *cellView = (VLCLibraryAlbumTableCellView *)[self tableView:tableView viewForTableColumn:[[NSTableColumn alloc] initWithIdentifier:VLCLibraryAlbumTableCellTableViewColumnIdentifier] row:row];
return cellView == nil ? -1 : cellView.height;
}
- (BOOL)tableView:(NSTableView *)tableView shouldSelectRow:(NSInteger)rowIndex
{
// We use this with nested table views, since the table view cell is the VLCLibraryAlbumTableCellView.
// We don't want to select the outer cell, only the inner cells in the album view's table.
return NO;
}
- (NSInteger)collectionView:(NSCollectionView *)collectionView
numberOfItemsInSection:(NSInteger)section
{
return _representedListOfAlbums.count;
}
- (NSInteger)numberOfSectionsInCollectionView:(NSCollectionView *)collectionView
{
return 1;
}
- (NSCollectionViewItem *)collectionView:(NSCollectionView *)collectionView
itemForRepresentedObjectAtIndexPath:(NSIndexPath *)indexPath
{
VLCLibraryCollectionViewItem *viewItem = [collectionView makeItemWithIdentifier:VLCLibraryCellIdentifier forIndexPath:indexPath];
viewItem.representedItem = _representedListOfAlbums[indexPath.item];
return viewItem;
}
- (NSView *)collectionView:(NSCollectionView *)collectionView
viewForSupplementaryElementOfKind:(NSCollectionViewSupplementaryElementKind)kind
atIndexPath:(NSIndexPath *)indexPath
{
if ([kind isEqualToString:VLCLibraryCollectionViewAlbumSupplementaryDetailViewKind]) {
VLCLibraryCollectionViewAlbumSupplementaryDetailView* albumSupplementaryDetailView = [collectionView makeSupplementaryViewOfKind:kind withIdentifier:VLCLibraryCollectionViewAlbumSupplementaryDetailViewKind forIndexPath:indexPath];
VLCMediaLibraryAlbum *album = _representedListOfAlbums[indexPath.item];
albumSupplementaryDetailView.representedAlbum = album;
albumSupplementaryDetailView.selectedItem = [collectionView itemAtIndex:indexPath.item];
albumSupplementaryDetailView.parentScrollView = [VLCMain sharedInstance].libraryWindow.audioCollectionViewScrollView;
albumSupplementaryDetailView.internalScrollView.scrollParentY = YES;
return albumSupplementaryDetailView;
}
return nil;
}
@end

View File

@ -23,7 +23,7 @@
#import <Cocoa/Cocoa.h>
@class VLCLibraryAudioDataSource;
@class VLCLibraryGroupDataSource;
@class VLCLibraryAudioGroupDataSource;
@class VLCLibraryWindow;
NS_ASSUME_NONNULL_BEGIN
@ -57,7 +57,7 @@ NS_ASSUME_NONNULL_BEGIN
@property (readonly) NSView *emptyLibraryView;
@property (readonly) VLCLibraryAudioDataSource *audioDataSource;
@property (readonly) VLCLibraryGroupDataSource *audioGroupDataSource;
@property (readonly) VLCLibraryAudioGroupDataSource *audioGroupDataSource;
@property (readonly) NSArray<NSLayoutConstraint *> *audioPlaceholderImageViewSizeConstraints;

View File

@ -32,6 +32,7 @@
#import "library/VLCLibraryWindow.h"
#import "library/audio-library/VLCLibraryAudioDataSource.h"
#import "library/audio-library/VLCLibraryAudioGroupDataSource.h"
#import "library/video-library/VLCLibraryVideoViewController.h"
@ -113,8 +114,8 @@
_audioDataSource.gridModeListSelectionCollectionView = _audioLibraryGridModeSplitViewListSelectionCollectionView;
[_audioDataSource setup];
_audioGroupDataSource = [[VLCLibraryGroupDataSource alloc] init];
_audioDataSource.groupDataSource = _audioGroupDataSource;
_audioGroupDataSource = [[VLCLibraryAudioGroupDataSource alloc] init];
_audioDataSource.audioGroupDataSource = _audioGroupDataSource;
}
- (void)setupAudioCollectionView

View File

@ -25,14 +25,14 @@
#import "library/VLCLibraryDataTypes.h"
#import "extensions/NSFont+VLCAdditions.h"
#import "library/audio-library/VLCLibraryAudioDataSource.h"
#import "library/audio-library/VLCLibraryAudioGroupDataSource.h"
NSString *const VLCLibraryCollectionViewAudioGroupSupplementaryDetailViewIdentifier = @"VLCLibraryCollectionViewAudioGroupSupplementaryDetailViewIdentifier";
NSCollectionViewSupplementaryElementKind const VLCLibraryCollectionViewAudioGroupSupplementaryDetailViewKind = @"VLCLibraryCollectionViewAudioGroupSupplementaryDetailViewIdentifier";
@interface VLCLibraryCollectionViewAudioGroupSupplementaryDetailView ()
{
VLCLibraryGroupDataSource *_audioGroupAlbumsDataSource;
VLCLibraryAudioGroupDataSource *_audioGroupAlbumsDataSource;
}
@end
@ -41,7 +41,7 @@ NSCollectionViewSupplementaryElementKind const VLCLibraryCollectionViewAudioGrou
- (void)awakeFromNib
{
_audioGroupAlbumsDataSource = [[VLCLibraryGroupDataSource alloc] init];
_audioGroupAlbumsDataSource = [[VLCLibraryAudioGroupDataSource alloc] init];
_audioGroupAlbumsTableView.dataSource = _audioGroupAlbumsDataSource;
_audioGroupAlbumsTableView.delegate = _audioGroupAlbumsDataSource;