bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#21415: 25.0.50; Emacs Trunk -- pixelwise width/height for x-create-f


From: Keith David Bershatsky
Subject: bug#21415: 25.0.50; Emacs Trunk -- pixelwise width/height for x-create-frame
Date: Sat, 12 Sep 2015 16:09:08 -0700

Anders:  Thank you for weighing in and vetoing the proposed revision -- your 
insight is greatly appreciated.

Martin:  In addition to the feature mentioned by Anders, it turned out that the 
proposed revision (that have since been vetoed for good reason) was responsible 
for my missing four (4) pixels at the bottom of the screen -- i.e., the best I 
could achieve with that vetoed revision was 1920 x 1076 on a 1920 x 1080 
screen.  There were other problems I later discovered that were also linked to 
the proposed revision -- i.e., touching the mouse to the menubar to make it 
temporary visible, moved the frame downward; and, there was a side effect with 
the frame name whenever the frame was not squarely within the visible screen.

I removed all of the following lines from the most recent patch and built a new 
Emacs:

    @@ -7196,8 +7196,8 @@ if (cols > 0 && rows > 0)
       NSTRACE (constrainFrameRect);
       NSTRACE_RECT ("input", frameRect);
    
    -  if (ns_menu_bar_should_be_hidden ())
    -    return frameRect;
    +///   if (ns_menu_bar_should_be_hidden ())
    +///     return frameRect;
    
       if (nr_screens == 1)
         return [super constrainFrameRect:frameRect toScreen:screen];

I am now able to achieve a frame size of 1920 x 1080 on a screen that is 1920 x 
1080; there is no longer any problem with the frame moving when touching the 
menubar; and the frame title is working as it should be.

So, the issue now remaining is how to let `make-frame` respect a frame 
parameter of `(top . 0)` upon frame creation when a user has `(setq 
ns-auto-hide-menu-bar t)`.  As it stands now, it is necessary to 
programmatically call `(set-frame-size FRAME 0 0)` subsequent to each frame 
being created, and am doing the same each time Emacs starts for the initial 
frame.

Keith





reply via email to

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