* Boston, MA 02111-1307, USA.
*/
-#define EGL_EGLEXT_PROTOTYPES 1
-
#include "config.h"
+#include <wayland-egl.h>
+
#include <stdlib.h>
#include <string.h>
#include <errno.h>
#include "gdkwayland.h"
#include "gdkdisplay.h"
#include "gdkdisplay-wayland.h"
-#include "gdkeventsource.h"
#include "gdkscreen.h"
#include "gdkscreen-wayland.h"
#include "gdkinternals.h"
#include "gdkdevicemanager-wayland.h"
#include "gdkkeysprivate.h"
-#include <wayland-egl.h>
-
typedef struct _GdkEventTypeWayland GdkEventTypeWayland;
struct _GdkEventTypeWayland
if (strcmp(interface, "compositor") == 0) {
display_wayland->compositor = wl_compositor_create(display, id);
+ } else if (strcmp(interface, "shm") == 0) {
+ display_wayland->shm = wl_shm_create(display, id);
} else if (strcmp(interface, "shell") == 0) {
display_wayland->shell = wl_shell_create(display, id);
wl_shell_add_listener(display_wayland->shell,
};
display_wayland->egl_display =
- eglGetDisplay((EGLNativeDisplayType) display_wayland->native_display);
+ eglGetDisplay(display_wayland->native_display);
if (!eglInitialize(display_wayland->egl_display, &major, &minor)) {
fprintf(stderr, "failed to initialize display\n");
return FALSE;
gdk_input_init (display);
g_signal_emit_by_name (display, "opened");
- g_signal_emit_by_name (gdk_display_manager_get(),
- "display_opened", display);
+ g_signal_emit_by_name (gdk_display_manager_get(), "display_opened", display);
return display;
}
if (display_wayland->keymap)
g_object_unref (display_wayland->keymap);
- /* Atom Hashtable */
- g_hash_table_destroy (display_wayland->atom_from_virtual);
- g_hash_table_destroy (display_wayland->atom_to_virtual);
-
- /* list of filters for client messages */
- g_list_foreach (display_wayland->client_filters, (GFunc) g_free, NULL);
- g_list_free (display_wayland->client_filters);
-
- /* List of event window extraction functions */
- g_slist_foreach (display_wayland->event_types, (GFunc)g_free, NULL);
- g_slist_free (display_wayland->event_types);
-
/* input GdkDevice list */
g_list_foreach (display_wayland->input_devices, (GFunc) g_object_unref, NULL);
g_list_free (display_wayland->input_devices);
g_free (display_wayland->startup_notification_id);
- /* X ID hashtable */
- g_hash_table_destroy (display_wayland->xid_ht);
-
G_OBJECT_CLASS (_gdk_display_wayland_parent_class)->finalize (object);
}
static gboolean
gdk_wayland_display_supports_selection_notification (GdkDisplay *display)
{
- GdkDisplayWayland *display_wayland = GDK_DISPLAY_WAYLAND (display);
-
- return display_wayland->have_xfixes;
+ return TRUE;
}
static gboolean
static gboolean
gdk_wayland_display_supports_shapes (GdkDisplay *display)
{
- return GDK_DISPLAY_WAYLAND (display)->have_shapes;
+ return TRUE;
}
static gboolean
gdk_wayland_display_supports_input_shapes (GdkDisplay *display)
{
- return GDK_DISPLAY_WAYLAND (display)->have_input_shapes;
+ return TRUE;
}
static gboolean