feat(settings): show idb / idb_companion setup status in health check - #150
Open
kitakkun wants to merge 1 commit into
Open
feat(settings): show idb / idb_companion setup status in health check#150kitakkun wants to merge 1 commit into
kitakkun wants to merge 1 commit into
Conversation
iOS simulator input control (e.g. the Device Mirror plugin) depends on idb, which is a two-part install (pip client + brew companion) that is easy to get half-done. Surface both executables in the health check section alongside the existing ADB row, extracting the shared row layout into ToolPathRow.
Contributor
There was a problem hiding this comment.
Pull request overview
Adds iOS tooling visibility to the host app’s Settings → General “Health Check” section, so users can verify idb and idb_companion installation status (needed for upcoming iOS simulator input control features).
Changes:
- Extend diagnostics/UI state to include
idbandidb_companionexecutable paths. - Add
IdbUtilfor locatingidb/idb_companionvia common install locations +PATH. - Refactor the health-check UI into a reusable
ToolPathRowand add new localized strings (EN/JA).
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| jetwhale-host/feature/settings/src/main/kotlin/com/kitakkun/jetwhale/host/settings/general/GeneralSettingsScreenUiState.kt | Adds idbPath / idbCompanionPath to UI state. |
| jetwhale-host/feature/settings/src/main/kotlin/com/kitakkun/jetwhale/host/settings/general/GeneralSettingsScreenPresenter.kt | Wires new diagnostics fields into UI state. |
| jetwhale-host/feature/settings/src/main/kotlin/com/kitakkun/jetwhale/host/settings/general/GeneralSettingsScreen.kt | Renders 3 health-check rows via new ToolPathRow composable. |
| jetwhale-host/feature/settings/src/main/composeResources/values/strings.xml | Adds English strings for idb/idb_companion rows. |
| jetwhale-host/feature/settings/src/main/composeResources/values-ja/strings.xml | Adds Japanese strings for idb/idb_companion rows. |
| jetwhale-host/core/model/src/main/kotlin/com/kitakkun/jetwhale/host/model/DebuggingToolsDiagnostics.kt | Extends diagnostics model with idb/idb_companion paths. |
| jetwhale-host/core/data/src/main/kotlin/com/kitakkun/jetwhale/host/data/util/IdbUtil.kt | Implements executable discovery for idb and idb_companion. |
| jetwhale-host/core/data/src/main/kotlin/com/kitakkun/jetwhale/host/data/settings/DefaultDiagnosticsQueryKey.kt | Populates the new diagnostics fields using IdbUtil. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+5
to
+7
| // Empty when the tool is not installed. | ||
| val idbPath: String, | ||
| val idbCompanionPath: String, |
Comment on lines
+159
to
+163
| ToolPathRow( | ||
| label = stringResource(Res.string.adb_executable_path), | ||
| path = uiState.adbPath, | ||
| unavailableText = stringResource(Res.string.adb_unavailable), | ||
| ) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds idb and idb_companion detection to the General settings Health Check section, alongside the existing ADB row. iOS simulator input control (used by the upcoming Device Mirror plugin, #149) requires both the pip-installed
idbclient and the brew-installedidb_companiondaemon — a two-part setup that is easy to get half-done, so each is shown as its own row.DebuggingToolsDiagnosticsgainsidbPath/idbCompanionPath(empty = not installed), fetched via a newIdbUtil.kt(well-known locations + PATH lookup).ToolPathRowcomposable instead of duplicating it three times.idbkept as-is per naming convention).Test plan
:jetwhale-host:feature:settings:build,:jetwhale-host:core:data:build,:jetwhale-host:app:compileKotlin, andspotlessCheckpass