[OTR-dev] pidgin-otr rewrite

Howard Chu hyc at symas.com
Sat Dec 17 10:13:19 EST 2011


[Resending; I attached the patch before but at 80KB it was too big for the 
mailing list to accept. Contact me if you want a copy of my work-in-progress 
patch.]

I've spent a couple days rewriting the pidgin-otr-3.2.0 plugin to only use 
libpurple, so that the plugin will work with finch. I've just now gotten 
something running, so I thought I'd post a snapshot of my changes to get some 
early feedback. You'll also need the latest finch source with my patch here

http://developer.pidgin.im/ticket/14818

otherwise the conversation menu won't be installed.

I've been trying to preserve the UI abstraction of the original code, but it's 
pretty awkward. I believe ultimately the abstraction could be removed, since 
the libpurple version will work in both finch and pidgin. (Even if its UI is 
not as sophisticated as the original pidgin code...)

The two sections that are still unimplemented are management of buddies' 
fingerprints, and authentication of buddies.

For the latter, I believe I'm just going to add another sub-menu to the 
conversation menu, with three choices "Secret Question" (SMP), "Shared 
Secret", and "Fingerprint" since I don't think I can update a dialog in 
realtime while changing a combo box like the pidgin/GTK code does.

For the fingerprint list I believe the purple_notify_searchresults() API will 
let me create the multi-column list of fingerprint info, and the appropriate 
action buttons to go with.

Going with the generic libpurple code sacrifices some of the widgets of the 
pidgin UI. Personally I can live with that, especially since I almost always 
use Finch anyway.
-- 
    -- Howard Chu
    CTO, Symas Corp.           http://www.symas.com
    Director, Highland Sun     http://highlandsun.com/hyc/
    Chief Architect, OpenLDAP  http://www.openldap.org/project/




More information about the OTR-dev mailing list