From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Anders Lindgren Newsgroups: gmane.emacs.devel Subject: Re: Touch events Date: Wed, 28 Jun 2017 11:40:13 +0200 Message-ID: References: <20170624085335.GA10629@breton.holly.idiocy.org> <20170627200807.GA73858@breton.holly.idiocy.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="94eb2c06aed4989709055301f82e" X-Trace: blaine.gmane.org 1498642835 10956 195.159.176.226 (28 Jun 2017 09:40:35 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Wed, 28 Jun 2017 09:40:35 +0000 (UTC) Cc: Emacs-Devel devel To: Alan Third Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Jun 28 11:40:26 2017 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dQ9SQ-0002DP-Ue for ged-emacs-devel@m.gmane.org; Wed, 28 Jun 2017 11:40:23 +0200 Original-Received: from localhost ([::1]:59958 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dQ9SS-0001Ft-SX for ged-emacs-devel@m.gmane.org; Wed, 28 Jun 2017 05:40:24 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:49664) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dQ9SL-0001Fd-Qv for emacs-devel@gnu.org; Wed, 28 Jun 2017 05:40:19 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dQ9SK-0001B3-PI for emacs-devel@gnu.org; Wed, 28 Jun 2017 05:40:17 -0400 Original-Received: from mail-vk0-x22a.google.com ([2607:f8b0:400c:c05::22a]:33674) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dQ9SK-0001AZ-KE for emacs-devel@gnu.org; Wed, 28 Jun 2017 05:40:16 -0400 Original-Received: by mail-vk0-x22a.google.com with SMTP id r126so29945751vkg.0 for ; Wed, 28 Jun 2017 02:40:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=1Go5+njxz9lQhY7mJTDuNp66nmVNmPAROGxAOt5q7hc=; b=OjnPZvMUBp/iYRgpzS6jymdZsUexeHjxh3i0ZW0Ojmiey8Tiukjqmbnsy2CPTUAClM pNby6O3z5XoT8LkXL7wT1QCuKMnr+YWUDyKSvVxe164Og9zStFnwYL5fE65iZM+C/NKf ZEVFozuYC8jSLzn7NMaMqzgj3M3yg8Ll4x4xnFf5xiI92rN0JBzDfZXCFJW4H3jKwUBc 4X2qwAb74pfiKHWPZ2RSr8dsC6XHgSOvW4AiTbe5+s4IWjWrED3Ym2CuvnmCNlCE7IvC Qumhyc8Mahib3MFsotiFnQgb3qKyx35o3ry/nQUjROFLlUwnZhkM0GQIV/8cJhLWMvZE tHPA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=1Go5+njxz9lQhY7mJTDuNp66nmVNmPAROGxAOt5q7hc=; b=uEWFej5HegYthhJ8Ct61AriTRLEW5cggGMzFpaFGkCsNHd4pxgFX37w1xHDLJSozxZ 0chJZhl4n0bXzOpa66aTZQ/7vES1d0Evxv730wZTFM8SDcpClxVKImtg0FYPYsn/+1Qx Q8Av7hggiklNRdRWF8NnZXxgmInyDEVEjt8QLh3/dT0Alv7VorUJ0m4LmuySGGGOmS+B UhMiPxOikQq7/kvuqd2vEjiiN2H5wCz1yoi5JfWRcUYoENxq5eb0D6cH0+bbrQR8MyIU PLGFLmK8cd4W9DUkxb8mKduytfFLYbLMp+4xl6It+Zg5C/JpWubSU50A+xR/1MUOCP6s rrrA== X-Gm-Message-State: AKS2vOyIURVadGMoEvYsCrUX4xFK81oixQr5GW0I9QLet8FtB3IVaJxI FiwUhISiPaJ57d7rYZrJU0LU5MLtsvPL X-Received: by 10.31.99.68 with SMTP id x65mr5049178vkb.28.1498642814374; Wed, 28 Jun 2017 02:40:14 -0700 (PDT) Original-Received: by 10.31.155.67 with HTTP; Wed, 28 Jun 2017 02:40:13 -0700 (PDT) In-Reply-To: <20170627200807.GA73858@breton.holly.idiocy.org> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400c:c05::22a X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:216034 Archived-At: --94eb2c06aed4989709055301f82e Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable > > I=E2=80=99ve kept a separate =E2=80=98touch-scroll=E2=80=99 event as the = mac port just embeds > that into the mouse-wheel events, but I feel there=E2=80=99s an argument = to be > made that they should be handled differently. > One thing that has annoyed me with the existing mouse-wheel events is that macOS sends implements a kind of inertia, resulting is a sequence of events a few seconds after I've stopped scrolling. Furthermore, if I have pressed, say, shift while scrolling and release the shift key while the extra events are arriving, the remaning events are treated as though they were unshifted, possibly executing a different Emacs command. It would be good to be able to get a single event for swipe commands (even though the inertia is useful for some commands). -- Anders Ps. In the package https://github.com/Lindydancer/multicolumn I've implemented support for moving to next/prev/first/last window using horizontal swipes. To get around the extra events passed by the macOS, I'm using timers to silence scroll events for a while after a command has been handled, which clearly isn't a good technical solution. --94eb2c06aed4989709055301f82e Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I=E2=80=99ve kept a separate = =E2=80=98touch-scroll=E2=80=99 event as the mac port just embeds
that into the mouse-wheel events, but I feel there=E2=80=99s an argument to= be
made that they should be handled differently.

One thing that has annoyed me with the existing mouse-wheel events i= s that macOS sends implements a kind of inertia, resulting is a sequence of= events a few seconds after I've stopped scrolling. Furthermore, if I h= ave pressed, say, shift while scrolling and release the shift key while the= extra events are arriving, the remaning events are treated as though they = were unshifted, possibly executing a different Emacs command.
It would be good to be able to get a single event for swipe com= mands (even though the inertia is useful for some commands).

=
=C2=A0 =C2=A0 -- Anders

Ps. In the pack= age https://github.c= om/Lindydancer/multicolumn=C2=A0I've implemented support for moving= to next/prev/first/last window using horizontal swipes. To get around the = extra events passed by the macOS, I'm using timers to silence scroll ev= ents for a while after a command has been handled, which clearly isn't = a good technical solution.
--94eb2c06aed4989709055301f82e--