From 97a23161f6b348cb0bbf47638f90062de3f70c1f Mon Sep 17 00:00:00 2001 From: Emmanuele Bassi Date: Wed, 23 Jan 2008 11:08:39 +0000 Subject: [PATCH] 2008-01-23 Emmanuele Bassi * Makefile.am: Use variables, instead of substitutions. * clutter/clutter-private.h: * clutter/clutter-main.h: Make clutter_do_event() public again, as we need it in clutter-gtk. * configure.ac: * clutter/x11/Makefile.am: * clutter/x11/clutter-x11.pc.in: Add a clutter-x11 pkg-config file for clutter-gtk, as it depends on the X11 backend API, as implemented by the GLX and EGLX backends. * clutter/x11/clutter-event-x11.c (event_translate): Do not propagate DestroyNotify events if the stage doesn't own the window. * tests/test-scale.c (main): Set values different from the default. --- ChangeLog | 20 ++++++++++++++++++++ Makefile.am | 7 ++++--- NEWS | 24 ++++++++++++++++++++++++ clutter/clutter-main.h | 2 ++ clutter/clutter-private.h | 3 --- clutter/x11/Makefile.am | 8 ++++++++ clutter/x11/clutter-event-x11.c | 6 +++++- clutter/x11/clutter-x11.pc.in | 14 ++++++++++++++ configure.ac | 3 ++- doc/reference/clutter-sections.txt | 3 +++ tests/test-scale.c | 2 +- 11 files changed, 83 insertions(+), 9 deletions(-) create mode 100644 clutter/x11/clutter-x11.pc.in diff --git a/ChangeLog b/ChangeLog index e75140085..f8b96f0e3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,23 @@ +2008-01-23 Emmanuele Bassi + + * Makefile.am: Use variables, instead of substitutions. + + * clutter/clutter-private.h: + * clutter/clutter-main.h: Make clutter_do_event() public again, + as we need it in clutter-gtk. + + * configure.ac: + * clutter/x11/Makefile.am: + * clutter/x11/clutter-x11.pc.in: Add a clutter-x11 pkg-config + file for clutter-gtk, as it depends on the X11 backend API, as + implemented by the GLX and EGLX backends. + + * clutter/x11/clutter-event-x11.c (event_translate): Do not + propagate DestroyNotify events if the stage doesn't own the + window. + + * tests/test-scale.c (main): Set values different from the default. + 2008-01-21 Emmanuele Bassi * clutter/clutter-behaviour-scale.c: diff --git a/Makefile.am b/Makefile.am index 20e51c74c..7eeb26893 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,8 +1,8 @@ SUBDIRS = clutter tests doc -pcfiles = clutter-@CLUTTER_FLAVOUR@-@CLUTTER_MAJORMINOR@.pc +pcfiles = clutter-$(CLUTTER_FLAVOUR)-$(CLUTTER_API_VERSION).pc -%-@CLUTTER_FLAVOUR@-@CLUTTER_MAJORMINOR@.pc: %.pc +clutter-$(CLUTTER_FLAVOUR)-$(CLUTTER_API_VERSION).pc: clutter.pc cp $< $@ pkgconfig_DATA = $(pcfiles) @@ -12,7 +12,8 @@ DEFAULT_FLAVOUR = @CLUTTER_FLAVOUR@ install-data-hook: (cd $(DESTDIR)$(pkgconfigdir) && \ test -f clutter-$(DEFAULT_FLAVOUR)-@CLUTTER_MAJORMINOR@.pc && \ - rm -f clutter-@CLUTTER_MAJORMINOR@.pc && cp -f clutter-$(DEFAULT_FLAVOUR)-@CLUTTER_MAJORMINOR@.pc clutter-@CLUTTER_MAJORMINOR@.pc) + rm -f clutter-@CLUTTER_MAJORMINOR@.pc && \ + cp -f clutter-$(DEFAULT_FLAVOUR)-@CLUTTER_MAJORMINOR@.pc clutter-@CLUTTER_MAJORMINOR@.pc) uninstall-local: rm -f $(DESTDIR)$(pkgconfigdir)/clutter-@CLUTTER_MAJORMINOR@.pc diff --git a/NEWS b/NEWS index 410fcac7f..15f9aa0c9 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,27 @@ +Clutter 0.5.4 (xx/01/2008) +========================== + + * List of changes between 0.5.2 and 0.5.4 + + * List of bugs fixed + + o #564 - Add more precise clutter_qdivx() [Gwenole Beauchesne] + o #614 - ClutterActor API inconsistencies + o #640 - ClutterTexture unrealized with no GL context + o #654 - Under heavy load clutter sometimes drops the last frame of + a timeline [Johan Bilien] + o #672 - Event handling in osx backend is broken [Tommi Komulainen] + o #684 - Improve test-scale by also using anchor point [Jaap A. Haitsma] + o #695 - clutter-shader: Invalid format string for + gssize [Tommi Komulainen] + o #696 - cogl_get_proc_address requires GLX [Tommi Komulainen] + o #709 - clutter_effect_scale inconsistent with clutter_actor_set_scale + o #714 - clutter_event_copy for enter/leave event generates + extra unref [Neil Roberts] + o #715 - Type errors in test-shader + o #720 - BehaviourScale not working in python after recent + API change [Josh Stewart] + Clutter 0.5.2 (14/01/2008) ========================== diff --git a/clutter/clutter-main.h b/clutter/clutter-main.h index dda4b948b..d63a911c9 100644 --- a/clutter/clutter-main.h +++ b/clutter/clutter-main.h @@ -74,6 +74,8 @@ gint clutter_main_level (void); void clutter_redraw (void); +void clutter_do_event (ClutterEvent *event); + /* Debug utility functions */ gboolean clutter_get_debug_enabled (void); gboolean clutter_get_show_fps (void); diff --git a/clutter/clutter-private.h b/clutter/clutter-private.h index a3f7a4454..453f7b1fe 100644 --- a/clutter/clutter-private.h +++ b/clutter/clutter-private.h @@ -150,9 +150,6 @@ gboolean _clutter_boolean_handled_accumulator (GSignalInvocationHint *ihint const GValue *handler_return, gpointer dummy); -/* Does this need to be private ? */ -void clutter_do_event (ClutterEvent *event); - G_END_DECLS #endif /* _HAVE_CLUTTER_PRIVATE_H */ diff --git a/clutter/x11/Makefile.am b/clutter/x11/Makefile.am index 97c538a15..4dfd55b83 100644 --- a/clutter/x11/Makefile.am +++ b/clutter/x11/Makefile.am @@ -1,6 +1,12 @@ libclutterincludedir = $(includedir)/clutter-@CLUTTER_API_VERSION@/clutter libclutterinclude_HEADERS = clutter-x11.h +clutter-x11-$(CLUTTER_API_VERSION).pc: clutter-x11.pc + @cp -f $< $(@F) + +pkgconfig_DATA = clutter-x11-@CLUTTER_API_VERSION@.pc +pkgconfigdir = $(libdir)/pkgconfig + INCLUDES = \ -DG_LOG_DOMAIN=\"ClutterX11\" \ -I$(top_srcdir) \ @@ -21,3 +27,5 @@ libclutter_x11_la_SOURCES = \ clutter-stage-x11.h \ clutter-stage-x11.c \ clutter-x11.h + +EXTRA_DIST = clutter-x11.pc.in diff --git a/clutter/x11/clutter-event-x11.c b/clutter/x11/clutter-event-x11.c index b7c8f8ed6..7ca37f903 100644 --- a/clutter/x11/clutter-event-x11.c +++ b/clutter/x11/clutter-event-x11.c @@ -587,7 +587,11 @@ event_translate (ClutterBackend *backend, case DestroyNotify: CLUTTER_NOTE (EVENT, "destroy notify:\txid: %ld", xevent->xdestroywindow.window); - event->type = event->any.type = CLUTTER_DESTROY_NOTIFY; + if (xevent->xdestroywindow.window == stage_xwindow && + !stage_x11->is_foreign_xwin) + event->type = event->any.type = CLUTTER_DESTROY_NOTIFY; + else + res = FALSE; break; case ClientMessage: diff --git a/clutter/x11/clutter-x11.pc.in b/clutter/x11/clutter-x11.pc.in new file mode 100644 index 000000000..7a2124c31 --- /dev/null +++ b/clutter/x11/clutter-x11.pc.in @@ -0,0 +1,14 @@ +prefix=@prefix@ +exec_prefix=${prefix} +libdir=${exec_prefix}/lib +includedir=${prefix}/include +backend=@clutterbackend@ +apiversion=@CLUTTER_API_VERSION@ +requires=@CLUTTER_REQUIRES@ + +Name: Clutter +Description: Clutter Core Library (${backend} backend) +Version: @VERSION@ +Libs: -L${libdir} -lclutter-${backend}-${apiversion} +Cflags: -I${includedir}/clutter-${apiversion} +Requires: ${requires} \ No newline at end of file diff --git a/configure.ac b/configure.ac index ccc6b71a6..59a1c1d93 100644 --- a/configure.ac +++ b/configure.ac @@ -24,7 +24,7 @@ AC_INIT([clutter], AC_CONFIG_SRCDIR([clutter/clutter.h]) AM_CONFIG_HEADER([config.h]) -AM_INIT_AUTOMAKE([1.7]) +AM_INIT_AUTOMAKE([1.9]) CLUTTER_MAJOR_VERSION=clutter_major_version CLUTTER_MINOR_VERSION=clutter_minor_version @@ -396,6 +396,7 @@ AC_CONFIG_FILES([ clutter/Makefile clutter/clutter-version.h clutter/x11/Makefile + clutter/x11/clutter-x11.pc clutter/glx/Makefile clutter/eglx/Makefile clutter/eglnative/Makefile diff --git a/doc/reference/clutter-sections.txt b/doc/reference/clutter-sections.txt index 381e55833..78de153fd 100644 --- a/doc/reference/clutter-sections.txt +++ b/doc/reference/clutter-sections.txt @@ -960,6 +960,9 @@ clutter_grab_pointer clutter_ungrab_keyboard clutter_ungrab_pointer + +clutter_do_event + CLUTTER_INIT_ERROR diff --git a/tests/test-scale.c b/tests/test-scale.c index 1979ef6a3..d2863a868 100644 --- a/tests/test-scale.c +++ b/tests/test-scale.c @@ -66,7 +66,7 @@ main (int argc, char *argv[]) behave = clutter_behaviour_scale_new (alpha, 0.0, 0.0, /* scale start */ - 1.0, 1.0, /* scale end */ + 1.5, 1.5, /* scale end */ gravities[gindex]); clutter_behaviour_apply (behave, rect);