From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Carlos Pita Newsgroups: gmane.emacs.bugs Subject: bug#31968: 26.1.50; Allow to hide title bar on maximize (gtk/gnome/csd) Date: Mon, 2 Jul 2018 11:22:45 -0300 Message-ID: References: <877emm1trq.fsf@gmail.com> <87fu18pmo7.fsf@gmail.com> <5B349617.3010102@gmx.at> <878t6zaq66.fsf@gmail.com> <5B35F0ED.3070409@gmx.at> <874lhmasho.fsf@gmail.com> <5B374075.50300@gmx.at> <87muv9epcz.fsf@gmail.com> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="0000000000001f70da057004efc2" X-Trace: blaine.gmane.org 1530541332 498 195.159.176.226 (2 Jul 2018 14:22:12 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Mon, 2 Jul 2018 14:22:12 +0000 (UTC) Cc: 31968@debbugs.gnu.org, Jonathan Kyle Mitchell To: Robert Pluim Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Mon Jul 02 16:22:07 2018 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fZziQ-0008PY-7j for geb-bug-gnu-emacs@m.gmane.org; Mon, 02 Jul 2018 16:22:06 +0200 Original-Received: from localhost ([::1]:33089 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fZzkV-00030e-V3 for geb-bug-gnu-emacs@m.gmane.org; Mon, 02 Jul 2018 10:24:15 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:52973) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fZzkL-0002x9-R8 for bug-gnu-emacs@gnu.org; Mon, 02 Jul 2018 10:24:06 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fZzkI-0005WZ-LI for bug-gnu-emacs@gnu.org; Mon, 02 Jul 2018 10:24:05 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:35743) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fZzkI-0005WQ-Fp for bug-gnu-emacs@gnu.org; Mon, 02 Jul 2018 10:24:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1fZzkI-0004mr-8A for bug-gnu-emacs@gnu.org; Mon, 02 Jul 2018 10:24:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Carlos Pita Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 02 Jul 2018 14:24:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 31968 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 31968-submit@debbugs.gnu.org id=B31968.153054138718335 (code B ref 31968); Mon, 02 Jul 2018 14:24:02 +0000 Original-Received: (at 31968) by debbugs.gnu.org; 2 Jul 2018 14:23:07 +0000 Original-Received: from localhost ([127.0.0.1]:43640 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fZzjP-0004lf-2J for submit@debbugs.gnu.org; Mon, 02 Jul 2018 10:23:07 -0400 Original-Received: from mail-yb0-f195.google.com ([209.85.213.195]:34703) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fZzjL-0004ky-3k for 31968@debbugs.gnu.org; Mon, 02 Jul 2018 10:23:05 -0400 Original-Received: by mail-yb0-f195.google.com with SMTP id e9-v6so5160467ybq.1 for <31968@debbugs.gnu.org>; Mon, 02 Jul 2018 07:23:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=lIskyPTlNaWmKp/PxFqpwsMFEjk1FN6GTZ7MJyWHy1s=; b=TIO90+sqJeifaqERiInRbZwRylKD+XOJFf9YtTdJxOi5JuH53DSmxagsFoPBnT7+fV +ddj87ivkndLI4SmVDIi/RHiPlvHij8IJehxEXpoMJkQUG0RWgTpj62C9DcicLrkOLHc KoWHuoXnqHSpXbCUsatV2qpqw+4bywFu03VEMjtFU3efLIsDupXlem2DdmKb4ECtvdCL uykkTJGVFYX1L1f/syalMDdCKukgYHLWTP1YnFfPyzkyaaRmXfCzRStfWkJmrqJZsUsR dE816NNko9nb/KzGX/qhP2ohO2Dr7n8QhvJD8M/hGpG2gBPV+9zOoLteBhMjDLLvYbBY rBVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=lIskyPTlNaWmKp/PxFqpwsMFEjk1FN6GTZ7MJyWHy1s=; b=ROoU7gFX5CNf71BK0K2HuengbwokERJgWO/WP7DN4oRICfpvdTeMJ3lFALlGYCwUO6 TS8BSE6kbpwWSsB/7Q56+PSgoRHgIm2czOc/vaPht9b5CNmTXGH3ksobYMYqJsqhirNI TAD9Dm5ZYbSFbf5eRbRb0ZrrgpNdSAORYhL+OpSP10okDy7vkjP1fKGa/EKSJPWhrcn2 ZpE8LtemYaer/Y78okFA5DhI/Fu7Tw9JQHx5mNiba1o2E3r/JUzWWfbdeHFsb9bd5iFX docY8/2Ea0jJ69RE9aw7n4yR3MkkAqKbaQ9rSCm2dPN1z/wYAm3JUw4IUJINoZas45QK 9P5A== X-Gm-Message-State: APt69E3hkPoLa1LDcUdVPhtQGsBEZvIRo0atl1WksLICkO1TGVYePPJ4 4tRp6tZTTXIkmKzqM+gQJkbAf9brm0lRC9Xn4X8= X-Google-Smtp-Source: ADUXVKKDqPjP78ClomMOJA0q0BzafEeHAHSHsmRbugP+GBcQQ57EqUVyt387lDh0kzM/y3Damrpc6CcqD/zrnAzldAQ= X-Received: by 2002:a25:4d56:: with SMTP id a83-v6mr13824301ybb.226.1530541377546; Mon, 02 Jul 2018 07:22:57 -0700 (PDT) In-Reply-To: <87muv9epcz.fsf@gmail.com> X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:148085 Archived-At: --0000000000001f70da057004efc2 Content-Type: text/plain; charset="UTF-8" I would oppose to any change that exlicitly undecorates and redecorates the window because (I'm summing up below what I already mentioned in a more haphazardly way above): 1. Both under Gnome and under Cinnamon there are scenarios in which changing the client decorated state wreaks havoc with WM operation. In Gnome when you remove decorations the client lose focus. In Cinnamon undecorating and redecorating a maximized window makes it completely inaccessible, as if the WM couldn't show it anymore. I managed to make the maximize-undecorate / unmaximize-decorate combo work under Cinnamon, but that's all. Expect problems under other DEs and WMs. 2. Using Jonathan hook shares the problems described in point 1, since it explicitly deals with decorations instead of just hinting the WM, but also fails to redecorate the window in many circumstances, since the hook seems to be called before the maximized property was removed from the frame properties alist. Even if there were a more convenient event to hook from (I was unable to find one in frame.el) I would disregard the solution because of 1. So that let's us able to support WMs that offers _GTK_HIDE_TITLEBAR_WHEN_MAXIMIZED or a similar mechanism, or that explicitly advertise they allow decoration change events triggered by the client. I've requested support for _GTK_HIDE_TITLEBAR_WHEN_MAXIMIZED in the Cinnamon tracker [1], maybe you can argue a bit more for the feature there. --- [1] https://github.com/linuxmint/Cinnamon/issues/7681 --0000000000001f70da057004efc2 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I would oppose to any change that exlicitly undecorates a= nd redecorates the window because (I'm summing up below what I already = mentioned in a more haphazardly way above):

