diff --git a/doc/cookbook/clutter-cookbook.xml.in b/doc/cookbook/clutter-cookbook.xml.in
index e6c9297de..fc6d0b1d3 100644
--- a/doc/cookbook/clutter-cookbook.xml.in
+++ b/doc/cookbook/clutter-cookbook.xml.in
@@ -17,7 +17,7 @@
- 2009
+ 2009, 2010
Intel Corporation
@@ -390,13 +390,48 @@ on_paint (ClutterActor *actor)
Events
-
-
+ The Tenth Doctor (David Tennant)
+ Crossing into established events is strictly forbidden. Except for
+ cheap tricks.
Introduction
- introduction
+ Once you have set up a scene on the stage, in order to respond
+ to user interaction you will have to handle events coming from the
+ underlying platform.
+
+ Events are relayed to actors by Clutter in form of
+ signals; signals are a facility provided by the
+ GObject framework to call functions depending on a unique name. A signal
+ can be thought as a message that an object instance broadcasts to various
+ listener functions.
+
+ There are various events that Clutter will handle: mostly, they
+ deal with input devices, like a mouse pointer or a keyboard; but they can
+ also come from the windowing system, like the
+ delete-event signal that is emitted when the user
+ closes the window of the stage.
+
+ Each event has a particular source, that is
+ the actor that received the event. The event handling sequence is divided
+ in two phases:
+
+
+ the capture phase, which consists
+ in an emission of the captured-event signal
+ starting from the stage to, following the parent-child relationship,
+ the source of the event;
+ the bubble phase, which consists
+ in an emission of the event signal starting from
+ the the source of the event to, following the parent-child
+ relationship, the stage.
+
+
+ At any point during the event emission sequence a handler of either
+ the captured-event or the event signals can stop it, by returning a value
+ of TRUE, which means that the event has been handled. If an event hasn't
+ been handled, FALSE should be returned instead.