Glfw: GLFW_PRESS dans le rappel de touche après avoir maintenu la touche pendant un certain temps et l'avoir relâchée

Créé le 7 mars 2017  ·  4Commentaires  ·  Source: glfw/glfw

Linux Ubuntu
Informations sur l'heure de compilation de glfw : 3.1.2 X11 GLX clock_gettime /dev/js XI Xf86vm partagé
version d'exécution de 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);
}

Après avoir appuyé sur n'importe quelle touche, j'obtiens GLFW_PRESS (action) comme prévu, puis après l'avoir maintenue et relâchée, il y a les actions suivantes dans l'ordre donné :
-GLFW_RELEASE
-GLFW_PRESS
-LIBÉRATION GLFW

des actions supplémentaires de presse et de libération provoquent un certain décalage dans ma demande. Je n'ai pas ce problème sur windows et mac os.

Informations sur l'heure de compilation de glfw : 3.3.0 X11 GLX EGL clock_gettime /dev/js partagé
version d'exécution de glfw : 3.3.0

ne fonctionne toujours pas

X11 bug duplicate verified

Tous les 4 commentaires

Peut-être lié à https://github.com/glfw/glfw/issues/747. Pouvez-vous voir si le problème se produit dans le programme de test des événements glfw ?

0000007a à 1 à 12 784 : la touche 0x0041 Scancode 0x0026 (A) (a) (sans mods) a été enfoncée
0000007b à 1 à 12 788 : Caractère 0x00000061 (a) avec modificateurs (sans mods) en entrée
0000007c à 1 à 12 788 : entrée caractère 0x00000061 (a)
0000007d à 1 à 13 284 : la clé 0x0041 Scancode 0x0026 (A) (a) (sans mods) a été répétée
0000007e à 1 à 13 288 : caractère 0x00000061 (a) avec entrée de modificateurs (sans mods)
0000007f à 1 à 13 288 : entrée caractère 0x00000061 (a)
00000080 à 1 à 13 316 : la clé 0x0041 Scancode 0x0026 (A) (a) (sans mods) a été répétée
00000081 à 1 à 13 320 : entrée du caractère 0x00000061 (a) avec modificateurs (sans mods)
00000082 à 1 à 13 320 : entrée caractère 0x00000061 (a)
00000083 à 1 à 13 347 : la clé 0x0041 Scancode 0x0026 (A) (a) (sans mods) a été répétée
00000084 à 1 à 13 352 : Caractère 0x00000061 (a) avec modificateurs (sans mods) en entrée
00000085 à 1 à 13 352 : entrée caractère 0x00000061 (a)
00000086 à 1 à 13 377 : la clé 0x0041 Scancode 0x0026 (A) (a) (sans mods) a été répétée
00000087 à 1 à 13 382 : caractère 0x00000061 (a) avec modificateurs (sans mods) en entrée
00000088 à 1 à 13 382 : entrée caractère 0x00000061 (a)
00000089 à 1 à 13 408 : la clé 0x0041 Scancode 0x0026 (A) (a) (sans mods) a été répétée
0000008a à 1 à 13 413 : caractère 0x00000061 (a) avec entrée de modificateurs (sans mods)
0000008b à 1 à 13 413 : entrée caractère 0x00000061 (a)
0000008c à 1 à 13 439 : la clé 0x0041 Scancode 0x0026 (A) (a) (sans mods) a été répétée
0000008d à 1 à 13 443 : caractère 0x00000061 (a) avec entrée de modificateurs (sans mods)
0000008e à 1 à 13 444 : entrée caractère 0x00000061 (a)
0000008f à 1 à 13 470 : la clé 0x0041 Scancode 0x0026 (A) (a) (sans mods) a été répétée
00000090 à 1 à 13 475 : Caractère 0x00000061 (a) avec modificateurs (sans mods) en entrée
00000091 à 1 à 13 475 : entrée caractère 0x00000061 (a)
00000092 à 1 à 13 501 : la clé 0x0041 Scancode 0x0026 (A) (a) (sans mods) a été répétée
00000093 à 1 à 13 506 : entrée du caractère 0x00000061 (a) avec modificateurs (sans mods)
00000094 à 1 à 13 506 : entrée caractère 0x00000061 (a)
00000095 à 1 à 13 532 : la clé 0x0041 Scancode 0x0026 (A) (a) (sans mods) a été répétée
00000096 à 1 à 13 537 : Caractère 0x00000061 (a) avec modificateurs (sans mods) en entrée
00000097 à 1 à 13 537 : entrée caractère 0x00000061 (a)
00000098 à 1 à 13 565 : la clé 0x0041 Scancode 0x0026 (A) (a) (sans mods) a été répétée
00000099 à 1 à 13 571 : Caractère 0x00000061 (a) avec modificateurs (sans mods) en entrée
0000009a à 1 à 13 571 : entrée caractère 0x00000061 (a)
0000009b à 1 à 13 594 : la clé 0x0041 Scancode 0x0026 (A) (a) (sans mods) a été répétée
0000009c à 1 à 13 596 : Caractère 0x00000061 (a) avec modificateurs (sans mods) en entrée
0000009d à 1 à 13 596 : entrée caractère 0x00000061 (a)
0000009e à 1 à 13 611 : la clé 0x0041 Scancode 0x0026 (A) (a) (sans mods) a été publiée

hmm, cela semble fonctionner correctement dans le test des événements.

Cela devrait être corrigé maintenant avec 4ff66a7818e3eaa5362c828a18220b12f1cd9bc8.

travaux! :)

Cette page vous a été utile?
0 / 5 - 0 notes