Review Request: Enhance icon behaviour of text ui

Daniele Elmo Domenichelli daniele.domenichelli at gmail.com
Mon Jan 30 12:22:35 UTC 2012



> On Jan. 28, 2012, 4:06 p.m., Martin Klapetek wrote:
> > 1) Main icon is always the same (telepathy-kde) and adds an overlay when a new messages is received
> > 
> > The main window icon of text ui should imho be the presence icon. Two reasons: 1) Contact list has the same icon; this would become unclear on icon-only task managers or even the default one, when you have so many windows opened that you can barely see the text. You wouldn't know which window is which. 2) It's nice that you can see the presence right in the taskbar. Use-case: I want to write message to David, I look down at my tasbakr, I see he's busy/away so I won't disturb him now. When he comes online, I can see this right away by the icon change in the taskbar.
> > 
> > In the light of the above - this point is 'no' from me.
> > 
> > 2) Tab bar is always shown
> > 
> > Not sure you actually need this. The typing notification is always shown in window title, so {c|s}ould the "you've got new message" icon. If you have only one chat opened, it takes vertical space for nothing and we shouldn't waste it (especially netbook users etc wouldn't like it).
> > 
> > So this point is not as big 'no' as the first one, but still rather 'no'-ish.
> > 
> > 3) The user icon has an overlay if the user is typing or if there is an unread message (unread takes precedence over typing because I tried with 2 overlays and it looks horrible)
> > 4) Give the precedence to new messages over typing for name colour
> > 
> > So if I got this right - I get new message and the user is typing, I won't see him typing? That's not too nice. Use-case: The user sends me a message to a window I have on a second screen, but not focused (can be on the same screen obviously). The message ending is ambiguous and I'm not sure if that was really the message ending or if he's writing a follow-up message. Quickly looking at the icon/tab color would give me a clue right away, but with your proposed solution, I would see only the new message icon and I would have to give focus to the window to dismiss the new message icon and see if the user is typing.
> > 
> > To sum it up - Improvements: yes. This proposal: sorry.
> 
> David Edmundson wrote:
>     " I see he's busy/away so I won't disturb him now. When he comes online, I can see this right away by the icon change in the taskbar." 
>     You can talk to me whenever :-D. I'm not sure that use case is great, but I agree we shouldn't clash with the contact list, what do any other clients do?
>     
>     I think we need some way of making sure you can see when someone is typing AND has an unread message. Not just one or the other..but how?
>     
>     Anyway, I'll try this branch for a week, then see what it's like. I like the idea of the unread message icon somewhere.
>
> 
> Martin Klapetek wrote:
>     "You can talk to me whenever :-D. I'm not sure that use case is great, but I agree we shouldn't clash with the contact list, what do any other clients do?"
>     
>     And I sure will. But consider also offline presence. Use-case v2: The user tells you "wait, I need to go away/restart computer/change my ram/I'm loosing net connection" and goes offline, you just switch to another window and wait for your friend to get online. You don't have to check anything because you can see that right away from the taskbar. So he comes online, you just switch back to the window and continue the chat. I personally consider this a very nice feature. And not only for stalking.
>     
>     "I think we need some way of making sure you can see when someone is typing AND has an unread message. Not just one or the other..but how?"
>     
>     One solution could be a good looking set of overlays. Such set, that actually works together. So you can have the presence icon, message overlay over that AND a typing icon over both of these. If we had three icons that work together when laid over themselves, it would be total win.

I've never seen any client showing the status as main icon, and in my opinion, it doesn't make sense for a tabbed window. What Martin is talking about is in my opinion what the "stalker" plasmoid should do, not the chat window... Anyway let's try to consider everything and come to a solution

We have several things to consider here

a1) Main window icon
a2) One or more possible overlays for main window icon. Normally having more than one overlay is quite ugly, but using the status as bottom-left overlay is not that bed (see http://wstaw.org/m/2012/01/30/snapshot43.png and http://wstaw.org/m/2012/01/30/snapshot44.png) so I think we can have 2 overlays
b) Main window title (most tabbed applications show a list of the tabs + " - Application Name", so I suggest to do the same)
c) Show/hide tab bar
d1) Tab icon
d2 One possible overlay for tab icon. If we keep the status icon as overlay, the overlay on the bottom right looks horrible.
e1) Tab title
e2) Colour for tab title
f) (Skype adds a grey line to the text chat when someone is writing and removes it later but I don't know if this is possible for the text ui at the moment so let's forget about this option)

