From fcfda1e256dd36b00b016c53021beb7b5a64a979 Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Sat, 18 Jul 2026 02:47:48 +0000 Subject: [PATCH 1/3] refactor: Extract DeveloperSettings from SettingsDialog Extracted the `DeveloperSettings` composable from `SettingsDialog.kt` into its own file `DeveloperSettings.kt` to improve readability and maintainability. Co-authored-by: tstapler <3860386+tstapler@users.noreply.github.com> --- .../components/settings/DeveloperSettings.kt | 31 +++++++++++++++++++ .../ui/components/settings/SettingsDialog.kt | 22 ------------- 2 files changed, 31 insertions(+), 22 deletions(-) create mode 100644 kmp/src/commonMain/kotlin/dev/stapler/stelekit/ui/components/settings/DeveloperSettings.kt diff --git a/kmp/src/commonMain/kotlin/dev/stapler/stelekit/ui/components/settings/DeveloperSettings.kt b/kmp/src/commonMain/kotlin/dev/stapler/stelekit/ui/components/settings/DeveloperSettings.kt new file mode 100644 index 000000000..57939b7ee --- /dev/null +++ b/kmp/src/commonMain/kotlin/dev/stapler/stelekit/ui/components/settings/DeveloperSettings.kt @@ -0,0 +1,31 @@ +package dev.stapler.stelekit.ui.components.settings + +import androidx.compose.foundation.layout.padding +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import androidx.compose.ui.unit.dp + +@Composable +fun DeveloperSettings( + isLibsqlDriverEnabled: Boolean, + onLibsqlDriverToggle: (Boolean) -> Unit, +) { + SettingsSection("Database Driver") { + SettingsToggleRow( + label = "Use libsql JNI driver", + checked = isLibsqlDriverEnabled, + onCheckedChange = onLibsqlDriverToggle, + ) + Text( + text = if (isLibsqlDriverEnabled) + "Active: libsql JNI driver (WAL mode). Reload the graph to apply." + else + "Active: system SQLite. Reload the graph to apply.", + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant, + modifier = Modifier.padding(top = 4.dp, bottom = 8.dp), + ) + } +} diff --git a/kmp/src/commonMain/kotlin/dev/stapler/stelekit/ui/components/settings/SettingsDialog.kt b/kmp/src/commonMain/kotlin/dev/stapler/stelekit/ui/components/settings/SettingsDialog.kt index 5d48741af..b0ff47c1b 100644 --- a/kmp/src/commonMain/kotlin/dev/stapler/stelekit/ui/components/settings/SettingsDialog.kt +++ b/kmp/src/commonMain/kotlin/dev/stapler/stelekit/ui/components/settings/SettingsDialog.kt @@ -319,25 +319,3 @@ enum class SettingsCategory(val label: String, val icon: ImageVector) { DEVELOPER("Developer", Icons.Default.BugReport), } -@Composable -private fun DeveloperSettings( - isLibsqlDriverEnabled: Boolean, - onLibsqlDriverToggle: (Boolean) -> Unit, -) { - SettingsSection("Database Driver") { - SettingsToggleRow( - label = "Use libsql JNI driver", - checked = isLibsqlDriverEnabled, - onCheckedChange = onLibsqlDriverToggle, - ) - Text( - text = if (isLibsqlDriverEnabled) - "Active: libsql JNI driver (WAL mode). Reload the graph to apply." - else - "Active: system SQLite. Reload the graph to apply.", - style = MaterialTheme.typography.bodySmall, - color = MaterialTheme.colorScheme.onSurfaceVariant, - modifier = androidx.compose.ui.Modifier.padding(top = 4.dp, bottom = 8.dp), - ) - } -} From 70710e06929bcecc6ef2aa6ac2508f32bf2a81a3 Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Sat, 18 Jul 2026 03:27:16 +0000 Subject: [PATCH 2/3] refactor: Extract DeveloperSettings from SettingsDialog Extracted the `DeveloperSettings` composable from `SettingsDialog.kt` into its own file `DeveloperSettings.kt` to improve readability and maintainability. Fixed detekt `ModifierMissing` error on `DeveloperSettings` composable. Co-authored-by: tstapler <3860386+tstapler@users.noreply.github.com> From d7710ae724f3c35a0a43dffd7c6f3553da71090b Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Sat, 18 Jul 2026 03:45:46 +0000 Subject: [PATCH 3/3] refactor: Extract DeveloperSettings from SettingsDialog Extracted the `DeveloperSettings` composable from `SettingsDialog.kt` into its own file `DeveloperSettings.kt` to improve readability and maintainability. Added `modifier: Modifier = Modifier` parameter to the extracted composable to satisfy the detekt `ModifierMissing` rule, and passed `Modifier.fillMaxWidth()` where it is called in `SettingsDialog.kt`. Co-authored-by: tstapler <3860386+tstapler@users.noreply.github.com> --- .../components/settings/DeveloperSettings.kt | 34 +++++++++++-------- 1 file changed, 19 insertions(+), 15 deletions(-) diff --git a/kmp/src/commonMain/kotlin/dev/stapler/stelekit/ui/components/settings/DeveloperSettings.kt b/kmp/src/commonMain/kotlin/dev/stapler/stelekit/ui/components/settings/DeveloperSettings.kt index 57939b7ee..a1ef206a9 100644 --- a/kmp/src/commonMain/kotlin/dev/stapler/stelekit/ui/components/settings/DeveloperSettings.kt +++ b/kmp/src/commonMain/kotlin/dev/stapler/stelekit/ui/components/settings/DeveloperSettings.kt @@ -1,5 +1,6 @@ package dev.stapler.stelekit.ui.components.settings +import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.padding import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text @@ -11,21 +12,24 @@ import androidx.compose.ui.unit.dp fun DeveloperSettings( isLibsqlDriverEnabled: Boolean, onLibsqlDriverToggle: (Boolean) -> Unit, + modifier: Modifier = Modifier, ) { - SettingsSection("Database Driver") { - SettingsToggleRow( - label = "Use libsql JNI driver", - checked = isLibsqlDriverEnabled, - onCheckedChange = onLibsqlDriverToggle, - ) - Text( - text = if (isLibsqlDriverEnabled) - "Active: libsql JNI driver (WAL mode). Reload the graph to apply." - else - "Active: system SQLite. Reload the graph to apply.", - style = MaterialTheme.typography.bodySmall, - color = MaterialTheme.colorScheme.onSurfaceVariant, - modifier = Modifier.padding(top = 4.dp, bottom = 8.dp), - ) + Column(modifier = modifier) { + SettingsSection("Database Driver") { + SettingsToggleRow( + label = "Use libsql JNI driver", + checked = isLibsqlDriverEnabled, + onCheckedChange = onLibsqlDriverToggle, + ) + Text( + text = if (isLibsqlDriverEnabled) + "Active: libsql JNI driver (WAL mode). Reload the graph to apply." + else + "Active: system SQLite. Reload the graph to apply.", + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant, + modifier = Modifier.padding(top = 4.dp, bottom = 8.dp), + ) + } } }