summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Franzke <benjaminfranzke@googlemail.com>2011-02-22 17:10:47 +0100
committerBenjamin Franzke <benjaminfranzke@googlemail.com>2011-04-09 21:45:53 +0200
commitbc6bce72f1ed42c014e881e40dff12676b9e761d (patch)
tree0893542c1c202679f4572ad20b63e2390d8c7a0a
parentd060054153353569fea53867a2b371da4ad2511f (diff)
wayland: update to wayland-egl API changes
-rw-r--r--configure.in4
-rw-r--r--src/video/wayland/SDL_waylandevents.c4
-rw-r--r--src/video/wayland/SDL_waylandgl.c2
-rw-r--r--src/video/wayland/SDL_waylandvideo.c2
-rw-r--r--src/video/wayland/SDL_waylandvideo.h4
-rw-r--r--src/video/wayland/SDL_waylandwindow.c14
6 files changed, 14 insertions, 16 deletions
diff --git a/configure.in b/configure.in
index 66673dc2..3371d025 100644
--- a/configure.in
+++ b/configure.in
@@ -962,8 +962,8 @@ AC_HELP_STRING([--enable-video-wayland], [use Wayland video driver [[default=yes
if test x$video_wayland = xyes; then
AC_DEFINE(SDL_VIDEO_DRIVER_WAYLAND)
SOURCES="$SOURCES $srcdir/src/video/wayland/*.c"
- EXTRA_CFLAGS="$EXTRA_CFLAGS $(pkg-config --cflags wayland-client wayland-egl libdrm egl gl xkbcommon)"
- EXTRA_LDFLAGS="$EXTRA_LDFLAGS $(pkg-config --libs wayland-client wayland-egl libdrm egl gl xkbcommon)"
+ EXTRA_CFLAGS="$EXTRA_CFLAGS $(pkg-config --cflags wayland-client wayland-egl egl gl xkbcommon)"
+ EXTRA_LDFLAGS="$EXTRA_LDFLAGS $(pkg-config --libs wayland-client wayland-egl egl gl xkbcommon)"
have_video=yes
fi
fi
diff --git a/src/video/wayland/SDL_waylandevents.c b/src/video/wayland/SDL_waylandevents.c
index 3e725c06..e064fea5 100644
--- a/src/video/wayland/SDL_waylandevents.c
+++ b/src/video/wayland/SDL_waylandevents.c
@@ -32,6 +32,8 @@
#include <X11/extensions/XKBcommon.h>
#include "../../events/scancodes_xfree86.h"
+
+typedef uint32_t KeySym;
#include "../x11/imKStoUCS.h"
#include <errno.h>
@@ -117,7 +119,7 @@ window_handle_button(void *data,
{
struct SDL_WaylandInput *input = data;
SDL_WaylandWindow *window = input->pointer_focus;
-
+
SDL_SendMouseButton(window->sdlwindow,
state ? SDL_PRESSED : SDL_RELEASED,
button);
diff --git a/src/video/wayland/SDL_waylandgl.c b/src/video/wayland/SDL_waylandgl.c
index 38ebbe1e..53b884dc 100644
--- a/src/video/wayland/SDL_waylandgl.c
+++ b/src/video/wayland/SDL_waylandgl.c
@@ -62,7 +62,7 @@ Wayland_GL_LoadLibrary(_THIS, const char *path)
fprintf(stderr, "start laod library\n");
- data->edpy = eglGetDisplay((EGLNativeDisplayType) data->egl_display);
+ data->edpy = eglGetDisplay(data->egl_display);
fprintf(stderr, "after get dispaly\n");
if (!eglInitialize(data->edpy, &major, &minor)) {
diff --git a/src/video/wayland/SDL_waylandvideo.c b/src/video/wayland/SDL_waylandvideo.c
index a818e3e7..2c21d8cf 100644
--- a/src/video/wayland/SDL_waylandvideo.c
+++ b/src/video/wayland/SDL_waylandvideo.c
@@ -192,7 +192,7 @@ Wayland_VideoInit(_THIS)
SDL_SetError("Failed to connecto to a Wayland display.");
return 0;
}
- data->egl_display = wl_egl_native_display_create(data->display);
+ data->egl_display = wl_egl_display_create(data->display);
wl_display_add_global_listener(data->display,
display_handle_global, data);
diff --git a/src/video/wayland/SDL_waylandvideo.h b/src/video/wayland/SDL_waylandvideo.h
index f53ca8c5..bab544f9 100644
--- a/src/video/wayland/SDL_waylandvideo.h
+++ b/src/video/wayland/SDL_waylandvideo.h
@@ -28,10 +28,8 @@
#include <wayland-client.h>
#include <wayland-client-protocol.h>
#include <wayland-egl.h>
-#define GL_GLEXT_PROTOTYPES
-#define EGL_EGLEXT_PROTOTYPES
+
#include <EGL/egl.h>
-#include <EGL/eglext.h>
#include <GL/gl.h>
diff --git a/src/video/wayland/SDL_waylandwindow.c b/src/video/wayland/SDL_waylandwindow.c
index ad0a799f..4690610d 100644
--- a/src/video/wayland/SDL_waylandwindow.c
+++ b/src/video/wayland/SDL_waylandwindow.c
@@ -73,14 +73,12 @@ int Wayland_CreateWindow(_THIS, SDL_Window * window)
wl_compositor_create_surface(c->compositor);
wl_surface_set_user_data(data->surface, data);
- visual = wl_display_get_premultiplied_argb_visual(c->display);
- data->egl_window = wl_egl_native_window_create(data->surface,
- window->w,
- window->h,
- visual);
+ visual = wl_display_get_rgb_visual(c->display);
+ data->egl_window = wl_egl_window_create(c->egl_display, data->surface,
+ window->w, window->h, visual);
data->esurf =
- eglCreateWindowSurface(c->edpy, c->econf,
- (EGLNativeWindowType) data->egl_window, NULL);
+ eglCreateWindowSurface(c->edpy, c->econf,
+ data->egl_window, NULL);
if (data->esurf == EGL_NO_SURFACE) {
fprintf(stderr, "failed to create window surface\n");
@@ -101,7 +99,7 @@ void Wayland_DestroyWindow(_THIS, SDL_Window * window)
if (data) {
eglDestroySurface(data->edpy, wind->esurf);
- wl_egl_native_window_destroy(wind->egl_window);
+ wl_egl_window_destroy(wind->egl_window);
wl_surface_destroy(wind->surface);
SDL_free(wind);
}