MUGMARP
All projects
/projects/termux-x11-floating·systems· 2025
experimental

Termux:X11 — Floating Keyboard Button

Feature branch on Termux:X11. Adds a floating button that surfaces the soft keyboard on demand, useful when running Linux GUI apps on Android.

Overview

A contribution-style feature branch on top of the Termux:X11 codebase. Termux:X11 is the X11 server that lets you run full Linux GUI apps from Termux on Android. This branch adds a floating action button that, when tapped, brings up the soft keyboard — useful when the X11 client has no native way to summon it, common with terminal-based apps or minimal WMs. Written in C, building with the Android NDK alongside the existing Termux:X11 toolchain.

Highlights

  • Dives into low-level Android + X11 internals
  • Builds on the official Termux:X11 codebase, not a fork
  • Solves a real UX problem when running Linux GUI apps on phones

Technical architecture

  • Hook: a small X11 event listener detects focus changes to input fields.
  • Trigger: on focus, post a request to the Android UI layer to surface a floating button.
  • Button: a system-level overlay (similar pattern to a chat-head) that, on tap, programmatically invokes the soft input.
  • Build: integrated with the existing Termux:X11 NDK build — no new toolchain.
Stack
CAndroid NDKX11Termux
Statusexperimental
Year2025