Переглянути джерело

Child widgets are now traversed in reserse order during event delegation.

Taddeus Kroes 13 роки тому
батько
коміт
d9bad8e7fe
1 змінених файлів з 3 додано та 1 видалено
  1. 3 1
      src/widget.py

+ 3 - 1
src/widget.py

@@ -172,7 +172,9 @@ class Widget(Positionable, Logger):
             event.set_offset(self.get_offset())
             child_found = False
 
-            for child in self.children:
+            # Delegate to children in reverse order because widgets that are
+            # added later, should be placed over previously added siblings
+            for child in reversed(self.children):
                 if child.contains_event(event):
                     child_found = True
                     child.delegate_event(event)