Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 74439 - gaim conversation scroll bar moves to the top instead to the end when a new message is received or sent
Summary: gaim conversation scroll bar moves to the top instead to the end when a new m...
Status: RESOLVED WORKSFORME
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gaim Bugs Crew
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-12-14 19:29 UTC by Perry Lu
Modified: 2005-03-24 08:04 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
Patch to gtk_text_view_scroll_to_mark() as called in void gtk_imhtml_scroll_to_end(GtkIMHtml *imhtml) (gtkimhtml-patch-scroll.diff,493 bytes, patch)
2005-03-22 20:23 UTC, Drew Winstel
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Perry Lu 2004-12-14 19:29:34 UTC
I've been having this bug for quite a while now, every time when I have a conversation, the scroll bar would stop scroll to the end, instead, it scrolls backward to a fixed location whenever a message is received or sent. I've did some debugging myself, it boils down to the following line: 
gtk_text_view_scroll_to_mark(GTK_TEXT_VIEW(imhtml), imhtml->scrollpoint, 0, TRUE, 1.0, 0.0);
in function: void gtk_imhtml_scroll_to_end(GtkIMHtml *imhtml)
in class: GtkIMHtml (gtkimhtml.c)
I didn't check whether it's the bug with the GTK+ API function, or the problem with the variable values.

I'm using gaim-1.1.0, gtk+-2.4.14.

Reproducible: Always
Steps to Reproduce:
1.start a conversation on gaim with any protocal
2.continue the conversation until the scroll bar handle is about half the size of the scroll bar itself
3.continue even further after that(this bug would occur)

Actual Results:  
the conversation window no longer moves to the end after every message, it jumps
backward to a fixed location.

