Sorry, it just wasn't maintainable. The problem is the current libotr
API. I'm sick of working around the strange libotr API, sick of getting
HTML messages, sick of losing messages. The final argument for
completely removing it was that we can't get the message ID of a sent
msg anymore - which we need. I tried to work around this as well, but
there seems to be no way to wait for a signal in glib the way I would
need it for the workaround (I wanted to emit a signal in inject_message
and then wait for it after the call to otr_message_fragment_and_send
so the signal can pass us the message id). And the last reason is that
we're heading towards a new release and thus want to stabilize the code,
thus don't have time to work around even more libotr API strangeness.
I will give feedback to the libotr developers, who are currently
planning a new API, so that we can hopefully see OTR support once again
as soon as libotr4 is released.
Kjell already announced that he will continue his branch:
https://code.launchpad.net/~afflux/gajim/otr
I really hope the libotr devs will provide a sane API with libotr4 so
we can integrate OTR support again.
Oh, and I added one more try/except block for OS X.
* Buttons get disabled as needed now [we still need something to update
this while the window is open (it might change, for example, the
contact was added)].
* Remove the new accelerators in destroy_menu().
* Move some OTR stuff.
* Don't hide OTR from the user if not available, but set unsensitive.
And fix that stupid bug that glade will introuce again and again
(it's just to stupid to keep the image None and replaces it with
gtk-missing-image, so you always see a stupid image as avatar when
there's none)
* Moved some code so we can get rid of a few ifs.
What still needs to be done for the GUI redesign to be complete:
Don't show entries in the actions menu that have buttons.
* Make usage of history_window (hopefully) more straight forward. (widget placement, focus, shown nicks, completion...)
* Kill two bugs where wrong nicknames were shown in chathistory and results window.
* Rename functions to make clear that their are intended for private usage only.