GNOME Bugzilla – Bug 657278
remove chats after all read and inactive for a while
Last modified: 2021-07-05 14:10:00 UTC
Chats are bursty. You will asynchronously talk to someone for a while but then you may finish without "ending". Basically trail off. It is important for a "conversation" to remain as long as their are unread/unresponded messages. But once you respond and a time has passed there is little need to keep it around taking up space and adding clutter. For example, Cosimo and I chatted a while to figure out where to go grab lunch but when I came back from lunch our conversation was still in the tray. It doesn't need to be. On the other hand, having some people pinned to the tray may be useful. I'm sure my mom (to my dismay) would want to pin me to the tray to contact me as quickly as possible. We can do this from the options menu that we currently use to remove the conversation. Having a "Keep in Tray" or similar would be nice. As usual with timings we may have to iterate but I'm thinking that something around 15-20 minutes might be ok.
This should be pretty easy to implement: - Each time all the incoming messages are acked: start/reset the timer - Each time an outgoing message is sent: start/reset the timer - Each time we receive an incoming message: stop the timer - Once the timer times out remove the chat source (if it's not pinned)
if notification timedout and got closed, then I send a message from empathy chat window, do we expect the notification to appear again?
Created attachment 196609 [details] [review] telepathyClient: auto-close chat notification when inactive This also add a "Spin" item in the context-menu to disable auto-closing behaviour
Created attachment 196610 [details] how it looks like Not sure that's really nice looking, but here it is :)
(In reply to comment #2) > if notification timedout and got closed, then I send a message from empathy > chat window, do we expect the notification to appear again? I'd say yes, as the conversation is re-actived.
(In reply to comment #3) > This also add a "Spin" item in the context-menu to disable > auto-closing behaviour Oh, on IRC I thought this was a typo - do you really mean "Spin" rather than "Pin"? (and no, I don't think we should use a switch there - how about toggling the label text ("Pin"/"Unpin")?)
argh, I English-noobed. Pin of course :) Yep, changing label would be nicer I guess.
I don't really like using pin as a verb here. I'd rather use "keep". "Keep in Tray" or something similar.
What would be the opposite in that case - "Don't keep in tray"?
Maybe use the same UI as the one to add an app as favorite in the overview?
Perhaps "Keep in Tray"/"Remove when Idle"?
Review of attachment 196609 [details] [review]: I think there's interest in auto-expiry at the Telepathy level as well. I don't think we really need a "Pin" menu item now that we have contact search, from where it's fairly easy to open a contact. ::: js/ui/telepathyClient.js @@ +557,3 @@ + this._stopCloseTimeout(); + if (!this._spinned && this._pendingMessages.length == 0) { + this._closeTimeoutId = Mainloop.timeout_add_seconds(15*60, This needs to be in a constant at the top.
GNOME is going to shut down bugzilla.gnome.org in favor of gitlab.gnome.org. As part of that, we are mass-closing older open tickets in bugzilla.gnome.org which have not seen updates for a longer time (resources are unfortunately quite limited so not every ticket can get handled). If you can still reproduce the situation described in this ticket in a recent and supported software version, then please follow https://wiki.gnome.org/GettingInTouch/BugReportingGuidelines and create a new ticket at https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/ Thank you for your understanding and your help.