1. Both under Gnome and under Cinnamon there are scenarios in= which changing the client decorated state wreaks havoc with WM operation. = In Gnome when you remove decorations the client lose focus. In Cinnamon und= ecorating and redecorating a maximized window makes it completely inaccessi= ble, as if the WM couldn't show it anymore. I managed to make the maxim= ize-undecorate / unmaximize-decorate combo work under Cinnamon, but that= 9;s all. Expect problems under other DEs and WMs.
2. Using Jonathan hook shares the problems descri= bed in point 1, since it explicitly deals with decorations instead of just = hinting the WM, but also fails to redecorate the window in many circumstanc= es, since the hook seems to be called before the maximized property was rem= oved from the frame properties alist. Even if there were a more convenient = event to hook from (I was unable to find one in frame.el) I would disregard= the solution because of 1.

So that let's us able to support WMs that offers _GTK_HIDE_TITLEBAR= _WHEN_MAXIMIZED or a similar mechanism, or that explicitly advertise they a= llow decoration change events triggered by the client.

I've requested support for=C2=A0_GTK_HIDE_TITLEBAR_WHEN_MAXIMIZED=C2=A0in the Cinnamon tracker [= 1], maybe you can argue a bit more for the feature there.

---

[1]=C2=A0https://github.com/linuxmint/Cinnamon/issues/7681

--0000000000001f70da057004efc2--