src/video/wayland/SDL_waylandvideo.h
author Philipp Wiesemann <philipp.wiesemann@arcor.de>
Wed, 16 Mar 2016 22:09:23 +0100
changeset 10119 ac9831ff70d1
parent 9998 f67cf37e9cd4
permissions -rw-r--r--
Wayland: Fixed storing a theme cursor which is never used in video data.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
8062
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
     1
/*
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
     2
  Simple DirectMedia Layer
9998
f67cf37e9cd4 Updated copyright to 2016
Sam Lantinga <slouken@libsdl.org>
parents: 9619
diff changeset
     3
  Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org>
8062
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
     4
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
     5
  This software is provided 'as-is', without any express or implied
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
     6
  warranty.  In no event will the authors be held liable for any damages
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
     7
  arising from the use of this software.
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
     8
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
     9
  Permission is granted to anyone to use this software for any purpose,
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    10
  including commercial applications, and to alter it and redistribute it
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    11
  freely, subject to the following restrictions:
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    12
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    13
  1. The origin of this software must not be misrepresented; you must not
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    14
     claim that you wrote the original software. If you use this software
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    15
     in a product, an acknowledgment in the product documentation would be
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    16
     appreciated but is not required.
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    17
  2. Altered source versions must be plainly marked as such, and must not be
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    18
     misrepresented as being the original software.
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    19
  3. This notice may not be removed or altered from any source distribution.
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    20
*/
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    21
8104
2e4f1bd21196 Dynamic loading support for Wayland
Gabriel Jacobo <gabomdq@gmail.com>
parents: 8082
diff changeset
    22
#include "../../SDL_internal.h"
8062
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    23
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    24
#ifndef _SDL_waylandvideo_h
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    25
#define _SDL_waylandvideo_h
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    26
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    27
#include <EGL/egl.h>
8104
2e4f1bd21196 Dynamic loading support for Wayland
Gabriel Jacobo <gabomdq@gmail.com>
parents: 8082
diff changeset
    28
#include "wayland-util.h"
8062
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    29
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    30
struct xkb_context;
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    31
struct SDL_WaylandInput;
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    32
8082
5b83ad3f01ac Implements touch support on QTWayland. Contributed by Thomas Perl.
Gabriel Jacobo <gabomdq@gmail.com>
parents: 8062
diff changeset
    33
#ifdef SDL_VIDEO_DRIVER_WAYLAND_QT_TOUCH
5b83ad3f01ac Implements touch support on QTWayland. Contributed by Thomas Perl.
Gabriel Jacobo <gabomdq@gmail.com>
parents: 8062
diff changeset
    34
struct SDL_WaylandTouch;
5b83ad3f01ac Implements touch support on QTWayland. Contributed by Thomas Perl.
Gabriel Jacobo <gabomdq@gmail.com>
parents: 8062
diff changeset
    35
struct qt_surface_extension;
5b83ad3f01ac Implements touch support on QTWayland. Contributed by Thomas Perl.
Gabriel Jacobo <gabomdq@gmail.com>
parents: 8062
diff changeset
    36
struct qt_windowmanager;
5b83ad3f01ac Implements touch support on QTWayland. Contributed by Thomas Perl.
Gabriel Jacobo <gabomdq@gmail.com>
parents: 8062
diff changeset
    37
#endif /* SDL_VIDEO_DRIVER_WAYLAND_QT_TOUCH */
5b83ad3f01ac Implements touch support on QTWayland. Contributed by Thomas Perl.
Gabriel Jacobo <gabomdq@gmail.com>
parents: 8062
diff changeset
    38
8062
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    39
typedef struct {
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    40
    struct wl_display *display;
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    41
    struct wl_registry *registry;
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    42
    struct wl_compositor *compositor;
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    43
    struct wl_shm *shm;
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    44
    struct wl_cursor_theme *cursor_theme;
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    45
    struct wl_pointer *pointer;
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    46
    struct wl_shell *shell;
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    47
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    48
    EGLDisplay edpy;
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    49
    EGLContext context;
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    50
    EGLConfig econf;
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    51
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    52
    struct xkb_context *xkb_context;
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    53
    struct SDL_WaylandInput *input;
9467
975453c4e217 Wayland: Properly discover displays and their modes.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents: 9265
diff changeset
    54
975453c4e217 Wayland: Properly discover displays and their modes.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents: 9265
diff changeset
    55
#ifdef SDL_VIDEO_DRIVER_WAYLAND_QT_TOUCH
8082
5b83ad3f01ac Implements touch support on QTWayland. Contributed by Thomas Perl.
Gabriel Jacobo <gabomdq@gmail.com>
parents: 8062
diff changeset
    56
    struct SDL_WaylandTouch *touch;
5b83ad3f01ac Implements touch support on QTWayland. Contributed by Thomas Perl.
Gabriel Jacobo <gabomdq@gmail.com>
parents: 8062
diff changeset
    57
    struct qt_surface_extension *surface_extension;
5b83ad3f01ac Implements touch support on QTWayland. Contributed by Thomas Perl.
Gabriel Jacobo <gabomdq@gmail.com>
parents: 8062
diff changeset
    58
    struct qt_windowmanager *windowmanager;
5b83ad3f01ac Implements touch support on QTWayland. Contributed by Thomas Perl.
Gabriel Jacobo <gabomdq@gmail.com>
parents: 8062
diff changeset
    59
#endif /* SDL_VIDEO_DRIVER_WAYLAND_QT_TOUCH */
8062
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    60
} SDL_VideoData;
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    61
9265
562e58dcbb4c Corrected header file guard comment.
Philipp Wiesemann <philipp.wiesemann@arcor.de>
parents: 8149
diff changeset
    62
#endif /* _SDL_waylandvideo_h */
8062
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    63
4fc5f66d63cc Wayland support
Gabriel Jacobo <gabomdq@gmail.com>
parents:
diff changeset
    64
/* vi: set ts=4 sw=4 expandtab: */