[prev in list] [next in list] [prev in thread] [next in thread]
List: kopete-devel
Subject: Re: [Kopete-devel] Three more wishes. :)
From: Martijn Klingens <klingens () kde ! org>
Date: 2002-05-29 18:50:48
[Download RAW message or body]
On Wednesday 29 May 2002 18:06, Jeff Stuart wrote:
> Hmm... is there a todo somewhere that I can look at? And is the IRC port
> to KMM due for 0.4 or beyond?
Definitely beyond 0.4. I don't think we can do such huge API changes in one or
two days :-)
And there is an overall todo in the kopete source dir, but I think it's a bit
outdated, nor is there a clear roadmap for what will be done for 0.5 and what
has to wait.
On the whole I think the API issues are most urgent. KMM is a step in the
right direction, but it will need some changes to work well. Off the top of
my head:
- Support for multi-person chats
- Tabs support
- More events
- Better signaling when chats are opened/closed
- Better signalling of user activity ('User blah is typing a message', 'User
foo went offline', etc.)
- Don't store pointers to KopeteContacts, because contacts may come and go for
one reason or another, leaving dangling pointers behind. I speak from
personal experience with the MSN plugin... Instead, use a QString that can be
used as unique ID (Andres, you mentioned it before, I objected, and now I
take that back ;-). The QString should ideally be globally unique within
Kopete to simplify contact handling. libkopete can then manage all contacts
and do the necessary mapping to the actual contacts as used by the protocol.
Other API issues: identity support, i.e. more than one connection per
protocol. This requires a clear inventarisation of what is truly
protocol-specific and what is connection-specific. After that the *Protocol
classes can be split into two. With kconf_update the existing contact info
can be preserved in the settings (an absolute requirement or we will start
losing users!) and the settings dialog must be adjusted to support multiple
identities.
And another huge one: the contact list needs a serious redesign. I plan to
address most of this one myself, because it's urgently needed for MSN. But
with LinuxTag first it won't be before the end of June before I really have
something to show I think.
> Yes, that's VERY VERY ugly.. :D I'm not sure how gaim did it but... ;) I
> also know that they want to do a complete API rewrite but they've been
> saying that for a WHILE now.. ;)
I don't believe in more or less complete API rewrites. Reasons: it makes the
time between releases incredibly large, it makes it almost impossible to
accept and incorporate patches to older version and it almost certainly
introduces too much bugs in one huge burst. Examples of this:
KDE 1 -> 2
Gnome 1 -> 2
Netscape 4 -> Mozilla 1
Examples how it can also be done, by releasing often and gradually evolving
the API:
KDE 2 -> 3
StarOffice 5 -> OpenOffice 1
And I hope Kopete will take the same road of gradually phasing older code out
and introducing new code. Much needs a rewrite, but a rewrite at once usually
works out bad for open source. It is what you learn at school, but not very
practical in our case, because we have an established user base that expects
releases, something no computer class that I know ever took into
consideration :-)
Martijn
_______________________________________________
Kopete-devel mailing list
Kopete-devel@mail.kde.org
http://mail.kde.org/mailman/listinfo/kopete-devel
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic