From: Eli Zaretskii <eliz@gnu.org>
To: martin rudalics <rudalics@gmx.at>
Cc: ext0l@catgirl.ai, 65217@debbugs.gnu.org
Subject: bug#65217: 29.1; set-frame-size gets confused and drops calls
Date: Fri, 18 Aug 2023 15:12:29 +0300 [thread overview]
Message-ID: <838ra84kia.fsf@gnu.org> (raw)
In-Reply-To: <76cc2a16-1e06-5ce9-c513-3e45856e69d9@gmx.at> (message from martin rudalics on Fri, 18 Aug 2023 10:25:27 +0200)
> Date: Fri, 18 Aug 2023 10:25:27 +0200
> Cc: 65217@debbugs.gnu.org
> From: martin rudalics <rudalics@gmx.at>
>
> The first thing xg_frame_set_char_size (the function responsible for
> dispatching the 'set-frame-size' call to GTK) does is to call
> gtk_window_get_size to get the "current size" of the window showing the
> frame. The doc of that function says that
>
> * Depending on the windowing system and the window manager constraints,
> * the size returned by this function may not match the size set using
> * gtk_window_resize(); additionally, since gtk_window_resize() may be
> * implemented as an asynchronous operation, GTK+ cannot guarantee in any
> * way that this code:
> *
> * |[<!-- language="C" -->
> * // width and height are set elsewhere
> * gtk_window_resize (window, width, height);
> *
> * int new_width, new_height;
> * gtk_window_get_size (window, &new_width, &new_height);
> * ]|
> *
> * will result in `new_width` and `new_height` matching `width` and
> * `height`, respectively.
>
> where gtk_window_resize (window, width, height) corresponds to our
> (set-frame-size my/frame 10 10) and the gwidth and gheight used in the
> earlier mentioned
>
> if (outer_width != gwidth || outer_height != gheight)
>
> check are the new_width and new_height values returned by
> gtk_window_get_size. So since we've been warned by the GTK people, the
> attached patch which removes that conditional seems in order.
Po Lu, do you agree with the patch? If you do, I'll install it on
master.
> Note that all other uses of gwidth and gheight remain in place and may
> cause the above mentioned problems so maybe we should warn about this in
> PROBLEMS.
Please suggest the text for PROBLEMS, I think this is a good idea.
Thanks.
next prev parent reply other threads:[~2023-08-18 12:12 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-10 23:07 bug#65217: 29.1; set-frame-size gets confused and drops calls Ash
[not found] ` <handler.65217.B.169170885617684.ack@debbugs.gnu.org>
2023-08-10 23:16 ` Ash
2023-08-17 9:49 ` Eli Zaretskii
2023-08-17 16:44 ` martin rudalics
2023-08-18 1:13 ` Ash
2023-08-18 5:56 ` Eli Zaretskii
2023-08-18 6:04 ` Ash
2023-08-18 6:37 ` Eli Zaretskii
2023-08-18 7:23 ` Ash
2023-08-18 8:25 ` martin rudalics
2023-08-18 12:12 ` Eli Zaretskii [this message]
2023-08-18 8:34 ` Gregory Heytings
2023-08-18 12:14 ` Eli Zaretskii
2023-08-18 12:26 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-08-19 8:04 ` martin rudalics
2023-08-19 10:18 ` Gregory Heytings
2023-08-20 6:32 ` martin rudalics
2023-08-20 7:55 ` Gregory Heytings
2023-08-21 6:19 ` martin rudalics
2023-08-21 8:30 ` Gregory Heytings
2023-08-21 13:39 ` martin rudalics
2023-08-21 14:12 ` Gregory Heytings
2023-08-21 17:31 ` martin rudalics
2023-08-21 18:26 ` Gregory Heytings
2023-08-22 8:53 ` martin rudalics
2023-08-18 13:26 ` Gregory Heytings
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=838ra84kia.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=65217@debbugs.gnu.org \
--cc=ext0l@catgirl.ai \
--cc=rudalics@gmx.at \
/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).