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 120 additions and 40 deletions
......@@ -626,8 +626,8 @@
<rect key="frame" x="1" y="1" width="867" height="806"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<collectionView id="neh-e5-MUa">
<rect key="frame" x="0.0" y="0.0" width="867" height="158"/>
<collectionView selectable="YES" allowsMultipleSelection="YES" id="neh-e5-MUa">
<rect key="frame" x="0.0" y="0.0" width="871" height="158"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES"/>
<collectionViewFlowLayout key="collectionViewLayout" minimumInteritemSpacing="10" minimumLineSpacing="10" id="0sw-3B-cXl">
<size key="itemSize" width="50" height="50"/>
......@@ -852,7 +852,7 @@
<rect key="frame" x="0.0" y="0.0" width="528" height="411"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<collectionView selectable="YES" id="r7v-GI-W1U">
<collectionView selectable="YES" allowsMultipleSelection="YES" id="r7v-GI-W1U">
<rect key="frame" x="0.0" y="0.0" width="528" height="411"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES"/>
<collectionViewFlowLayout key="collectionViewLayout" minimumInteritemSpacing="10" minimumLineSpacing="10" id="v0C-1b-7Ss">
......@@ -993,7 +993,7 @@
<rect key="frame" x="0.0" y="0.0" width="415" height="390"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<collectionView id="ZGR-PZ-7h5">
<collectionView selectable="YES" allowsMultipleSelection="YES" id="ZGR-PZ-7h5">
<rect key="frame" x="0.0" y="0.0" width="415" height="390"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES"/>
<collectionViewFlowLayout key="collectionViewLayout" minimumInteritemSpacing="10" minimumLineSpacing="10" id="od3-Iu-ch8">
......@@ -1150,7 +1150,7 @@
<rect key="frame" x="0.0" y="0.0" width="714" height="390"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<collectionView id="QAt-jP-zE7">
<collectionView selectable="YES" allowsMultipleSelection="YES" id="QAt-jP-zE7">
<rect key="frame" x="0.0" y="0.0" width="714" height="390"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES"/>
<collectionViewFlowLayout key="collectionViewLayout" minimumInteritemSpacing="10" minimumLineSpacing="10" id="oKT-Ic-UdV">
......
......@@ -24,6 +24,7 @@
NS_ASSUME_NONNULL_BEGIN
@class VLCLibraryRepresentedItem;
@protocol VLCMediaLibraryItemProtocol;
@protocol VLCLibraryCollectionViewDataSource <NSCollectionViewDataSource>
......@@ -31,6 +32,9 @@ NS_ASSUME_NONNULL_BEGIN
- (id<VLCMediaLibraryItemProtocol>)libraryItemAtIndexPath:(NSIndexPath *)indexPath
forCollectionView:(NSCollectionView *)collectionView;
- (NSIndexPath *)indexPathForLibraryItem:(id<VLCMediaLibraryItemProtocol>)libraryItem;
- (NSArray<VLCLibraryRepresentedItem *> *)representedItemsAtIndexPaths:(NSSet<NSIndexPath *> *const)indexPaths
forCollectionView:(NSCollectionView *)collectionView;
- (void)reloadData;
@optional
......
......@@ -55,14 +55,13 @@
- (void)collectionView:(NSCollectionView *)collectionView didDeselectItemsAtIndexPaths:(NSSet<NSIndexPath *> *)indexPaths
{
NSIndexPath *indexPath = indexPaths.anyObject;
if (!indexPath) {
return;
}
VLCLibraryCollectionViewFlowLayout * const collectionViewFlowLayout =
(VLCLibraryCollectionViewFlowLayout*)collectionView.collectionViewLayout;
VLCLibraryCollectionViewFlowLayout *collectionViewFlowLayout = (VLCLibraryCollectionViewFlowLayout*)collectionView.collectionViewLayout;
if (collectionViewFlowLayout) {
[collectionViewFlowLayout collapseDetailSectionAtIndex:indexPath];
for (NSIndexPath * const indexPath in indexPaths) {
[collectionViewFlowLayout collapseDetailSectionAtIndex:indexPath];
}
}
}
......
......@@ -283,15 +283,33 @@ const CGFloat VLCLibraryCollectionViewItemMaximumDisplayedProgress = 0.95;
[self.representedItem queue];
}
-(void)mouseDown:(NSEvent *)theEvent
- (void)openContextMenu:(NSEvent *)event
{
if (theEvent.modifierFlags & NSControlKeyMask) {
if (!_menuController) {
_menuController = [[VLCLibraryMenuController alloc] init];
}
if (!_menuController) {
_menuController = [[VLCLibraryMenuController alloc] init];
}
NSCollectionView * const collectionView = self.collectionView;
Protocol * const vlcDataSourceProtocol = @protocol(VLCLibraryCollectionViewDataSource);
if([collectionView.dataSource conformsToProtocol:vlcDataSourceProtocol]) {
NSObject<VLCLibraryCollectionViewDataSource> * const dataSource =
(NSObject<VLCLibraryCollectionViewDataSource> *)collectionView.dataSource;
NSSet<NSIndexPath *> * const indexPaths = collectionView.selectionIndexPaths;
NSArray<VLCLibraryRepresentedItem *> * const items =
[dataSource representedItemsAtIndexPaths:indexPaths forCollectionView:collectionView];
_menuController.representedItems = items;
} else {
_menuController.representedItems = @[self.representedItem];
}
[_menuController popupMenuWithEvent:event forView:self.view];
}
[_menuController setRepresentedItems:@[self.representedItem]];
[_menuController popupMenuWithEvent:theEvent forView:self.view];
-(void)mouseDown:(NSEvent *)event
{
if (event.modifierFlags & NSEventModifierFlagControl) {
[self openContextMenu:event];
} else if (self.deselectWhenClickedIfSelected &&
self.selected &&
[self.collectionView.dataSource conformsToProtocol:@protocol(VLCLibraryCollectionViewDataSource)]) {
......@@ -311,19 +329,13 @@ const CGFloat VLCLibraryCollectionViewItemMaximumDisplayedProgress = 0.95;
}
}
[super mouseDown:theEvent];
[super mouseDown:event];
}
- (void)rightMouseDown:(NSEvent *)theEvent
- (void)rightMouseDown:(NSEvent *)event
{
if (!_menuController) {
_menuController = [[VLCLibraryMenuController alloc] init];
}
[_menuController setRepresentedItems:@[self.representedItem]];
[_menuController popupMenuWithEvent:theEvent forView:self.view];
[super rightMouseDown:theEvent];
[self openContextMenu:event];
[super rightMouseDown:event];
}
@end
......@@ -905,4 +905,22 @@ viewForSupplementaryElementOfKind:(NSCollectionViewSupplementaryElementKind)kind
return carouselItemView;
}
- (NSArray<VLCLibraryRepresentedItem *> *)representedItemsAtIndexPaths:(NSSet<NSIndexPath *> *const)indexPaths
forCollectionView:(NSCollectionView *)collectionView
{
NSMutableArray<VLCLibraryRepresentedItem *> * const representedItems =
[NSMutableArray arrayWithCapacity:indexPaths.count];
for (NSIndexPath * const indexPath in indexPaths) {
const id<VLCMediaLibraryItemProtocol> libraryItem =
[self libraryItemAtIndexPath:indexPath forCollectionView:collectionView];
VLCLibraryRepresentedItem * const representedItem =
[[VLCLibraryRepresentedItem alloc] initWithItem:libraryItem
parentType:self.currentParentType];
[representedItems addObject:representedItem];
}
return representedItems;
}
@end
......@@ -309,4 +309,22 @@ viewForSupplementaryElementOfKind:(NSCollectionViewSupplementaryElementKind)kind
return [NSIndexPath indexPathForItem:arrayIdx inSection:0];
}
- (NSArray<VLCLibraryRepresentedItem *> *)representedItemsAtIndexPaths:(NSSet<NSIndexPath *> *const)indexPaths
forCollectionView:(NSCollectionView *)collectionView
{
NSMutableArray<VLCLibraryRepresentedItem *> * const representedItems =
[NSMutableArray arrayWithCapacity:indexPaths.count];
for (NSIndexPath * const indexPath in indexPaths) {
const id<VLCMediaLibraryItemProtocol> libraryItem =
[self libraryItemAtIndexPath:indexPath forCollectionView:collectionView];
VLCLibraryRepresentedItem * const representedItem =
[[VLCLibraryRepresentedItem alloc] initWithItem:libraryItem
parentType:self.currentParentType];
[representedItems addObject:representedItem];
}
return representedItems;
}
@end
......@@ -181,10 +181,6 @@ NSString *VLCLibraryPlaceholderAudioViewIdentifier = @"VLCLibraryPlaceholderAudi
_audioLibraryCollectionView.dataSource = _audioDataSource;
_audioLibraryCollectionView.delegate = _audioLibraryCollectionViewDelegate;
_audioLibraryCollectionView.selectable = YES;
_audioLibraryCollectionView.allowsMultipleSelection = NO;
_audioLibraryCollectionView.allowsEmptySelection = YES;
const CGFloat collectionItemSpacing = VLCLibraryUIUnits.collectionViewItemSpacing;
const NSEdgeInsets collectionViewSectionInset = [VLCLibraryUIUnits collectionViewSectionInsets];
......@@ -223,10 +219,6 @@ NSString *VLCLibraryPlaceholderAudioViewIdentifier = @"VLCLibraryPlaceholderAudi
_audioLibraryGridModeSplitViewListSelectionCollectionView.dataSource = _audioGroupDataSource;
_audioLibraryGridModeSplitViewListSelectionCollectionView.delegate = _audioLibraryCollectionViewDelegate;
_audioLibraryGridModeSplitViewListSelectionCollectionView.selectable = YES;
_audioLibraryGridModeSplitViewListSelectionCollectionView.allowsMultipleSelection = NO;
_audioLibraryGridModeSplitViewListSelectionCollectionView.allowsEmptySelection = YES;
const CGFloat collectionItemSpacing = VLCLibraryUIUnits.collectionViewItemSpacing;
const NSEdgeInsets collectionViewSectionInset = [VLCLibraryUIUnits collectionViewSectionInsets];
......
......@@ -364,6 +364,28 @@ viewForSupplementaryElementOfKind:(NSCollectionViewSupplementaryElementKind)kind
return [NSIndexPath indexPathForItem:libraryItemIndex inSection:0];
}
- (NSArray<VLCLibraryRepresentedItem *> *)representedItemsAtIndexPaths:(NSSet<NSIndexPath *> *const)indexPaths
forCollectionView:(NSCollectionView *)collectionView
{
NSMutableArray<VLCLibraryRepresentedItem *> * const representedItems =
[NSMutableArray arrayWithCapacity:indexPaths.count];
for (NSIndexPath * const indexPath in indexPaths) {
const id<VLCMediaLibraryItemProtocol> libraryItem =
[self libraryItemAtIndexPath:indexPath forCollectionView:collectionView];
// TODO: Find a more elegant way to do this
VLCLibraryHomeViewVideoGridContainerView * const containerView =
(VLCLibraryHomeViewVideoGridContainerView *)collectionView.superview.superview.superview;
NSAssert(containerView != nil, @"The collection view's container view should not be nil!");
VLCLibraryRepresentedItem * const representedItem =
[[VLCLibraryRepresentedItem alloc] initWithItem:libraryItem
parentType:containerView.videoGroup];
[representedItems addObject:representedItem];
}
return representedItems;
}
// pragma mark: iCarouselDataSource methods
- (NSInteger)numberOfItemsInCarousel:(iCarousel *)carousel
......
......@@ -124,7 +124,7 @@
_collectionView.collectionViewLayout = _collectionViewLayout;
_collectionView.selectable = YES;
_collectionView.allowsEmptySelection = YES;
_collectionView.allowsMultipleSelection = NO;
_collectionView.allowsMultipleSelection = YES;
_collectionViewDelegate = [[VLCLibraryCollectionViewDelegate alloc] init];
_collectionViewDelegate.itemsAspectRatio = VLCLibraryCollectionViewItemAspectRatioVideoItem;
......
......@@ -419,6 +419,24 @@ NSString * const VLCLibraryVideoDataSourceDisplayedCollectionChangedNotification
return [NSIndexPath indexPathForItem:row inSection:section];
}
- (NSArray<VLCLibraryRepresentedItem *> *)representedItemsAtIndexPaths:(NSSet<NSIndexPath *> *const)indexPaths
forCollectionView:(NSCollectionView *)collectionView
{
NSMutableArray<VLCLibraryRepresentedItem *> * const representedItems =
[NSMutableArray arrayWithCapacity:indexPaths.count];
for (NSIndexPath * const indexPath in indexPaths) {
const id<VLCMediaLibraryItemProtocol> libraryItem =
[self libraryItemAtIndexPath:indexPath forCollectionView:collectionView];
VLCLibraryRepresentedItem * const representedItem =
[[VLCLibraryRepresentedItem alloc] initWithItem:libraryItem
parentType:self.currentParentType];
[representedItems addObject:representedItem];
}
return representedItems;
}
- (NSString *)titleForVideoGroup:(NSInteger)videoGroup
{
switch (videoGroup) {
......
......@@ -163,9 +163,6 @@
_collectionViewLayout.sectionInset = collectionViewSectionInset;
self.videoLibraryCollectionView.collectionViewLayout = _collectionViewLayout;
self.videoLibraryCollectionView.selectable = YES;
self.videoLibraryCollectionView.allowsEmptySelection = YES;
self.videoLibraryCollectionView.allowsMultipleSelection = NO;
_collectionViewDelegate = [[VLCLibraryCollectionViewDelegate alloc] init];
_collectionViewDelegate.itemsAspectRatio = VLCLibraryCollectionViewItemAspectRatioVideoItem;
......