active-changed in HEAD

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

active-changed in HEAD

Martin Hawlisch
Alex,

I did some invesigation about the blocked active-changed signal that was
emitted while active-changed was running.
Basically there are two problems:

1) in gramps_main the function change_active_person emits active-changed for
every mouse click, including multiple clicks on the same person in the
People View. change_active_person should only emit this when there actually
was a change.

2) The recursive emission was triggered by the new PedView, that after
building up the gtk tables requested a gtk_main_iteration to get the redraw
done and adopt to the size of the tree. What happened on double clicking was
that the gtk_main_iteration inside the PedView triggered
change_active_person for the second mouse click while the action of the
first was still running.
The PedView now uses idle_add to do the size adaption deferred.


Cheers, Martin.

--
5 GB Mailbox, 50 FreeSMS http://www.gmx.net/de/go/promail
+++ GMX - die erste Adresse f?r Mail, Message, More +++


-------------------------------------------------------
SF.Net email is sponsored by: GoToMeeting - the easiest way to collaborate
online with coworkers and clients while avoiding the high cost of travel and
communications. There is no equipment to buy and you can meet as often as
you want. Try it free.http://ads.osdn.com/?ad_id=7402&alloc_id=16135&op=click
_______________________________________________
Gramps-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gramps-devel