From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Po Lu Newsgroups: gmane.emacs.devel Subject: Re: Regarding on-key-up event Date: Sat, 04 Feb 2023 08:34:25 +0800 Message-ID: <3A119100-DA67-480B-A38D-A686A399C960@yahoo.com> References: <83edr6vcia.fsf@gnu.org> <83cz6qv8qs.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="38954"; mail-complaints-to="usenet@ciao.gmane.io" To: emacs-devel@gnu.org, Ag Ibragimov , Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Feb 04 01:35:39 2023 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pO6Wp-0009xx-Du for ged-emacs-devel@m.gmane-mx.org; Sat, 04 Feb 2023 01:35:39 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pO6W8-0005jg-NL; Fri, 03 Feb 2023 19:34:56 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pO6W0-0005j7-Dh for emacs-devel@gnu.org; Fri, 03 Feb 2023 19:34:50 -0500 Original-Received: from sonic317-33.consmr.mail.ne1.yahoo.com ([66.163.184.44]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pO6Vx-000465-8U for emacs-devel@gnu.org; Fri, 03 Feb 2023 19:34:48 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1675470882; bh=RgpnZ7QcNbpfR9A7caiLjgM0yPihjaXM+G4hS1NhxZI=; h=Date:From:To:Subject:In-Reply-To:References:From:Subject:Reply-To; b=TeF6GYUzycwmZcCMcpq/uvlezCqYFSuAHi2agYW7fkQZbcv+JzpRUT92YVbiFfDUJZDKCJ+RbmDJ7lHIPP/2yCguO3Ckrjo2FfrKS/lHuOIm77KdavhqNo3iipf/t+kK3qMTNRc94DqsrRIm5t/9mb/jjBLpuksz1xeNI7h/3ILNYgLJ+4tBXDop+3gDtcx5XdSc5aFup1pOSCgMcebA+e5/RKx5faDox5JROTPfBCYDLhvgLgbGSofHDGHqekxXJS6eVhK5LvbDyeEcX6gdkKZFcCZ8zUvX6b2lvt2HOg1uVD2xUOQnWbZXv3LdMFAO0/vtEnX9k0GZ5YNQfoDvNQ== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1675470882; bh=4qPDHAizbjlM7BjeYEpZ5ZdKQ7noPM6avjZWO4s4KLz=; h=X-Sonic-MF:Date:From:To:Subject:From:Subject; b=AAwCLYathMqwhQLkXK8h0KFBNYBrh3Ibn27WZOJU2E0hjojYla94E7Op/glLvZdqhu7gvPRrE61/srvEKipsffcXzFPis+mBqwTzOhw/2VnIUJI/i+bfD44arFcluFW8Y2dS2kPjBd30Nw7ucwA/l51S/n/boP2WA2qHIqTlmQ0TFvwfJTvsmLFv7QNhBpmRwalCaCDqoZErOiwujJIAOAXnuWKBHY6xNIbITHw7o5x3S+Ny3bG832vNe6XQpeMvveCiGGJOnQQkdDexIX5XRYNPVIa4XEpks2AMaDPo+7+ZWq8uQR7pyyHdM0Lvx+PJ4bYnWBM0sp9sHdScVQwpOQ== X-YMail-OSG: _pfvEWIVM1n5xauUNrOi._ocHqe7ULg7U6RqIX1kU22VzK2ZguUUD3U5.YvpnG4 vRFQ._A1ARJGsF8Ln8iZUXbq9NgmoU5enjVYdE6fI2KUDcHALJH2GmWBUMab47RruRBqd3Zkdisr f_QaRmcgmXEJgDU1zVsoGNNmbe7Bnh1O.D4Zd7XSpKbLTGDKvIgJeCgYfIhZoQQX.ieQIUuR0Hgu 82JxzysXkeS3l5xAkGQzLWOUkNzIkODgtk.g75U7jQRyTHntX5yQyHnpB62Bdr_uK.h5u3ZqwMDS tYh2mw_D4SB2KOrcw8EzdQ.kfvb1TSdWTviJj.pxu.ezVWcPYWMq6AVyaaSjF1Va5D7Z0GXFwHmT qA02QsGJQ19dvuzxnAIv6hC68tpQMseIL_jZ7kG2sYS47lAqJvwgaqF6IPkhVBt2b_O3Wn48BWb6 D_RzLpqJu3uBWahEDWqWpwF9bBYVsAA8ttiBS0i9mBCTKgH.N4_OZXMBeT2dORB8Fy5.C2fn.brP NGx4KeBnwkkzAvbKY.Mqny8hXbe8iAE9RBX8N03G7szKFCzmcT3Z4M7lGCq3a9mGH.SsYgmYoBFl TEg3fn5gO692Iss6V0nT3Yih1hnfzqFgLxr6q66PcrZxEcLTJkGqlsVJJQrAOhRsQ0YNp6BNvt5W lDyLztF3lilsS2qZwNf7RQWjYgsJqgsx1pEclPk.NSH6T3340EMpzbwdFnl8iB1l9hEdbb7I9tIy dsP.Ucd03DyOhJQe77Ja9fkoLobtlMkLP5HHdyb_LANMjWZnJ05mo44mTPAwOApic4WVlw4fnWcb Twmjye6gyu5iKCYG0NDcJLa3H1psdEFjwQhqe1qVGL X-Sonic-MF: Original-Received: from sonic.gate.mail.ne1.yahoo.com by sonic317.consmr.mail.ne1.yahoo.com with HTTP; Sat, 4 Feb 2023 00:34:42 +0000 Original-Received: by hermes--production-sg3-9fc5746c8-r2vxw (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 848adf55d2ec8caedf6ca7165cc46680; Sat, 04 Feb 2023 00:34:39 +0000 (UTC) In-Reply-To: X-Mailer: WebService/1.1.21161 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo Received-SPF: pass client-ip=66.163.184.44; envelope-from=luangruo@yahoo.com; helo=sonic317-33.consmr.mail.ne1.yahoo.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 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-mx.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:302944 Archived-At: Also, I forgot to say that key press repetition is implemented in the X ser= ver, not a toolkit=2E On February 4, 2023 7:45:20 AM GMT+08:00, Ag Ibragimov wrote: >Eli Zaretskii writes: > >Sorry Eli, I accidentally replied without CC, so this one would show up >for you twice=2E My apologies=2E > >>> From: Ag Ibragimov >>> Cc: emacs-devel@gnu=2Eorg >>> Date: Fri, 03 Feb 2023 13:25:53 -0600 >>>=20 >>> > I don't think I understand the question=2E Emacs produces a key eve= nt >>> > when a key was pressed and then released=2E So technically, we alre= ady >>> > have an "on-key-up" event=2E >>>=20 >>> But you can't register "on-release" event, right? That makes for examp= le >>> difficult to implement UX similar to an app switcher in a desktop >>> manager - Alt+Tab=2E Where as long you keep holding Alt, pressing Tab >>> performs an action, but releasing Alt-key gets you out=2E >> >> Yes, you can "register" an on-release event, just not for modifier >> keys like Shift or Alt=2E >> > >Wait, really? Are you saying that aside the modifier keys, it's possible = to let's say >bind a command to a key e=2Eg=2E, (kbd "a"), so when a user presses the k= ey, >it would to run one command, but when the key is released to run a >different command? > >>> Or even something much simpler, like temporarily increasing the >>> font-size while you hold the key=2E >> >> While you hold a key, a typical keyboard auto-repeats, so I see no >> problem here=2E > >Right, it would auto-repeat, registering a sequence of "key-pressed" >events, but can we detect when the key gets released? >