unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Ken Manheimer" <ken.manheimer@gmail.com>
Cc: rms@gnu.org, emacs-devel@gnu.org
Subject: Re: cursor doesn't show through transparent images in emacs 22, unlike emacs 21
Date: Thu, 24 Aug 2006 10:20:06 -0400	[thread overview]
Message-ID: <2cd46e7f0608240720x67ffefa5m121add6580aeef67@mail.gmail.com> (raw)
In-Reply-To: <m3fyfm4bgp.fsf@kfs-l.imdomain.dk>

On 8/24/06, Kim F. Storm <storm@cua.dk> wrote:
> "Ken Manheimer" <ken.manheimer@gmail.com> writes:
>
> > as i think i suggested in a previous message, the solution i would
> > prefer would be to have some way to qualify icons so that they get a
> > solid cursor in their transparent areas, and the default would be to
> > have it inactive.  eg, a qualifier for xpm, png, gif, and other
> > transparent-capable images, like :solid-cursor:
> >
> > `:solid-cursor-shows BOOLEAN'
> >       When true, the cursor will appear solid through the transparent
> > regions of the image
> >       when the cursor is situated on the image and the window is
> > active.  The default is for
> >       only the cursor border to show, whether or not the window is active.
> >
> > by having the default be off, then the disruption of oversize blinking
> > icons will be avoided.
>
> Below is a patch which adds a new image :cursor property where you can
> specify the actual type of cursor to show on the image in the selected
> window (that is more flexible than your suggestion, and just as easy
> to do).

yay!

> Due to limitations in what cursors can be displayed for an image (bar
> and hbar both gives a solid box??), it only works to set it to
> box, hollow, and t (which means use whatever cursor-type is in the
> buffer).
>
>
> As an additional part of the patch, it only changes the cursor
> from box to hollow for images which as greater than 4 times the
> frame's default font size i.e. small images will behave like
> normal glyphs with respect to the box cursor.
>
> We can use either or both methods -- WDYT ?

if i'm understanding correctly, i think either or both methods will
satisfy my needs - thanks!

i'm not clear how the two interact - will the :cursor setting only
affect glyphs larger than 4 times the frame's default font size?  or
does it mean that glyphs will have particular cursors if they either
are 4 times the size or if they have an explicit :cursor display
setting?  my concern is settled either way, but the documentation may
be complex if there's no simple answer.

i also wonder whether it will be confusing to have the option for
graphics formats that don't support transparency, but have no strong
opinions about this.

i agree w/david about making the scaling threshold a parameter.  that
could actually help with documentation by providing an artifact that's
conveys some of the explanation.  i would lean towards a scaling
factor rather than absolute pixels/points, but haven't thought that
through.

by the way, i (eagerly) applied your patch by hand, but am unable to
compile - i'm getting complaints about QCursor being undeclared:

xdisp.c: In function `get_window_cursor_type':
xdisp.c:21219: error: `QCcursor' undeclared (first use in this function)
xdisp.c:21219: error: (Each undeclared identifier is reported only once
xdisp.c:21219: error: for each function it appears in.)
xdisp.c: In function `syms_of_xdisp':
xdisp.c:23733: error: `QCcursor' undeclared (first use in this function)

did i miss something, or is there more to the patch?

ken

> *** xdisp.c     22 Aug 2006 23:28:12 +0200      1.1113
> --- xdisp.c     24 Aug 2006 13:12:33 +0200
> ***************
> *** 367,373 ****
>   Lisp_Object Qimage;
> [...]

-- 
ken
ken.manheimer@gmail.com
http://myriadicity.net

  parent reply	other threads:[~2006-08-24 14:20 UTC|newest]

Thread overview: 82+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-18 23:22 cursor doesn't show through transparent images in emacs 22, unlike emacs 21 Ken Manheimer
2006-08-18 23:33 ` Drew Adams
2006-08-19 17:49   ` Ken Manheimer
2006-08-19 23:09 ` Kim F. Storm
2006-08-20  1:49   ` Ken Manheimer
2006-08-20  5:00     ` Ken Manheimer
2006-08-20  6:42       ` David Kastrup
2006-08-20 12:05     ` Richard Stallman
2006-08-20 15:10       ` Ken Manheimer
2006-08-20 17:27         ` David Kastrup
2006-08-22  3:09         ` Richard Stallman
2006-08-22  8:03           ` David Kastrup
2006-08-22 13:45             ` Ken Manheimer
2006-08-24 11:31               ` Kim F. Storm
2006-08-24 11:49                 ` David Kastrup
2006-08-25 13:48                   ` Kim F. Storm
2006-08-24 14:20                 ` Ken Manheimer [this message]
2006-08-24 14:26                   ` Kim F. Storm
2006-08-24 15:53                     ` Ken Manheimer
2006-08-24 19:56                       ` Kim F. Storm
2006-08-24 21:41                         ` Ken Manheimer
2006-08-25 14:28                         ` Kim F. Storm
2006-08-25 15:24                           ` Ken Manheimer
2006-08-26 10:08                             ` Richard Stallman
2006-08-25 20:23                 ` Richard Stallman
2006-08-25 22:35                   ` Kim F. Storm
2006-08-26 12:22                     ` Richard Stallman
2006-08-26 21:37                       ` Kim F. Storm
2006-08-27 14:34                         ` Richard Stallman
2006-08-27 20:37                           ` Ken Manheimer
2006-08-27 21:45                             ` Kim F. Storm
2006-08-28 22:10                               ` Richard Stallman
2006-08-28 22:27                                 ` Ken Manheimer
2006-08-29 17:18                                   ` Richard Stallman
2006-08-28 22:33                                 ` Kim F. Storm
2006-08-27 20:42                           ` Juri Linkov
2006-08-27 22:24                             ` Kim F. Storm
2006-08-28 21:27                               ` Juri Linkov
2006-08-28 22:09                             ` Richard Stallman
2006-08-28 22:44                               ` Juri Linkov
2006-08-28 23:02                                 ` Kim F. Storm
2006-08-29 21:31                                   ` Ken Manheimer
2006-08-29 21:36                                     ` David Kastrup
2006-08-29 22:12                                       ` Ken Manheimer
2006-08-30 17:58                                         ` Richard Stallman
2006-08-30 18:20                                           ` Ken Manheimer
2006-08-31 18:16                                             ` Richard Stallman
2006-09-01 15:46                                               ` Ken Manheimer
2006-08-29 17:18                                 ` Richard Stallman
2006-08-29 20:27                                   ` Juri Linkov
2006-08-30  8:09                                     ` Kim F. Storm
2006-08-31  7:33                                       ` Richard Stallman
2006-08-27 22:23                           ` Kim F. Storm
2006-08-28 22:10                             ` Richard Stallman
2006-08-25 23:01                   ` Ken Manheimer
2006-08-26 12:22                     ` Richard Stallman
2006-08-22 13:19           ` Ken Manheimer
2006-08-20  9:03   ` Jason Rumney
2006-08-20  9:09     ` David Kastrup
2006-08-20 12:05   ` Richard Stallman
  -- strict thread matches above, loose matches on Subject: below --
