Allow adding keys with Unicode names on macOS
This commit is contained in:
parent
3f926dfd8b
commit
f05eefcc20
@ -288,10 +288,16 @@ static int translateKey(unsigned int key, bool apply_keymap)
|
||||
{
|
||||
if (apply_keymap) {
|
||||
// Look for the effective key name after applying any keyboard layouts/mappings
|
||||
const char *name = _glfwPlatformGetScancodeName(key);
|
||||
if (name && name[1] == 0) {
|
||||
// Single letter key name
|
||||
switch(name[0]) {
|
||||
const char *name_chars = _glfwPlatformGetScancodeName(key);
|
||||
uint32_t name = 0;
|
||||
for (int i = 0; i < 4; i++) {
|
||||
if (!name_chars[i]) break;
|
||||
name <<= 8;
|
||||
name |= (uint8_t)name_chars[i];
|
||||
}
|
||||
if (name) {
|
||||
// Key name
|
||||
switch(name) {
|
||||
#define K(ch, name) case ch: return GLFW_KEY_##name
|
||||
K('A', A); K('a', A);
|
||||
K('B', B); K('b', B);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user