From 04ac72223a0d04787b98b0d65c2e3077efb0329f Mon Sep 17 00:00:00 2001 From: Martin Rudalics Date: Mon, 16 Dec 2024 16:36:59 +0100 Subject: [PATCH] Don't inhibit resizing when making a new frame (Bug#74750) * src/frame.h (struct frame): Remove inhibit_horizontal_resize and inhibit_vertical_resize slots. * src/frame.c (frame_inhibit_resize, make_frame) (Fframe_after_make_frame, gui_figure_window_size): Remove all operations on frame's inhibit_horizontal_resize and inhibit_vertical_resize slots (Bug#74750). (cherry picked from commit b5ba5cbacf2b8122d720f89dd93d36a5c0fd39ec) --- src/frame.c | 28 +++++++++------------------- src/frame.h | 4 ---- 2 files changed, 9 insertions(+), 23 deletions(-) diff --git a/src/frame.c b/src/frame.c index 8b31e8c7213..26a28575cc4 100644 --- a/src/frame.c +++ b/src/frame.c @@ -173,20 +173,16 @@ bool frame_inhibit_resize (struct frame *f, bool horizontal, Lisp_Object parameter) { Lisp_Object fullscreen = get_frame_param (f, Qfullscreen); - bool inhibit - = (f->after_make_frame - ? (EQ (frame_inhibit_implied_resize, Qt) - || (CONSP (frame_inhibit_implied_resize) - && !NILP (Fmemq (parameter, frame_inhibit_implied_resize))) - || (horizontal - && !NILP (fullscreen) && !EQ (fullscreen, Qfullheight)) - || (!horizontal - && !NILP (fullscreen) && !EQ (fullscreen, Qfullwidth)) - || FRAME_TERMCAP_P (f) || FRAME_MSDOS_P (f)) - : ((horizontal && f->inhibit_horizontal_resize) - || (!horizontal && f->inhibit_vertical_resize))); - return inhibit; + return (f->after_make_frame + && (EQ (frame_inhibit_implied_resize, Qt) + || (CONSP (frame_inhibit_implied_resize) + && !NILP (Fmemq (parameter, frame_inhibit_implied_resize))) + || (horizontal + && !NILP (fullscreen) && !EQ (fullscreen, Qfullheight)) + || (!horizontal + && !NILP (fullscreen) && !EQ (fullscreen, Qfullwidth)) + || FRAME_TERMCAP_P (f) || FRAME_MSDOS_P (f))); } @@ -984,8 +980,6 @@ make_frame (bool mini_p) f->garbaged = true; f->can_set_window_size = false; f->after_make_frame = false; - f->inhibit_horizontal_resize = false; - f->inhibit_vertical_resize = false; f->tab_bar_redisplayed = false; f->tab_bar_resized = false; f->tool_bar_redisplayed = false; @@ -3342,8 +3336,6 @@ otherwise used with utter care to avoid that running functions on { struct frame *f = decode_live_frame (frame); f->after_make_frame = !NILP (made); - f->inhibit_horizontal_resize = false; - f->inhibit_vertical_resize = false; return made; } @@ -6176,7 +6168,6 @@ gui_figure_window_size (struct frame *f, Lisp_Object parms, bool tabbar_p, xsignal1 (Qargs_out_of_range, XCDR (width)); text_width = XFIXNUM (XCDR (width)); - f->inhibit_horizontal_resize = true; } else if (FLOATP (width)) { @@ -6212,7 +6203,6 @@ gui_figure_window_size (struct frame *f, Lisp_Object parms, bool tabbar_p, xsignal1 (Qargs_out_of_range, XCDR (height)); text_height = XFIXNUM (XCDR (height)); - f->inhibit_vertical_resize = true; } else if (FLOATP (height)) { diff --git a/src/frame.h b/src/frame.h index bc8c3498634..cb03d5550bb 100644 --- a/src/frame.h +++ b/src/frame.h @@ -510,10 +510,6 @@ struct frame bool_bf tool_bar_redisplayed : 1; bool_bf tool_bar_resized : 1; - /* Inhibit implied resize before after_make_frame is set. */ - bool_bf inhibit_horizontal_resize : 1; - bool_bf inhibit_vertical_resize : 1; - /* Non-zero if this frame's faces need to be recomputed. */ bool_bf face_change : 1; -- 2.39.5