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

[Linux/GTK3] Some gamepad input rework #845

Merged
merged 3 commits into from
Oct 27, 2024

Conversation

thesourcehim
Copy link
Contributor

  1. Unbind gamepad keys by default. The default bindings may fit one gamepad model but work weirdly with another causing issues like [LINUX/GTK3] Whitescreen freeze when pressing square on ds4 #834
  2. Use non-blocking method to obtain gamepad keys/axes during configuration to avoid visible emulator freeze and possible deadlock (see [linux] editing controlls sometimes (often) freezes the emulator #843)

@intra0
Copy link
Contributor

intra0 commented Oct 11, 2024

I can confirm that completely this fixes #843 on my end

@rofl0r
Copy link
Collaborator

rofl0r commented Oct 11, 2024

@thesourcehim does this also supersede #822 ? if not, maybe you can take a look at whether the changes there make sense.

@thesourcehim
Copy link
Contributor Author

In #822 I see changes related to how input config file is loaded and joystick events are processed for the main emu loop, some changes to cli frontend. My PR changes the default mappings for gamepad should config file lack gamepad input config, I didn't touch config file load algorithm. Also reworks input config dialog for GTK3 frontend. So I think these two PRs have different purpose.

@intra0
Copy link
Contributor

intra0 commented Oct 12, 2024

#822 never touches the gtk file, and this commit never touches the cli file
and the only change this pr has to ctrlssdl.cpp is changing the default button values, where #822 makes changes to code in that file and doesn't touch default button values.
@rofl0r these are completely different and unrelated PR's and I dont think there are any changes here that would conflict with #822

@rofl0r
Copy link
Collaborator

rofl0r commented Oct 25, 2024

@thesourcehim would you be able/willing to port this to GTK2 ? that way i could test it and merge if everything's fine.

@thesourcehim
Copy link
Contributor Author

@thesourcehim would you be able/willing to port this to GTK2 ? that way i could test it and merge if everything's fine.

Ok, I can do it.

gtk2 frontend (disabled by default). Fix meson.build dependency for
gtk2.
@thesourcehim
Copy link
Contributor Author

@rofl0r done.

@rofl0r rofl0r merged commit 0a36e96 into TASEmulators:master Oct 27, 2024
9 checks passed
@rofl0r
Copy link
Collaborator

rofl0r commented Oct 27, 2024

thanks, works quite well.
imo the joystick config could be further improved by not having to click on OK after every press, but i suppose that's not that straightforward to do with standard GTK controls.

@rofl0r
Copy link
Collaborator

rofl0r commented Oct 27, 2024

another thing is i'd recommend to use a feature branch for each PR you make, instead of pushing to your master - it doesn't mess up your git clone after some work was merged with changes, and it makes it easier for maintainers to check out your changes, rebase, etc.

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.

3 participants