Subject: bug#7390: closed (Re: bug#7390: 24.0.50; pos-col-row gives incorrect row)

From: [email-masked] (GNU bug Tracking System)
Date: Sat, 13 Nov 2010 21:06:03 +0000

Your bug report

#7390: 24.0.50; pos-col-row gives incorrect row

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
7390: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7390
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#7390: 24.0.50; pos-col-row gives incorrect row
From: Eli Zaretskii <[email-masked]>
To: [email-masked], [email-masked]
Date: Sat, 13 Nov 2010 23:10:56 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

> Date: Sat, 13 Nov 2010 21:02:13 +0200
> From: Eli Zaretskii <[email-masked]>
> Cc: [email-masked]
> 
>   emacs -Q
>   C-x b foo RET
>   M-: (setq header-line-format "foo") RET
>   M-x picture-mode RET
> 
> Now type 2 lines of text, and click the mouse on the first line.

I see that Chong modified picture.el to not use posn-col-row.  But I
think that posn-col-row should pay attention to the existence of the
header line, so I fixed that as well (on the emacs-23 branch).

Subject: 24.0.50; pos-col-row gives incorrect row
From: "Drew Adams" <[email-masked]>
To: <[email-masked]>
Date: Sat, 13 Nov 2010 09:55:15 -0800
List-Id: <debbugs-submit.debbugs.gnu.org>

emacs -Q
 
Load David Ponce's tabbar.el version 1.3, from here:
http://sourceforge.net/projects/emhacks/files/tabbar/1.3/tabbar-1.3.tar.gz/downl
oad
 
M-x tabbar-mode
 
That adds a tab bar to each window.  I don't see anything in the
tabbar.el code that should perturb the behavior of pos-col-row, but
something does.  I'm no expert on the tabbar code or pos-col-row.  I
hope that someone can debug this and fix it.  My guess is that
pos-col-row is incorrectly thinking that the tab bar is part of the
buffer.
 
The easiest way to see the problem is to do this:
 
M-x picture-mode
 
Click mouse-1 somewhere - e.g. the fourth char in some buffer.  The
result is that the cursor (point) is moved down one line from where you
clicked, so the active region shows from the click position to point
(one line down).
 
Do the same thing with tabbar-mode turned off, and there is no problem:
point does not move down a line: it is exactly where you clicked.
 
The problem arises in picture-mouse-set-point, where it calls
pos-col-row: the wrong row is returned.  This is presumably because it
is counting the tabbar row, which is not part of the buffer.
 
Dunno whether this is a bug in pos-col-row (that would be my guess) or
in tabbar.el.  I shouldn't think that tabbar.el should need to do
something to compensate and make pos-col-row DTRT.  But again, I'm no
expert on this.

In GNU Emacs 24.0.50.1 (i386-mingw-nt5.1.2600)
 of 2010-11-09 on 3249CTO
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (4.4) --no-opt --cflags
-Ic:/imagesupport/include'