src/video/wayland/SDL_waylandwindow.h
author Gabriel Jacobo <gabomdq@gmail.com>
Fri, 27 Dec 2013 09:29:39 -0300
changeset 8082 5b83ad3f01ac
parent 8062 4fc5f66d63cc
child 8104 2e4f1bd21196
permissions -rw-r--r--
Implements touch support on QTWayland. Contributed by Thomas Perl.
gabomdq@8062
     1
/*
gabomdq@8062
     2
  Simple DirectMedia Layer
gabomdq@8062
     3
  Copyright (C) 1997-2013 Sam Lantinga <slouken@libsdl.org>
gabomdq@8062
     4
gabomdq@8062
     5
  This software is provided 'as-is', without any express or implied
gabomdq@8062
     6
  warranty.  In no event will the authors be held liable for any damages
gabomdq@8062
     7
  arising from the use of this software.
gabomdq@8062
     8
gabomdq@8062
     9
  Permission is granted to anyone to use this software for any purpose,
gabomdq@8062
    10
  including commercial applications, and to alter it and redistribute it
gabomdq@8062
    11
  freely, subject to the following restrictions:
gabomdq@8062
    12
gabomdq@8062
    13
  1. The origin of this software must not be misrepresented; you must not
gabomdq@8062
    14
     claim that you wrote the original software. If you use this software
gabomdq@8062
    15
     in a product, an acknowledgment in the product documentation would be
gabomdq@8062
    16
     appreciated but is not required.
gabomdq@8062
    17
  2. Altered source versions must be plainly marked as such, and must not be
gabomdq@8062
    18
     misrepresented as being the original software.
gabomdq@8062
    19
  3. This notice may not be removed or altered from any source distribution.
gabomdq@8062
    20
*/
gabomdq@8062
    21
gabomdq@8062
    22
#include "SDL_config.h"
gabomdq@8062
    23
gabomdq@8062
    24
#ifndef _SDL_waylandwindow_h
gabomdq@8062
    25
#define _SDL_waylandwindow_h
gabomdq@8062
    26
gabomdq@8062
    27
#include "../SDL_sysvideo.h"
gabomdq@8062
    28
#include "SDL_syswm.h"
gabomdq@8062
    29
gabomdq@8062
    30
#include "SDL_waylandvideo.h"
gabomdq@8062
    31
gabomdq@8062
    32
struct SDL_WaylandInput;
gabomdq@8062
    33
gabomdq@8062
    34
typedef struct {
gabomdq@8062
    35
    SDL_Window *sdlwindow;
gabomdq@8062
    36
    SDL_VideoData *waylandData;
gabomdq@8062
    37
    struct wl_surface *surface;
gabomdq@8062
    38
    struct wl_shell_surface *shell_surface;
gabomdq@8062
    39
    struct wl_egl_window *egl_window;
gabomdq@8062
    40
    struct SDL_WaylandInput *keyboard_device;
gabomdq@8082
    41
    EGLSurface egl_surface;
gabomdq@8062
    42
gabomdq@8082
    43
#ifdef SDL_VIDEO_DRIVER_WAYLAND_QT_TOUCH
gabomdq@8082
    44
    struct qt_extended_surface *extended_surface;
gabomdq@8082
    45
#endif /* SDL_VIDEO_DRIVER_WAYLAND_QT_TOUCH */    
gabomdq@8062
    46
} SDL_WindowData;
gabomdq@8062
    47
gabomdq@8062
    48
extern void Wayland_ShowWindow(_THIS, SDL_Window *window);
gabomdq@8062
    49
extern void Wayland_SetWindowFullscreen(_THIS, SDL_Window * window,
gabomdq@8062
    50
                                        SDL_VideoDisplay * _display,
gabomdq@8062
    51
                                        SDL_bool fullscreen);
gabomdq@8062
    52
extern int Wayland_CreateWindow(_THIS, SDL_Window *window);
gabomdq@8062
    53
extern void Wayland_SetWindowSize(_THIS, SDL_Window * window);
gabomdq@8062
    54
extern void Wayland_DestroyWindow(_THIS, SDL_Window *window);
gabomdq@8062
    55
gabomdq@8062
    56
extern SDL_bool
gabomdq@8062
    57
Wayland_GetWindowWMInfo(_THIS, SDL_Window * window, SDL_SysWMinfo * info);
gabomdq@8062
    58
gabomdq@8062
    59
#endif /* _SDL_waylandwindow_h */
gabomdq@8062
    60
gabomdq@8062
    61
/* vi: set ts=4 sw=4 expandtab: */