Felix Paul Kühne pushed to branch master at VideoLAN / VLC
Commits:
9a768ff2 by Claudio Cambra at 2024-12-03T18:47:36+00:00
macosx: Remove unnecessary double definition of same pointer
Signed-off-by: Claudio Cambra <develo...@claudiocambra.com>
- - - - -
ba0203b9 by Claudio Cambra at 2024-12-03T18:47:36+00:00
macosx: Add starter VLCLibraryCollectionView class
Signed-off-by: Claudio Cambra <develo...@claudiocambra.com>
- - - - -
5c085b6b by Claudio Cambra at 2024-12-03T18:47:36+00:00
macosx: Manually invalidate collection view layout pre-layout of
VLCLibraryCollectionViewLayout
Fixes issues with the collection view item size calculations not always
being updated when they should be
Signed-off-by: Claudio Cambra <develo...@claudiocambra.com>
- - - - -
e993a6c3 by Claudio Cambra at 2024-12-03T18:47:36+00:00
macosx: Convert all collection views in VLCLibraryWindow XIB to
VLCLibraryCollectionView types
Signed-off-by: Claudio Cambra <develo...@claudiocambra.com>
- - - - -
44c64c97 by Claudio Cambra at 2024-12-03T18:47:36+00:00
macosx: Make all library segment controllers take collection views as
VLCLibraryCollectionViews like VLCLibraryWindow
Signed-off-by: Claudio Cambra <develo...@claudiocambra.com>
- - - - -
a155e87a by Claudio Cambra at 2024-12-03T18:47:36+00:00
macosx: In library segment view controllers where collection views are
programatically instantiated, use VLCLibraryCollectionView
Signed-off-by: Claudio Cambra <develo...@claudiocambra.com>
- - - - -
19 changed files:
- extras/package/macosx/VLC.xcodeproj/project.pbxproj
- modules/gui/macosx/Makefile.am
- modules/gui/macosx/UI/VLCLibraryWindow.xib
- + modules/gui/macosx/library/VLCLibraryCollectionView.h
- + modules/gui/macosx/library/VLCLibraryCollectionView.m
- modules/gui/macosx/library/VLCLibraryCollectionViewDelegate.m
- modules/gui/macosx/library/VLCLibraryWindow.h
- modules/gui/macosx/library/audio-library/VLCLibraryAudioViewController.h
- modules/gui/macosx/library/audio-library/VLCLibraryAudioViewController.m
- modules/gui/macosx/library/groups-library/VLCLibraryGroupsViewController.h
- modules/gui/macosx/library/groups-library/VLCLibraryGroupsViewController.m
-
modules/gui/macosx/library/home-library/VLCLibraryHomeViewVideoGridContainerView.h
-
modules/gui/macosx/library/home-library/VLCLibraryHomeViewVideoGridContainerView.m
- modules/gui/macosx/library/media-source/VLCLibraryMediaSourceViewController.h
- modules/gui/macosx/library/media-source/VLCLibraryMediaSourceViewController.m
- modules/gui/macosx/library/playlist-library/VLCLibraryPlaylistViewController.h
- modules/gui/macosx/library/playlist-library/VLCLibraryPlaylistViewController.m
- modules/gui/macosx/library/video-library/VLCLibraryVideoViewController.h
- modules/gui/macosx/library/video-library/VLCLibraryVideoViewController.m
Changes:
=====================================
extras/package/macosx/VLC.xcodeproj/project.pbxproj
=====================================
@@ -137,6 +137,7 @@
539F114B29E83A4200F13460 /*
VLCLibraryTwoPaneSplitViewDelegate.m in Sources */ = {isa = PBXBuildFile;
fileRef = 539F114A29E83A4200F13460 /* VLCLibraryTwoPaneSplitViewDelegate.m */;
};
539F116D29F9785C00F13460 /*
VLCMainVideoViewAudioMediaDecorativeView.m in Sources */ = {isa = PBXBuildFile;
fileRef = 539F116C29F9785C00F13460 /*
VLCMainVideoViewAudioMediaDecorativeView.m */; };
53A1F1172AB7168000686BAA /*
VLCLibraryAllAudioGroupsMediaLibraryItem.m in Sources */ = {isa = PBXBuildFile;
fileRef = 53A1F1162AB7168000686BAA /*
VLCLibraryAllAudioGroupsMediaLibraryItem.m */; };
+ 53A5E83E2CFE16E9008B33C1 /* VLCLibraryCollectionView.m in
Sources */ = {isa = PBXBuildFile; fileRef = 53A5E83D2CFE16E9008B33C1 /*
VLCLibraryCollectionView.m */; };
53A8F9D12A7E1E6300BC11BF /* VLCLibraryPlaylistViewController.m
in Sources */ = {isa = PBXBuildFile; fileRef = 53A8F9D02A7E1E6300BC11BF /*
VLCLibraryPlaylistViewController.m */; };
53A8F9D42A7F815900BC11BF /* VLCLibraryPlaylistDataSource.m in
Sources */ = {isa = PBXBuildFile; fileRef = 53A8F9D32A7F815900BC11BF /*
VLCLibraryPlaylistDataSource.m */; };
53A9698A2CD5B9D400E6F66E /* VLCTimeFormatter.m in Sources */ =
{isa = PBXBuildFile; fileRef = 53A969892CD5B9D400E6F66E /* VLCTimeFormatter.m
*/; };
@@ -430,6 +431,8 @@
53A1F1152AB7168000686BAA /*
VLCLibraryAllAudioGroupsMediaLibraryItem.h */ = {isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h; path =
VLCLibraryAllAudioGroupsMediaLibraryItem.h; sourceTree = "<group>"; };
53A1F1162AB7168000686BAA /*
VLCLibraryAllAudioGroupsMediaLibraryItem.m */ = {isa = PBXFileReference;
lastKnownFileType = sourcecode.c.objc; path =
VLCLibraryAllAudioGroupsMediaLibraryItem.m; sourceTree = "<group>"; };
53A5021D2C9ADFF3000C3CD3 /* VLCLibraryWindowSidebarRootView.xib
*/ = {isa = PBXFileReference; lastKnownFileType = file.xib; path =
VLCLibraryWindowSidebarRootView.xib; sourceTree = "<group>"; };
+ 53A5E83C2CFE16E9008B33C1 /* VLCLibraryCollectionView.h */ =
{isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path =
VLCLibraryCollectionView.h; sourceTree = "<group>"; };
+ 53A5E83D2CFE16E9008B33C1 /* VLCLibraryCollectionView.m */ =
{isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path =
VLCLibraryCollectionView.m; sourceTree = "<group>"; };
53A8F9CF2A7E1E6300BC11BF /* VLCLibraryPlaylistViewController.h
*/ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path =
VLCLibraryPlaylistViewController.h; sourceTree = "<group>"; };
53A8F9D02A7E1E6300BC11BF /* VLCLibraryPlaylistViewController.m
*/ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path =
VLCLibraryPlaylistViewController.m; sourceTree = "<group>"; };
53A8F9D22A7F815900BC11BF /* VLCLibraryPlaylistDataSource.h */ =
{isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path =
VLCLibraryPlaylistDataSource.h; sourceTree = "<group>"; };
@@ -1342,6 +1345,8 @@
530F32B22C8C757600233C03 /*
VLCLibraryAbstractSegmentViewController.m */,
53088E132AD7802C00C21358 /*
VLCLibraryCarouselViewItemView.h */,
53088E142AD7802C00C21358 /*
VLCLibraryCarouselViewItemView.m */,
+ 53A5E83C2CFE16E9008B33C1 /*
VLCLibraryCollectionView.h */,
+ 53A5E83D2CFE16E9008B33C1 /*
VLCLibraryCollectionView.m */,
5317FE05294E8D1A001702F0 /*
VLCLibraryCollectionViewDataSource.h */,
5317FE02294E3DD3001702F0 /*
VLCLibraryCollectionViewDelegate.h */,
5317FE03294E3DD3001702F0 /*
VLCLibraryCollectionViewDelegate.m */,
@@ -2251,6 +2256,7 @@
536BFD1929B181E100BD0776 /*
VLCMainVideoViewOverlayView.m in Sources */,
536283F1291146BC00640C15 /*
VLCLibraryItemInternalMediaItemsDataSource.m in Sources */,
5307A6F52967859F001E0C6A /*
NSImage+VLCAdditions.m in Sources */,
+ 53A5E83E2CFE16E9008B33C1 /*
VLCLibraryCollectionView.m in Sources */,
5341F14A2C9757EF003BDF0A /*
VLCLibraryWindowChaptersSidebarViewController.m in Sources */,
1CCC89042078A3D500E5626F /* StreamOutput.xib in
Sources */,
536283F7291146BC00640C15 /*
VLCLibraryNavigationState.m in Sources */,
=====================================
modules/gui/macosx/Makefile.am
=====================================
@@ -105,6 +105,8 @@ libmacosx_plugin_la_SOURCES = \
gui/macosx/library/VLCLibraryAbstractSegmentViewController.m \
gui/macosx/library/VLCLibraryCarouselViewItemView.h \
gui/macosx/library/VLCLibraryCarouselViewItemView.m \
+ gui/macosx/library/VLCLibraryCollectionView.h \
+ gui/macosx/library/VLCLibraryCollectionView.m \
gui/macosx/library/VLCLibraryCollectionViewDataSource.h \
gui/macosx/library/VLCLibraryCollectionViewDelegate.h \
gui/macosx/library/VLCLibraryCollectionViewDelegate.m \
=====================================
modules/gui/macosx/UI/VLCLibraryWindow.xib
=====================================
@@ -673,8 +673,8 @@
<rect key="frame" x="1" y="1" width="867"
height="806"/>
<autoresizingMask key="autoresizingMask"
widthSizable="YES" heightSizable="YES"/>
<subviews>
- <collectionView selectable="YES"
allowsMultipleSelection="YES" id="neh-e5-MUa">
- <rect key="frame" x="0.0" y="0.0" width="871"
height="158"/>
+ <collectionView selectable="YES"
allowsMultipleSelection="YES" id="neh-e5-MUa"
customClass="VLCLibraryCollectionView">
+ <rect key="frame" x="0.0" y="0.0" width="873"
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"/>
@@ -899,7 +899,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"
allowsMultipleSelection="YES" id="r7v-GI-W1U">
+ <collectionView selectable="YES"
allowsMultipleSelection="YES" id="r7v-GI-W1U"
customClass="VLCLibraryCollectionView">
<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">
@@ -1040,7 +1040,7 @@
<rect key="frame" x="0.0" y="0.0" width="415"
height="390"/>
<autoresizingMask key="autoresizingMask"
widthSizable="YES" heightSizable="YES"/>
<subviews>
- <collectionView selectable="YES"
allowsMultipleSelection="YES" id="ZGR-PZ-7h5">
+ <collectionView selectable="YES"
allowsMultipleSelection="YES" id="ZGR-PZ-7h5"
customClass="VLCLibraryCollectionView">
<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">
@@ -1197,7 +1197,7 @@
<rect key="frame" x="0.0" y="0.0" width="714"
height="390"/>
<autoresizingMask key="autoresizingMask"
widthSizable="YES" heightSizable="YES"/>
<subviews>
- <collectionView selectable="YES"
allowsMultipleSelection="YES" id="QAt-jP-zE7">
+ <collectionView selectable="YES"
allowsMultipleSelection="YES" id="QAt-jP-zE7"
customClass="VLCLibraryCollectionView">
<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">
=====================================
modules/gui/macosx/library/VLCLibraryCollectionView.h
=====================================
@@ -0,0 +1,31 @@
+/*****************************************************************************
+ * VLCLibraryCollectionView.h: MacOS X interface module
+ *****************************************************************************
+ * Copyright (C) 2024 VLC authors and VideoLAN
+ *
+ * Authors: Claudio Cambra <develo...@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>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface VLCLibraryCollectionView : NSCollectionView
+
+@end
+
+NS_ASSUME_NONNULL_END
=====================================
modules/gui/macosx/library/VLCLibraryCollectionView.m
=====================================
@@ -0,0 +1,36 @@
+/*****************************************************************************
+ * VLCLibraryCollectionView.m: MacOS X interface module
+ *****************************************************************************
+ * Copyright (C) 2024 VLC authors and VideoLAN
+ *
+ * Authors: Claudio Cambra <develo...@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 "VLCLibraryCollectionView.h"
+
+@implementation VLCLibraryCollectionView
+
+- (void)layout
+{
+ // Manually invalidate the collection view layout when we are going to
layout the view; this
+ // fixes issues with the collection view item size calculations not always
being updated when
+ // they should be
+ [self.collectionViewLayout invalidateLayout];
+ [super layout];
+}
+
+@end
=====================================
modules/gui/macosx/library/VLCLibraryCollectionViewDelegate.m
=====================================
@@ -73,9 +73,8 @@
return _staticItemSize;
}
- VLCLibraryCollectionViewFlowLayout *collectionViewFlowLayout =
(VLCLibraryCollectionViewFlowLayout*)collectionViewLayout;
+ VLCLibraryCollectionViewFlowLayout * const collectionViewFlowLayout =
(VLCLibraryCollectionViewFlowLayout*)collectionViewLayout;
if (collectionViewLayout) {
- VLCLibraryCollectionViewFlowLayout *collectionViewFlowLayout =
(VLCLibraryCollectionViewFlowLayout*)collectionViewLayout;
return [VLCLibraryUIUnits
adjustedCollectionViewItemSizeForCollectionView:collectionView
withLayout:collectionViewFlowLayout
withItemsAspectRatio:_itemsAspectRatio];
=====================================
modules/gui/macosx/library/VLCLibraryWindow.h
=====================================
@@ -31,6 +31,7 @@ NS_ASSUME_NONNULL_BEGIN
@class VLCRoundedCornerTextField;
@class VLCInputNodePathControl;
@class VLCLibraryAbstractSegmentViewController;
+@class VLCLibraryCollectionView;
@class VLCLibraryMediaSourceViewController;
@class VLCLibraryNavigationStack;
@class VLCLibrarySortingMenuController;
@@ -71,12 +72,12 @@ extern const NSUserInterfaceItemIdentifier
VLCLibraryWindowIdentifier;
@property (readwrite, weak) IBOutlet NSView *videoLibraryView;
@property (readwrite, weak) IBOutlet NSSplitView *videoLibrarySplitView;
@property (readwrite, weak) IBOutlet NSScrollView
*videoLibraryCollectionViewScrollView;
-@property (readwrite, weak) IBOutlet NSCollectionView
*videoLibraryCollectionView;
+@property (readwrite, weak) IBOutlet VLCLibraryCollectionView
*videoLibraryCollectionView;
@property (readwrite, weak) IBOutlet NSScrollView
*videoLibraryGroupSelectionTableViewScrollView;
@property (readwrite, weak) IBOutlet NSTableView
*videoLibraryGroupSelectionTableView;
@property (readwrite, weak) IBOutlet NSScrollView
*videoLibraryGroupsTableViewScrollView;
@property (readwrite, weak) IBOutlet NSTableView *videoLibraryGroupsTableView;
-@property (readwrite, weak) IBOutlet NSCollectionView
*mediaSourceCollectionView;
+@property (readwrite, weak) IBOutlet VLCLibraryCollectionView
*mediaSourceCollectionView;
@property (readwrite, weak) IBOutlet NSView *audioLibraryView;
@property (readwrite, weak) IBOutlet NSSplitView *audioLibrarySplitView;
@property (readwrite, weak) IBOutlet NSScrollView
*audioCollectionSelectionTableViewScrollView;
@@ -86,12 +87,12 @@ extern const NSUserInterfaceItemIdentifier
VLCLibraryWindowIdentifier;
@property (readwrite, weak) IBOutlet NSScrollView
*audioLibrarySongsTableViewScrollView;
@property (readwrite, weak) IBOutlet NSTableView *audioLibrarySongsTableView;
@property (readwrite, weak) IBOutlet NSScrollView
*audioCollectionViewScrollView;
-@property (readwrite, weak) IBOutlet NSCollectionView
*audioLibraryCollectionView;
+@property (readwrite, weak) IBOutlet VLCLibraryCollectionView
*audioLibraryCollectionView;
@property (readwrite, weak) IBOutlet NSSplitView
*audioLibraryGridModeSplitView;
@property (readwrite, weak) IBOutlet NSScrollView
*audioLibraryGridModeSplitViewListTableViewScrollView;
@property (readwrite, weak) IBOutlet NSTableView
*audioLibraryGridModeSplitViewListTableView;
@property (readwrite, weak) IBOutlet NSScrollView
*audioLibraryGridModeSplitViewListSelectionCollectionViewScrollView;
-@property (readwrite, weak) IBOutlet NSCollectionView
*audioLibraryGridModeSplitViewListSelectionCollectionView;
+@property (readwrite, weak) IBOutlet VLCLibraryCollectionView
*audioLibraryGridModeSplitViewListSelectionCollectionView;
@property (readwrite, weak) IBOutlet NSView *mediaSourceView;
@property (readwrite, weak) IBOutlet NSButton *mediaSourceHomeButton;
@property (readwrite, weak) IBOutlet VLCInputNodePathControl
*mediaSourcePathControl;
=====================================
modules/gui/macosx/library/audio-library/VLCLibraryAudioViewController.h
=====================================
@@ -27,6 +27,7 @@
@class VLCLibraryAudioDataSource;
@class VLCLibraryAudioGroupDataSource;
+@class VLCLibraryCollectionView;
@class VLCLibraryWindow;
@protocol VLCMediaLibraryItemProtocol;
@@ -44,12 +45,12 @@ NS_ASSUME_NONNULL_BEGIN
@property (readonly, weak) NSScrollView *audioSongTableViewScrollView;
@property (readonly, weak) NSTableView *audioSongTableView;
@property (readonly, weak) NSScrollView *audioCollectionViewScrollView;
-@property (readonly, weak) NSCollectionView *audioLibraryCollectionView;
+@property (readonly, weak) VLCLibraryCollectionView
*audioLibraryCollectionView;
@property (readonly, weak) NSSplitView *audioLibraryGridModeSplitView;
@property (readonly, weak) NSScrollView
*audioLibraryGridModeSplitViewListTableViewScrollView;
@property (readonly, weak) NSTableView
*audioLibraryGridModeSplitViewListTableView;
@property (readonly, weak) NSScrollView
*audioLibraryGridModeSplitViewListSelectionCollectionViewScrollView;
-@property (readonly, weak) NSCollectionView
*audioLibraryGridModeSplitViewListSelectionCollectionView;
+@property (readonly, weak) VLCLibraryCollectionView
*audioLibraryGridModeSplitViewListSelectionCollectionView;
@property (readonly) VLCLibraryAudioDataSource *audioDataSource;
@property (readonly) VLCLibraryAudioGroupDataSource *audioGroupDataSource;
=====================================
modules/gui/macosx/library/audio-library/VLCLibraryAudioViewController.m
=====================================
@@ -25,6 +25,7 @@
#import "extensions/NSString+Helpers.h"
#import "extensions/NSWindow+VLCAdditions.h"
+#import "library/VLCLibraryCollectionView.h"
#import "library/VLCLibraryCollectionViewDelegate.h"
#import "library/VLCLibraryCollectionViewFlowLayout.h"
#import "library/VLCLibraryController.h"
=====================================
modules/gui/macosx/library/groups-library/VLCLibraryGroupsViewController.h
=====================================
@@ -26,6 +26,7 @@
NS_ASSUME_NONNULL_BEGIN
+@class VLCLibraryCollectionView;
@class VLCLibraryCollectionViewDelegate;
@class VLCLibraryGroupsDataSource;
@class VLCLibraryMasterDetailViewTableViewDelegate;
@@ -36,7 +37,7 @@ NS_ASSUME_NONNULL_BEGIN
@interface VLCLibraryGroupsViewController :
VLCLibraryAbstractSegmentViewController<NSSplitViewDelegate>
@property (readonly) NSScrollView *collectionViewScrollView;
-@property (readonly) NSCollectionView *collectionView;
+@property (readonly) VLCLibraryCollectionView *collectionView;
@property (readonly) NSSplitView *listViewSplitView;
@property (readonly) NSScrollView *groupsTableViewScrollView;
@property (readonly) VLCLibraryTableView *groupsTableView;
=====================================
modules/gui/macosx/library/groups-library/VLCLibraryGroupsViewController.m
=====================================
@@ -24,6 +24,7 @@
#import "extensions/NSString+Helpers.h"
+#import "library/VLCLibraryCollectionView.h"
#import "library/VLCLibraryCollectionViewDelegate.h"
#import "library/VLCLibraryCollectionViewFlowLayout.h"
#import "library/VLCLibraryCollectionViewItem.h"
@@ -71,7 +72,7 @@
- (void)setupGridViewModeViews
{
_collectionViewScrollView = [[NSScrollView alloc] init];
- _collectionView = [[NSCollectionView alloc] init];
+ _collectionView = [[VLCLibraryCollectionView alloc] init];
self.collectionViewScrollView.translatesAutoresizingMaskIntoConstraints =
NO;
self.collectionView.translatesAutoresizingMaskIntoConstraints = NO;
=====================================
modules/gui/macosx/library/home-library/VLCLibraryHomeViewVideoGridContainerView.h
=====================================
@@ -26,6 +26,7 @@
#import "library/video-library/VLCLibraryVideoGroupDescriptor.h"
@class VLCSubScrollView;
+@class VLCLibraryCollectionView;
@class VLCLibraryCollectionViewDelegate;
@class VLCLibraryCollectionViewFlowLayout;
@class VLCLibraryVideoCollectionViewGroupDescriptor;
@@ -34,7 +35,7 @@ NS_ASSUME_NONNULL_BEGIN
@interface VLCLibraryHomeViewVideoGridContainerView :
NSView<VLCLibraryHomeViewVideoContainerView>
-@property (readonly) NSCollectionView *collectionView;
+@property (readonly) VLCLibraryCollectionView *collectionView;
@property (readonly) VLCLibraryCollectionViewDelegate *collectionViewDelegate;
@property (readonly) VLCLibraryCollectionViewFlowLayout *collectionViewLayout;
@property (readonly) VLCSubScrollView *scrollView;
=====================================
modules/gui/macosx/library/home-library/VLCLibraryHomeViewVideoGridContainerView.m
=====================================
@@ -24,6 +24,7 @@
#import "extensions/NSView+VLCAdditions.h"
+#import "library/VLCLibraryCollectionView.h"
#import "library/VLCLibraryCollectionViewDelegate.h"
#import "library/VLCLibraryCollectionViewFlowLayout.h"
#import "library/VLCLibraryCollectionViewItem.h"
@@ -82,7 +83,7 @@
_collectionViewLayout = VLCLibraryCollectionViewFlowLayout.standardLayout;
_collectionViewLayout.headerReferenceSize =
VLCLibraryCollectionViewSupplementaryElementView.defaultHeaderSize;
- _collectionView = [[NSCollectionView alloc] initWithFrame:NSZeroRect];
+ _collectionView = [[VLCLibraryCollectionView alloc]
initWithFrame:NSZeroRect];
_collectionView.postsFrameChangedNotifications = YES;
_collectionView.collectionViewLayout = _collectionViewLayout;
_collectionView.selectable = YES;
=====================================
modules/gui/macosx/library/media-source/VLCLibraryMediaSourceViewController.h
=====================================
@@ -27,6 +27,7 @@
NS_ASSUME_NONNULL_BEGIN
@class VLCInputNodePathControl;
+@class VLCLibraryCollectionView;
@class VLCLibraryWindow;
@class VLCMediaSourceBaseDataSource;
@@ -34,7 +35,7 @@ NS_ASSUME_NONNULL_BEGIN
@property (readonly, weak) NSView *mediaSourceView;
@property (readonly, weak) NSTableView *mediaSourceTableView;
-@property (readonly, weak) NSCollectionView *collectionView;
+@property (readonly, weak) VLCLibraryCollectionView *collectionView;
@property (readonly, weak) NSScrollView *collectionViewScrollView;
@property (readonly, weak) NSTableView *tableView;
@property (readonly, weak) NSScrollView *tableViewScrollView;
=====================================
modules/gui/macosx/library/media-source/VLCLibraryMediaSourceViewController.m
=====================================
@@ -29,6 +29,7 @@
#import "extensions/NSString+Helpers.h"
#import "extensions/NSWindow+VLCAdditions.h"
+#import "library/VLCLibraryCollectionView.h"
#import "library/VLCLibraryCollectionViewFlowLayout.h"
#import "library/VLCLibraryCollectionViewItem.h"
#import "library/VLCLibraryController.h"
=====================================
modules/gui/macosx/library/playlist-library/VLCLibraryPlaylistViewController.h
=====================================
@@ -28,6 +28,7 @@
NS_ASSUME_NONNULL_BEGIN
+@class VLCLibraryCollectionView;
@class VLCLibraryCollectionViewDelegate;
@class VLCLibraryMasterDetailViewTableViewDelegate;
@class VLCLibraryPlaylistDataSource;
@@ -42,7 +43,7 @@ NS_ASSUME_NONNULL_BEGIN
@property (readonly) NSScrollView *detailTableViewScrollView;
@property (readonly) VLCLibraryTableView *detailTableView;
@property (readonly) NSScrollView *collectionViewScrollView;
-@property (readonly) NSCollectionView *collectionView;
+@property (readonly) VLCLibraryCollectionView *collectionView;
@property (readonly) VLCLibraryPlaylistDataSource *dataSource;
@property (readonly) VLCLibraryCollectionViewDelegate *collectionViewDelegate;
=====================================
modules/gui/macosx/library/playlist-library/VLCLibraryPlaylistViewController.m
=====================================
@@ -24,6 +24,7 @@
#import "extensions/NSString+Helpers.h"
+#import "library/VLCLibraryCollectionView.h"
#import "library/VLCLibraryCollectionViewDelegate.h"
#import "library/VLCLibraryCollectionViewFlowLayout.h"
#import "library/VLCLibraryController.h"
@@ -106,7 +107,7 @@
_collectionViewScrollView =
[[NSScrollView alloc]
initWithFrame:self.libraryWindow.libraryTargetView.frame];
_collectionViewDelegate = [[VLCLibraryCollectionViewDelegate alloc] init];
- _collectionView = [[NSCollectionView alloc] init];
+ _collectionView = [[VLCLibraryCollectionView alloc] init];
_collectionViewScrollView.documentView = _collectionView;
_collectionViewScrollView.translatesAutoresizingMaskIntoConstraints = NO;
=====================================
modules/gui/macosx/library/video-library/VLCLibraryVideoViewController.h
=====================================
@@ -24,6 +24,7 @@
#import "library/VLCLibraryAbstractSegmentViewController.h"
+@class VLCLibraryCollectionView;
@class VLCLibraryWindow;
@class VLCLibraryVideoDataSource;
@class VLCLibraryShowsDataSource;
@@ -39,7 +40,7 @@ NS_ASSUME_NONNULL_BEGIN
@property (readonly, weak) NSView *videoLibraryView;
@property (readonly, weak) NSSplitView *videoLibrarySplitView;
@property (readonly, weak) NSScrollView *videoLibraryCollectionViewScrollView;
-@property (readonly, weak) NSCollectionView *videoLibraryCollectionView;
+@property (readonly, weak) VLCLibraryCollectionView
*videoLibraryCollectionView;
@property (readonly, weak) NSScrollView
*videoLibraryGroupSelectionTableViewScrollView;
@property (readonly, weak) NSTableView *videoLibraryGroupSelectionTableView;
@property (readonly, weak) NSScrollView *videoLibraryGroupsTableViewScrollView;
=====================================
modules/gui/macosx/library/video-library/VLCLibraryVideoViewController.m
=====================================
@@ -24,6 +24,7 @@
#import "extensions/NSString+Helpers.h"
+#import "library/VLCLibraryCollectionView.h"
#import "library/VLCLibraryCollectionViewDelegate.h"
#import "library/VLCLibraryCollectionViewFlowLayout.h"
#import "library/VLCLibraryCollectionViewItem.h"
View it on GitLab:
https://code.videolan.org/videolan/vlc/-/compare/0db7de70d2185444b1f77211e172f757ae9468b5...a155e87ab177241b60cf0c8b209d85b7c6938b00
--
View it on GitLab:
https://code.videolan.org/videolan/vlc/-/compare/0db7de70d2185444b1f77211e172f757ae9468b5...a155e87ab177241b60cf0c8b209d85b7c6938b00
You're receiving this email because of your account on code.videolan.org.
VideoLAN code repository instance
_______________________________________________
vlc-commits mailing list
vlc-commits@videolan.org
https://mailman.videolan.org/listinfo/vlc-commits