createFractionsKey static method
initialLevel2Width/initialLevel3Width/initialLevel4Width включены
в ключ, чтобы разные фичи с разными настроенными начальными ширинами
не получали чужой закэшированный результат.
Implementation
static CacheKey createFractionsKey(
List<Level> levels,
double availableWidth, {
double? initialLevel2Width,
double? initialLevel3Width,
double? initialLevel4Width,
}) {
final levelsStr = levels.map((l) => l.name).join(',');
final initialWidthsStr =
'${initialLevel2Width ?? ''}_${initialLevel3Width ?? ''}_${initialLevel4Width ?? ''}';
return CacheKey(
cacheName: CacheNames.splitPaneFractions,
key: 'fractions_${levelsStr}_w${availableWidth.round()}_i$initialWidthsStr',
);
}