<feed xmlns='http://www.w3.org/2005/Atom'>
<title>eglantine-cirakg/src/input_common/drivers/sdl_driver.cpp, branch nx2</title>
<subtitle>Mirror of github.com/cira0100/Eglantine-public nx2, a fork of Djihads80/Eglantine.</subtitle>
<id>https://git.cirakg.xyz/eglantine-cirakg/atom?h=nx2</id>
<link rel='self' href='https://git.cirakg.xyz/eglantine-cirakg/atom?h=nx2'/>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/'/>
<updated>2026-11-02T20:13:08+00:00</updated>
<entry>
<title>input_common/sdl: only log motion capabilities when they change</title>
<updated>2026-11-02T20:13:08+00:00</updated>
<author>
<name>Dennys Kaluzny Pereira</name>
<email>64793570+protonnegativo@users.noreply.github.com</email>
</author>
<published>2026-11-02T18:05:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=80bfef8e0c5f9d3112424d04062afbe6c3968320'/>
<id>urn:sha1:80bfef8e0c5f9d3112424d04062afbe6c3968320</id>
<content type='text'>
On the Steam Deck the log was flooded with the same gyro message, over
3000 times in a single session.

Motion capabilities are now only logged when they change, and the sensor
restart interval grows exponentially (up to 64x) while the sensor keeps
returning zeroed data.

Tested with Pokemon Pokopia on the Steam Deck: from ~42 messages in 33s
down to 1 for the whole session, controls working normally.

