{
SDL_EGL_SwapBuffers(_this, ((SDL_WindowData *) window->driverdata)->egl_surface);
SDL_WindowData* wind = (SDL_WindowData*)window->driverdata;
- if (wind->received_rotation == 1) {
+ if (wind->received_rotation != TIZEN_ROTATION_RECEIVED_NONE) {
Tizen_rotate_update(window);
- ecore_wl_window_rotation_change_done_send(wind->window);
- wind->received_rotation = 0;
+
+ if(wind->received_rotation == TIZEN_ROTATION_RECEIVED_WINDOW_ROATION)
+ ecore_wl_window_rotation_change_done_send(wind->window);
+
+ wind->received_rotation = TIZEN_ROTATION_RECEIVED_NONE;
SDL_VideoData* videoData = SDL_GetVideoDevice()->driverdata;
if(videoData->indicator_on && wind->support_indicator)
output = ecore_wl_window_output_find(wind->window);
if (output != ev->output) return ECORE_CALLBACK_PASS_ON;
- wind->received_rotation = 1;
+ wind->received_rotation = TIZEN_ROTATION_RECEIVED_SCREEN_ROTATION;
return ECORE_CALLBACK_PASS_ON;
if(!wind) return ECORE_CALLBACK_PASS_ON;
- wind->received_rotation = 1;
+ wind->received_rotation = TIZEN_ROTATION_RECEIVED_SCREEN_ROTATION;
return ECORE_CALLBACK_PASS_ON;
}
wind->rotation = 0;
wind->rotation_supported = 0;
- wind->received_rotation = 0;
+ wind->received_rotation = TIZEN_ROTATION_RECEIVED_NONE;
#if SDL_VIDEO_OPENGL_EGL
if (window->flags & SDL_WINDOW_OPENGL) {
window = Tizen_FindWindow(_this, ew);
wind = window->driverdata;
- if (wind->rotation != ev->angle) {
- /* set ecore_wayland window rotation */
- wind->rotation = ev->angle;
- wind->received_rotation = 1;
- }
+ /* set ecore_wayland window rotation */
+ wind->rotation = ev->angle;
+ wind->received_rotation = TIZEN_ROTATION_RECEIVED_WINDOW_ROATION;
return ECORE_CALLBACK_PASS_ON;
}
TIZEN_ROTATION_270 = 270
} tizen_wl_egl_window_rotation;
+typedef enum {
+ TIZEN_ROTATION_RECEIVED_NONE = 0,
+ TIZEN_ROTATION_RECEIVED_SCREEN_ROTATION = 1,
+ TIZEN_ROTATION_RECEIVED_WINDOW_ROATION = 2
+};
+
extern SDL_Window* Tizen_FindWindow(_THIS, Ecore_Wl_Window *ewin);
extern void Tizen_SetWindowTitle(_THIS, SDL_Window * window);
extern void Tizen_ShowWindow(_THIS, SDL_Window *window);