2006-09-02 18:08 (no subject) Richard Stallman
2006-09-03 21:30 ` cursor doesn't show through transparent images in emacs 22, unlike emacs 21 Kim F. Storm
2006-09-04 17:17   ` Richard Stallman
2006-09-04 22:42     ` Kim F. Storm
2006-09-06  8:49       ` Richard Stallman
2006-09-06  9:15         ` David Kastrup
2006-09-06 10:00           ` Kim F. Storm
2006-09-06 16:12             ` Ken Manheimer
2006-09-07  6:54           ` Richard Stallman
2006-09-07  7:47             ` David Kastrup
2006-09-09 20:45               ` Richard Stallman
2006-09-09 22:55                 ` David Kastrup
2006-09-10  0:21                 ` Kim F. Storm
2006-09-10 13:04                   ` Richard Stallman
2006-09-10 20:25                     ` Kim F. Storm
2006-09-10 23:00                       ` Robert J. Chassell
2006-09-11  5:32                         ` tomas
2006-09-11  8:08                         ` Kim F. Storm
2006-09-11  8:16                           ` David Kastrup
2006-09-11 11:56                           ` Robert J. Chassell
2006-09-11 12:51                             ` Kim F. Storm
2006-09-11 14:40                               ` Robert J. Chassell
2006-09-11 14:11                       ` Richard Stallman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=2cd46e7f0608240720x67ffefa5m121add6580aeef67@mail.gmail.com \
    --to=ken.manheimer@gmail.com \
    --cc=emacs-devel@gnu.org \
    --cc=rms@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).