Skip to content

Force the controls editor to landscape - #693

Merged
maxjivi05 merged 1 commit into
WinNative-Emu:mainfrom
maxjivi05:fix/controller-editor
Aug 20, 2026
Merged

Force the controls editor to landscape#693
maxjivi05 merged 1 commit into
WinNative-Emu:mainfrom
maxjivi05:fix/controller-editor

Conversation

@maxjivi05

Copy link
Copy Markdown
Contributor

The PC controls editor was unlocked to fullUser along with the rest of the UI in #687, but its layout was never adapted for portrait. The toolbar is a wrap_content row of six tool buttons that overflows a narrow screen, and element positions are laid out on a grid derived from view width, so a portrait viewport scatters the overlay into unusable vertical gaps. Editing a profile in portrait was not possible.

Pin the activity back to sensorLandscape so the overlay is authored in the orientation the game runs in.

The manifest alone is not enough to keep it that way. Every activity deriving from the FixedFontScale bases calls applyOrientationLock in onCreate, which sets FULL_USER whenever the force-landscape preference is off, overriding the manifest at runtime. Add a LandscapeOnlyActivity marker that the shared helper honours ahead of the preference, so the editor stays landscape even if its manifest entry is loosened again.

XServerDisplayActivity picks its own orientation from the container screen size, and the same helper could stomp a portrait game when the preference is toggled while that session is alive. Mark it SelfManagedOrientationActivity so the shared lock leaves it alone.

The PC controls editor was unlocked to fullUser along with the rest of
the UI in WinNative-Emu#687, but its layout was never adapted for portrait. The
toolbar is a wrap_content row of six tool buttons that overflows a
narrow screen, and element positions are laid out on a grid derived from
view width, so a portrait viewport scatters the overlay into unusable
vertical gaps. Editing a profile in portrait was not possible.

Pin the activity back to sensorLandscape so the overlay is authored in
the orientation the game runs in.

The manifest alone is not enough to keep it that way. Every activity
deriving from the FixedFontScale bases calls applyOrientationLock in
onCreate, which sets FULL_USER whenever the force-landscape preference
is off, overriding the manifest at runtime. Add a LandscapeOnlyActivity
marker that the shared helper honours ahead of the preference, so the
editor stays landscape even if its manifest entry is loosened again.

XServerDisplayActivity picks its own orientation from the container
screen size, and the same helper could stomp a portrait game when the
preference is toggled while that session is alive. Mark it
SelfManagedOrientationActivity so the shared lock leaves it alone.
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@maxjivi05
maxjivi05 merged commit 915c2f0 into WinNative-Emu:main Aug 20, 2026
4 checks passed
@maxjivi05
maxjivi05 deleted the fix/controller-editor branch August 20, 2026 19:02
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.

1 participant