Skip to content

Commit fddef58

Browse files
authored
Merge pull request #659 from Daily-DAYO/bug/issue-658
Fix inconsistent behavior between soft back key and back icon button
2 parents af4dd82 + 10c5846 commit fddef58

File tree

2 files changed

+14
-4
lines changed

2 files changed

+14
-4
lines changed

presentation/src/main/java/daily/dayo/presentation/screen/search/SearchResultScreen.kt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package daily.dayo.presentation.screen.search
22

3+
import androidx.activity.compose.BackHandler
34
import androidx.compose.foundation.Image
45
import androidx.compose.foundation.background
56
import androidx.compose.foundation.border
@@ -107,6 +108,10 @@ internal fun SearchResultRoute(
107108
followViewModel: FollowViewModel = hiltViewModel(),
108109
accountViewModel: AccountViewModel = hiltViewModel(),
109110
) {
111+
BackHandler {
112+
onBackClick()
113+
}
114+
110115
val searchKeywordResultsTag = searchViewModel.searchTagList.collectAsLazyPagingItems()
111116
val searchKeywordResultsUser = searchViewModel.searchUserList.collectAsLazyPagingItems()
112117
val searchKeywordResultsTagTotalCount by searchViewModel.searchTagTotalCount.collectAsStateWithLifecycle(
@@ -211,7 +216,6 @@ fun SearchResultScreen(
211216
onBackClick = onBackClick,
212217
onSearchClick = { keyword ->
213218
onSearchClick(keyword)
214-
onSearchClick(keyword)
215219
}
216220
)
217221

presentation/src/main/java/daily/dayo/presentation/screen/search/SearchScreen.kt

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package daily.dayo.presentation.screen.search
22

3+
import androidx.activity.compose.BackHandler
34
import androidx.compose.foundation.BorderStroke
45
import androidx.compose.foundation.Image
56
import androidx.compose.foundation.background
@@ -59,6 +60,7 @@ import daily.dayo.domain.model.SearchHistory
5960
import daily.dayo.domain.model.SearchHistoryDetail
6061
import daily.dayo.domain.model.SearchHistoryType
6162
import daily.dayo.presentation.R
63+
import daily.dayo.presentation.common.ReplaceUnicode.trimBlankText
6264
import daily.dayo.presentation.common.extension.clickableSingle
6365
import daily.dayo.presentation.common.toSp
6466
import daily.dayo.presentation.theme.DayoTheme
@@ -74,6 +76,10 @@ internal fun SearchRoute(
7476
onSearch: (String) -> Unit,
7577
viewmodel: SearchViewModel = hiltViewModel()
7678
) {
79+
BackHandler {
80+
onBackClick()
81+
}
82+
7783
val searchHistory by viewmodel.searchHistory.collectAsStateWithLifecycle()
7884
val coroutineScope = rememberCoroutineScope()
7985

@@ -204,9 +210,9 @@ fun SearchActionbarLayout(
204210
keyboardOptions = KeyboardOptions.Default.copy(imeAction = ImeAction.Search),
205211
keyboardActions = KeyboardActions(
206212
onSearch = {
207-
if (textFieldValue.text.isNotEmpty()) {
208-
onSearchClick(textFieldValue.text)
209-
onSearchClick(textFieldValue.text)
213+
val trimmedBlankText = trimBlankText(textFieldValue.text)
214+
if (trimmedBlankText.isNotEmpty()) {
215+
onSearchClick(trimmedBlankText)
210216
}
211217
}
212218
)

0 commit comments

Comments
 (0)