Subject: 24.3; GTK scrollbar doesn't scroll proportionally when Line Wrapping is set to "Truncate Long Lines"

From: [email-masked]
Date: Tue, 30 Apr 2013 19:02:39 +0200

To reproduce:
  1. Visit a buffer with very long lines, and long enough to make Emacs render a
  vertical scrollbar
  2. In the Options menu, set the option "Line Wrapping" to "Truncate
  Long Lines"
  3. Drag the scrollbar to navigate the file. Emacs won't scroll
  proportionally, but rather get stuck at some points, seemingly at
  those very long lines, maybe as if they were still shown in multiple
  lines, even though now they don't.

In GNU Emacs 24.3.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.6.4)
 of 2013-03-18 on eric
Windowing system distributor `The X.Org Foundation', version 11.0.11401000
Configured using:
 `configure '--prefix=/usr' '--sysconfdir=/etc' '--libexecdir=/usr/lib'
 '--localstatedir=/var' '--with-x-toolkit=gtk3' '--with-xft'
 'CFLAGS=-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector
 --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2'
 'LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro''

Important settings:
  value of $LANG: ca_ES.utf8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: Slim

Minor modes in effect:
  tooltip-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <help-echo> <down-mouse-1> 
<mouse-1> <help-echo> <help-echo> <help-echo> <help-echo> 
<help-echo> C-x 1 <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> <mouse-1> 
<mouse-1> M-x r e p o r t - e m a c s - b u g <ret
urn>

Recent messages:
Quit
Making completion list...
byte-code: End of buffer
Using vacuous schema
Truncate long lines enabled
Truncate long lines disabled
byte-code: End of buffer [2 times]
byte-code: Beginning of buffer [2 times]
call-interactively: End of buffer
Undo!

Load-path shadows:
/usr/share/emacs/site-lisp/cedet/speedbar/sb-image hides /usr/share/emacs/24.3/lisp/sb-image
/usr/share/emacs/site-lisp/cedet/speedbar/dframe hides /usr/share/emacs/24.3/lisp/dframe
/usr/share/emacs/site-lisp/cedet/common/ezimage hides /usr/share/emacs/24.3/lisp/ezimage
/usr/share/emacs/site-lisp/cedet/speedbar/speedbar hides /usr/share/emacs/24.3/lisp/speedbar
/usr/share/emacs/site-lisp/cedet/eieio/eieio-datadebug hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio-datadebug
/usr/share/emacs/site-lisp/cedet/eieio/eieio-speedbar hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio-speedbar
/usr/share/emacs/site-lisp/cedet/eieio/eieio-opt hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio-opt
/usr/share/emacs/site-lisp/cedet/eieio/chart hides /usr/share/emacs/24.3/lisp/emacs-lisp/chart
/usr/share/emacs/site-lisp/cedet/eieio/eieio-base hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio-base
/usr/share/emacs/site-lisp/cedet/eieio/eieio-custom hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio-custom
/usr/share/emacs/site-lisp/cedet/eieio/eieio hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio
/usr/share/emacs/site-lisp/cedet/common/pulse hides /usr/share/emacs/24.3/lisp/cedet/pulse
/usr/share/emacs/site-lisp/cedet/semantic/semantic hides /usr/share/emacs/24.3/lisp/cedet/semantic
/usr/share/emacs/site-lisp/cedet/ede/ede hides /usr/share/emacs/24.3/lisp/cedet/ede
/usr/share/emacs/site-lisp/cedet/common/cedet-global hides /usr/share/emacs/24.3/lisp/cedet/cedet-global
/usr/share/emacs/site-lisp/cedet/common/mode-local hides /usr/share/emacs/24.3/lisp/cedet/mode-local
/usr/share/emacs/site-lisp/cedet/common/cedet hides /usr/share/emacs/24.3/lisp/cedet/cedet
/usr/share/emacs/site-lisp/cedet/common/data-debug hides /usr/share/emacs/24.3/lisp/cedet/data-debug
/usr/share/emacs/site-lisp/cedet/common/cedet-idutils hides /usr/share/emacs/24.3/lisp/cedet/cedet-idutils
/usr/share/emacs/site-lisp/cedet/srecode/srecode hides /usr/share/emacs/24.3/lisp/cedet/srecode
/usr/share/emacs/site-lisp/cedet/common/cedet-cscope hides /usr/share/emacs/24.3/lisp/cedet/cedet-cscope
/usr/share/emacs/site-lisp/cedet/common/cedet-files hides /usr/share/emacs/24.3/lisp/cedet/cedet-files
/usr/share/emacs/site-lisp/cedet/common/inversion hides /usr/share/emacs/24.3/lisp/cedet/inversion

Features:
(shadow sort gnus-util mail-extr emacsbug message idna format-spec
rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums
mm-util mail-prsvr mail-utils nxml-uchnm rng-xsd xsd-regexp rng-cmpct
rng-nxml rng-valid rng-loc rng-uri rng-parse nxml-parse rng-match rng-dt
rng-util rng-pttrn nxml-ns nxml-mode nxml-outln nxml-rap nxml-util
nxml-glyph nxml-enc xmltok sh-script smie executable term disp-table
ehelp electric ring misearch multi-isearch vc-git slim-mode help-mode
easymenu slim-mode-autoloads package time-date tooltip ediff-hook
vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image
regexp-opt fringe tabulated-list newcomment lisp-mode register page
menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock
syntax facemenu font-core frame cham georgian utf-8-lang misc-lang
vietnamese tibetan thai tai-viet lao korean japanese hebrew greek
romanian slovak czech european ethiopic indian cyrillic chinese
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer loaddefs
button faces cus-face macroexp files text-properties overlay sha1 md5
base64 format env code-pages mule custom widget hashtable-print-readable
backquote make-network-process dbusbind dynamic-setting
system-font-setting font-render-setting move-toolbar gtk x-toolkit x
multi-tty emacs)