[Adium-devl] MSNp15 (libpurple im.pidgin.pidgin) in Adium 1.3.x

John Bailey rekkanoryo at rekkanoryo.org
Thu Sep 11 14:29:08 UTC 2008


Evan Schoenberg wrote:
> Adium is not Pidgin for Mac OS X.

Of course it isn't.  I realize Adium also isn't strictly a libpurple UI, but it
*is* a libpurple UI nonetheless.  As a libpurple contributor at the time, I
expected that libpurple plugins (which by definition may not use any specific
UI) would work, and was surprised a couple years ago when I found that they don't.

> Here's the problem: we could probably say, "a libpurple plugin which  
> requires no UI presentation except Account or Buddy actions and  
> requires no configuration can be loaded directly" if someone could wok  
> out how to perform such linkage dynamically (which I don't know how to  
> do but wouldn't be averse to). However, as far as I know, this  
> excludes the vast majority of plugins.

It would exclude the majority of useful plugins, yes.  For example, the
ListHandler plugin I mentioned requires the Request API to be implemented in the UI.

A protocol plugin, on the other hand, should be using very little if any of the
things Adium doesn't currently implement.  Protocol plugins have a specific type
flag set which can be used when probing to ignore other plugins if desired.
Granted, since libpurple provides the ability to have account options specified
by the prpl, this complicates matters.  I believe the HTTP method checkbox
that's been discussed recently is provided in such a manner.

> If you or someone else can write code to build whatever preferences  
> and presentation UI hooks and generators a libpurple plugin expects  
> without tying us to Pidgin's interface, that'd be awesome. We also  
> need some way to version such plugins against libpurple  
> (which .AdiumLibpurplePlugin bundles also need, for that matter). As  
> it stands, though, we simply couldn't provide an acceptable user  
> experience. Patches, as they say, welcome.

The Request and Notify APIs can be implemented in the UI however anyone chooses,
whether they be a thin wrapper that just assembles a simple dialog or something
much more complex.  There's no tying to Pidgin's or Finch's UI, although the API
does somewhat resemble our toolkits' capabilities.  These two APIs represent the
bulk of the existing libpurple plugins that Adium users might find useful.

I get the impression that you're saying it's impossible for an application to
generate a UI programmatically with OS X's toolkit.  Am I reading too much into
this?

All this said, if someone cared to write the necessary Adium glue for any of my
plugins, I certainly wouldn't be stupid enough to turn them down.  It's just not
an endeavor I wish to undertake myself.

I also get that no one is currently interested in making libpurple plugins work
properly in Adium (this was made *quite* clear in #adium-devl when the previous
discussion took place).

John

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 197 bytes
Desc: OpenPGP digital signature
URL: <http://adium.im/pipermail/devel_adium.im/attachments/20080911/4007ff8d/attachment.sig>


More information about the devel mailing list