emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] trunk r113555: Fix bug #14841 with invisible frames on MS-


From: Eli Zaretskii
Subject: [Emacs-diffs] trunk r113555: Fix bug #14841 with invisible frames on MS-Windows.
Date: Fri, 26 Jul 2013 10:00:44 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 113555
revision-id: address@hidden
parent: address@hidden
fixes bug: http://debbugs.gnu.org/14841
committer: Eli Zaretskii <address@hidden>
branch nick: trunk
timestamp: Fri 2013-07-26 12:59:59 +0300
message:
  Fix bug #14841 with invisible frames on MS-Windows.
  
   src/w32term.c (w32_read_socket) <WM_EMACS_PAINT>: Warn about frame
   being re-exposed only if it didn't ask to become visible.
   <WM_SIZE>: Under SIZE_RESTORED, only set the frame visible if it
   was previously iconified.
   (x_iconify_frame): Mark the frame iconified.
modified:
  src/ChangeLog                  changelog-20091113204419-o5vbwnq5f7feedwu-1438
  src/w32term.c                  w32term.c-20091113204419-o5vbwnq5f7feedwu-950
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2013-07-26 08:39:55 +0000
+++ b/src/ChangeLog     2013-07-26 09:59:59 +0000
@@ -1,3 +1,11 @@
+2013-07-26  Eli Zaretskii  <address@hidden>
+
+       * w32term.c (w32_read_socket) <WM_EMACS_PAINT>: Warn about frame
+       being re-exposed only if it didn't ask to become visible.
+       <WM_SIZE>: Under SIZE_RESTORED, only set the frame visible if it
+       was previously iconified.  (Bug#14841)
+       (x_iconify_frame): Mark the frame iconified.
+
 2013-07-26  Paul Eggert  <address@hidden>
 
        Fix minor problems found by static checking.

=== modified file 'src/w32term.c'
--- a/src/w32term.c     2013-07-18 16:50:05 +0000
+++ b/src/w32term.c     2013-07-26 09:59:59 +0000
@@ -4360,8 +4360,9 @@
                  SET_FRAME_VISIBLE (f, 1);
                  SET_FRAME_ICONIFIED (f, 0);
                  SET_FRAME_GARBAGED (f);
-                 DebPrint (("frame %p (%s) reexposed by WM_PAINT\n", f,
-                            SDATA (f->name)));
+                 if (!f->output_data.w32->asked_for_visible)
+                   DebPrint (("frame %p (%s) reexposed by WM_PAINT\n", f,
+                              SDATA (f->name)));
 
                  /* WM_PAINT serves as MapNotify as well, so report
                     visibility changes properly.  */
@@ -4819,7 +4820,8 @@
                  {
                    bool iconified = FRAME_ICONIFIED_P (f);
 
-                   SET_FRAME_VISIBLE (f, 1);
+                   if (iconified)
+                     SET_FRAME_VISIBLE (f, 1);
                    SET_FRAME_ICONIFIED (f, 0);
 
                    /* wait_reading_process_output will notice this
@@ -6129,6 +6131,9 @@
   /* Simulate the user minimizing the frame.  */
   SendMessage (FRAME_W32_WINDOW (f), WM_SYSCOMMAND, SC_MINIMIZE, 0);
 
+  SET_FRAME_VISIBLE (f, 0);
+  SET_FRAME_ICONIFIED (f, 1);
+
   unblock_input ();
 }
 


reply via email to

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