emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Cursor in non-selected windows is 1 pixel too small


From: YAMAMOTO Mitsuharu
Subject: Re: Cursor in non-selected windows is 1 pixel too small
Date: Sun, 05 Mar 2006 18:14:03 +0900
User-agent: Wanderlust/2.14.0 (Africa) SEMI/1.14.6 (Maruoka) FLIM/1.14.6 (Marutamachi) APEL/10.6 Emacs/22.0.50 (sparc-sun-solaris2.8) MULE/5.0 (SAKAKI)

>>>>> On Sat, 04 Mar 2006 23:19:40 +0100, address@hidden (Kim F. Storm) said:

>> Is it possible that this problem is not specific to MS-Windows?

> I believe it works for X, fails for w32, and ... MAC?

Also works for Mac, because some adjustment is made in the drawing
routine mac_draw_rectangle (in macterm.c) so it simulates
XDrawRectangle.

  SetRect (&r, x, y, x + width + 1, y + height + 1);
  FrameRect (&r);

By the way, Quartz 2D (as opposed to QuickDraw above) needs another
kind of adjustment to get the same result:

  CGContextStrokeRect (context,
                       CGRectMake (x + 0.5f, y + 0.5f, width, height));

> However, it does seem to make sense to fix the height returned by
> get_phys_cursor_geometry (don't subtract 1), and then fix the use in
> xterm.c and macterm.c(?) to subtract 1 from the returned height.
> (and leave w32termc. as is).

The W32 port seems to have an adjustment for the cursor width in
get_phys_cursor_geometry:

  wd = glyph->pixel_width - 1;
#ifdef HAVE_NTGUI
  wd++; /* Why? */
#endif

So, wherever we add adjustment, it should be done in a consistent way
between width and height, I think.

                                     YAMAMOTO Mitsuharu
                                address@hidden




reply via email to

[Prev in Thread] Current Thread [Next in Thread]