unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: martin rudalics <rudalics@gmx.at>
To: Tassilo Horn <tsdh@gnu.org>
Cc: emacs-devel@gnu.org
Subject: Re: Proposing changes to adjust_frame_size
Date: Mon, 10 May 2021 10:25:36 +0200	[thread overview]
Message-ID: <48753133-11a3-a21f-a1f9-4e58508079ac@gmx.at> (raw)
In-Reply-To: <87a6p3iv9q.fsf@gnu.org>

 >> Elementary.  But why should it react so allergically to our resize
 >> request?
 >
 > Sorry, I'm a layman in WMs.  What does or doesn't it do?

If I only knew.  From what I've been able to understand till now, a
tiling WM on X that sends Emacs a MapNotify event when displaying a
frame, doesn't like to be told by Emacs that the size it allots to the
Emacs frame is not the size Emacs actually wants (with emacs -Q that's
the default 80 columns 36 lines frame).

 >> Basically, we have no choice: For some "normal" WMs we have to tell
 >> them the size we want when the frame is mapped because before that
 >> they may ignore our resize requests and after that the frame has
 >> already appeared with its wrong size.  For a tiling WM requesting a
 >> size when the frame is mapped is apparently a mortal sin.
 >
 > If you think that the window manager does something wrong or could at
 > least so something better, I'm happy to file a sway bug report or ask
 > the sway devs on IRC.

That would not help because IIUC XMonad and EXWM do the same.

 >> Whatever it be, I attach a patch to address this issue.
 >
 > Hm, I can see no difference with your patch applied.  Still emacs -Q has
 > just a menubar and the toolbar is not shown until I move focus to
 > another WM window and back to the emacs frame.

Darn.  It could not have worked because `x-create-frame-with-faces'
removes any visibility spec, creates the frame as invisible and re-adds
the visibility spec later on

   (let* (...
	 (visibility-spec (assq 'visibility parameters))
     ...
     (setq frame (x-create-frame `((visibility . nil) . ,params)))
     ...
	  (if (null visibility-spec)
	      (make-frame-visible frame)
	    (modify-frame-parameters frame (list visibility-spec)))

so I could never have caught this anyway and the entire

       if (EQ (visibility, Qicon))
	x_iconify_frame (f);
       else
	{
	  if (EQ (visibility, Qunbound))
	    visibility = Qt;

	  if (!NILP (visibility))
	    x_make_frame_visible (f);
	  else
	    f->was_invisible = true;
	}

       store_frame_param (f, Qvisibility, visibility);

block in Fx_create_frame is for the birds when this is called from
`x-create-frame-with-faces'.  This kludge needs additional surgery in
the Lisp part so please bear with me.

martin



  reply	other threads:[~2021-05-10  8:25 UTC|newest]

Thread overview: 65+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-25 17:11 Proposing changes to adjust_frame_size martin rudalics
2021-04-27  8:22 ` martin rudalics
2021-04-27 14:16   ` Yuuki Harano
2021-05-02  8:46     ` martin rudalics
2021-05-02 11:21       ` Alan Third
2021-05-02 16:17         ` martin rudalics
2021-05-05  8:51       ` martin rudalics
2021-05-05 10:47         ` Yuuki Harano
2021-05-05 11:24           ` martin rudalics
2021-05-05 14:07             ` Yuuki Harano
2021-05-05 15:01               ` martin rudalics
2021-05-05 16:45                 ` martin rudalics
2021-05-05 18:54                   ` Tassilo Horn
2021-05-06  7:44                     ` martin rudalics
2021-05-06  7:59                       ` Tassilo Horn
2021-05-06  8:39                         ` martin rudalics
2021-05-06  8:49                           ` Tassilo Horn
2021-05-06 12:10                             ` martin rudalics
2021-05-06 12:31                               ` Tassilo Horn
2021-05-06 14:10                                 ` martin rudalics
2021-05-06 14:47                                   ` Tassilo Horn
2021-05-07  8:03                                     ` martin rudalics
2021-05-08  7:02                                       ` Tassilo Horn
2021-05-08  7:16                                         ` martin rudalics
2021-05-08 14:03                                           ` Tassilo Horn
2021-05-08 15:17                                             ` martin rudalics
2021-05-08 20:32                                               ` Tassilo Horn
2021-05-09  8:41                                                 ` martin rudalics
2021-05-09 10:09                                                   ` Garjola Dindi
2021-05-09 10:12                                                   ` Garjola Dindi
2021-05-09 18:48                                                   ` Tassilo Horn
2021-05-10  8:25                                                     ` martin rudalics [this message]
2021-05-10 12:27                                                       ` martin rudalics
2021-05-10 19:05                                                         ` Tassilo Horn
2021-05-10 19:21                                                           ` martin rudalics
2021-05-10 19:28                                                             ` Tassilo Horn
2021-05-11  8:29                                                               ` martin rudalics
2021-05-11  9:25                                                                 ` Tassilo Horn
2021-05-12  8:44                                                                   ` martin rudalics
2021-05-12 14:53                                                                     ` Tassilo Horn
2021-05-12 16:40                                                                       ` martin rudalics
2021-05-12 19:06                                                                         ` Tassilo Horn
2021-05-13  7:55                                                                           ` martin rudalics
2021-05-13  8:08                                                                             ` Tassilo Horn
2021-05-16  8:29                                                                               ` martin rudalics
2021-05-16  8:33                                                                                 ` Tassilo Horn
2021-05-16  9:14                                                                                   ` martin rudalics
2021-05-16  9:16                                                                                     ` Tassilo Horn
2021-05-16 12:24                                                                                       ` martin rudalics
2021-05-16 19:08                                                                                         ` Tassilo Horn
2021-05-17  7:33                                                                                           ` martin rudalics
2021-05-06 14:41                   ` Yuuki Harano
2021-05-09  9:32                     ` Yuuki Harano
2021-05-09 13:47                       ` martin rudalics
2021-05-09 15:30                         ` Yuuki Harano
2021-05-10  8:24                           ` martin rudalics
2021-05-10 13:18                             ` Yuuki Harano
2021-05-10 14:16                               ` martin rudalics
2021-05-10 15:41                                 ` Yuuki Harano
2021-05-10 19:20                                   ` martin rudalics
2021-05-11 14:32                                     ` Yuuki Harano
2021-05-12  8:47                                       ` martin rudalics
2021-05-13  8:48                                         ` Garjola Dindi
2021-05-01 18:59 ` Alan Third
2021-05-02  7:38   ` martin rudalics

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=48753133-11a3-a21f-a1f9-4e58508079ac@gmx.at \
    --to=rudalics@gmx.at \
    --cc=emacs-devel@gnu.org \
    --cc=tsdh@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).