2007-05-10 Matthew Allum <mallum@openedhand.com>

* clutter/egl/clutter-backend-egl.c:
        * clutter/egl/clutter-event-egl.c:
        * clutter/sdl/clutter-backend-sdl.c:
        * clutter/sdl/clutter-event-sdl.c:
        Fix SDL & EGL backends to work with newer backend code.
This commit is contained in:
Matthew Allum
2007-05-10 12:49:34 +00:00
parent 41834d92a6
commit e121eb54c8
5 changed files with 32 additions and 131 deletions

View File

@ -22,7 +22,6 @@ static gboolean
clutter_backend_sdl_post_parse (ClutterBackend *backend,
GError **error)
{
ClutterBackendSDL *backend_sdl = CLUTTER_BACKEND_SDL (backend);
int err;
if (SDL_Init(SDL_INIT_VIDEO | SDL_INIT_NOPARACHUTE) < 0)
@ -117,8 +116,6 @@ clutter_backend_sdl_get_stage (ClutterBackend *backend)
static void
clutter_backend_sdl_finalize (GObject *gobject)
{
ClutterBackendSDL *backend_sdl = CLUTTER_BACKEND_SDL (gobject);
SDL_Quit();
if (backend_singleton)
@ -191,20 +188,8 @@ clutter_backend_sdl_init (ClutterBackendSDL *backend_sdl)
{
ClutterBackend *backend = CLUTTER_BACKEND (backend_sdl);
backend->events_queue = g_queue_new ();
backend->button_click_time[0] = backend->button_click_time[1] = 0;
backend->button_number[0] = backend->button_number[1] = -1;
backend->button_x[0] = backend->button_x[1] = 0;
backend->button_y[0] = backend->button_y[1] = 0;
backend->res_width = backend->res_height = -1;
backend->mm_width = backend->mm_height = -1;
backend->screen_num = 0;
backend->n_screens = 0;
backend->double_click_time = 250;
backend->double_click_distance = 5;
clutter_backend_set_double_click_time (backend, 250);
clutter_backend_set_double_click_distance (backend, 5);
}
GType

View File

@ -105,21 +105,6 @@ _clutter_events_uninit (ClutterBackend *backend)
}
}
/**
* clutter_events_pending:
*
* FIXME
*
* Return value: FIXME
*
* Since: 0.4
*/
gboolean
clutter_events_pending (void)
{
return FALSE;
}
static gboolean
clutter_event_prepare (GSource *source,
gint *timeout)
@ -138,19 +123,11 @@ clutter_event_check (GSource *source)
return SDL_PeepEvents(&events, 1, SDL_PEEKEVENT, SDL_ALLEVENTS);
}
void
_clutter_events_queue (ClutterBackend *backend)
{
/* FIXME: Implement */
}
static gboolean
clutter_event_dispatch (GSource *source,
GSourceFunc callback,
gpointer user_data)
{
ClutterBackend *backend = ((ClutterEventSource *) source)->backend;
SDL_Event sdl_event;
ClutterEvent *event = NULL;
@ -169,16 +146,11 @@ clutter_event_dispatch (GSource *source,
return TRUE;
event = _clutter_event_queue_pop (backend);
event = clutter_event_get ();
if (event)
{
if (_clutter_event_func)
{
CLUTTER_NOTE (EVENT, "Dispatching _clutter_event_func");
(* _clutter_event_func) (event, _clutter_event_data);
}
clutter_do_event(event);
clutter_event_free (event);
}