[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#14049: 24.3; set-frame-width didn't work in daemon mode

From: martin rudalics
Subject: bug#14049: 24.3; set-frame-width didn't work in daemon mode
Date: Fri, 22 Sep 2017 10:10:02 +0200

> I have the following lines in my .emacs file.
> (defun my:set-frame-size (&optional frame)
>    (interactive)
>    (if frame
>      (select-frame frame))
>    (if (display-graphic-p)
>        (progn
>      (tool-bar-mode -1)
>      ;; use 120 char wide window for largeish displays
>      ;; and smaller 80 column windows for smaller displays
>      ;; pick whatever numbers make sense for you
>      (if (> (x-display-pixel-width) 1280)
>          (set-frame-width (selected-frame) 120)
>        (set-frame-width (selected-frame) 80))
>      ;; for the height, subtract a couple hundred pixels
>      ;; from the screen height (for panels, menubars and
>      ;; whatnot), then divide by the height of a char to
>      ;; get the height we want
>      (set-frame-height (selected-frame)
>                (/ (- (x-display-pixel-height) 200)
>                   (frame-char-height)))
>      )))
> (add-hook 'after-make-frame-functions 'my:set-frame-size frame)
> However, if i invoke a normal emacs, and create a new frame, both
> set-frame-width and set-frame-height work well.
> But if i invoke emacs from 'emacsclient -c -a ""', set-frame-width
> didn't work. Width should be 120 instead of staying 80. (I have
> "server-start in the end of my .emacs")
> I tried to debug it and use message to print width out. Under both
> conditions, x-display-pixel-width is 1366 and (set-frame-width
> (selected-frame) 120) is excuted.
> In GNU Emacs 24.3.1 (i686-pc-cygwin)
>   of 2013-03-11 on fiona
> Windowing system distributor `Microsoft Corp.', version 6.1.7601

I have been looking into this (and the related 14056) now.  With a more
simple scenario using

(defun my-set-frame-size (&optional frame)
  (tool-bar-mode -1)
  (set-frame-width frame 30)
  (set-frame-height frame 10))

(add-hook 'after-make-frame-functions 'my-set-frame-size)


in the server Emacs, I can reproduce the bug for a native
Windows build I happen to have around here.  For that build, the client
frame indeed does not support the requested height but uses the default
initial height instead.  I cannot reproduce the bug for any later build
I have here including one of  So I suppose that the bug has
been fixed somewhere in between these two builds and mark this bug as

Very belated thanks for the report, martin

reply via email to

[Prev in Thread] Current Thread [Next in Thread]