浏览代码

Make Escape exit threads test

Camilla Berglund 9 年之前
父节点
当前提交
ef15735161
共有 1 个文件被更改,包括 8 次插入0 次删除
  1. 8 0
      tests/threads.c

+ 8 - 0
tests/threads.c

@@ -52,6 +52,12 @@ static void error_callback(int error, const char* description)
     fprintf(stderr, "Error: %s\n", description);
 }
 
+static void key_callback(GLFWwindow* window, int key, int scancode, int action, int mods)
+{
+    if (key == GLFW_KEY_ESCAPE && action == GLFW_PRESS)
+        glfwSetWindowShouldClose(window, GLFW_TRUE);
+}
+
 static int thread_main(void* data)
 {
     const Thread* thread = data;
@@ -101,6 +107,8 @@ int main(void)
             exit(EXIT_FAILURE);
         }
 
+        glfwSetKeyCallback(threads[i].window, key_callback);
+
         glfwSetWindowPos(threads[i].window, 200 + 250 * i, 200);
         glfwShowWindow(threads[i].window);
     }