Skip to content

Add IME keyboard layout and panel metrics support#3973

Open
w1naenator wants to merge 9 commits intoshadps4-emu:mainfrom
w1naenator:ime-fixes-again
Open

Add IME keyboard layout and panel metrics support#3973
w1naenator wants to merge 9 commits intoshadps4-emu:mainfrom
w1naenator:ime-fixes-again

Conversation

@w1naenator
Copy link
Contributor

  • Introduced new header and implementation files for IME keyboard layout handling.
  • Added structures for viewport metrics, keyboard grid layout, and drawing parameters.
  • Implemented functions to compute viewport and panel metrics for the IME dialog.
  • Enhanced the IME dialog UI to utilize the new keyboard layout and metrics.
  • Updated input handling to support new keyboard interactions and layout adjustments.
  • Added caret management and text normalization features in the IME dialog state.
  • Improved window positioning logic to accommodate different screen resolutions.

- Introduced new header and implementation files for IME keyboard layout handling.
- Added structures for viewport metrics, keyboard grid layout, and drawing parameters.
- Implemented functions to compute viewport and panel metrics for the IME dialog.
- Enhanced the IME dialog UI to utilize the new keyboard layout and metrics.
- Updated input handling to support new keyboard interactions and layout adjustments.
- Added caret management and text normalization features in the IME dialog state.
- Improved window positioning logic to accommodate different screen resolutions.
@georgemoralis
Copy link
Collaborator

which games uses ime keyboard?

@w1naenator
Copy link
Contributor Author

which games uses ime keyboard?

bloodborne, code vein, nier automata, dragon balls xenoverse 1/2 (was softlocked), diablo III, god eater 2

@DanielSvoboda
Copy link
Member

In the game Divinity: Original Sin 2 - Definitive Edition this PR causes an error even before the game starts.
In the pre-release, it reaches the menu, but after pressing the X button, the animation loops and the menu doesn't open.

vmovdqa64 is an AVX-512 instruction, and my processor doesn't support AVX-512

image

@StevenMiller123
Copy link
Collaborator

StevenMiller123 commented Jan 30, 2026

That sounds like it's executing garbage data, could you compile locally and debug the crash?

@DanielSvoboda
Copy link
Member

The local build works normally. I tested it both by debugging in Visual Studio and by running it through the command line.
However, the version downloaded from GitHub shows this error.
Even when testing only the SDL version from GitHub and the local SDL build, the local one works without any issues, while the GitHub version still presents this problem.
Honestly, I couldn’t figure out what is happening....

The game doesn't show any improvement with this PR. So you can disregard my comment.

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.

4 participants