From ee31b3bf295cb3e54325b2d3e6f52646f561ad47 Mon Sep 17 00:00:00 2001 From: lihenggui <350699171@qq.com> Date: Thu, 24 Aug 2023 22:30:51 -0700 Subject: [PATCH] Show more icon in the rule details by default --- .../blocker/feature/ruledetail/RuleDetailScreen.kt | 12 ++++++++---- .../feature/ruledetail/model/RuleDetailViewModel.kt | 7 +++++-- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/feature/ruledetail/src/main/java/com/merxury/blocker/feature/ruledetail/RuleDetailScreen.kt b/feature/ruledetail/src/main/java/com/merxury/blocker/feature/ruledetail/RuleDetailScreen.kt index 55313a29c6..88e42212ac 100644 --- a/feature/ruledetail/src/main/java/com/merxury/blocker/feature/ruledetail/RuleDetailScreen.kt +++ b/feature/ruledetail/src/main/java/com/merxury/blocker/feature/ruledetail/RuleDetailScreen.kt @@ -230,7 +230,7 @@ fun RuleDetailContent( override fun onPreScroll(available: Offset, source: NestedScrollSource): Offset { toolbarState.scrollTopLimitReached = listState.firstVisibleItemIndex == 0 && listState.firstVisibleItemScrollOffset == 0 - toolbarState.scrollOffset = toolbarState.scrollOffset - available.y + toolbarState.scrollOffset -= available.y return Offset(0f, toolbarState.consumed) } @@ -244,8 +244,7 @@ fun RuleDetailContent( ) { value, _ -> toolbarState.scrollTopLimitReached = listState.firstVisibleItemIndex == 0 && listState.firstVisibleItemScrollOffset == 0 - toolbarState.scrollOffset = - toolbarState.scrollOffset - (value - (toolbarState.height + toolbarState.offset)) + toolbarState.scrollOffset -= (value - (toolbarState.height + toolbarState.offset)) if (toolbarState.scrollOffset == 0f) scope.coroutineContext.cancelChildren() } } @@ -254,7 +253,12 @@ fun RuleDetailContent( } } } - updateIconBasedThemingState(IconBasedThemingState(icon = ruleInfoUiState.ruleIcon, isBasedIcon = true)) + updateIconBasedThemingState( + IconBasedThemingState( + icon = ruleInfoUiState.ruleIcon, + isBasedIcon = true, + ), + ) Scaffold( topBar = { BlockerCollapsingTopAppBar( diff --git a/feature/ruledetail/src/main/java/com/merxury/blocker/feature/ruledetail/model/RuleDetailViewModel.kt b/feature/ruledetail/src/main/java/com/merxury/blocker/feature/ruledetail/model/RuleDetailViewModel.kt index 7cbe7bd476..20f1276726 100644 --- a/feature/ruledetail/src/main/java/com/merxury/blocker/feature/ruledetail/model/RuleDetailViewModel.kt +++ b/feature/ruledetail/src/main/java/com/merxury/blocker/feature/ruledetail/model/RuleDetailViewModel.kt @@ -115,7 +115,7 @@ class RuleDetailViewModel @Inject constructor( ), ) val tabState: StateFlow> = _tabState.asStateFlow() - private val _appBarUiState = MutableStateFlow(AppBarUiState()) + private val _appBarUiState = MutableStateFlow(AppBarUiState(actions = getAppBarAction())) val appBarUiState: StateFlow = _appBarUiState.asStateFlow() private var currentSearchKeyword: List = emptyList() @@ -154,7 +154,10 @@ class RuleDetailViewModel @Inject constructor( .first() val ruleWithIcon = rule.copy(iconUrl = baseUrl + rule.iconUrl) _ruleInfoUiState.update { - RuleInfoUiState.Success(ruleInfo = ruleWithIcon, ruleIcon = getRuleIcon(baseUrl + rule.iconUrl, context = context)) + RuleInfoUiState.Success( + ruleInfo = ruleWithIcon, + ruleIcon = getRuleIcon(baseUrl + rule.iconUrl, context = context), + ) } currentSearchKeyword = rule.searchKeyword loadMatchedApps(rule.searchKeyword)