SDL_EGL_SwapBuffers(_this, ((SDL_WindowData *) window->driverdata)->egl_surface);
SDL_WindowData* wdata = (SDL_WindowData*)window->driverdata;
if (wdata->received_rotation == 1) {
- Tizen_rotate_update(wdata);
+ Tizen_rotate_update(window);
ecore_wl_window_rotation_change_done_send(wdata->window);
wdata->received_rotation = 0;
}
}
void
-_tizen_rotation_do(SDL_WindowData *wind, int rotation)
+_tizen_rotation_do(SDL_Window *window, SDL_WindowData* wind, int rotation)
{
- if(!wind) return;
-
- SDL_Window *window = SDL_GetVideoDevice()->windows;
- if(!window) return;
-
int window_w, window_h;
if(wind->rotation == 0 || wind->rotation == 180)
ecore_wl_window_geometry_get(wind->window, 0, 0, &window_w, &window_h);
}
void
-Tizen_rotate_update(SDL_WindowData *wind)
+Tizen_rotate_update(SDL_Window *window)
{
+ SDL_WindowData *wind = window->driverdata;
if(!wind) return;
int screen_rotation;
ecore_wl_window_rotation_set(wind->window, wind->rotation);
int rotation = (wind->output_rotation + wind->rotation) % 360;
- _tizen_rotation_do(wind, rotation);
+ _tizen_rotation_do(window, wind, rotation);
}
void
ecore_wl_window_rotation_available_rotations_set(window, (const int*)checked, j);
}
}
- Tizen_rotate_update(wind);
+
+ Tizen_rotate_update(Tizen_FindWindow(SDL_GetVideoDevice(), window));
}
void
_tizen_window_orientation_add_hint((void*)wind);
SDL_AddHintCallback(SDL_HINT_TIZEN_INDICATOR_OPACITY, _tizen_indicator_opacity_hint_callback, data);
- Tizen_rotate_update(wind);
+ Tizen_rotate_update(window);
return 0;
}
extern void Tizen_DeinitWindow(_THIS);
extern void Tizen_pre_rotation_set(SDL_WindowData *_this, int rotation);
-extern void Tizen_rotate_update(SDL_WindowData *wind);
+extern void Tizen_rotate_update(SDL_Window *window);
extern int _tizen_init_ecore_ipc();
extern void _tizen_ecore_ipc_client_send(int major, int minor, int ref, int ref_to);