| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- using System.Runtime.InteropServices;
- namespace Ryujinx.HLE.HOS.Applets.SoftwareKeyboard
- {
- /// <summary>
- /// A structure with appearance configurations for the software keyboard when running in inline mode.
- /// </summary>
- [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]
- struct SoftwareKeyboardAppear
- {
- private const int OkTextLength = 8;
- /// <summary>
- /// Some games send a Calc without intention of showing the keyboard, a
- /// common trend observed is that this field will be != 0 in such cases.
- /// </summary>
- public uint ShouldBeHidden;
- /// <summary>
- /// The string displayed in the Submit button.
- /// </summary>
- [MarshalAs(UnmanagedType.ByValTStr, SizeConst = OkTextLength + 1)]
- public string OkText;
- /// <summary>
- /// The character displayed in the left button of the numeric keyboard.
- /// </summary>
- public char LeftOptionalSymbolKey;
- /// <summary>
- /// The character displayed in the right button of the numeric keyboard.
- /// </summary>
- public char RightOptionalSymbolKey;
- /// <summary>
- /// When set, predictive typing is enabled making use of the system dictionary, and any custom user dictionary.
- /// </summary>
- [MarshalAs(UnmanagedType.I1)]
- public bool PredictionEnabled;
- public byte Empty;
- /// <summary>
- /// Specifies prohibited characters that cannot be input into the text entry area.
- /// </summary>
- public InvalidCharFlags InvalidCharFlag;
- public int Padding1;
- public int Padding2;
- /// <summary>
- /// Indicates the return button is enabled in the keyboard. This allows for input with multiple lines.
- /// </summary>
- [MarshalAs(UnmanagedType.I1)]
- public bool UseNewLine;
- /// <summary>
- /// [10.0.0+] If value is 1 or 2, then keytopAsFloating=0 and footerScalable=1 in Calc.
- /// </summary>
- public byte Unknown1;
- public byte Padding4;
- public byte Padding5;
- /// <summary>
- /// Bitmask 0x1000 of the Calc and DirectionalButtonAssignEnabled in bitmask 0x10000000.
- /// </summary>
- public uint CalcFlags;
- public uint Padding6;
- public uint Padding7;
- public uint Padding8;
- public uint Padding9;
- public uint Padding10;
- public uint Padding11;
- }
- }
|