From: Daniel Drake http://bugzilla.gnome.org/show_bug.cgi?id=405548 The logic behind node.selectedChildren is rather strange: "if we have a parent, and the parent implements the selection interface, then get then create a list of my own selected children" I don't think the properties of the parent have any relevence here. selectedChildren() didn't work for me until I wrote this patch. Index: dogtail/tree.py =================================================================== --- dogtail/tree.py (revision 293) +++ dogtail/tree.py (working copy) @@ -558,8 +558,7 @@ if self.__hideChildren: return [] selectedChildren = [] - parent = self.parent - if parent and self.parent._Node__selection: + if self.__selection: for i in xrange(self.__selection.getNSelectedChildren()): selectedChildren.append(Node(self.__selection.getSelectedChild(i))) return selectedChildren Index: ChangeLog =================================================================== --- ChangeLog (revision 293) +++ ChangeLog (working copy) @@ -1,3 +1,8 @@ +2007-02-08 Daniel Drake + + * dogtail/tree.py: Fix wrong logic in Node.selectedChildren + implementation + 2007-02-08 Zack Cerza * dogtail/utils.py: Make isA11yEnabled() look at $GTK_MODULES, too.