aboutsummaryrefslogtreecommitdiffhomepage
path: root/examples
diff options
context:
space:
mode:
authorGravatar Mason Larobina <mason.larobina@gmail.com>2009-12-13 05:10:39 +0800
committerGravatar Mason Larobina <mason.larobina@gmail.com>2009-12-13 05:10:39 +0800
commit00de6ef299fb3aedc8a0dc56a799e547f481dd68 (patch)
tree663fc32c8a371297022d8dc62c589a3181318f91 /examples
parenteeceb985a58ff0bdbbe08861bdd52994768a5199 (diff)
Print all events, store the instance pid and check event name.
Diffstat (limited to 'examples')
-rwxr-xr-xexamples/data/uzbl/scripts/uzbl-event-manager18
1 files changed, 13 insertions, 5 deletions
diff --git a/examples/data/uzbl/scripts/uzbl-event-manager b/examples/data/uzbl/scripts/uzbl-event-manager
index 6669282..7a02da9 100755
--- a/examples/data/uzbl/scripts/uzbl-event-manager
+++ b/examples/data/uzbl/scripts/uzbl-event-manager
@@ -357,6 +357,7 @@ class UzblInstance(object):
self.depth = 0
self.buffer = ''
+ self.pid = None
# Call the init() function in every plugin. Inside the init function
# is where the plugins insert the hooks into the event system.
@@ -423,6 +424,9 @@ class UzblInstance(object):
'''Connect event with handler and return the newly created handler.
Handlers can either be a function or a uzbl command string.'''
+ event = event.upper().strip()
+ assert event and ' ' not in event
+
if event not in self._handlers.keys():
self._handlers[event] = []
@@ -478,12 +482,16 @@ class UzblInstance(object):
def event(self, event, *args, **kargs):
- '''Raise a custom event.'''
+ '''Raise an event.'''
+
+ event = event.upper()
+ elems = [event,]
+ if args: elems.append(unicode(args))
+ if kargs: elems.append(unicode(kargs))
+ print "%s--> %s" % (' ' * self.depth, ' '.join(elems))
- # Silence _printing_ of geo events while debugging.
- if event != "GEOMETRY_CHANGED":
- print "%s--> %s %s %s" % (' ' * self.depth, event, args,
- '' if not kargs else kargs)
+ if event == "INSTANCE_START" and args:
+ self.pid = int(args[0])
if event not in self._handlers:
return