summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt3
-rw-r--r--src/CMakeLists.txt2
-rw-r--r--src/zoom.cpp5
3 files changed, 6 insertions, 4 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index af00fd4..eeeb3ee 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -9,10 +9,11 @@ IF (NOT OPENGL_FOUND)
MESSAGE(FATAL_ERROR "Could not find OpenGL")
ENDIF (NOT OPENGL_FOUND)
+find_package(X11 REQUIRED)
find_package(GLEW REQUIRED)
find_package(GLPng REQUIRED)
find_package(LibXml2 REQUIRED)
-include_directories(${Boost_INCLUDE_DIR} ${OPENGL_INCLUDE_DIR} ${GLEW_INCLUDE_DIR} ${GLPNG_INCLUDE_DIR} ${LIBXML2_INCLUDE_DIR})
+include_directories(${Boost_INCLUDE_DIR} ${OPENGL_INCLUDE_DIR} ${GLEW_INCLUDE_DIR} ${GLPNG_INCLUDE_DIR} ${LIBXML2_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH} ${X11_Xi_INCLUDE_PATH})
add_subdirectory(src)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 8718ba7..d5fefb2 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -14,4 +14,4 @@ add_executable(zoom
TriangleRecord.h
zoom.cpp
)
-target_link_libraries(zoom ${Boost_LIBRARIES} ${OPENGL_gl_LIBRARY} ${GLEW_LIBRARY} ${GLPNG_LIBRARY} ${LIBXML2_LIBRARIES})
+target_link_libraries(zoom ${Boost_LIBRARIES} ${OPENGL_gl_LIBRARY} ${GLEW_LIBRARY} ${GLPNG_LIBRARY} ${LIBXML2_LIBRARIES} ${X11_LIBRARIES} ${X11_Xi_LIB})
diff --git a/src/zoom.cpp b/src/zoom.cpp
index 84c303c..78e5389 100644
--- a/src/zoom.cpp
+++ b/src/zoom.cpp
@@ -26,6 +26,7 @@
#else
#include <iostream>
#include <X11/X.h>
+#include <X11/XKBlib.h>
#include <X11/extensions/XInput2.h>
#include <GL/glx.h>
#include <sys/time.h>
@@ -390,7 +391,7 @@ int main() {
break;
case KeyPress:
- switch(XKeycodeToKeysym(disp, event.xkey.keycode, 0)) {
+ switch(XkbKeycodeToKeysym(disp, event.xkey.keycode, 0, 0)) {
case XK_Up: case XK_w: input |= Zoom::Game::FORWARD; break;
case XK_Down: case XK_s: input |= Zoom::Game::BACKWARD; break;
case XK_Left: case XK_a: input |= Zoom::Game::LEFT; break;
@@ -400,7 +401,7 @@ int main() {
break;
case KeyRelease:
- switch(XKeycodeToKeysym(disp, event.xkey.keycode, 0)) {
+ switch(XkbKeycodeToKeysym(disp, event.xkey.keycode, 0, 0)) {
case XK_Up: case XK_w: input &= ~Zoom::Game::FORWARD; break;
case XK_Down: case XK_s: input &= ~Zoom::Game::BACKWARD; break;
case XK_Left: case XK_a: input &= ~Zoom::Game::LEFT; break;