emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] /srv/bzr/emacs/emacs-23 r100325: * xterm.c (x_check_fullsc


From: Jan D.
Subject: [Emacs-diffs] /srv/bzr/emacs/emacs-23 r100325: * xterm.c (x_check_fullscreen): Fix pixel/character mixup.
Date: Fri, 24 Dec 2010 11:14:44 +0100
User-agent: Bazaar (2.0.3)

------------------------------------------------------------
revno: 100325
committer: Jan D. <address@hidden>
branch nick: emacs-23
timestamp: Fri 2010-12-24 11:14:44 +0100
message:
  * xterm.c (x_check_fullscreen): Fix pixel/character mixup.
modified:
  src/ChangeLog
  src/xterm.c
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2010-12-17 15:38:37 +0000
+++ b/src/ChangeLog     2010-12-24 10:14:44 +0000
@@ -1,3 +1,7 @@
+2010-12-24  Jan Djärv  <address@hidden>
+
+       * xterm.c (x_check_fullscreen): Fix pixel/character mixup.
+
 2010-12-17  Eli Zaretskii  <address@hidden>
 
        * xdisp.c (Fformat_mode_line): Fix last change.

=== modified file 'src/xterm.c'
--- a/src/xterm.c       2010-11-04 08:41:25 +0000
+++ b/src/xterm.c       2010-12-24 10:14:44 +0000
@@ -8764,9 +8764,13 @@
   if (f->output_data.x->parent_desc != FRAME_X_DISPLAY_INFO (f)->root_window)
     return; /* Only fullscreen without WM or with EWM hints (above). */
 
+  /* Setting fullscreen to nil doesn't do anything.  We could save the
+     last non-fullscreen size and restore it, but it seems like a
+     lot of work for this unusual case (no window manager running).  */
+
   if (f->want_fullscreen != FULLSCREEN_NONE)
     {
-      int width = FRAME_COLS (f), height = FRAME_LINES (f);
+      int width = FRAME_PIXEL_WIDTH (f), height = FRAME_PIXEL_HEIGHT (f);
       struct x_display_info *dpyinfo = FRAME_X_DISPLAY_INFO (f);
 
       switch (f->want_fullscreen)
@@ -8783,13 +8787,9 @@
         case FULLSCREEN_HEIGHT:
           height = x_display_pixel_height (dpyinfo);
         }
-      
-      if (FRAME_COLS (f) != width || FRAME_LINES (f) != height)
-        {
-          change_frame_size (f, height, width, 0, 1, 0);
-          SET_FRAME_GARBAGED (f);
-          cancel_mouse_face (f);
-        }
+
+      XResizeWindow (FRAME_X_DISPLAY (f), FRAME_OUTER_WINDOW (f),
+                     width, height);
     }
 }
 


reply via email to

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