]> code.delx.au - gnu-emacs/commitdiff
Better full-screen frame support on MS-Windows.
authorErik Charlebois <erikcharlebois@gmail.com>
Sat, 20 Apr 2013 07:32:31 +0000 (10:32 +0300)
committerEli Zaretskii <eliz@gnu.org>
Sat, 20 Apr 2013 07:32:31 +0000 (10:32 +0300)
 src/w32fns.c (w32_fullscreen_rect): New function to compute the
 window rectangle for the given fullscreen mode.
 (w32_wnd_proc): When in a fullscreen mode, WM_WINDOWPOSCHANGING no
 longer tunes the window size.  This keeps the window's edges flush
 with the screen and allows the taskbar to hide itself in fullboth.
 src/w32term.c (w32fullscreen_hook): 'fullboth' now shows without
 window decorations and uses the entire screen.
 src/w32term.h  (w32_fullscreen_rect) Add prototype.
 (struct w32_output): Replace normal_width, normal_height,
 normal_top, and normal_left members with a single normal_placement
 struct.
 (FRAME_NORMAL_WIDTH, FRAME_NORMAL_HEIGHT, FRAME_NORMAL_TOP):
 Remove macros.
 (FRAME_NORMAL_PLACEMENT): New macro.

Fixes: debbugs:14180
1  2 
src/ChangeLog
src/w32fns.c

diff --cc src/ChangeLog
index 04a6c353619f55289294f219699a00346440e469,402792b54601229de7e0cb74ec83d331e2a3a80e..5164dc8ff8d3d24166639eda14fa618c61a0f8fe
@@@ -1,67 -1,3 +1,86 @@@
++2013-04-20  Erik Charlebois  <erikcharlebois@gmail.com>
++
++      * w32fns.c (w32_fullscreen_rect): New function to compute the
++      window rectangle for the given fullscreen mode.
++      (w32_wnd_proc): When in a fullscreen mode, WM_WINDOWPOSCHANGING no
++      longer tunes the window size.  This keeps the window's edges flush
++      with the screen and allows the taskbar to hide itself in fullboth.
++
++      * w32term.c (w32fullscreen_hook): 'fullboth' now shows without
++      window decorations and uses the entire screen.
++
++      * w32term.h  (w32_fullscreen_rect) Add prototype.
++      (struct w32_output): Replace normal_width, normal_height,
++      normal_top, and normal_left members with a single normal_placement
++      struct.
++      (FRAME_NORMAL_WIDTH, FRAME_NORMAL_HEIGHT, FRAME_NORMAL_TOP):
++      Remove macros.
++      (FRAME_NORMAL_PLACEMENT): New macro.
++
 +2013-04-16  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * minibuf.c (Ftest_completion): Silence compiler warning.
 +
 +2013-04-15  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32fns.c (w32_wnd_proc): Add more assertions to investigate
 +      bug#14062.
 +
 +      * frame.h (WINDOW_FRAME): Protect macro and its argument with
 +      parentheses.
 +
 +      * dispextern.h (CURRENT_MODE_LINE_HEIGHT)
 +      (CURRENT_HEADER_LINE_HEIGHT, WINDOW_WANTS_MODELINE_P)
 +      (WINDOW_WANTS_HEADER_LINE_P): Protect macro arguments with
 +      parentheses where appropriate.
 +
 +2013-04-14  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      * keyboard.c (timer_start_idle): Remove no-longer-used local.
 +
 +2013-04-14  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * buffer.c (syms_of_buffer) <left-margin-width, right-margin-width>
 +      <left-fringe-width, right-fringe-width, fringes-outside-margins>:
 +      Mention in the doc string that setting these variables takes
 +      effect only after a call to set-window-buffer.  (Bug#14200)
 +
 +2013-04-13  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * indent.c (Fvertical_motion): Don't consider display strings on
 +      overlay strings as display strings on the buffer position we
 +      started from.  This prevents vertical cursor motion from jumping
 +      more than one line when there's an overlay string with a display
 +      property at end of line.
 +      Reported by Karl Chen <Karl.Chen@quarl.org> in
 +      http://lists.gnu.org/archive/html/emacs-devel/2013-04/msg00362.html.
 +
 +2013-04-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * window.c (select_window): `record_buffer' even if window is
 +      already selected (bug#14191).
 +
 +2013-04-11  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * window.c (Fwindow_end): Test more flags, including the buffer's
 +      last_overlay_modified flag, to determine whether the window's
 +      display is really up-to-date.  Prevents the function from
 +      returning a stale value.  (Bug#14170)
 +      (Fwindow_line_height): Fix the test for up-to-date-ness of the
 +      current matrix.
 +
 +2013-04-10  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * frame.c (do_switch_frame): Mark the TTY frame we switch to as
 +      garbaged only if it is not already the top frame on its TTY.
 +      This prevents flickering due to constant redrawing of TTY frames when
 +      there are GUI frames open in the same session.  (Bug#13864)
 +
 +2013-04-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keyboard.c (timer_start_idle): Call internal-timer-start-idle instead
 +      of marking the idle timers directly.
 +
  2013-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
  
        * minibuf.c (Ftest_completion): Ignore non-string/symbol keys in hash
diff --cc src/w32fns.c
Simple merge