Skip to content

Android: macOS/Linux build script + docs, edge-to-edge fullscreen, FREQ ENT keypad - #7

Open
tcpreplay-dev wants to merge 3 commits into
worldwidedx:codex/android-tabletfrom
tcpreplay-dev:feat/android-unix-build-fullscreen
Open

tcpreplay-dev wants to merge 3 commits into
worldwidedx:codex/android-tabletfrom
tcpreplay-dev:feat/android-unix-build-fullscreen

Conversation

@tcpreplay-dev

Copy link
Copy Markdown
Collaborator

Adds macOS/Linux Android build tooling, restores edge-to-edge fullscreen, and improves FREQ ENT for touch — all targeted at codex/android-tablet.

Build tooling (macOS/Linux)

  • build-android.sh — the macOS/Linux counterpart to build-android.ps1, mirroring it exactly: same doctor / configure / build / apk / install actions, same build-android-arm64 tree, same QK4_* / ANDROID_* env overrides. It's one method with two host scripts, not a second way to build — build-android.ps1 can't run on macOS, and there was no Mac path before.
  • docs/BUILD_ANDROID_UNIX.md — sibling to docs/BUILD_ANDROID_WINDOWS.md: setup, the Qt Shader Tools (qsb) and Android qtserialport prerequisites, path discovery, and release signing. README and AGENTS.md now point to both scripts.

Edge-to-edge fullscreen

src/main.cpp called plain window.show(), leaving Android's status + navigation bars over the tablet/phone layout and clipping the bottom controls. Restored showFullScreen() on Android (desktop stays windowed; iOS is inherently fullscreen). This regression is present across the current branches.

FREQ ENT: keypad when no keyboard, and respect B SET

The right-panel FREQ ENT opened the inline blue edit field, which needs a hardware keyboard to type into — leaving touch users with no keyboard stuck. Now:

  • No hardware keyboard → the on-screen numeric keypad dialog (the same one the compact layout's A FREQ button uses).
  • Hardware USB/Bluetooth keyboard attached → the inline edit field (Android detects a usable keyboard via Configuration.keyboard / hardKeyboardHidden, which flip live on attach/remove).
  • Both paths honor B SET (act on VFO B when the Sub RX is targeted).

Testing

Built and run on a Samsung tablet against a live K4: fullscreen confirmed, FREQ ENT keypad + B SET targeting confirmed on device.

🤖 Generated with Claude Code

tcpreplay-dev and others added 2 commits September 13, 2026 14:49
…screen

- build-android.sh: macOS/Linux counterpart to build-android.ps1 — same
  doctor/configure/build/apk/install actions and build tree, shell-driven.
- docs/BUILD_ANDROID_UNIX.md: setup, the Qt Shader Tools and Android
  qtserialport prerequisites, path discovery, and release signing. README and
  AGENTS.md now point to it alongside the Windows script (one method, two host
  scripts).
- src/main.cpp: restore Android showFullScreen() so the tablet/phone layout
  runs edge-to-edge. Upstream builds call plain window.show(), leaving the
  status and navigation bars to clip the bottom controls. Desktop stays
  windowed; iOS is inherently fullscreen.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
FREQ ENT on the right panel toggled the inline blue edit field, which needs
a hardware keyboard to type into — leaving touch users with no keyboard
stuck. Now:

- No hardware keyboard: open the on-screen numeric keypad dialog (the same
  one the compact layout's A FREQ button uses).
- Hardware USB/Bluetooth keyboard attached: keep the inline edit field.
- Both paths honor B SET (act on VFO B when the Sub RX is targeted).

Android detects a usable hardware keyboard via Configuration.keyboard /
hardKeyboardHidden (flips live on attach/remove). iOS is treated as
touch-only here; hardware-keyboard detection for iPad (GCKeyboard) lands on
the iOS branch.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@tcpreplay-dev
tcpreplay-dev marked this pull request as draft September 13, 2026 23:27
@tcpreplay-dev
tcpreplay-dev marked this pull request as ready for review September 14, 2026 16:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants