Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Input: Drop obsolete versions of SDL gamecontrollerdb #38292

Merged

Conversation

akien-mga
Copy link
Member

@akien-mga akien-mga commented Apr 28, 2020

The 204 and 205 are the older, SDL 2.0.4 and 2.0.5 compatible mappings,
but since all new mappings have only been added to the main
gamecontrollerdb.txt which overrides the older entries, it doesn't make
much sense for us to keep the old databases.

We do not support the SDL2 half axes and inverted axes features from
gamecontrollerdb.txt, but this only impacts the specific controllers
which can use those features, the rest are parsed and used properly.

As for godotcontrollerdb.txt, it doesn't make sense for us to maintain
our own custom mappings instead of submitting them upstream. The only
exception is the Javascript and UWP platforms for which no bindings are
available upstream, so we keep those entries.

@Faless @vnen WDYT of the pertinence of the Javascript and UWP mappings respectively? For Javascript, should we see if we could have them upstreamed? (provided that they work)
For UWP, it seems to be a placeholder/default controller which could likely be added directly in the JoypadUWP() constructor?


Related to #38151.

@akien-mga akien-mga added enhancement topic:input cherrypick:3.x Considered for cherry-picking into a future 3.x release labels Apr 28, 2020
@akien-mga akien-mga added this to the 4.0 milestone Apr 28, 2020
@akien-mga akien-mga requested a review from vnen as a code owner April 28, 2020 12:49
@akien-mga akien-mga force-pushed the input-drop-obsolete-controllerdbs branch from 4133db7 to 81600ce Compare April 28, 2020 12:51
The 204 and 205 are the older, SDL 2.0.4 and 2.0.5 compatible mappings,
but since all new mappings have only been added to the main
gamecontrollerdb.txt which overrides the older entries, it doesn't make
much sense for us to keep the old databases.

We do not support the SDL2 half axes and inverted axes features from
gamecontrollerdb.txt, but this only impacts the specific controllers
which can use those features, the rest are parsed and used properly.

As for godotcontrollerdb.txt, it doesn't make sense for us to maintain
our own custom mappings instead of submitting them upstream. The only
exception is the Javascript and UWP platforms for which no bindings are
available upstream, so we keep those entries.
@akien-mga akien-mga force-pushed the input-drop-obsolete-controllerdbs branch from 81600ce to 510e834 Compare April 28, 2020 12:51
@akien-mga
Copy link
Member Author

Note: Some of the removed mappings might have had a uuid which is not in gamecontrollerdb.txt, and thus some controllers might stop working.

If you own such a controller, please see https://github.com/gabomdq/SDL_GameControllerDB for instructions on how to generate the mappings for your controller and make a PR there.

@akien-mga akien-mga merged commit b9e58ed into godotengine:master Apr 28, 2020
@akien-mga akien-mga deleted the input-drop-obsolete-controllerdbs branch April 28, 2020 13:44
@akien-mga
Copy link
Member Author

Cherry-picked for 3.2.2.

@akien-mga akien-mga removed the cherrypick:3.x Considered for cherry-picking into a future 3.x release label Apr 29, 2020
akien-mga added a commit to akien-mga/godot that referenced this pull request May 11, 2020
Removed by mistake in godotengine#38292 like the Windows `__XINPUT_DEVICE__`,
this magic binding is referenced directly in our code.
akien-mga added a commit to akien-mga/godot that referenced this pull request May 11, 2020
Removed by mistake in godotengine#38292 like the Windows `__XINPUT_DEVICE__`,
this magic binding is referenced directly in our code.

(cherry picked from commit 1c61b31)
kappa54m pushed a commit to kappa54m/godot that referenced this pull request May 16, 2020
Removed by mistake in godotengine#38292 like the Windows `__XINPUT_DEVICE__`,
this magic binding is referenced directly in our code.
huhund pushed a commit to huhund/godot that referenced this pull request Nov 10, 2020
Removed by mistake in godotengine#38292 like the Windows `__XINPUT_DEVICE__`,
this magic binding is referenced directly in our code.

(cherry picked from commit 1c61b31)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant