Steve Lhomme pushed to branch master at VideoLAN / VLC


Commits:
8ad67984 by Serhii Bykov at 2026-05-12T08:14:51+00:00
macosx: cache NSDateFormatter for last played date in supplementary detail view

- - - - -


1 changed file:

- 
modules/gui/macosx/library/VLCLibraryCollectionViewMediaItemSupplementaryDetailView.m


Changes:

=====================================
modules/gui/macosx/library/VLCLibraryCollectionViewMediaItemSupplementaryDetailView.m
=====================================
@@ -45,6 +45,18 @@ NSCollectionViewSupplementaryElementKind const 
VLCLibraryCollectionViewMediaItem
 
 @implementation VLCLibraryCollectionViewMediaItemSupplementaryDetailView
 
++ (NSDateFormatter *)lastPlayedDateFormatter
+{
+    static NSDateFormatter *formatter;
+    static dispatch_once_t onceToken;
+    dispatch_once(&onceToken, ^{
+        formatter = [[NSDateFormatter alloc] init];
+        formatter.dateStyle = NSDateFormatterFullStyle;
+        formatter.timeStyle = NSDateFormatterFullStyle;
+    });
+    return formatter;
+}
+
 - (void)awakeFromNib
 {
     _mediaItemTitleTextField.font = NSFont.VLCLibrarySubsectionHeaderFont;
@@ -152,10 +164,8 @@ NSCollectionViewSupplementaryElementKind const 
VLCLibraryCollectionViewMediaItem
     if (actualItem.lastPlayedDate > 0) {
         NSDate * const lastPlayedDate =
             [NSDate dateWithTimeIntervalSince1970:actualItem.lastPlayedDate];
-        NSDateFormatter * const formatter = [[NSDateFormatter alloc] init];
-        formatter.dateStyle = NSDateFormatterFullStyle;
-        formatter.timeStyle = NSDateFormatterFullStyle;
-        NSString * const lastPlayedString = [formatter 
stringFromDate:lastPlayedDate];
+        NSString * const lastPlayedString =
+            [self.class.lastPlayedDateFormatter stringFromDate:lastPlayedDate];
         self.mediaItemLastPlayedTextField.stringValue = lastPlayedString;
     }
 



View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/8ad6798420a697c732bb21e7198340e1e3aee1bf

-- 
View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/8ad6798420a697c732bb21e7198340e1e3aee1bf
You're receiving this email because of your account on code.videolan.org.


_______________________________________________
vlc-commits mailing list
[email protected]
https://mailman.videolan.org/listinfo/vlc-commits

Reply via email to