Package-level declarations

Types

Link copied to clipboard
private data class UsageChartSegment(val item: UsageItem, val startAngle: Float, val sweepAngle: Float)

Properties

Link copied to clipboard
private const val MIN_CHART_SWEEP_DEGREES: Float = 6.0f
Link copied to clipboard
private const val MIN_PERCENT_TENTH: Int = 1
Link copied to clipboard
private const val PERCENT_TENTHS_TOTAL: Int = 1000

Functions

Link copied to clipboard

Builds tappable donut segments that always fill exactly 360 degrees.

Link copied to clipboard
private fun UsageCategory.color(): Color
Link copied to clipboard
private fun Long.formatBytes(): String
Link copied to clipboard
Link copied to clipboard
private fun hitCategory(offset: Offset, segments: List<UsageChartSegment>, strokeWidthPx: Float, canvasWidth: Float, canvasHeight: Float): UsageCategory?
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
private fun List<UsageItem>.percentLabels(totalBytes: Long): Map<UsageCategory, String>

Formats category percentages so visible rows always add up to 100%.

Link copied to clipboard
Link copied to clipboard
private fun ShimmerLine(modifier: Modifier)
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Short noun phrase used when summarizing which storage categories currently occupy space.

Link copied to clipboard

User-facing category title used in rows and clear confirmation dialogs.

Link copied to clipboard
Link copied to clipboard
private fun UsageCategoryList(usage: UsageState, showClearActions: Boolean, onSelectCategory: (UsageCategory) -> Unit, onClearCategory: (UsageCategory) -> Unit)
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
private fun UsageCategoryRow(item: UsageItem, selected: Boolean, percentLabel: String, showClearAction: Boolean, showDivider: Boolean, onSelectCategory: (UsageCategory) -> Unit, onClearCategory: (UsageCategory) -> Unit)
Link copied to clipboard
private fun UsageDonutChart(usage: UsageState, onSelect: (UsageCategory) -> Unit)
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
fun UsageScreenContent(modifier: Modifier = Modifier, screen: UsageScreenKind, usage: UsageState, onBack: () -> Unit = {}, onSelectCategory: (UsageCategory) -> Unit = {}, onClearCategory: (UsageCategory) -> Unit = {}, onPrimaryAction: () -> Unit = {})

Shared standalone layout for storage and network usage screens.