Glfw: GLFW_PRESS Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ Π²Ρ‹Π·ΠΎΠ²Π΅ клавиши послС удСрТивания клавиши Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ Π΅Π΅ отпускания

Π‘ΠΎΠ·Π΄Π°Π½Π½Ρ‹ΠΉ Π½Π° 7 ΠΌΠ°Ρ€. 2017  Β·  4ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ  Β·  Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: glfw/glfw

Linux Ubuntu
Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ компиляции glfw: 3.1.2 X11 GLX clock_gettime / dev / js XI Xf86vm shared
вСрсия Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния glfw: 3.1.2

void App::key_callback(GLFWwindow*, int key, int, int action, int)
{
    if(action == GLFW_PRESS)
        keys.pressEvent(key);
    else if(action == GLFW_RELEASE)
        keys.releaseEvent(key);
}

ПослС наТатия любой клавиши я ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽ GLFW_PRESS (дСйствиС), ΠΊΠ°ΠΊ ΠΈ оТидалось, Π° Π·Π°Ρ‚Π΅ΠΌ, удСрТивая Π΅Π³ΠΎ ΠΈ отпуская, Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΌ порядкС Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия:
-GLFW_RELEASE
-GLFW_PRESS
-Π Π•Π›Π˜Π— GLFW

Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ дСйствия ΠΏΠΎ Π½Π°ΠΆΠ°Ρ‚ΠΈΡŽ ΠΈ ΠΎΡ‚ΠΏΡƒΡΠΊΠ°Π½ΠΈΡŽ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ отставаниС Π² ΠΌΠΎΠ΅ΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ. Π£ мСня Π½Π΅Ρ‚ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π² Windows ΠΈ Mac OS.

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ компиляции glfw: 3.3.0 X11 GLX EGL clock_gettime / dev / js shared
вСрсия Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния glfw: 3.3.0

всС Π΅Ρ‰Π΅ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚

X11 bug duplicate verified

ВсС 4 ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, связано с https://github.com/glfw/glfw/issues/747. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π»ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ тСстирования событий glfw?

