unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Robert Pluim <rpluim@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 35389@debbugs.gnu.org, Alan Third <alan@idiocy.org>, npostavs@gmail.com
Subject: bug#35389: 27.0.50; [PATCH] Emacs on macOS sets mouse-wheel variables directly
Date: Sat, 11 May 2019 11:54:13 +0200	[thread overview]
Message-ID: <m2zhnt2u62.fsf@gmail.com> (raw)
In-Reply-To: <83sgtleczm.fsf@gnu.org> (Eli Zaretskii's message of "Sat, 11 May 2019 09:12:13 +0300")

>>>>> On Sat, 11 May 2019 09:12:13 +0300, Eli Zaretskii <eliz@gnu.org> said:

    >> Date: Fri, 10 May 2019 22:25:31 +0100 From: Alan Third
    >> <alan@idiocy.org> Cc: Robert Pluim <rpluim@gmail.com>,
    >> 35389@debbugs.gnu.org, npostavs@gmail.com
    >> 
    >> > Why does that system configuration need a different default
    >> to begin > with?  In general, having different defaults on
    >> different systems is > not a good idea.
    >> 
    >> macOS 10.7+ handles wheel scrolling differently from how other
    >> systems handle it. If we stick with the defaults then it
    >> becomes uncontrollably fast, the current defaults make it feel
    >> similar to X, Windows, etc.
    >> 
    >> IIRC, fixing it in C is probably possible, but not as straight
    >> forward as just changing the defaults. There was discussion of
    >> it in Emacs devel at the time and only one person objected, but
    >> later changed their mind.

Could you give a time range for when that was discussed?

    Eli> Could there be some internal variable, either in Lisp or in
    Eli> C, which we then would use in the default value, as some
    Eli> unit, instead of just number of wheel turns and number of
    Eli> lines?  Then we could set that internal variable to different
    Eli> values, but keep the customization the same in those
    Eli> internally-defined units.  I think that would be somewhat
    Eli> cleaner, if possible and reasonable, because we'd be able to
    Eli> document the customization in these units in a
    Eli> platform-independent way.

I canʼt think of a single variable you could use to transform

(5 ((shift) . 1) ((control) . nil)))

to

(1 ((shift) . 5) ((control)))

unless you want to start doing 'on macOS >= 10.7, divide by 5 if no
modifiers, multiply by five if shift', which could be done in lisp in
`mwheel-scroll', but it feels very hacky.

(as an aside ((control) . nil) is the same as ((control)), so we
should change one or the other)

    Eli> If that's impractical, then I guess we'll have to live with
    Eli> this inconsistency, although I personally consider it a
    Eli> slippery slope.  At the very least it should be documented,
    Eli> in NEWS if not in the manual.

Noam's original suggestion of patching ns-win.el might be best, then,
as it avoids any changes to the defcustom's.

    >> > Also, the original patch mentioned a specific version of
    >> appkit, > whereas this one is more general, AFAIU.  Wouldn't
    >> that cause trouble > or surprise elsewhere?
    >> 
    >> We still support macOS 10.6, which behaves similarly to X and
    >> Windows.  Changing the defaults for it would result in
    >> unexpected behaviour.

Thanks, I wasn't sure if 10.6 was still supported, so we'll have to
cater for that.

    Eli> Are you saying that testing the OS version and testing the
    Eli> appkit version yield the same result in this case?  Or are
    Eli> you saying that testing the appkit version is simply
    Eli> incorrect?  Because that was my concern.

I think testing the appkit version is correct (but Iʼm not the expert
here, Alan is).

Robert





  reply	other threads:[~2019-05-11  9:54 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-23  9:47 bug#35389: 27.0.50; [PATCH] Emacs on macOS sets mouse-wheel variables directly Robert Pluim
2019-04-23 11:17 ` Noam Postavsky
2019-04-23 11:38   ` Robert Pluim
2019-05-10 15:29     ` Robert Pluim
2019-05-10 19:53       ` Eli Zaretskii
2019-05-10 21:25         ` Alan Third
2019-05-11  6:12           ` Eli Zaretskii
2019-05-11  9:54             ` Robert Pluim [this message]
2019-05-11 10:58               ` Eli Zaretskii
2019-05-11 22:50                 ` Alan Third
2019-05-12  4:58                   ` Eli Zaretskii
2019-05-12 11:05                     ` Alan Third
2019-05-12 14:36                       ` Eli Zaretskii
2019-05-19 12:41                         ` Alan Third
2019-05-12 23:29                       ` Tak Kunihiro
2019-05-13 14:26                         ` Eli Zaretskii
2019-05-16  9:00                           ` Tak Kunihiro
2019-05-16 13:55                             ` Eli Zaretskii
2019-05-16 23:24                               ` Tak Kunihiro
2019-05-17  5:39                                 ` Eli Zaretskii
2019-05-18  8:50                                   ` Tak Kunihiro
2019-05-18  9:16                                     ` Eli Zaretskii
2019-05-19 12:32                                       ` Alan Third
2019-05-22  6:22                                         ` Eli Zaretskii
2019-05-23  4:24                                           ` Tak Kunihiro
2019-05-23  4:55                                             ` Eli Zaretskii
2019-06-06  2:21                                           ` Tak Kunihiro
2019-06-07 18:31                                             ` Alan Third
2020-08-10 11:32                                               ` Lars Ingebrigtsen
2020-08-10 13:04                                                 ` Robert Pluim
2020-08-10 13:19                                                   ` Lars Ingebrigtsen
2019-05-11 22:53               ` Alan Third
2019-05-11 23:06             ` Alan Third

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=m2zhnt2u62.fsf@gmail.com \
    --to=rpluim@gmail.com \
    --cc=35389@debbugs.gnu.org \
    --cc=alan@idiocy.org \
    --cc=eliz@gnu.org \
    --cc=npostavs@gmail.com \
    /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).