[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnue] r9168 - trunk/gnue-common/src/events
From: |
johannes |
Subject: |
[gnue] r9168 - trunk/gnue-common/src/events |
Date: |
Fri, 15 Dec 2006 04:18:40 -0600 (CST) |
Author: johannes
Date: 2006-12-15 04:18:39 -0600 (Fri, 15 Dec 2006)
New Revision: 9168
Modified:
trunk/gnue-common/src/events/EventController.py
Log:
Really stop handler execution if an event has been dropped.
This fixes the focus-change when pressing Enter in a multiline entry
Modified: trunk/gnue-common/src/events/EventController.py
===================================================================
--- trunk/gnue-common/src/events/EventController.py 2006-12-15 08:06:48 UTC
(rev 9167)
+++ trunk/gnue-common/src/events/EventController.py 2006-12-15 10:18:39 UTC
(rev 9168)
@@ -146,12 +146,15 @@
if not isinstance(event, Event):
event = Event(event, *args, **kwargs)
+ methods = []
for key in ('__before__', event.__event__, '__after__'):
- for handler in registered_events.get(key, ()):
- handler(event)
- if event.__error__ or event.__dropped__:
- break
+ methods.extend(registered_events.get(key, []))
+ for handler in methods:
+ handler(event)
+ if event.__error__ or event.__dropped__:
+ break
+
if event.__after__:
for args, kwargs in event.__after__:
self.dispatch_event(*args, **kwargs)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [gnue] r9168 - trunk/gnue-common/src/events,
johannes <=