|
|
@ -29,19 +29,19 @@ import androidx.compose.material.icons.filled.MoreVert
|
|
|
|
import androidx.compose.material.icons.filled.Search
|
|
|
|
import androidx.compose.material.icons.filled.Search
|
|
|
|
import androidx.compose.material3.Text
|
|
|
|
import androidx.compose.material3.Text
|
|
|
|
import androidx.compose.runtime.Composable
|
|
|
|
import androidx.compose.runtime.Composable
|
|
|
|
|
|
|
|
import androidx.compose.runtime.DisposableEffect
|
|
|
|
import androidx.compose.runtime.collectAsState
|
|
|
|
import androidx.compose.runtime.collectAsState
|
|
|
|
import androidx.compose.runtime.getValue
|
|
|
|
import androidx.compose.runtime.getValue
|
|
|
|
import androidx.compose.ui.Alignment
|
|
|
|
import androidx.compose.ui.Alignment
|
|
|
|
import androidx.compose.ui.Modifier
|
|
|
|
import androidx.compose.ui.Modifier
|
|
|
|
import androidx.compose.ui.platform.LocalView
|
|
|
|
|
|
|
|
import androidx.compose.ui.res.stringResource
|
|
|
|
import androidx.compose.ui.res.stringResource
|
|
|
|
import androidx.compose.ui.unit.dp
|
|
|
|
import androidx.compose.ui.unit.dp
|
|
|
|
import androidx.hilt.navigation.compose.hiltViewModel
|
|
|
|
import androidx.hilt.navigation.compose.hiltViewModel
|
|
|
|
import com.google.samples.apps.nowinandroid.core.ui.LoadingWheel
|
|
|
|
import com.google.samples.apps.nowinandroid.core.ui.LoadingWheel
|
|
|
|
import com.google.samples.apps.nowinandroid.core.ui.addPerformanceMetricsState
|
|
|
|
|
|
|
|
import com.google.samples.apps.nowinandroid.core.ui.component.NiaTab
|
|
|
|
import com.google.samples.apps.nowinandroid.core.ui.component.NiaTab
|
|
|
|
import com.google.samples.apps.nowinandroid.core.ui.component.NiaTabRow
|
|
|
|
import com.google.samples.apps.nowinandroid.core.ui.component.NiaTabRow
|
|
|
|
import com.google.samples.apps.nowinandroid.core.ui.component.NiaTopAppBar
|
|
|
|
import com.google.samples.apps.nowinandroid.core.ui.component.NiaTopAppBar
|
|
|
|
|
|
|
|
import com.google.samples.apps.nowinandroid.core.ui.rememberMetricsStateHolder
|
|
|
|
|
|
|
|
|
|
|
|
@Composable
|
|
|
|
@Composable
|
|
|
|
fun InterestsRoute(
|
|
|
|
fun InterestsRoute(
|
|
|
@ -62,7 +62,15 @@ fun InterestsRoute(
|
|
|
|
switchTab = viewModel::switchTab,
|
|
|
|
switchTab = viewModel::switchTab,
|
|
|
|
modifier = modifier
|
|
|
|
modifier = modifier
|
|
|
|
)
|
|
|
|
)
|
|
|
|
LocalView.current.addPerformanceMetricsState("Interests", "$tabState")
|
|
|
|
|
|
|
|
|
|
|
|
val metricsHolder = rememberMetricsStateHolder()
|
|
|
|
|
|
|
|
DisposableEffect(tabState, metricsHolder) {
|
|
|
|
|
|
|
|
metricsHolder.state?.addState("Interests:TabState", "currentIndex:${tabState.currentIndex}")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
onDispose {
|
|
|
|
|
|
|
|
metricsHolder.state?.removeState("Interests:TabState")
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Composable
|
|
|
|
@Composable
|
|
|
|