Skip to content

Fix Fragment view leak and edge-to-edge/contrast UI polish issues - #606

Merged
kasnder merged 1 commit into
masterfrom
claude/fix-ui-polish-575-551-560-559-586
Jul 11, 2026
Merged

Fix Fragment view leak and edge-to-edge/contrast UI polish issues#606
kasnder merged 1 commit into
masterfrom
claude/fix-ui-polish-575-551-560-559-586

Conversation

@kasnder

@kasnder kasnder commented Jul 11, 2026

Copy link
Copy Markdown
Member

Five small, independent UI-polish fixes, batched into one PR per the triage in OPEN_ISSUES_TRIAGE.md (WI-7, WI-8). Draft PR for maintainer review.

Checklist

Notes

Test plan

🤖 Generated with Claude Code

Five small, independent fixes triaged in OPEN_ISSUES_TRIAGE.md (WI-7, WI-8):

- #586: TrackersFragment held its SwipeRefreshLayout in a field with no
  onDestroyView(), leaking the View (and Activity context) on every
  details-screen recreation. Null the field in a new onDestroyView().
- #575: The WireGuard/VPN screen's RecyclerView had no bottom window-inset
  handling, so the last row was hidden under the gesture/navigation bar.
  Pad it by the system bar inset in VpnFragment, mirroring the per-view
  WindowInsetsCompat listener pattern already used elsewhere (ActivityLog,
  ActivitySettings, DetailsActivity, ActivityMain).
- #551: The onboarding Next/Previous buttons used a flat 16dp bottom
  margin, so they could be clipped by the nav bar on edge-to-edge
  displays. Consume the bottom system-bar inset as extra margin.
- #560: The "Manage WireGuard profiles" footer link used colorAccent,
  which in night mode (#4db6ac) reads as low-contrast/muted against the
  dark surface. Add a brighter dedicated colorFooterLink for night mode
  and mark the text bold so it reads clearly as a link.
- #559: The traffic-log toggle's custom RocketSwitch.NoIcon style zeroed
  out trackDecorationTint, removing the Material3 track outline and
  leaving the inactive track looking like a bare thumb. Restore the
  outline for that variant only, leaving the rocket-icon main power
  switch (RocketSwitch, used by ActivityMain) untouched. Needs a
  maintainer visual confirmation pass since this could not be
  screenshotted in this environment.

Compile-checked with :app:compileGithubDebugJavaWithJavac (BUILD
SUCCESSFUL, including the Rust wgbridgeBuild step via preBuild).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@kasnder
kasnder marked this pull request as ready for review July 11, 2026 00:43
@kasnder
kasnder merged commit 818badf into master Jul 11, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment