Repository navigation
fix: menu dividers aligned with slots 6|7, labels centred; debug page Info Off by default (#174, #176) - #175
compot-dev wants to merge 4 commits into
Conversation
…ens with Info Off (#174)
|
/review |
Code Review by Qodo
1. Dividers drift from scrolled slots
|
| private void alignPairs(LinearLayout camRow) { | ||
| if (camButtons == null || camButtons.length < 7 || camButtons[6] == null) return; | ||
| int gap = (camButtons[5].getRight() + camButtons[6].getLeft()) / 2; | ||
| int width = gap - dp(1) / 2; |
There was a problem hiding this comment.
1. Dividers drift from scrolled slots 📎 Requirement gap ≡ Correctness
alignPairs() sets the pair-row divider positions from slot coordinates inside camRow without accounting for the slot row’s horizontal scroll offset. When focus scrolls the slot row on a narrow screen, the gap between slots 6 and 7 moves across the popup while both dividers remain fixed in the separate pair rows.
Agent Prompt
## Issue description
The pair-row dividers use positions calculated in slot-row coordinates, but the slot row scrolls independently of the pair rows. After scrolling, the dividers no longer align with the gap between slots 6 and 7.
## Fix Focus Areas
- android/app/src/main/java/com/openipc/decoder/MenuManager.java[188-200]
- android/app/src/main/java/com/openipc/decoder/MenuManager.java[439-450]
## Recommended Fix
Calculate the visible gap position using the horizontal scroll offset and update both divider positions whenever that offset changes, or keep the slot row and pair rows in a shared coordinate system. Keep both pair rows usable when the gap moves outside the viewport.
ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools
… fits; a scrolling row keeps equal halves
|
Qodo: both findings were about a slot row too wide for the menu, which then scrolls. Fixed: the dividers follow the gap between slots 6 and 7 only while the slot row fits the menu. A scrolling row keeps equal halves, so both items stay whole and nothing drifts. |
c5ae7c9 to
de8444f
Compare
That addresses both findings:
The remaining trade-off is that exact slot 6/7 alignment is intentionally unavailable while the slot row is scrollable. |
de8444f to
4b59b6b
Compare
|
Superseded by 178, which includes these commits and replaces the two-item rows with the 8 / 4 / 4 menu grid (#177). |
… fits; a scrolling row keeps equal halves
Version 2.06.
Closes #174
Closes #176