We want to show:

1) Alias of the contact
2) When we have an unread message
3) When contact is typing
4) Status of the contact


So my proposal is this:

- For single tab windows:

a1) Icon is always "telepathy-kde"
a2) Overlays:
    - external top-left "unread messages"
    - bottom left "user status" or "user is typing" (typing takes precedence over status)
b) To be honest I don't like the "Typing... " string in front, it takes a lot of space and I cannot see the name of the person I suggest to use a postponed "[typing]" after the name (like kate does for modified files, for example), so I suggest contact name + <"[typing]"> + " - KDE Telepathy" (or "Text UI" or some other string)
c) Do not display the tab bar for single tab windows (d and e cannot be set)

- For multiple tabs windows:

a1) Icon is always "telepathy-kde"
a2) Overlays
    - external top-left unread messages in _any_ tab
    - bottom left same as for single tab but for current tab only 
b) There are different behaviours here, some app show a list of tabs, some others just show the shown one. Since we are displaying informations about the status of the user I suggest to consider just current tab, i.e. same as for single tab windows 
c) obviously display tabs :)
d1) Use the status as icon (we could use the telepathy-kde icon here as well to have 2 different overlays, but it doesn't look nice to me)
d2) Overlays:
    - external top-left "unread messages" or "user is typing" (unread takes precedence over typing)
e1) Title is always contact's name
e2) - different colours for "unread messages" or "user is typing" (I'd say to be coherent with icon, so unread takes precedence over typing, and you get the info if user is typing from the main title and main icon, but we can do the opposite)


- For group chats we have one extra icon per contact

a1) Icon is always "telepathy-kde"
a2) Overlays
    - external top-left unchanged
    - bottom left we probably don't want to know the status in this case, so just leave the typing icon here if any user is typing.
b) Chat channel name + "[typing]" if any user is typing + " - KDE Telepathy"
d1) (when shown) Status icon doesn't make sense here, we could have a "room" icon or use "telepathy-kde"
d2) (when shown) Overlays:
    - external top-left just for "unread messages" (we display the "typing status" for single users)
e1) (when shown) Title is always chat room name
e2) (when shown) different colours just for "unread messages" (we display the "typing status" for single users)
Then we have the icon for the single user that is the status and the external top-left overlay for "user is typing"

I hope I didn't forget anything... :D

What do you think?


- Daniele Elmo


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/103811/#review10175
-----------------------------------------------------------


On Jan. 28, 2012, 2:30 p.m., Daniele Elmo Domenichelli wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/103811/
> -----------------------------------------------------------
> 
> (Updated Jan. 28, 2012, 2:30 p.m.)
> 
> 
> Review request for Telepathy and David Edmundson.
> 
> 
> Description
> -------
> 
> We spoke about this some time ago on irc...
> Currently the behaviour of the main icon is not really useful.
> With this patch the icon will change when you receive a message, and it will make it easier to understand that you have an unread message (at the moment if you don't notice the blinking app in the task manager it's not easy to spot)
> 
> This set of patches do the following (you may agree or disagree with some of them, I'm not really convinced by all of them, so let's discuss it)
> 
> 1) Main icon is always the same (telepathy-kde) and adds an overlay when a new messages is received
> 2) Tab bar is always shown
> 3) The user icon has an overlay if the user is typing or if there is an unread message (unread takes precedence over typing because I tried with 2 overlays and it looks horrible)
> 4) Give the precedence to new messages over typing for name colour
> 
> branch is here: http://quickgit.kde.org/index.php?p=clones%2Fktp-text-ui%2Fddomenichelli%2Fktp-text-ui.git&a=shortlog&h=refs/heads/iconEnhancement
> 
> 
> Diffs
> -----
> 
>   app/chat-window.h 4afa8a1b8d6ee92f75197bf57895f3a57526c516 
>   app/chat-window.cpp 59db66db442dffbb3352ca1c66133f1c461d1b59 
>   lib/chat-widget.cpp 872de0299cd0eb11d61f9bab6ba12fe493336207 
> 
> Diff: http://git.reviewboard.kde.org/r/103811/diff/diff
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Daniele Elmo Domenichelli
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-telepathy/attachments/20120130/70168c38/attachment.html>


More information about the KDE-Telepathy mailing list