Skip to content

UI Accept/Cancel Swap support#693

Open
AL2009man wants to merge 1 commit intofgsfdsfgs:portfrom
AL2009man:FaceButtonLayout-Swap
Open

UI Accept/Cancel Swap support#693
AL2009man wants to merge 1 commit intofgsfdsfgs:portfrom
AL2009man:FaceButtonLayout-Swap

Conversation

@AL2009man
Copy link
Copy Markdown

note: this PR requires #627

What SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS does is that SDL's Controller API will follow on Button Labels, by default: it is set to 1. Consequences: the modern Nintendo Switch layout will be using the Nintendo Layout across Menu Navigation and Gameplay.

     (Y)              (X)
  (X)   (B)        (Y)   (A)
     (A)              (B)

  Standard         Nintendo

Beyond copy-pasting: it results in muscle memory. The initial workaround would be to rebind to the Key Binding section, but I argue it ain't very nice.

Taking a page from yquake2/yquake2@9e07dc2, I took a stab at it myself. the result was originally hacky, but it has been cleaned up to make it easier to prepare for SDL3 Migration down in the line. Do note that it only applies to both "ACCEPT_BUTTON/CK_ACCEPT" and "CANCEL_BUTTON/CK_CANCEL" action,.

While both toggles aren't accessible in-game, both swapAcceptCancelButtons (will only swap Menu Accept/Cancel) is always accessible within pd.ini.

To prepare for fgsfdsfgs#627, this commit added Accept/Cancel Swap for Menu Navigation.

This function only applies when using a Nintendo Switch controller, but it can be forcefully enabled for all Controller Types within `pd.ini`'s `swapAcceptCancelButtons`
@AL2009man AL2009man force-pushed the FaceButtonLayout-Swap branch from 416bc85 to 9edcda5 Compare February 18, 2026 05:17
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