Assisted-by: Claude Opus 5.5 (debugging, code, and drafting this message)
</content>
</entry>
<entry>
<title>refactor: remove unused gamepad button and axis event handling in SDLDriver</title>
<updated>2026-10-31T18:26:04+00:00</updated>
<author>
<name>kraibse</name>
<email>33869366+kraibse@users.noreply.github.com</email>
</author>
<published>2026-10-31T18:15:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=c08864b3fed3b6c70418af0e1305395459e266c8'/>
<id>urn:sha1:c08864b3fed3b6c70418af0e1305395459e266c8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix game list crash, unresponsive macOS menu, and missing SDL gamepad input (#100)</title>
<updated>2026-10-31T13:33:08+00:00</updated>
<author>
<name>QuantumDriftDev</name>
<email>350698041+QuantumDriftDev@users.noreply.github.com</email>
</author>
<published>2026-10-31T13:33:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=d4e2dc88611252748b8dc3bb70baf56fc8bd2256'/>
<id>urn:sha1:d4e2dc88611252748b8dc3bb70baf56fc8bd2256</id>
<content type='text'>
* game_list: fix crash when scanning games by removing nested event processing

Assisted-by: DeepSeek V4 Pro (root cause diagnosis and fix)
Signed-off-by: QuantumDriftDev &lt;350698041+QuantumDriftDev@users.noreply.github.com&gt;

* macos: fix unresponsive application menu by removing the SDL/Qt event loop conflict

Assisted-by: GPT-6.1 Sol (root cause diagnosis and implementation)
Signed-off-by: QuantumDriftDev &lt;350698041+QuantumDriftDev@users.noreply.github.com&gt;

* input_common: handle SDL gamepad button and axis events

Assisted-by: DeepSeek V4 Pro (implementation)
Signed-off-by: QuantumDriftDev &lt;350698041+QuantumDriftDev@users.noreply.github.com&gt;

---------

Signed-off-by: QuantumDriftDev &lt;350698041+QuantumDriftDev@users.noreply.github.com&gt;</content>
</entry>
<entry>
<title>[input/sdl] nuke SDL_Vibration thread (#4299)</title>
<updated>2026-10-14T19:24:35+00:00</updated>
<author>
<name>lizzie</name>
<email>lizzie@eden-emu.dev</email>
</author>
<published>2026-10-14T19:24:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=fb51a1253447a2655382d3cf952c4c470a1d96c6'/>
<id>urn:sha1:fb51a1253447a2655382d3cf952c4c470a1d96c6</id>
<content type='text'>
Signed-off-by: lizzie &lt;lizzie@eden-emu.dev&gt;

- [x] I have read and followed the [Contribution Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/CONTRIBUTING.md#code-contributions).
- [x] I have read and followed the [AI Policy](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/AI.md)
- [x] I have read and followed the [Coding Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/Coding.md) to the best of my ability.

-------------------

isn't it net faster to just...send things, serially?
especially since vibration occurs so non-often...
i dont think it would cause any issues

TEST: if this causes ANY sort of perf regression on games
when the thing vibrates WITH AN SDL CONFIGURED GAMEPAD OR WHATEVER

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4299
Reviewed-by: Maufeat &lt;sahyno1996@gmail.com&gt;
Reviewed-by: CamilleLaVey &lt;camillelavey99@gmail.com&gt;
</content>
</entry>
<entry>
<title>[common] Switch to boost::unordered_flat containers (#4326)</title>
<updated>2026-08-31T00:58:09+00:00</updated>
<author>
<name>crueter</name>
<email>crueter@eden-emu.dev</email>
</author>
<published>2026-08-31T00:58:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=7fda6dde73ab9fa1eab40d43c90720a1d9ba054f'/>
<id>urn:sha1:7fda6dde73ab9fa1eab40d43c90720a1d9ba054f</id>
<content type='text'>
Replaces all instances of ankerl's unordered map/set with boost's
`unordered_flat_*` classes. This uses std::hash since boost::hash is
actually a lot slower.

Also adds an abstraction layer in `Common` so future changes are quicker
and easier.

Other implementation details:
- ankerl provided hash specializations for tuple and pair, so those were
  ported here
- std::erase_if doesn't work on boost, so just used the ADL'd erase_if

This should be about equal or superior performance as unordered_dense for everything except iteration.

Signed-off-by: crueter &lt;crueter@eden-emu.dev&gt;

- [x] I have read and followed the [Contribution Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/CONTRIBUTING.md#code-contributions).
- [x] I have read and followed the [AI Policy](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/AI.md)
- [x] I have read and followed the [Coding Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/Coding.md) to the best of my ability.

-------------------

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4326
Reviewed-by: Lizzie and Samuel &lt;lizzie@eden-emu.dev&gt;
Reviewed-by: MaranBr &lt;maranbr@eden-emu.dev&gt;
</content>
</entry>
<entry>
<title>[input] added option to disable wgi/xinput to prevent SDL GUIDE hack (#4237)</title>
<updated>2026-08-09T00:53:37+00:00</updated>
<author>
<name>xbzk</name>
<email>xbzk@eden-emu.dev</email>
</author>
<published>2026-08-09T00:53:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=dd12266c26f6e1bf0091041d22fbbd68886d0a40'/>
<id>urn:sha1:dd12266c26f6e1bf0091041d22fbbd68886d0a40</id>
<content type='text'>
- [x] I have read and followed the [Contribution Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/CONTRIBUTING.md#code-contributions).
- [x] I have read and followed the [AI Policy](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/AI.md)
- [x] I have read and followed the [Coding Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/Coding.md) to the best of my ability.

-------------------
So, many users hate the fact when they press START+SELECT, an additional HOME event is sent.

That is annoying coz for most users' default hotkey settings, it closes eden when not in game, and when in game it calls a NOT controller responsive prompt about leaving Eden.
There are several games with reasons to press start+select, also there are homebrews which relies on that combo to open internal menus.
Again. That is annoying.

Digging deep i've found that SDL implements something called guide hack: When Start+Select is pressed it sends a synthetic GUIDE(which code equals to HOME).
This was intended for controllers missing the HOME button, but SDL fails to track them all, and misses API to disabling it.

I've figured out a patch to SDL to disable it, but since it would be better to invest on a PR straight into SDL repo, on our side i thought it better to simply add an option to disable WGI (Windows.Gaming.Input) and Xinput, both paths which could lead into the hack enabling.

Setting is available in a remote place no one will bother.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4237
Reviewed-by: Samuel &lt;lizzie@eden-emu.dev&gt;
Reviewed-by: MaranBr &lt;maranbr@eden-emu.dev&gt;
</content>
</entry>
<entry>
<title>[hid_core, input_common] use std::numbers::pi{_v} instead of re-defining (#4160)</title>
<updated>2026-07-07T18:13:33+00:00</updated>
<author>
<name>lizzie</name>
<email>lizzie@eden-emu.dev</email>
</author>
<published>2026-07-07T18:13:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=7b750bf5bb6f8bdd1991c45ea509f93a9c151e04'/>
<id>urn:sha1:7b750bf5bb6f8bdd1991c45ea509f93a9c151e04</id>
<content type='text'>
don't reinvent the wheel, simple as that.

Signed-off-by: lizzie &lt;lizzie@eden-emu.dev&gt;

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4160
Reviewed-by: MaranBr &lt;maranbr@eden-emu.dev&gt;
Reviewed-by: CamilleLaVey &lt;camillelavey99@gmail.com&gt;
</content>
</entry>
<entry>
<title>[input_common] Fix GetButtonMappingForDevice() when joystick doesn't have a gamepad associated with it (#4172)</title>
<updated>2026-07-07T17:54:15+00:00</updated>
<author>
<name>lizzie</name>
<email>lizzie@eden-emu.dev</email>
</author>
<published>2026-07-07T17:54:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=fe1b8ff0ab2d29f607fa58060657bcebfee209bf'/>
<id>urn:sha1:fe1b8ff0ab2d29f607fa58060657bcebfee209bf</id>
<content type='text'>
from PS4 PR - this should help fix the case where a controller
doesn't have an associated gamepad and thus its not automatically
configured.

this should fix that :)

Signed-off-by: lizzie &lt;lizzie@eden-emu.dev&gt;

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4172
Reviewed-by: MaranBr &lt;maranbr@eden-emu.dev&gt;
Reviewed-by: CamilleLaVey &lt;camillelavey99@gmail.com&gt;
</content>
</entry>
<entry>
<title>[externals] Update to SDL3 (#3952)</title>
<updated>2026-05-18T17:07:41+00:00</updated>
<author>
<name>Kaydax</name>
<email>kaydax@kaydax.xyz</email>
</author>
<published>2026-05-18T17:07:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=ad2e1cc554ecd363ae1412b66d537464bba001e7'/>
<id>urn:sha1:ad2e1cc554ecd363ae1412b66d537464bba001e7</id>
<content type='text'>
Since the launch of the steam controller I think it's only best to push towards updating to SDL3 allowing for a wider range of controller support

I went ahead and started on getting it working. Everything here should be functional, I've personally tested it all on Arch Linux. Still untested on windows, so looking for feedback on that

Any feedback and help would be appreciated!

Main changes:
- Bump everything to SDL3
- Handle SDL3 audio and input
- Add steam controller support, including HD Rumble
- Improved battery reporting via the status icon by using real % rather than state alone

Co-authored-by: crueter &lt;crueter@eden-emu.dev&gt;
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3952
Reviewed-by: crueter &lt;crueter@eden-emu.dev&gt;
Reviewed-by: MaranBr &lt;maranbr@eden-emu.dev&gt;
Reviewed-by: Lizzie &lt;lizzie@eden-emu.dev&gt;
</content>
</entry>
<entry>
<title>[common/logging] Simplify logging logic and fix issues when logging before system is created (#3688)</title>
<updated>2026-03-12T17:29:15+00:00</updated>
<author>
<name>lizzie</name>
<email>lizzie@eden-emu.dev</email>
</author>
<published>2026-03-12T17:29:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=395613b01f918b559f0a3b1718c78f81987c49d4'/>
<id>urn:sha1:395613b01f918b559f0a3b1718c78f81987c49d4</id>
<content type='text'>
- our logging code was bigger than spdlog itself, why???? just keep it simple
- fix issues when logging before logging system is even started
- removes the "initialized logging twice" issue
- removes uneeded indirection in file logging
- uses direct formatting instead of jumping hoopla-around the fmt::format() ressult
- code duplication and dead code removal as usual

I did explore dup2() but I think it's not worth the hassle
I did try `fwopen()` but it's better if things are just kept as-is.

there is a lot of noise because I removed a bunch of redundant files on logging and just put everything in one file

now normally this wouldn't be a good idea, however consider: the complexity of logging; it's less than 500 lines... does it really need a whole subsystem?!?!?! ITS JUST LOGGING

Signed-off-by: lizzie &lt;lizzie@eden-emu.dev&gt;
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3688
Reviewed-by: crueter &lt;crueter@eden-emu.dev&gt;
Reviewed-by: DraVee &lt;chimera@dravee.dev&gt;
Reviewed-by: CamilleLaVey &lt;camillelavey99@gmail.com&gt;
Co-authored-by: lizzie &lt;lizzie@eden-emu.dev&gt;
Co-committed-by: lizzie &lt;lizzie@eden-emu.dev&gt;
</content>
</entry>
</feed>
