Use existing sort functions instead of it's own.
Maybe use Pidgin signal "conversation-displayed" instead of your own placement function (may flicker...)