diff options
author | Caian Benedicto <caianbene@gmail.com> | 2021-02-10 21:28:44 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-02-11 01:28:44 +0100 |
commit | f16d7f91f1e0483a55c23382171bb81a679e4d8c (patch) | |
tree | b3c05d649c3cb2451a958931d26c4748a77dc1fa /Ryujinx.HLE/HOS/Applets/SoftwareKeyboard/SoftwareKeyboardDictSet.cs | |
parent | e28a924501b7b94c8b5f42af5b5d44b47e6b82df (diff) |
Improve inline keyboard compatibility (#1959)
* Improve compatibility of the inline keyboard with some games
* Send an empty first text to avoid crashing some games
* Implement SetCustomizedDictionaries and fix SetCustomizeDic
* Expand Bg and Fg –abbreviations in the swkbd applet
* Fix variable names and add comments to software keyboard
Diffstat (limited to 'Ryujinx.HLE/HOS/Applets/SoftwareKeyboard/SoftwareKeyboardDictSet.cs')
-rw-r--r-- | Ryujinx.HLE/HOS/Applets/SoftwareKeyboard/SoftwareKeyboardDictSet.cs | 29 |
1 files changed, 26 insertions, 3 deletions
diff --git a/Ryujinx.HLE/HOS/Applets/SoftwareKeyboard/SoftwareKeyboardDictSet.cs b/Ryujinx.HLE/HOS/Applets/SoftwareKeyboard/SoftwareKeyboardDictSet.cs index 1abdc15b..b4ffdb90 100644 --- a/Ryujinx.HLE/HOS/Applets/SoftwareKeyboard/SoftwareKeyboardDictSet.cs +++ b/Ryujinx.HLE/HOS/Applets/SoftwareKeyboard/SoftwareKeyboardDictSet.cs @@ -2,10 +2,33 @@ namespace Ryujinx.HLE.HOS.Applets.SoftwareKeyboard { - [StructLayout(LayoutKind.Sequential, Pack = 4)] + /// <summary> + /// A structure with custom dictionary words for the software keyboard. + /// </summary> + [StructLayout(LayoutKind.Sequential, Pack = 2)] struct SoftwareKeyboardDictSet { - [MarshalAs(UnmanagedType.ByValArray, SizeConst = 28)] - public uint[] Entries; + /// <summary> + /// A 0x1000-byte aligned buffer position. + /// </summary> + public ulong BufferPosition; + + /// <summary> + /// A 0x1000-byte aligned buffer size. + /// </summary> + public uint BufferSize; + + /// <summary> + /// Array of word entries in the buffer. + /// </summary> + [MarshalAs(UnmanagedType.ByValArray, SizeConst = 24)] + public ulong[] Entries; + + /// <summary> + /// Number of used entries in the Entries field. + /// </summary> + public ushort TotalEntries; + + public ushort Padding1; } } |