From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Tassilo Horn Newsgroups: gmane.emacs.help Subject: Re: Difference between child frame, popup frame and overlay Date: Tue, 17 May 2022 17:14:17 +0200 Message-ID: <87wnekdvd2.fsf@gnu.org> References: <87r14s2p4m.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="16696"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: mu4e 1.7.21; emacs 29.0.50 Cc: help-gnu-emacs@gnu.org To: Alessandro Bertulli Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Tue May 17 17:37:04 2022 Return-path: Envelope-to: geh-help-gnu-emacs@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 1nqzFv-0004DM-VY for geh-help-gnu-emacs@m.gmane-mx.org; Tue, 17 May 2022 17:37:04 +0200 Original-Received: from localhost ([::1]:51970 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nqzFu-0000Z8-NQ for geh-help-gnu-emacs@m.gmane-mx.org; Tue, 17 May 2022 11:37:02 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:45094) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nqzFN-0000Yh-1P for help-gnu-emacs@gnu.org; Tue, 17 May 2022 11:36:29 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:34094) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nqzFM-00032C-Mb; Tue, 17 May 2022 11:36:28 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:In-reply-to:Date:Subject:To:From: References; bh=YAxQ5gBKgDEssd+NSTAc0RDptD+vxZfxpS/Kre+AOeM=; b=pH7B9AzL9eNpHq g8TcfXDR8f6/pT0YH8CGZAolVxE+McDLV6yadRf0qLbzVXpjNMszEooCoMXlOn5fO9J6I1FEYEJqM VPQhiid++UUpcKVZGCbjOlkuyiggxOt3Mb/Fxqt33DHR0tTH4uNHlfY6Cury1ZtIBM6PfwLMQzL0Q 3t2zsTSx1GeL9kPWfujKEF+as1Ef0RaWjJcK/yrT9UAkj4g7pHOfRobRkx/U82+Qt9ULV0qbC4cxq /GPJHFgU4ypzk1xQZ3geHqOhYpoxmaicKxbO0zbnXHgSBYE7wvvr8M8BKnUB//6VqhOY6aW9V5rST o32lSOmV+Zc33WMIkpBw==; Original-Received: from auth2-smtp.messagingengine.com ([66.111.4.228]:58639) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nqzFM-0000Iu-DQ; Tue, 17 May 2022 11:36:28 -0400 Original-Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailauth.nyi.internal (Postfix) with ESMTP id 3505727C0054; Tue, 17 May 2022 11:36:28 -0400 (EDT) Original-Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Tue, 17 May 2022 11:36:28 -0400 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrheejgdekkecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpehffgfhvfevufffjgfkgggtsehttdertddtredtnecuhfhrohhmpefvrghsshhi lhhoucfjohhrnhcuoehtshguhhesghhnuhdrohhrgheqnecuggftrfgrthhtvghrnhepud ejtdehuddvleffjeekteegvdehleehvdeufefhueekkeekhedvgfeggeffvefgnecuvehl uhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepthhhohhrnhdomh gvshhmthhprghuthhhphgvrhhsohhnrghlihhthidqkeeijeefkeejkeegqdeifeehvdel kedqthhsughhpeepghhnuhdrohhrghesfhgrshhtmhgrihhlrdhfmh X-ME-Proxy: Feedback-ID: ib2b94485:Fastmail Original-Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 17 May 2022 11:36:27 -0400 (EDT) In-reply-to: <87r14s2p4m.fsf@gmail.com> X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "help-gnu-emacs" Xref: news.gmane.io gmane.emacs.help:137295 Archived-At: Alessandro Bertulli writes: Hi Alessandro, > Pretty much the title. I am exploring differences between packages like > Ivy vs Vertico vs Selectrum, or Corfu vs Company, and sometimes this is > taken into play. However, the documentation I found explains only child > frames and overlays. So, to be more precise: > - what is a popup frame? I don't have a clue. Where did you encounter that term? I mean, both overlays and child-frames can be used to create popups (for in-buffer display/selection of possible completions like in corfu/company), so it might be that this term is used as a general term for the concept without hinting at a concrete implementation (of course, then having "frame" in the term is misleading). Possibly, popup-frame might also mean tooltips, e.g., the thing you get at the mouse cursor position when evaluating (tooltip-show "Hello!"). > Moreover, do you have any reason about when you should use one instead > of the other twos? I can only say something about overlays vs. child-frames. Overlays (used as multi-line menus) have visual issues (don't align) when those lines use different faces and they cannot extend over the edges of the current window. child-frames don't have these issues but creating them is much slower. Oh, and child-frames won't work at all in terminal frames! So it's pest vs. cholera, really. :-) I think company uses overlays by default (and can also just print completions in the echo area) whereas corfu uses only child-frames. I don't use emacs in a terminal for programming, so I can live well with that limitation of corfu. Bye, Tassilo