From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Ship Mints Newsgroups: gmane.emacs.devel Subject: =?UTF-8?Q?Re=3A_Question_about_=C3=BCarent=2Dframe_changes?= Date: Wed, 18 Sep 2024 10:24:54 -0400 Message-ID: References: <9bc2af0a-d3c1-4ba6-a350-af6e2b85695d@gmx.at> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="0000000000009100b606226592f2" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="30422"; mail-complaints-to="usenet@ciao.gmane.io" Cc: =?UTF-8?Q?Gerd_M=C3=B6llmann?= , Emacs Devel To: martin rudalics Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Sep 18 16:26:06 2024 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 1sqvd7-0007gL-On for ged-emacs-devel@m.gmane-mx.org; Wed, 18 Sep 2024 16:26:05 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sqvcF-0001ue-B2; Wed, 18 Sep 2024 10:25:11 -0400 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 1sqvcD-0001tv-DX for emacs-devel@gnu.org; Wed, 18 Sep 2024 10:25:09 -0400 Original-Received: from mail-vk1-xa2c.google.com ([2607:f8b0:4864:20::a2c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1sqvcB-00064a-Ct for emacs-devel@gnu.org; Wed, 18 Sep 2024 10:25:08 -0400 Original-Received: by mail-vk1-xa2c.google.com with SMTP id 71dfb90a1353d-50108a42fa9so1546306e0c.3 for ; Wed, 18 Sep 2024 07:25:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1726669506; x=1727274306; darn=gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=/NyCf4PgbIwJuR38Dl6/QNuPpP9wlANEwueFDJ/FwqU=; b=muGZz8KNos4/jALVFsZcEkPIryGdacl3T4cEz1vS89Wwkgu7E6FTsaIxvkdFqgzXQ6 Mf16JGCp17oRiSxjMxmsZa3FkftnaaB1wJFWAK/xFF4/PKqQsWQvdFF6Tqz8iyyZ1YKF i275FgpXNRXbisVoidDz3OOZ2Vw1/t6BI+LP/HI7Pk3zm+QJTc/hh9yJ8rwLBhaAthu2 5K/fisPqCVMA0yDgK4XNQKEj56YH0X9nQzogLgaoqo+iRldwOjej4DtKCVe3998AJ42K en9FV9dvWp+4sCbVJdtY59ocfwgz4UF8V6jV0LIqxop5TDRtDmqNSZF7ZJuKpRE86jLx 2G0A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1726669506; x=1727274306; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=/NyCf4PgbIwJuR38Dl6/QNuPpP9wlANEwueFDJ/FwqU=; b=j6xVdEJ/nE6KIuqsTWmPmkBRyEYo+31gIz4qvasJC25MVXctpc7wT9r1kh0t4jc88w 9MtFzKV2yzwOZnUWZgBK0ofplz9zOvxF9xn8TYNbCff6kwiWTxsZcP622iqdhBr+svXS 2mq/l8+qgCtDq4NKrsH+vHVE6YsFLWMu9KFtqdjPauXUI2m23uGTSGy4QsPjjpiUIbSl fB91XFPuKGcKFY/mf/F2rQuolA0Or1nXloWxM4DKxzU7dci1SaQAF06ceTv58WDYuaUU 24/kiUfKADTPrgV+BYhwSx+tmEnE7rWAy/ht7VGa1OzAcC8YpwugISa6w+NLL3AWxDZg 4jgw== X-Forwarded-Encrypted: i=1; AJvYcCUjJGd3hWoM9P5pRNIAOHtsZP3XlQsIA2yfiNrwbPFeCzh2eHX+yuWZNAcIp9ZATjxzKs76x8z+de9VDQ==@gnu.org X-Gm-Message-State: AOJu0YyDj+NYmSyamAQ7bfEwAs4V7Gr6ma47pQXtK/JZOA2L033PYI+9 GpquNBBmPta33WsYTnOW2TnvkZdbdtorePNak3TmCB3c5PVZMiQY9JH5Xb0UcFBxh2iDl7hGVKZ phYErgO7yW4UiWvTgYVPCCIMzmB1Tyw== X-Google-Smtp-Source: AGHT+IHarB92P/Hh2NpwqNDEw9hEJzrWaVfS1yW8iapcIztH6Nxqs1og1fCADxhl1NeavTuZOtmWSsHG2SIGCyVL6N4= X-Received: by 2002:a05:6122:21a8:b0:501:2960:7595 with SMTP id 71dfb90a1353d-5032d4f081emr16786855e0c.11.1726669506278; Wed, 18 Sep 2024 07:25:06 -0700 (PDT) In-Reply-To: <9bc2af0a-d3c1-4ba6-a350-af6e2b85695d@gmx.at> Received-SPF: pass client-ip=2607:f8b0:4864:20::a2c; envelope-from=shipmints@gmail.com; helo=mail-vk1-xa2c.google.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, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, 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.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:323720 Archived-At: --0000000000009100b606226592f2 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable I use multiple frames on tty just as I do with a window system. Switching among frames works the same and tab-bar works the same. Try it like this. Start your emacs, C-x 5 n, M-x select-frame-by-name and you'll see two frames. On Wed, Sep 18, 2024 at 10:16=E2=80=AFAM martin rudalics = wrote: > > AFAICT from the Elisp Info docs, one is currently free to change the > > parent-frame as one sees fit. That is, one can make a child a root > > frame, a root frame a child, or change the parent of a child to anothe= r > > root. > > > > I'm currently inclined to disallow parent-frame changes on ttys > > entirely, unless it is used for something. Couldn't find something > > today, but maybe something is a package outside Emacs' repo, or I'm ju= st > > ont looking for the right thing. > > I'm not aware of people using multiple frames on TTYs and I have no idea > whether child frames out there are even intended to be reparented. > > Reparenting is useful because you can set up one child frame for some > special purpose, make it invisible when you don't need it, and move it > to another frame and make it visible there whenever you want to. On > GUIs, this approach has the advantage that you can avoid the (at least > here) costly process of setting up frame faces every time anew. Emacs > tooltips do that by default and I recall that showing a tooltip every > time incurred two entire GC cycles here. > > martin > > --0000000000009100b606226592f2 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I use multiple frames on tty just as I do with a=C2=A0 window system. Sw= itching among frames works the same and tab-bar works the same. Try it like= this. Start your emacs, C-x 5 n, M-x select-frame-by-name and you'll s= ee two frames.

On Wed, Sep 18, 2024 at 10:16=E2=80=AFAM martin rudalic= s <rudalics@gmx.at> wrote:
=
=C2=A0> AFAICT f= rom the Elisp Info docs, one is currently free to change the
=C2=A0> parent-frame as one sees fit. That is, one can make a child a ro= ot
=C2=A0> frame, a root frame a child, or change the parent of a child to = another
=C2=A0> root.
=C2=A0>
=C2=A0> I'm currently inclined to disallow parent-frame changes on t= tys
=C2=A0> entirely, unless it is used for something. Couldn't find som= ething
=C2=A0> today, but maybe something is a package outside Emacs' repo,= or I'm just
=C2=A0> ont looking for the right thing.

I'm not aware of people using multiple frames on TTYs and I have no ide= a
whether child frames out there are even intended to be reparented.

Reparenting is useful because you can set up one child frame for some
special purpose, make it invisible when you don't need it, and move it<= br> to another frame and make it visible there whenever you want to.=C2=A0 On GUIs, this approach has the advantage that you can avoid the (at least
here) costly process of setting up frame faces every time anew.=C2=A0 Emacs=
tooltips do that by default and I recall that showing a tooltip every
time incurred two entire GC cycles here.

martin

--0000000000009100b606226592f2--