From fe14016d0a72d0045674574acdb7a6a0e185a913 Mon Sep 17 00:00:00 2001 From: Claudio Cambra <developer@claudiocambra.com> Date: Mon, 9 Sep 2024 01:07:50 +0800 Subject: [PATCH] macosx: Do not keep around data sources that are not being used in video view controller Signed-off-by: Claudio Cambra <developer@claudiocambra.com> --- .../library/video-library/VLCLibraryVideoViewController.h | 4 ++-- .../library/video-library/VLCLibraryVideoViewController.m | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/modules/gui/macosx/library/video-library/VLCLibraryVideoViewController.h b/modules/gui/macosx/library/video-library/VLCLibraryVideoViewController.h index 024bb9d02b00..6a6162eaac3e 100644 --- a/modules/gui/macosx/library/video-library/VLCLibraryVideoViewController.h +++ b/modules/gui/macosx/library/video-library/VLCLibraryVideoViewController.h @@ -48,8 +48,8 @@ NS_ASSUME_NONNULL_BEGIN @property (readonly) VLCLoadingOverlayView *loadingOverlayView; -@property (readonly) VLCLibraryVideoDataSource *libraryVideoDataSource; -@property (readonly) VLCLibraryShowsDataSource *libraryShowsDataSource; +@property (readonly, nullable) VLCLibraryVideoDataSource *libraryVideoDataSource; +@property (readonly, nullable) VLCLibraryShowsDataSource *libraryShowsDataSource; - (instancetype)initWithLibraryWindow:(VLCLibraryWindow *)libraryWindow; - (void)presentVideoView; diff --git a/modules/gui/macosx/library/video-library/VLCLibraryVideoViewController.m b/modules/gui/macosx/library/video-library/VLCLibraryVideoViewController.m index e9178a157fd1..342b2616a7b7 100644 --- a/modules/gui/macosx/library/video-library/VLCLibraryVideoViewController.m +++ b/modules/gui/macosx/library/video-library/VLCLibraryVideoViewController.m @@ -84,8 +84,6 @@ [self setupPropertiesFromLibraryWindow:libraryWindow]; [self setupTableViews]; - [self setupVideoDataSource]; - [self setupShowsDataSource]; [self setupCollectionView]; [self setupVideoPlaceholderView]; [self setupVideoLibraryViews]; @@ -295,6 +293,8 @@ - (void)updatePresentedVideoLibraryView { + _libraryShowsDataSource = nil; + [self setupVideoDataSource]; self.videoLibraryCollectionView.dataSource = self.libraryVideoDataSource; self.videoLibraryGroupsTableView.dataSource = self.libraryVideoDataSource; @@ -320,6 +320,8 @@ - (void)updatePresentedShowsLibraryView { + _libraryVideoDataSource = nil; + [self setupShowsDataSource]; self.videoLibraryCollectionView.dataSource = self.libraryShowsDataSource; self.videoLibraryGroupsTableView.dataSource = self.libraryShowsDataSource; -- GitLab