Expected Results:  
the conversation window should always moves to the end.
Comment 1 Don Seiler (RETIRED) gentoo-dev 2005-01-14 11:39:30 UTC
Please paste results of `emerge info`.  Also are you using the history plugin?  I'm unable to duplicate this behavior.
Comment 2 Don Seiler (RETIRED) gentoo-dev 2005-01-14 11:40:05 UTC
Please let me know all other plugins you have loaded.
Comment 3 Perry Lu 2005-01-14 12:36:59 UTC
Portage 2.0.51-r11 (default-linux/x86/2004.3, gcc-3.3.5, glibc-2.3.4.20040808-r1, 2.6.10-gentoo-r1 i686)
=================================================================
System uname: 2.6.10-gentoo-r1 i686 Intel(R) Pentium(R) 4 CPU 2.80GHz
Gentoo Base System version 1.6.8
Python:              dev-lang/python-2.3.4 [2.3.4 (#1, Nov  1 2004, 21:57:14)]
dev-lang/python:     2.3.4
sys-devel/autoconf:  2.59-r6, 2.13
sys-devel/automake:  1.8.5-r2, 1.5, 1.4_p6, 1.6.3, 1.7.9, 1.9.4
sys-devel/binutils:  2.15.92.0.2-r2
sys-devel/libtool:   1.5.10-r2
virtual/os-headers:  2.6.8.1-r2
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS="-O3 -march=pentium4 -mfpmath=sse,387 -msse3 -pipe -fomit-frame-pointer -fprefetch-loop-arrays -funroll-loops -fforce-addr"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O3 -march=pentium4 -mfpmath=sse,387 -msse3 -pipe -fomit-frame-pointer -fprefetch-loop-arrays -funroll-loops -fforce-addr"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="16bit X aac aalib acpi alsa arts artswrappersuid avi berkdb bitmap-fonts cdr cdrom cjk clamav codecs crypt css cups dga dhcp dio directfb divx4linux dvd dvdr encode esd evo f77 fam fbcon flac font-server fortran freetype ftp gatos gdbm gif gimp gimpprint gnome gpm gstreamer gtk gtk2 gtkhtml hal icq ieee1394 imagemagick imlib ipv6 java joystick jpeg junit latex ldap libclamav libg++ libwww mad maildir mikmod mime mmx mmx2 mng monkey mono motif mozilla moznocompose moznoirc moznomail mozsvg mp3 mpeg mpeg2 mpeg4 mplayer msn mysql ncurses net nls no_wxgtk1 nobsh oggvorbis opengl pam pdflib perl png posix python quicktime readline real rtc samba sdk sdl slang spamassassin spell sse sse2 ssl svg svga tcltk tcpd tetex theora tiff truetype truetype-fonts type1 type1-fonts unicode usb v4l v4l2 vim-with-x x86 xchatdccserver xinetd xml xml2 xmms xprint xscreensaver xv xvid yahoo zlib zvbi video_cards_radeon linguas_en linguas_ja linguas_zh_TW.Big5 linguas_zh_CN.GBK"
Unset:  LDFLAGS, PORTDIR_OVERLAY
Comment 4 Perry Lu 2005-01-14 12:38:02 UTC
I have Auto-Reconnect, Extended Preferences, System Tray Icon loaded. I'm not using the history plugin.
Comment 6 Don Seiler (RETIRED) gentoo-dev 2005-01-14 12:54:14 UTC
Can you try without the Extended Preferences?

I'm not sure if your bug here is a duplicate of either of those upstream bugs.
Comment 7 Perry Lu 2005-01-14 13:32:24 UTC
The bug persists. I installed Extended Preference just recently, in a desperate attempt trying to fix the problem.
Comment 8 Drew Winstel 2005-02-15 19:12:13 UTC
Seems to still be present, Gaim 1.1.2.  No combination of plugins has any effect.

Portage 2.0.51-r15 (default-linux/x86/2004.0, gcc-3.3.5, glibc-2.3.4.20040808-r1, 2.6.10-ck4 i686)
=================================================================
System uname: 2.6.10-ck4 i686 Intel(R) Pentium(R) 4 CPU 2.40GHz
Gentoo Base System version 1.4.16
Python:              dev-lang/python-2.3.4-r1 [2.3.4 (#1, Feb 11 2005, 15:26:08)]
dev-lang/python:     2.3.4-r1
sys-devel/autoconf:  2.59-r6, 2.13
sys-devel/automake:  1.7.9-r1, 1.8.5-r3, 1.5, 1.4_p6, 1.6.3, 1.9.4
sys-devel/binutils:  2.15.92.0.2-r1
sys-devel/libtool:   1.5.10-r4
virtual/os-headers:  2.4.21-r1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-O3 -pipe -mcpu=i686 -march=pentium4 -fomit-frame-pointer -mfpmath=sse,387"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O3 -pipe -mcpu=i686 -march=pentium4 -fomit-frame-pointer -mfpmath=sse,387"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig candy ccache distlocks sandbox sfperms"
GENTOO_MIRRORS="http://mirror.datapipe.net/gentoo http://mirror.datapipe.net/gentoo http://mirrors.acm.cs.rpi.edu/gentoo/ http://mirrors.tds.net/gentoo http://gentoo.chem.wisc.edu/gentoo/"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.us.gentoo.org/gentoo-portage"
USE="x86 X aalib acpi alsa apm audiofile avi berkdb bitmap-fonts cdparanoia cdr clisp crypt cups curl directfb divx4linux dvd dvdr dvdread encode esd f77 fam fbcon fbdev flac font-server foomaticdb fortran gcj gdbm gif gimpprint glx gnome gpm gtk gtk2 gtkhtml i8x0 imagemagick imlib java jpeg junit kde ldap libg++ libwww mad mikmod mmx mmx2 mng motif mozilla mozsvg mpeg mysql nas ncurses nls nvidia offensive oggvorbis ooo-kde opengl oss pam pcre pda pdflib perl png ppds python qt quicktime readline real rtc samba sdl slang speex spell sse sse2 ssl svga tcltk tcpd theora tiff truetype truetype-fonts type1-fonts wmf xfs xine xinerama xml xml2 xmms xprint xscreensaver xv xvid zlib"
Unset:  ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS, PORTDIR_OVERLAY
Comment 9 Robert Gloven 2005-03-03 18:21:17 UTC
Myself and a friend of mine have this problem as well.  It's prevalent on gaim 1.1.4, no plugins installed.  Is anyone looking at this?
Comment 10 Drew Winstel 2005-03-22 19:43:31 UTC
I don't know, but it hasn't been fixed in 1.2.0.
Comment 11 Drew Winstel 2005-03-22 20:23:05 UTC
Created attachment 54200 [details, diff]
Patch to gtk_text_view_scroll_to_mark() as called in void gtk_imhtml_scroll_to_end(GtkIMHtml *imhtml)

http://developer.gimp.org/api/2.0/gtk/GtkTextView.html#gtk-text-view-scroll-to-mark


The y-value (final argument of gtk_text_view_scroll_to_mark()) should be set to
1.0, which equals bottom. 

Note that this applies to gaim-1.2.0/src/gtkimhtml.c.

Effect on gaim:
It now scrolls back to the point where the conversation previously was (so if
you have the scrollbar 10 lines from the bottom, it keeps the bottom of the
window such that the last line you saw previously is still at the bottom of the
window.
Comment 12 Don Seiler (RETIRED) gentoo-dev 2005-03-23 07:52:47 UTC
https://sourceforge.net/tracker/index.php?func=detail&aid=1010556&group_id=235&atid=300235

This patch has already been rejected.

Care to rebuild gtk and gaim with some saner CFLAGS and try again?
Comment 13 Perry Lu 2005-03-23 17:27:32 UTC
the problem was solved after I removed "-mftpmath=sse,387" from CFLAGS and rebuilt gtk+.

seems that's what's causing the bug.
Comment 14 Drew Winstel 2005-03-23 19:19:09 UTC
I re-merged GTK+ with CFLAGS='-march=pentium4 -O2' and it seems to work.  I assume the removal of -mfpmath=sse,387 would do the trick for me as well.
Comment 15 Don Seiler (RETIRED) gentoo-dev 2005-03-24 08:04:28 UTC
I'm closing this then.  Honestly, those CFLAGS were just insane.  I don't see a need to even notify gnome.