Skip to content

Commit 241ac70

Browse files
committed
#1686 fix: do not show some screens behind system bars on the left/right side of the device.
1 parent 551a95d commit 241ac70

File tree

4 files changed

+21
-4
lines changed

4 files changed

+21
-4
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
## Bug fixes
66

77
- Do not automatically select the key mapper keyboard when the accessibility service starts.
8+
- #1686 do not show some screens behind system bars on the left/right side of the device.
89

910
## [3.1.0](https://github.com/sds100/KeyMapper/releases/tag/v3.1.0)
1011

app/src/main/java/io/github/sds100/keymapper/home/HomeKeyMapListScreen.kt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import androidx.compose.foundation.layout.WindowInsetsSides
1717
import androidx.compose.foundation.layout.only
1818
import androidx.compose.foundation.layout.padding
1919
import androidx.compose.foundation.layout.safeDrawing
20+
import androidx.compose.foundation.layout.systemBars
2021
import androidx.compose.foundation.layout.systemBarsPadding
2122
import androidx.compose.foundation.layout.windowInsetsPadding
2223
import androidx.compose.foundation.lazy.rememberLazyListState
@@ -172,7 +173,9 @@ fun HomeKeyMapListScreen(
172173
},
173174
listContent = {
174175
KeyMapList(
175-
modifier = Modifier.animateContentSize(),
176+
modifier = Modifier
177+
.windowInsetsPadding(WindowInsets.systemBars.only(sides = WindowInsetsSides.Horizontal))
178+
.animateContentSize(),
176179
lazyListState = rememberLazyListState(),
177180
listItems = state.listItems,
178181
footerText = stringResource(R.string.home_key_map_list_footer_text),

app/src/main/java/io/github/sds100/keymapper/home/KeyMapListAppBar.kt

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,17 @@ import androidx.compose.foundation.layout.PaddingValues
2121
import androidx.compose.foundation.layout.Row
2222
import androidx.compose.foundation.layout.RowScope
2323
import androidx.compose.foundation.layout.Spacer
24+
import androidx.compose.foundation.layout.WindowInsets
25+
import androidx.compose.foundation.layout.WindowInsetsSides
2426
import androidx.compose.foundation.layout.fillMaxWidth
2527
import androidx.compose.foundation.layout.height
2628
import androidx.compose.foundation.layout.heightIn
29+
import androidx.compose.foundation.layout.only
2730
import androidx.compose.foundation.layout.padding
28-
import androidx.compose.foundation.layout.statusBarsPadding
31+
import androidx.compose.foundation.layout.systemBars
2932
import androidx.compose.foundation.layout.width
3033
import androidx.compose.foundation.layout.widthIn
34+
import androidx.compose.foundation.layout.windowInsetsPadding
3135
import androidx.compose.foundation.text.BasicTextField
3236
import androidx.compose.foundation.text.KeyboardActions
3337
import androidx.compose.foundation.text.KeyboardOptions
@@ -394,6 +398,7 @@ private fun RootGroupAppBar(
394398
Surface(color = appBarContainerColor) {
395399
GroupRow(
396400
modifier = Modifier
401+
.windowInsetsPadding(WindowInsets.systemBars.only(sides = WindowInsetsSides.Horizontal))
397402
.padding(horizontal = 8.dp)
398403
.fillMaxWidth(),
399404
groups = state.subGroups,
@@ -405,6 +410,7 @@ private fun RootGroupAppBar(
405410
}
406411
}
407412

413+
@OptIn(ExperimentalMaterial3Api::class)
408414
@Composable
409415
private fun ChildGroupAppBar(
410416
modifier: Modifier = Modifier,
@@ -439,7 +445,7 @@ private fun ChildGroupAppBar(
439445
Column {
440446
Row(
441447
Modifier
442-
.statusBarsPadding()
448+
.windowInsetsPadding(TopAppBarDefaults.windowInsets)
443449
.fillMaxWidth()
444450
.heightIn(min = 48.dp)
445451
.padding(vertical = 8.dp)

app/src/main/java/io/github/sds100/keymapper/mappings/keymaps/ConfigKeyMapFragment.kt

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,12 @@ import android.os.Bundle
44
import android.view.LayoutInflater
55
import android.view.View
66
import android.view.ViewGroup
7+
import androidx.compose.foundation.layout.WindowInsets
8+
import androidx.compose.foundation.layout.WindowInsetsSides
79
import androidx.compose.foundation.layout.fillMaxSize
10+
import androidx.compose.foundation.layout.only
11+
import androidx.compose.foundation.layout.systemBars
12+
import androidx.compose.foundation.layout.windowInsetsPadding
813
import androidx.compose.ui.Modifier
914
import androidx.compose.ui.platform.ViewCompositionStrategy
1015
import androidx.fragment.app.Fragment
@@ -65,7 +70,9 @@ class ConfigKeyMapFragment : Fragment() {
6570
setContent {
6671
KeyMapperTheme {
6772
ConfigKeyMapScreen(
68-
modifier = Modifier.fillMaxSize(),
73+
modifier = Modifier
74+
.windowInsetsPadding(WindowInsets.systemBars.only(sides = WindowInsetsSides.Horizontal))
75+
.fillMaxSize(),
6976
viewModel = viewModel,
7077
navigateBack = findNavController()::navigateUp,
7178
)

0 commit comments

Comments
 (0)