From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Juri Linkov Newsgroups: gmane.emacs.devel Subject: Re: Context menus and mouse-3 Date: Fri, 16 Jul 2021 21:59:39 +0300 Organization: LINKOV.NET Message-ID: <87o8b2nkys.fsf@mail.linkov.net> References: <20200914061111.3trmuzhdvv7nwdcc@Ergus> <87y2acv2tw.fsf@mail.linkov.net> <83zguragqj.fsf@gnu.org> <87pmvnuyug.fsf@mail.linkov.net> <83zguq8n5o.fsf@gnu.org> <87im1dydhx.fsf@mail.linkov.net> <874kcw28zk.fsf@mail.linkov.net> <83lf686qqv.fsf@gnu.org> <87lf67fcvu.fsf@mail.linkov.net> <83lf6669dg.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="14871"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (x86_64-pc-linux-gnu) Cc: philipk@posteo.net, rms@gnu.org, spacibba@aol.com, emacs-devel@gnu.org, monnier@iro.umontreal.ca, arthur.miller@live.com, dgutov@yandex.ru, ghe@sdf.org, drew.adams@oracle.com To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Fri Jul 16 21:04:35 2021 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 1m4T8V-0003bu-7s for ged-emacs-devel@m.gmane-mx.org; Fri, 16 Jul 2021 21:04:35 +0200 Original-Received: from localhost ([::1]:39588 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m4T8U-0000vk-6Z for ged-emacs-devel@m.gmane-mx.org; Fri, 16 Jul 2021 15:04:34 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:45754) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m4T5r-00065X-PR for emacs-devel@gnu.org; Fri, 16 Jul 2021 15:01:51 -0400 Original-Received: from relay9-d.mail.gandi.net ([217.70.183.199]:60883) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m4T5p-0007N5-42; Fri, 16 Jul 2021 15:01:50 -0400 Original-Received: (Authenticated sender: juri@linkov.net) by relay9-d.mail.gandi.net (Postfix) with ESMTPSA id 1F4E5FF806; Fri, 16 Jul 2021 19:01:40 +0000 (UTC) In-Reply-To: <83lf6669dg.fsf@gnu.org> (Eli Zaretskii's message of "Fri, 16 Jul 2021 09:49:47 +0300") Received-SPF: pass client-ip=217.70.183.199; envelope-from=juri@linkov.net; helo=relay9-d.mail.gandi.net X-Spam_score_int: -25 X-Spam_score: -2.6 X-Spam_bar: -- X-Spam_report: (-2.6 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 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" Xref: news.gmane.io gmane.emacs.devel:271315 Archived-At: >> >> And some modes like org-mode, flyspell-mode, etc. already redefine >> >> down-mouse-3 to pop up context menus. >> > >> > But those modes define those context menus on special parts of >> > display, where pasting etc. makes less sense, no? >> >> When the buffer is not read-only, I see no reason to disallow >> pasting text because e.g. in flyspell-mode it makes sense >> to paste a correction to a misspelled word, etc. > > IMO, when mouse-3 is clocked on a misspelled word, it makes much more > sense to assume the user wants to fix that word than that the user > wants to paste. > > But here's an idea: how about merging the two menus into one in these > cases? We could add a top-level menu with the two alternatives, each > one would then drop down one of the two possible menus. > Alternatively, just make a long menu by concatenating the contents of > the two original ones. > > WDYT? Tak Kunihiro had a very good idea of using a hook-like variable that contains a list of functions that return parts of the whole context-menu, then these parts will be collected into the final menu.