From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: martin rudalics Newsgroups: gmane.emacs.devel Subject: Re: Stop frames stealing eachothers' minibuffers! Date: Sun, 22 Nov 2020 18:57:30 +0100 Message-ID: <59f8d2fa-3db9-078b-56e2-c793f6e69edd@gmx.at> References: <20201119104035.GB6259@ACM> <9aacff47-8ac2-93a2-5112-6153ee986b57@gmx.at> <20201120210005.GA1034@ACM> <20201121102751.GA11643@ACM> <18a901b8-3250-b461-eb2a-c13988616e93@gmx.at> <20201121124550.GB11643@ACM> <535bd6d4-3997-2e64-ea43-5de6f0892062@gmx.at> <20201122105947.GA5912@ACM> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="16299"; mail-complaints-to="usenet@ciao.gmane.io" Cc: enometh@meer.net, emacs-devel@gnu.org, Eli Zaretskii , Andrii Kolomoiets , Stefan Monnier To: Alan Mackenzie Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sun Nov 22 19:01:45 2020 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 1kgtgG-00047h-Ga for ged-emacs-devel@m.gmane-mx.org; Sun, 22 Nov 2020 19:01:44 +0100 Original-Received: from localhost ([::1]:49320 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kgtgF-0004O4-7z for ged-emacs-devel@m.gmane-mx.org; Sun, 22 Nov 2020 13:01:43 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:49116) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kgtcQ-0002LI-VW for emacs-devel@gnu.org; Sun, 22 Nov 2020 12:57:46 -0500 Original-Received: from mout.gmx.net ([212.227.17.22]:57249) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kgtcP-00071F-5q; Sun, 22 Nov 2020 12:57:46 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1606067852; bh=6cUmmsYlQF5dsb5l579a7Vb6nSoYb69C5sq4a0nFvjM=; h=X-UI-Sender-Class:Subject:To:Cc:References:From:Date:In-Reply-To; b=JKxTAkMNHRw6DN+U7kU+AXC5odMcibW8G2ShTHlH7qH+SYdoFgg3ylW/fE3BdtZ7a iw/9J7moOArTh3YGs+drqnaxcu+L6xzVakUKPUz+BSusbNZ2dM4vxUaQRZraJxofFT Bcnh27E6nHiA/KvLbZo0XdyqNLRSfj8mhwHOYiHs= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Original-Received: from [192.168.1.100] ([212.95.5.40]) by mail.gmx.com (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1M2f5T-1kfWZH1SZj-0049Eu; Sun, 22 Nov 2020 18:57:32 +0100 In-Reply-To: <20201122105947.GA5912@ACM> Content-Language: en-US X-Provags-ID: V03:K1:CIKm2gnjDYVJX3TYOqnBtwVAoPskVJQFiNlD31fohTY9GYFmO5v TyRAJJyRKrN83bXZJTcZtWNca6d/gApunLc2Uk5hTiOBgA7N91YeYtFH5JVhQ4tgUacPhGD e7MMVMPnTVfuu0iZ+WPrhR5YYxECdUvmu7X07yFnsVLbd/bY3dR2rmJIInXbdx6+vl8Aihe K/c/jjZh1To7WHEOht8rg== X-UI-Out-Filterresults: notjunk:1;V03:K0:V2rOaL7zhSE=:zMTr6NYRbE2PYX2toxhh30 qBS+w6B9WDY+P6hyCTmMFuhd1uZ6xGVZXlfuWCXjfgGkOEpIlqkDSV0eZ8KQH8Hk0SofDwN+E B+zin4RS7OzZaPCsAmLGekGQd3pgrcN6h3Z3vKqN+D1fQMuDU0kKwEWArM8vEoMPzAW6No80E 0xYV3A11f7BgMB3ERoPy1iuSfZtpbWMpvMem3e0oFCqoPbk7kgYy8UafAFPDHNmGgsPVU9HWS GAEGz58sbEQ23CVqHDVGgfYBRZlcxKkNPjwqZ2zu1Xhut/dTFfgsQhgmt2yG8JPxlZ4j+mfps iRrqazO2K08udOKfGK6/hq/dct0vOL1F3s1jNAdiXawWgs7icsw6bfk8Reqgt9Wt1xZzfa8s9 jQ7IpTPRi6BiawZuqjEOEVgK9Dmh3z8HGKgUqIfR1M0WPV6+LxbK9TQQMrblmSg8MNBJw8cCs 8capdsgzQEWrasSyqZrhW0rT2XX7zxD1gc+WIDu/XqLz1U++qZ6oyA07SH3dZ+aRLfOr22BhG 0hNg86BxujfdP1wHiTLISCErA//y5zcTLqHgFf5M1XxzJrLfF6YeQ7e3eIf5LTibiMXaLpL+J Rw6+eGB6qFemHN8jItLCvwnzAnqsaDv5l7ZNNuQ+achHPv5RXglwyV5wZxxedTjS5Ep1P9Dah xzylh+7Bu1GfAiqJyV+tV8pxDI4BijxWSgg+7CyAvjV5whetZW+QVS640Vu29NM8kBXjEZ3RM U/+8LorbRLUtIYeV7iIqY5ytRgfKOaIQmMQ9NPnH96w34k0RlJeRkGLKXj91Mt9RpFFODAgt Received-SPF: pass client-ip=212.227.17.22; envelope-from=rudalics@gmx.at; helo=mout.gmx.net X-Spam_score_int: 7 X-Spam_score: 0.7 X-Spam_bar: / X-Spam_report: (0.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, RCVD_IN_SBL_CSS=3.335, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no 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:259632 Archived-At: > diff --git a/src/minibuf.c b/src/minibuf.c > index 464e3018f7..fc3fd92a88 100644 > --- a/src/minibuf.c > +++ b/src/minibuf.c > @@ -508,7 +508,10 @@ read_minibuf (Lisp_Object map, Lisp_Object initial, Lisp_Object prompt, > mini_frame = WINDOW_FRAME (XWINDOW (minibuf_window)); > if (!EQ (mini_frame, selected_frame)) > record_unwind_protect (restore_window_configuration, > - Fcons (Qt, > + Fcons (/* Arrange for the frame later to be > + switched back to the calling > + frame. */ > + Qnil, > Fcurrent_window_configuration (mini_frame))); > > /* If the minibuffer is on an iconified or invisible frame, This one immediately chokes when I run emacs -Q --eval "(setq default-frame-alist '((minibuffer . nil)))" and type C-x 5 2. Here the cursor disappears entirely although when I do some typing now the text shows up in the minibuffer window. TRT as with Emacs 27 is to select and focus the new frame. > There seem to be quite a few things wrong, even on Emacs 27. On > starting it with loading your initialisation file from the command line, > the initial selected frame is the minibuffer frame, which is surely > suboptimal. Here the minibuffer-only frame is selected but partially hidden by the normal frame so that I don't see no cursor initially. I don't know why people like it that way. A minibuffer child frame is explicitly not selected. Note that the way Emacs creates the two frames layout is atrocious - we first make a normal frame to do our usual initialization stuff and then we create the minibuffer-only and the minibuffer-less frames and delete the initial one (compare 'frame-notice-user-settings'). It's for years that I want to rewrite that ... > On M-: followed by C-x 5 o (moving to the normal frame), > the unfinished command in the minibuffer frame cannot now be cancelled, > and C-x 5 o doesn't move back into the minibuffer. 'other-frame' never selects a minibuffer-only frame. It probably should. And the behavior of C-g in a separate minibuffer frame IME usually varies with the time of the day. > Yes, maybe, but modal dialogues are a right pain for the user, as can be > seen by using virtually any commericial software on non-free systems. Modal dialogues are supported by the windowing subsystem, regardless of whether it's free or not. martin