-
-
Notifications
You must be signed in to change notification settings - Fork 853
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
desktop: Implement basic IME support #19666
Conversation
27f9244
to
5e6787d
Compare
Can you describe why we need the notification sender mechanism? This seems like a more generic approach compared to what we have done before with e.g. the |
That's a good point. I haven't thought of it this way, and the usage is similar to opening/closing the virtual keyboard. We need to inform the frontend whether we can or cannot accept IME events. Shall I rewrite it to use the |
I think the main advantage of having the notification mechanism is that it's easier to test, we can include expected notifications next to events from |
There might be some stuff we could move to this mechanism. |
On top of player events, which allow sending information from the frontend to the player, player notifications are a way of communicating back from the player to the frontend.
The basic IME support includes displaying popups in roughly the right position, and handling IME commit events without preediting yet.
Implements IME support (currently still limited by the core impl).
------------------------------------------------------------------------------------- azahar.mk 70be7d987e89c001b1f7fc8c72a4e7dd1f181599 # Version: Commits on Mar 21, 2025 ------------------------------------------------------------------------------------- video_core: Fixed emulation window artefacts on OpenGL + Wayland, ---------------------------------------------------- clk.mk 2025-03-20 # Version: Commits on Mar 20, 2025 ---------------------------------------------------- This release corrects: * a potential crash at startup for the emulated Macintosh Plus; and * likely failure of mouse movement to register after window resizing on macOS hosts., ------------------------------------------------------------------------------------------ duckstation.mk 115ba4433c59b750476f0f42286347183c6a96f7 # Version: Commits on Mar 21, 2025 ------------------------------------------------------------------------------------------ CPU/Interpreter: Emulate lo/hi read stall after mult/div Still need to do the recompiler., ----------------------------------------------------------------------------------------- lightspark.mk c14e2532c28bd7a21ee953326a82fa93667c34a3 # Version: Commits on Mar 21, 2025 ----------------------------------------------------------------------------------------- fix OpenGL runtime errors when compiling with ENABLE_GLES2 this improves handling of Depth/Stencil renderbuffers for OpenGL ES., ---------------------------------------------------- pcsx2.mk v2.3.234 # Version: Commits on Mar 20, 2025 ---------------------------------------------------- - [GS/HW: Adjust AA1 draw behavior.](PCSX2/pcsx2#12446) , ------------------------------------------------------------------------------------- ppsspp.mk 112bd904b88b15c2761999630712451fbdd22cd2 # Version: Commits on Mar 21, 2025 ------------------------------------------------------------------------------------- Merge pull request #20141 from hrydgard/digimon-fix PPGe/savedata: Add a bunch of safety checks for png images., ------------------------------------------------------------------------------------ rpcs3.mk cd25e91321829cdb48939b04a7efcf4fe95fadb7 # Version: Commits on Mar 19, 2025 ------------------------------------------------------------------------------------ VS/MSVC: Enable LTCG and GL on release builds, --------------------------------------------------------------- ruffle.mk nightly-2025-03-21 # Version: Commits on Mar 21, 2025 --------------------------------------------------------------- ## What's Changed * web: Reload with canvas when webglcontextlost and 8+ instances exist by @danielhjacobs in ruffle-rs/ruffle#19822 * chore: Update translations by @RuffleBuild in ruffle-rs/ruffle#19866 * desktop: Implement basic IME support by @kjarosh in ruffle-rs/ruffle#19666 **Full Changelog**: ruffle-rs/ruffle@nightly-2025-03-18...nightly-2025-03-21, ---------------------------------------------------- ryujinx.mk 1.3.17 # Version: Commits on Mar 21, 2025 ---------------------------------------------------- # Canary builds: These builds are experimental and may sometimes not work, use [regular builds](https://github.com/Ryubing/Canary-Releases/releases/latest) instead if that sounds like something you don't want to deal with. | Platform | Artifact | |--|--| | Windows 64-bit | [Canary Windows Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.17/ryujinx-canary-1.3.17-win_x64.zip) | | Windows ARM 64-bit | [Canary Windows ARM Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.17/ryujinx-canary-1.3.17-win_arm64.zip) | | Linux 64-bit | [Canary Linux Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.17/ryujinx-canary-1.3.17-linux_x64.tar.gz) | | Linux ARM 64-bit | [Canary Linux ARM Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.17/ryujinx-canary-1.3.17-linux_arm64.tar.gz) | | macOS | [Canary macOS Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.17/ryujinx-canary-1.3.17-macos_universal.app.tar.gz) | **[Full Changelog](https://git.ryujinx.app/ryubing/ryujinx/-/compare/Canary-1.3.16...Canary-1.3.17)** -------------------------------------------------------------------------------------- scummvm.mk 3d4e4649d0af0b328a32377d30a7302b9fa3937a # Version: Commits on Feb 23, 2025 -------------------------------------------------------------------------------------- DISTS: IOS7: icons—fix white corners’ artifacting (cherry picked from commit d9fa69dd04c1a5d4b24176502585313d33e59764), -------------------------------------------------------------------------------------- shadps4.mk 2e54afb295035e601e5b7189cda56441f201397d # Version: Commits on Mar 21, 2025 -------------------------------------------------------------------------------------- fix debug version for cryptopp (#2664), --------------------------------------------------------------------------------------------- solarus-engine.mk a4590aaf4814a7510ebc324fbe7b725301427e8a # Version: Commits on Mar 20, 2025 --------------------------------------------------------------------------------------------- Merge branch 'hhromic/hqx-warning' into 'dev' ----------------------------------------------------------------------------------------- rpi-eeprom.mk 1bd0a1052b2e74d7af04de18d30b5edb12d8a423 # Version: Commits on Mar 21, 2025 ----------------------------------------------------------------------------------------- patch: @@ -40,8 +40,11 @@ multiple: true options: - Raspberry Pi 5 + - Raspberry Pi 500 - Raspberry Pi 4 Mod. B - Raspberry Pi 400 + - Raspberry Pi CM5 + - Raspberry Pi CM5 Lite - Raspberry Pi CM4 - Raspberry Pi CM4 Lite - Raspberry Pi CM4-S ------------------------------------------------------------------------------------ box64.mk 10cbb3c8a90c06fc76cdcffbb0f64bc789d52fdd # Version: Commits on Mar 21, 2025 ------------------------------------------------------------------------------------ [ARM64_DYNAREC] Added 67 66 0F 76/EF opcodes (for #1046), ------------------------------------------------------------------------------------------ devilutionx.mk 176819a072ab828f88e5a692193fa274b29564e5 # Version: Commits on Mar 21, 2025 ------------------------------------------------------------------------------------------ Make RecreateItem() take whole dwBuff flag as argument (#7870), ------------------------------------------------------------------------------------------- jazz2-native.mk eb801abd9cdfdef20cb76750c75b97c4033d0b9a # Version: Commits on Mar 21, 2025 ------------------------------------------------------------------------------------------- Fixed build, ---------------------------------------------------------------------------------- stk.mk 295631c994b664e39485fa0a29de64bf471faaab # Version: Commits on Mar 21, 2025 ---------------------------------------------------------------------------------- Disable 1000 fps and 200% scale nonsense on mobile, ---------------------------------------------------------------------------------------------------- sdl2-gamecontrollerdb.mk 90d258f1b6e15b151ce25620cb52054dcefc4c28 # Version: Commits on Mar 20, 2025 ---------------------------------------------------------------------------------------------------- Microsoft Xbox One 045e:02ea (#836) * Microsoft Xbox One 045e:02ea * Remove CRC --------- Co-authored-by: Mathijs Futselaar <mathijs@matttt.nl> Co-authored-by: Alynne <alviscera@gmail.com>, ---------------------------------------------------------------------------------------- retroarch.mk 5adaaf7851f73182d51dc04dde03f80a9c8f0d17 # Version: Commits on Mar 21, 2025 ---------------------------------------------------------------------------------------- Merge pull request #17717 from pstef/silence-warnings Silence even more warnings, --------------------------------------------------------------------------------------------- vulkan-samples.mk 8547ce1022a19870d3e49075b5b08ca2d11c8773 # Version: Commits on Mar 20, 2025 --------------------------------------------------------------------------------------------- fix: correct typo in README for ray tracing reflection sample (#1291) * fix: correct typo in README for ray tracing reflection sample * fix: update copyright year in README for ray tracing reflection sample, ---------------------------------------------------------------------------------------- doomretro.mk 02cea27754a489bd8e586655899c08639adc40dd # Version: Commits on Mar 21, 2025 ---------------------------------------------------------------------------------------- Allow midtextures to be translucent and have a brightmap Fixes #865, -------------------------------------------------------------------------------------- vkquake.mk 82b81642bd79846f30e02e785d173e321629af37 # Version: Commits on Mar 18, 2025 -------------------------------------------------------------------------------------- Import DP_SV_NODRAWTOCLIENT and DP_SV_DRAWONLYTOCLIENT from QSS (by @NHogweed), ----------------------------------------------------------------------------------------- sonic3-air.mk 5715ab99b280ea27af23d51805fc784d01acfd09 # Version: Commits on Mar 20, 2025 ----------------------------------------------------------------------------------------- Fixes in lemonscript after static code analysis, ----------------------------------------------------------------------------------- tr1x.mk e7809774f448ff69f87976a48485b94ed135bd79 # Version: Commits on Mar 21, 2025 ----------------------------------------------------------------------------------- stats: fix the distance travelled display when over 1000m Resolves #2659., ----------------------------------------------------------------------------------- tr2x.mk e7809774f448ff69f87976a48485b94ed135bd79 # Version: Commits on Mar 21, 2025 ----------------------------------------------------------------------------------- stats: fix the distance travelled display when over 1000m Resolves #2659., -------------------------------------------------------------------------------------------------- libretro-beetle-psx.mk 232bdf101095122cfc4b904b219d5e64a9d36528 # Version: Commits on Mar 21, 2025 -------------------------------------------------------------------------------------------------- Fetch translations & Recreate libretro_core_options_intl.h, ---------------------------------------------------------------------------------------------- libretro-ppsspp.mk 112bd904b88b15c2761999630712451fbdd22cd2 # Version: Commits on Mar 21, 2025 ---------------------------------------------------------------------------------------------- Merge pull request #20141 from hrydgard/digimon-fix PPGe/savedata: Add a bunch of safety checks for png images., ----------------------------------------------------------------------------------------------- libretro-scummvm.mk 3d4e4649d0af0b328a32377d30a7302b9fa3937a # Version: Commits on Feb 23, 2025 ----------------------------------------------------------------------------------------------- DISTS: IOS7: icons—fix white corners’ artifacting (cherry picked from commit d9fa69dd04c1a5d4b24176502585313d33e59764), --------------------------------------------------------------------------------------------- libretro-vba-m.mk 57211ddc7712a58da98bc378e77e13bc6df0ff67 # Version: Commits on Mar 20, 2025 --------------------------------------------------------------------------------------------- translations: transifex pull Signed-off-by: Rafael Kitover <rkitover@gmail.com>,
The basic IME support includes displaying popups in roughly the right position, and handling IME commit events without preediting yet.
Tested manually with Anthy (no automated tests yet due to lack of preediting).
IME preference is also added to the GUI (disabled by default):