0000007a Π½Π° 1 ΠΏΡ€ΠΈ 12,784: Π±Ρ‹Π»Π° Π½Π°ΠΆΠ°Ρ‚Π° клавиша 0x0041 Scancode 0x0026 (A) (a) (Π±Π΅Π· ΠΌΠΎΠ΄ΠΎΠ²)
0000007b Π½Π° 1 ΠΏΡ€ΠΈ 12788: символ 0x00000061 (a) с Π²Π²ΠΎΠ΄ΠΎΠΌ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² (Π±Π΅Π· ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΉ)
0000007c на 1 в 12,788: ввод символа 0x00000061 (a)
0000007d Π½Π° 1 Π² 13,284: ΠΊΠ»ΡŽΡ‡ 0x0041 Scancode 0x0026 (A) (a) (Π±Π΅Π· ΠΌΠΎΠ΄ΠΎΠ²) Π±Ρ‹Π» ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½
0000007e Π½Π° 1 ΠΏΡ€ΠΈ 13 288: символ 0x00000061 (a) с Π²Π²ΠΎΠ΄ΠΎΠΌ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² (Π±Π΅Π· ΠΌΠΎΠ΄ΠΎΠ²)
0000007f на 1 в 13 288: ввод символа 0x00000061 (a)
00000080 Π½Π° 1 Π² 13,316: ΠΊΠ»ΡŽΡ‡ 0x0041 Scancode 0x0026 (A) (a) (Π±Π΅Π· ΠΌΠΎΠ΄ΠΎΠ²) Π±Ρ‹Π» ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½
ΠžΡ‚ 00000081 Π΄ΠΎ 1 Π½Π° 13,320: символ 0x00000061 (a) с Π²Π²ΠΎΠ΄ΠΎΠΌ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² (Π±Π΅Π· ΠΌΠΎΠ΄ΠΎΠ²)
00000082 Π½Π° 1 ΠΏΡ€ΠΈ 13,320: Π²Π²ΠΎΠ΄ символа 0x00000061 (a)
00000083 Π½Π° 1 Π² 13347: ΠΊΠ»ΡŽΡ‡ 0x0041 Scancode 0x0026 (A) (a) (Π±Π΅Π· ΠΌΠΎΠ΄ΠΎΠ²) Π±Ρ‹Π» ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½
ΠžΡ‚ 00000084 Π΄ΠΎ 1 Π² 13,352: символ 0x00000061 (a) с Π²Π²ΠΎΠ΄ΠΎΠΌ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² (Π±Π΅Π· ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΉ)
00000085 на 1 в 13,352: ввод символа 0x00000061 (a)
00000086 Π½Π° 1 Π² 13,377: ΠΊΠ»ΡŽΡ‡ 0x0041 Scancode 0x0026 (A) (a) (Π±Π΅Π· ΠΌΠΎΠ΄ΠΎΠ²) Π±Ρ‹Π» ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½
ΠžΡ‚ 00000087 Π΄ΠΎ 1 Π² 13,382: символ 0x00000061 (a) с Π²Π²ΠΎΠ΄ΠΎΠΌ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² (Π±Π΅Π· ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΉ)
00000088 на 1 в 13,382: ввод символа 0x00000061 (a)
00000089 Π½Π° 1 Π² 13,408: ΠΊΠ»ΡŽΡ‡ 0x0041 Scancode 0x0026 (A) (a) (Π±Π΅Π· ΠΌΠΎΠ΄ΠΎΠ²) Π±Ρ‹Π» ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½
ΠžΡ‚ 0000008a Π΄ΠΎ 1 Π½Π° 13,413: символ 0x00000061 (a) с Π²Π²ΠΎΠ΄ΠΎΠΌ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² (Π±Π΅Π· ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΉ)
0000008b на 1 в 13,413: ввод символа 0x00000061 (a)
0000008c Π½Π° 1 Π½Π° 13 439: ΠΊΠ»ΡŽΡ‡ 0x0041 Scancode 0x0026 (A) (a) (Π±Π΅Π· ΠΌΠΎΠ΄ΠΎΠ²) Π±Ρ‹Π» ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½
0000008d Π½Π° 1 ΠΏΡ€ΠΈ 13 443: символ 0x00000061 (a) с Π²Π²ΠΎΠ΄ΠΎΠΌ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² (Π±Π΅Π· ΠΌΠΎΠ΄ΠΎΠ²)
0000008e на 1 в 13,444: ввод символа 0x00000061 (a)
0000008f Π½Π° 1 Π² 13,470: ΠΊΠ»ΡŽΡ‡ 0x0041 Scancode 0x0026 (A) (a) (Π±Π΅Π· ΠΌΠΎΠ΄ΠΎΠ²) Π±Ρ‹Π» ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½
ΠžΡ‚ 00000090 Π΄ΠΎ 1 Π½Π° 13,475: символ 0x00000061 (a) с Π²Π²ΠΎΠ΄ΠΎΠΌ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² (Π±Π΅Π· ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ²)
00000091 до 1 на 13 475: ввод символа 0x00000061 (a)
00000092 Π½Π° 1 Π² 13,501: ΠΊΠ»ΡŽΡ‡ 0x0041 Scancode 0x0026 (A) (a) (Π±Π΅Π· ΠΌΠΎΠ΄ΠΎΠ²) Π±Ρ‹Π» ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½
ΠžΡ‚ 00000093 Π΄ΠΎ 1 Π² 13,506: символ 0x00000061 (a) с Π²Π²ΠΎΠ΄ΠΎΠΌ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² (Π±Π΅Π· ΠΌΠΎΠ΄ΠΎΠ²)
00000094 до 1 в 13,506: ввод символа 0x00000061 (a)
00000095 Π½Π° 1 Π² 13,532: ΠΊΠ»ΡŽΡ‡ 0x0041 Scancode 0x0026 (A) (a) (Π±Π΅Π· ΠΌΠΎΠ΄ΠΎΠ²) Π±Ρ‹Π» ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½
ΠžΡ‚ 00000096 Π΄ΠΎ 1 Π² 13,537: символ 0x00000061 (a) с Π²Π²ΠΎΠ΄ΠΎΠΌ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² (Π±Π΅Π· ΠΌΠΎΠ΄ΠΎΠ²)
00000097 до 1 в 13,537: ввод символа 0x00000061 (a)
00000098 Π½Π° 1 Π² 13,565: ΠΊΠ»ΡŽΡ‡ 0x0041 Scancode 0x0026 (A) (a) (Π±Π΅Π· ΠΌΠΎΠ΄ΠΎΠ²) Π±Ρ‹Π» ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½
ΠžΡ‚ 00000099 Π΄ΠΎ 1 Π½Π° 13,571: символ 0x00000061 (a) с Π²Π²ΠΎΠ΄ΠΎΠΌ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² (Π±Π΅Π· ΠΌΠΎΠ΄ΠΎΠ²)
0000009a на 1 в 13,571: ввод символа 0x00000061 (a)
0000009b Π½Π° 1 Π² 13,594: ΠΊΠ»ΡŽΡ‡ 0x0041 Scancode 0x0026 (A) (a) (Π±Π΅Π· ΠΌΠΎΠ΄ΠΎΠ²) Π±Ρ‹Π» ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½
0000009c Π½Π° 1 Π½Π° 13 596: символ 0x00000061 (a) с ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°ΠΌΠΈ (Π±Π΅Π· ΠΌΠΎΠ΄ΠΎΠ²) Π²Π²ΠΎΠ΄Π°
0000009d на 1 на 13 596: ввод символа 0x00000061 (a)
0000009e Π½Π° 1 Π² 13,611: Π±Ρ‹Π» Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½ ΠΊΠ»ΡŽΡ‡ 0x0041 Scancode 0x0026 (A) (a) (Π±Π΅Π· ΠΌΠΎΠ΄ΠΎΠ²)

Ρ…ΠΌ, ΠΏΠΎΡ…ΠΎΠΆΠ΅, ΠΎΠ½ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² тСстС событий.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ это Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ исправлСно с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ 4ff66a7818e3eaa5362c828a18220b12f1cd9bc8.

Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚! :)

Π‘Ρ‹Π»Π° Π»ΠΈ эта страница ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ?
0 / 5 - 0 Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³ΠΈ