diff --git a/CHANGELOG.md b/CHANGELOG.md index 47351845..bd197b0c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ ### 修改 - 解决加载的配置文件包含 Unicode 编码时未转换为中文的问题 +- 解决点击右上角「功能介绍」后菜单未自动关闭的问题 ## v3.0.0 - 2024.09.27 diff --git a/app/src/main/java/com/android/skip/ui/about/AboutActivity.kt b/app/src/main/java/com/android/skip/ui/about/AboutActivity.kt index 4ca37a03..f3d9adc8 100644 --- a/app/src/main/java/com/android/skip/ui/about/AboutActivity.kt +++ b/app/src/main/java/com/android/skip/ui/about/AboutActivity.kt @@ -23,6 +23,7 @@ import com.android.skip.ui.components.FlatButton import com.android.skip.ui.components.ResourceIcon import com.android.skip.ui.components.RowContent import com.android.skip.ui.components.ScaffoldPage +import com.android.skip.ui.components.expandMenuItems import com.android.skip.ui.settings.theme.SwitchThemeViewModel import com.android.skip.ui.theme.AppTheme import com.android.skip.ui.webview.WebViewActivity @@ -70,6 +71,7 @@ class AboutActivity : AppCompatActivity() { putExtra("url", R.string.about_function_intro_url) } startActivity(intent) + expandMenuItems = false }) }) } diff --git a/app/src/main/java/com/android/skip/ui/alive/AliveActivity.kt b/app/src/main/java/com/android/skip/ui/alive/AliveActivity.kt index 4aa17521..61aa9c8e 100644 --- a/app/src/main/java/com/android/skip/ui/alive/AliveActivity.kt +++ b/app/src/main/java/com/android/skip/ui/alive/AliveActivity.kt @@ -24,6 +24,7 @@ import com.android.skip.ui.components.FlatButton import com.android.skip.ui.components.ResourceIcon import com.android.skip.ui.components.RowContent import com.android.skip.ui.components.ScaffoldPage +import com.android.skip.ui.components.expandMenuItems import com.android.skip.ui.components.notification.NotificationDialog import com.android.skip.ui.components.notification.NotificationDialogViewModel import com.android.skip.ui.settings.theme.SwitchThemeViewModel @@ -94,6 +95,7 @@ class AliveActivity : AppCompatActivity() { putExtra("url", R.string.alive_function_intro_url) } startActivity(intent) + expandMenuItems = false }) }) } diff --git a/app/src/main/java/com/android/skip/ui/components/ScaffoldPage.kt b/app/src/main/java/com/android/skip/ui/components/ScaffoldPage.kt index 4900a70d..25df835d 100644 --- a/app/src/main/java/com/android/skip/ui/components/ScaffoldPage.kt +++ b/app/src/main/java/com/android/skip/ui/components/ScaffoldPage.kt @@ -19,7 +19,6 @@ import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf -import androidx.compose.runtime.remember import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier @@ -28,6 +27,8 @@ import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import com.android.skip.R +var expandMenuItems by mutableStateOf(false) + @Composable fun ScaffoldPage( barTitle: Int, @@ -35,7 +36,6 @@ fun ScaffoldPage( content: @Composable (PaddingValues) -> Unit, menuItems: (@Composable (ColumnScope.() -> Unit))? = null ) { - var expanded by remember { mutableStateOf(false) } Scaffold(topBar = { Row( modifier = Modifier @@ -61,11 +61,11 @@ fun ScaffoldPage( menuItems?.let { Row { - IconButton(onClick = { expanded = true }) { + IconButton(onClick = { expandMenuItems = true }) { Icon(Icons.Default.MoreVert, contentDescription = null) - DropdownMenu(expanded = expanded, + DropdownMenu(expanded = expandMenuItems, modifier = Modifier.background(MaterialTheme.colorScheme.background), - onDismissRequest = { expanded = false }) { + onDismissRequest = { expandMenuItems = false }) { menuItems() } } diff --git a/app/src/main/java/com/android/skip/ui/inspect/InspectActivity.kt b/app/src/main/java/com/android/skip/ui/inspect/InspectActivity.kt index 06fbd877..0c2e5b6a 100644 --- a/app/src/main/java/com/android/skip/ui/inspect/InspectActivity.kt +++ b/app/src/main/java/com/android/skip/ui/inspect/InspectActivity.kt @@ -19,6 +19,7 @@ import com.android.skip.service.AccessibilityInspectViewModel import com.android.skip.service.InspectService import com.android.skip.ui.components.ResourceIcon import com.android.skip.ui.components.ScaffoldPage +import com.android.skip.ui.components.expandMenuItems import com.android.skip.ui.components.notification.NotificationDialog import com.android.skip.ui.components.notification.NotificationDialogViewModel import com.android.skip.ui.inspect.record.InspectRecordButton @@ -66,6 +67,7 @@ class InspectActivity : AppCompatActivity() { putExtra("url", R.string.inspect_function_intro_url) } startActivity(intent) + expandMenuItems = false }) }) } diff --git a/app/src/main/java/com/android/skip/ui/settings/SettingsActivity.kt b/app/src/main/java/com/android/skip/ui/settings/SettingsActivity.kt index b15cc6a2..f1a2c59f 100644 --- a/app/src/main/java/com/android/skip/ui/settings/SettingsActivity.kt +++ b/app/src/main/java/com/android/skip/ui/settings/SettingsActivity.kt @@ -20,6 +20,7 @@ import com.android.skip.data.SyncWorker import com.android.skip.data.config.ConfigViewModel import com.android.skip.ui.components.ResourceIcon import com.android.skip.ui.components.ScaffoldPage +import com.android.skip.ui.components.expandMenuItems import com.android.skip.ui.components.notification.NotificationDialog import com.android.skip.ui.components.notification.NotificationDialogViewModel import com.android.skip.ui.settings.custom.CustomButton @@ -85,6 +86,7 @@ class SettingsActivity : AppCompatActivity() { putExtra("url", R.string.settings_function_intro_url) } startActivity(intent) + expandMenuItems = false }) }) } diff --git a/app/src/main/java/com/android/skip/ui/whitelist/WhiteListActivity.kt b/app/src/main/java/com/android/skip/ui/whitelist/WhiteListActivity.kt index 52257d7f..fa89ca88 100644 --- a/app/src/main/java/com/android/skip/ui/whitelist/WhiteListActivity.kt +++ b/app/src/main/java/com/android/skip/ui/whitelist/WhiteListActivity.kt @@ -12,6 +12,7 @@ import com.android.skip.MyApp import com.android.skip.R import com.android.skip.ui.components.ResourceIcon import com.android.skip.ui.components.ScaffoldPage +import com.android.skip.ui.components.expandMenuItems import com.android.skip.ui.settings.theme.SwitchThemeViewModel import com.android.skip.ui.theme.AppTheme import com.android.skip.ui.webview.WebViewActivity @@ -46,6 +47,7 @@ class WhiteListActivity : AppCompatActivity() { putExtra("url", R.string.whitelist_function_intro_url) } startActivity(intent) + expandMenuItems = false }) ShowSystemButton(showSystemViewModel) })