The header's 'Commit' button (onViewHistory) just switched BranchDetailScreen's pager to page 1 -- the exact same action the top-level 'Commit' tab's own onClick already performs. No path/file info ever flowed through it, so it was never actually file-specific history, just a duplicate shortcut that TASK-031's rename made obvious. Removed the button, its parameter threading, and the now-unused codebrowser_history string. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
85 lines
4.3 KiB
Markdown
85 lines
4.3 KiB
Markdown
# TASK-035: Remove the redundant per-file "커밋" button in the code browser
|
|
|
|
Status: implemented; all required checks pass; live-installed, awaiting the human product owner's confirmation
|
|
Owner: Claude
|
|
Reviewer: Codex
|
|
|
|
## Outcome
|
|
|
|
Live-reported: "현재 보고있는 페이지 우상단에 커밋 버튼은 이제 필요 없지 않나" (the Commit button
|
|
in the top-right of the current page isn't needed anymore, is it). Confirmed correct: the code
|
|
browser's header showed an `OutlinedButton` (originally labeled "히스토리", renamed to "커밋" by
|
|
TASK-031) that just switched `BranchDetailScreen`'s pager to page 1 — the exact same destination
|
|
the top-level "커밋" tab (also renamed by TASK-031) already switches to with one tap, with no
|
|
file-specific filtering or other distinct behavior. Since TASK-031 gave both controls the identical
|
|
label doing the identical thing, the in-content button became pure duplication. Removed it.
|
|
|
|
## Scope
|
|
|
|
- Included: `feature/codebrowser/CodeBrowserScreen.kt` (`BrowserHeader`'s button and the
|
|
`onViewHistory` parameter threaded through `CodeBrowserScreen`), `feature/branchdetail/BranchDetailScreen.kt`
|
|
(the call site, plus a doc-comment word fix from a prior rename), `strings_codebrowser.xml`
|
|
(removed the now-unused `codebrowser_history` string).
|
|
- Excluded: The top-level "커밋" tab and `HistoryScreen` itself are untouched — this removes only
|
|
the duplicate shortcut, not the feature it duplicated. No change to any other button or gesture
|
|
in the code browser.
|
|
|
|
## Design notes
|
|
|
|
- **Confirmed it was truly redundant before removing it, not just probably**: traced
|
|
`onViewHistory` all the way from `BrowserHeader`'s button through `CodeBrowserScreen`'s parameter
|
|
to its one call site in `BranchDetailScreen.kt` —
|
|
`onViewHistory = { scope.launch { pagerState.animateScrollToPage(1) } }` — which is exactly the
|
|
same action the "커밋" `Tab`'s own `onClick` performs a few lines above it. No path/file
|
|
information ever flowed through `onViewHistory`, so this was never actually "view this specific
|
|
file's history," despite once being labeled that way before TASK-031's rename made the
|
|
duplication obvious.
|
|
- **Header simplified along with the removal**: `BrowserHeader`'s title/ref `Column` no longer
|
|
needs to share a `Row` with a trailing button, so it collapsed back to a plain `Column` — one
|
|
less nested layout, not just a deleted button.
|
|
|
|
## Acceptance criteria
|
|
|
|
- [x] The code browser's header (shown across Loading/Directory/File/UnsupportedEntry/Error states)
|
|
no longer shows a "커밋" button.
|
|
- [x] The top-level "커밋" tab in `BranchDetailScreen` is unaffected and remains the only way to
|
|
reach commit history from this screen.
|
|
- [x] No leftover references to `onViewHistory` or the removed `codebrowser_history` string
|
|
resource anywhere in the app.
|
|
- [x] Build, unit tests, and lint pass.
|
|
- [ ] Live confirmation from the human product owner that the header now looks right without it —
|
|
installed on the device but not yet re-viewed in this exact session.
|
|
|
|
## Required checks
|
|
|
|
```text
|
|
./gradlew compileDebugKotlin compileDebugUnitTestKotlin
|
|
./gradlew testDebugUnitTest
|
|
./gradlew assembleDebug lintDebug
|
|
```
|
|
|
|
## Evidence
|
|
|
|
- `CodeBrowserScreen.kt`: `onViewHistory` parameter removed from `CodeBrowserScreen` and
|
|
`BrowserHeader`; the `OutlinedButton` removed; `BrowserHeader`'s title/ref layout simplified from
|
|
a `Row`-wrapped `Column` to a plain `Column`.
|
|
- `BranchDetailScreen.kt`: the `onViewHistory = { ... }` argument removed from the one
|
|
`CodeBrowserScreen(...)` call site; a stale doc-comment reference to "History" (predating
|
|
TASK-031's tab rename) corrected to "Commit".
|
|
- `strings_codebrowser.xml`: `codebrowser_history` string removed (confirmed unused via a
|
|
repository-wide search before deleting it).
|
|
- `./gradlew compileDebugKotlin compileDebugUnitTestKotlin`: BUILD SUCCESSFUL.
|
|
- `./gradlew testDebugUnitTest`: BUILD SUCCESSFUL, all unit tests passing (no test referenced the
|
|
removed button/parameter/string).
|
|
- `./gradlew assembleDebug lintDebug`: BUILD SUCCESSFUL, 0 lint errors.
|
|
- Installed on the human product owner's device over wireless `adb` (`adb install -r`, streamed
|
|
install succeeded); not yet re-viewed live in this exact session.
|
|
|
|
## Known limitations
|
|
|
|
None identified.
|
|
|
|
## Review findings
|
|
|
|
None yet — pending Codex/human review.
|