Skip to content

Initial Android Support - #1565

Draft
williamchange wants to merge 9 commits into
RodZill4:masterfrom
williamchange:android
Draft

williamchange wants to merge 9 commits into
RodZill4:masterfrom
williamchange:android

Conversation

@williamchange

@williamchange williamchange commented Sep 15, 2026 •

Copy link
Copy Markdown
Contributor

The aim of this PR is to add basic touch support and touch-friendly controls to increase usability on mobile, without doing a complete overhaul

pv

CI

  • Added Debug(APK) / Release(APK, AAB) export steps
  • Adds a debug.keystore in the repo only for singing debug builds, for release exports secrets are used (i.e. KEY_ALIAS and KEYSTORE_PASSWORD), the release keystore is expected to be in Base64 under KEYSTORE

Most of the following only applies when ran on an android device, but can still be customized on other platforms(e.g. toggling touch optimizations and the touch panel)

Documentation

Splashscreen

  • Added fade in on start
  • Disabled animated backgrounds due to performance concerns

Flexible Layout

  • Disabled undocking as it doesn't make much sense on a small screen, but maybe this could be made optional via preferences
  • Added touch handles for splits
  • Reduced grip size (gap between panels)
  • Moved status bar to top to maximize screen space

Preferences

  • Added an option to keep screen on
  • Added an option to toggle node actions panel under Touch
  • Added an option to enable touch optimizations(theme, scrollbar widths, split draggers etc.)
  • Added an option to toggle fullscreen for main window (extend to screen edges)
  • Hidden single window mode option
  • Hidden native dialog option

Add Node Popup

  • Support item drag/drop to favorites, drag scrolling/two-finger scroll on list
  • Node items without an icon now display a transparent icon and use text as the drag preview

Library Panel

  • Support item drag/drop to graph from icon, one-finger drag scrolling on list

Easy SDF

  • Added touch supoort to drag/drop items via drag handle and drag scrolling with one-finger

File Dialog

  • Support right click to remove recents/favorites selected item (long press for touch)

Environments

  • Updated built-in HDRI files to use EXR variants(loading exported .hdr at runtime on android didnt work)

Graph Panel

  • Added knife tool button to cut connections (one-finger drag)
  • Added action panel for selected node(s) to perform node titlebar actions(optional, enabled by default on android)

Curve / Lattice / Polygon Editors

  • Increased gizmo sizes

Preview 2D

  • Increased gizmo sizes (touch/grab area)

Misc

@williamchange
williamchange marked this pull request as draft September 15, 2026 11:13
@Calinou

Calinou commented Sep 16, 2026 •

Copy link
Copy Markdown
Contributor

I'm curious how well it works when using the Mobile renderer, given the lower rendering precision. (You can get Mobile to have the same precision as Forward+ by enabling HDR 2D on viewports, but this affects UI rendering due to different alpha handling.)

Adds a debug.keystore in the repo only for singing debug builds, for release exports secrets are used (i.e. KEY_ALIAS and KEYSTORE_PASSWORD), the release keystore is expected to be in Base64 under KEYSTORE

Godot should be able to automatically generate the debug keystore now. Is that not being done when exporting from the command line? If so, we should probably address this on the engine side.

It's not a big deal either way since you've also configured release exports, but for debug-only export workflows, we could perhaps streamline this a little.

@williamchange

Copy link
Copy Markdown
Contributor Author

testing locally on mac Looks like it's signed, I based the ci from GodSVG so I didn't check

Signer #1:

Certificate #1:
Owner: CN=Godot, OU=Godot Engine, O=Stichting Godot, C=NL
Issuer: CN=Godot, OU=Godot Engine, O=Stichting Godot, C=NL

@williamchange
williamchange force-pushed the android branch 4 times, most recently from 1931679 to cd765c4 Compare September 23, 2026 17:28
@williamchange
williamchange force-pushed the android branch 3 times, most recently from d136cc4 to 2b7034f Compare October 1, 2026 14:34
@williamchange williamchange changed the title Android Support Initial Android Support Oct 6, 2026

This branch has not been deployed

No deployments
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