49 lines · 2.0 KB · Swift
RawDownload
import AppKitimport CodexBarCore extension StatusItemController {    func trimRebuildableCachesForMemoryPressure() -> MemoryPressureCacheTrimSummary {        let mergedSwitcherSelectionCount = self.mergedSwitcherContentCaches.values.reduce(0) { total, entries in            total + entries.count        }        let summary = MemoryPressureCacheTrimSummary(            menuCardHeights: self.menuCardHeightCache.count,            menuWidths: self.measuredStandardMenuWidthCache.count,            mergedSwitcherSelections: mergedSwitcherSelectionCount,            recycledMenuCardViews: self.menuCardViewRecyclePool.count)         self.menuCardHeightCache.removeAll(keepingCapacity: false)        self.measuredStandardMenuWidthCache.removeAll(keepingCapacity: false)        self.mergedSwitcherContentCaches.removeAll(keepingCapacity: false)        self.menuCardViewRecyclePool.removeAll(keepingCapacity: false)         return summary    }     #if DEBUG    func seedRebuildableCachesForMemoryPressureProof() {        let menu = NSMenu()        let cacheEntry = CachedMergedSwitcherMenuContent(            requiredMenuContentVersion: self.menuSession.contentVersion,            menuWidth: 300,            codexAccountDisplay: nil,            tokenAccountDisplay: nil,            localizationSignature: self.menuLocalizationSignature(),            items: [])        self.menuCardHeightCache[            MenuCardHeightCacheKey(                id: "debug-memory-pressure-card",                scope: UsageProvider.codex.rawValue,                width: 30000,                textScale: Self.menuCardHeightTextScaleToken(),                fingerprint: "debug-memory-pressure"),        ] = 44        self.measuredStandardMenuWidthCache["debug-memory-pressure-width"] = 300        self.mergedSwitcherContentCaches[ObjectIdentifier(menu)] = [            .overview: cacheEntry,            .provider(.codex): cacheEntry,        ]        self.menuCardViewRecyclePool["debug-memory-pressure-card"] = NSView()    }    #endif}