Skip to content

Commit c7b6ca9

Browse files
Limit the number of entries in the event log
1 parent 92f2cea commit c7b6ca9

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

SwiftSplit/EventListDelegate.swift

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import Cocoa
1212
class EventListDelegate: NSObject, NSCollectionViewDelegate, NSCollectionViewDataSource {
1313
static let itemIdentifier = NSUserInterfaceItemIdentifier(rawValue: "eventStreamItem")
1414

15+
let maxEntries = 100
1516
var eventEntries: [String] = []
1617
weak var collectionView: NSCollectionView!
1718
var scrollView: NSScrollView {
@@ -30,6 +31,14 @@ class EventListDelegate: NSObject, NSCollectionViewDelegate, NSCollectionViewDat
3031
}.filter { $0.type != VariantType.legacy }
3132
let entries = variants.map { $0.event }
3233

34+
let removeCount = eventEntries.count + entries.count - maxEntries
35+
36+
if removeCount > 0 {
37+
eventEntries.removeFirst(removeCount)
38+
let range = (0 ..< removeCount).map { IndexPath(item: $0, section: 0) }
39+
self.collectionView.deleteItems(at: Set(range))
40+
}
41+
3342
let rangeStart = self.eventEntries.count
3443
self.eventEntries.append(contentsOf: entries)
3544
let rangeEnd = self.eventEntries.count

0 commit comments

Comments
 (0)