]> git.tdb.fi Git - libs/gui.git/blob - source/graphics/android/display_platform.h
198fd46ee2dd3d8bc5b9013efd8d70605c2fb96d
[libs/gui.git] / source / graphics / android / display_platform.h
1 #ifndef MSP_GRAPHICS_DISPLAY_PLATFORM_H_
2 #define MSP_GRAPHICS_DISPLAY_PLATFORM_H_
3
4 #include <android/input.h>
5 #include <android/native_window.h>
6 #include <msp/core/mutex.h>
7 #include "window_private.h"
8
9 namespace Msp {
10 namespace Graphics {
11
12 typedef void *DisplayHandle;
13
14 struct PlatformDisplayPrivate
15 {
16         AInputQueue *input_queue;
17         std::list<Window::Event> events;
18         Mutex event_mutex;
19         WindowHandle native_window;
20         Mutex window_mutex;
21
22         void push_event(AndroidEventType);
23         void native_window_created(ANativeWindow *);
24         void native_window_resized(ANativeWindow *);
25         void native_window_destroyed(ANativeWindow *);
26         void input_queue_created(AInputQueue *);
27         void input_queue_destroyed(AInputQueue *);
28 };
29
30 } // namespace Graphics
31 } // namespace Msp
32
33 #endif