GNU bug report logs - #16923
24.3.50; reression: `set-frame-size' loses mode line

Previous Next

Package: emacs;

Reported by: Drew Adams <drew.adams <at> oracle.com>

Date: Sun, 2 Mar 2014 20:06:02 UTC

Severity: normal

Tags: moreinfo

Found in version 24.3.50

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: martin rudalics <rudalics <at> gmx.at>
To: Drew Adams <drew.adams <at> oracle.com>
Cc: 16923 <at> debbugs.gnu.org
Subject: bug#16923: 24.3.50; reression: `set-frame-size' loses mode line
Date: Fri, 07 Mar 2014 19:36:46 +0100
> Sorry, I don't quite follow you.
> Just what are you asking me to check

Whether the frame title part, the menu bar or any other decorations
provided by Windows change when the modeline disappears.

> (and how)?

By looking at the Emacs frame including its decorations.

>> which means that there are 24 pixels less for the client rectangle and
>> Windows partly draws the frame decoration over it and clips the rest.
>>
>> Prepare a function to print the difference of the (nth 3) of the two
>> `w32-frame-rect' calls in the echo area of a second frame, bind it to a
>> key, and you should see that whenever the modeline is absent that value
>> is 56 while otherwise it is 80.
>
> Sorry, I really do not know what you would like me to do.
> Please elaborate.

Evaluate

(defun foo ()
  (interactive)
  (let ((window-rect (w32-frame-rect))
	(client-rect (w32-frame-rect nil t)))
  (message "%s"
	   (- (- (nth 3 window-rect) (nth 1 window-rect))
	      (- (nth 3 client-rect) (nth 1 client-rect))))))

(global-set-key [(control meta +)] 'foo)

and look what it prints.  I suppose the values are different depending
on when the modeline is present and when it is not.  Here the value is
different when the menubar wraps or disappears, after F11, ...

> OK, I guess I'll make that change, then.  Can you say what is fragile
> about it?  Do you expect that it will break something?  Or do you mean
> only that it might not work in all cases?  (Or do you mean something
> else?)

It might not work in all cases.

martin




This bug report was last modified 5 years and 341 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.