SrainApp / srain

Modern IRC client written in GTK
https://srain.silverrainz.me/
Other
305 stars 34 forks source link

no auto-scrolling nor hint that new messages arrived below viewport #382

Closed djasa closed 10 months ago

djasa commented 2 years ago

srain (or at least my installation) does nothing with channel/query messages viewport when new messages arrive. There's

Switching to app from notification only to see the same message view as last time is pretty awkward.

Version: 1.4.0/flatpak @ fedora 37

SilverRainZ commented 2 years ago

Actually, srain does something. If the window is activated, it assumes your eyes focus on it, so scroll the message list to the bottom, otherwise, it does nothing.

GTK3's list box is strange in viewport control, adding an unread message delimiter may helpful, also, it may not be coming soon.

djasa commented 2 years ago

Actually, srain does something. If the window is activated, it assumes your eyes focus on it, so scroll the message list to the bottom, otherwise, it does nothing.

My typical modus operandi is that IRC client is maximized on different virtual desktop. So I can well imagine that gnome-shell may somehow let it think that it's activated while in fact it is not (and I only jump to it via notification or switching the desktop depending if my fingers are on keyboard or on touchpad/mouse).

zaitcev commented 1 year ago

It is annoying indeed.

BTW, a related bug is that the OSD with the navigation does not always appear. In the attached screencap, you can see the scrollbar indicate (barely - the main bug is that this indication is not enough) that something is outside the viewport, but the OSD is missing.

x41_srain_no_osd

zaitcev commented 1 year ago

It is my opinion that Srain should track down whenever possible, for all windows, and only stick to a position in the scrollback if and only if the user initiated this action by scrolling.

SilverRainZ commented 1 year ago

It is my opinion that Srain should track down whenever possible, for all windows, and only stick to a position in the scrollback if and only if the user initiated this action by scrolling.

Looks better than the current strategy. How about placing a widget for indicating the user's last read position?

BTW, a related bug is that the OSD with the navigation does not always appear. In the attached screencap, you can see the scrollbar indicate (barely - the main bug is that this indication is not enough) that something is outside the viewport, but the OSD is missing.

This indicator is only shown when any message is selected, do you think it should show up more often?