changeset 2872:5bf18ccb05df

[xemacs-hg @ 2005-07-24 17:53:21 by michaels] Subject: Fix window-config problems on Windows lisp/ChangeLog: 2005-07-24 Fabrice Popineau <Fabrice.Popineau@supelec.fr> * window-xemacs.el (really-set-window-configuration): * window-xemacs.el (current-window-configuration): * window-xemacs.el (window-configuration-equal): * window-xemacs.el (window-configuration): Add `frame-top' and `frame-left' field to windows configurations, and save and restore them. src/ChangeLog: 2005-07-24 Fabrice Popineau <Fabrice.Popineau@supelec.fr> * frame-msw.c (mswindows_set_frame_size): Don't have a frame size change trigger restoring the frame.
author michaels
date Sun, 24 Jul 2005 17:53:27 +0000
parents e8c263f619d8
children b09cbd98dfdf
files lisp/ChangeLog lisp/window-xemacs.el src/ChangeLog src/frame-msw.c
diffstat 4 files changed, 24 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Sat Jul 23 21:51:08 2005 +0000
+++ b/lisp/ChangeLog	Sun Jul 24 17:53:27 2005 +0000
@@ -1,3 +1,12 @@
+2005-07-24  Fabrice Popineau <Fabrice.Popineau@supelec.fr>
+
+	* window-xemacs.el (really-set-window-configuration): 
+	* window-xemacs.el (current-window-configuration): 
+	* window-xemacs.el (window-configuration-equal): 
+	* window-xemacs.el (window-configuration): Add `frame-top' and
+	`frame-left' field to windows configurations, and save and restore
+	them.
+
 2005-06-26  Aidan Kehoe  <kehoea@parhasard.net>
 
 	* cmdloop.el (read-quoted-char):
--- a/lisp/window-xemacs.el	Sat Jul 23 21:51:08 2005 +0000
+++ b/lisp/window-xemacs.el	Sun Jul 24 17:53:27 2005 +0000
@@ -119,6 +119,7 @@
 
 (defstruct window-configuration
   frame
+  frame-top frame-left
   frame-pixel-width frame-pixel-height
   current-buffer
   minibuffer-pixel-height
@@ -135,6 +136,10 @@
 	      (window-configuration-frame-pixel-width conf-2))
 	   (= (window-configuration-frame-pixel-height conf-1)
 	      (window-configuration-frame-pixel-height conf-2))
+          (= (window-configuration-frame-top conf-1)
+             (window-configuration-frame-top conf-2))
+          (= (window-configuration-frame-left conf-1)
+             (window-configuration-frame-left conf-2))
 	   (eq (window-configuration-current-buffer conf-1)
 	       (window-configuration-current-buffer conf-2))
 	   (saved-window-equal (window-configuration-saved-root-window conf-1)
@@ -213,6 +218,8 @@
 	      
     (make-window-configuration
      :frame frame
+:frame-top (frame-property frame 'top)
+:frame-left (frame-property frame 'left)
      :frame-pixel-width (frame-pixel-width frame)
      :frame-pixel-height (frame-pixel-height frame)
      :current-buffer (current-buffer)
@@ -284,6 +291,8 @@
 
   (frame-reduce-to-one-window frame)
   (set-window-configuration-frame-size configuration)
+  (set-frame-property frame 'left (window-configuration-frame-left configuration)) 
+  (set-frame-property frame 'top (window-configuration-frame-top configuration)) 
 
   ;; these may have changed because of the delete
   (let ((root-window (frame-root-window frame)))
--- a/src/ChangeLog	Sat Jul 23 21:51:08 2005 +0000
+++ b/src/ChangeLog	Sun Jul 24 17:53:27 2005 +0000
@@ -1,3 +1,8 @@
+2005-07-24  Fabrice Popineau <Fabrice.Popineau@supelec.fr>
+
+	* frame-msw.c (mswindows_set_frame_size): Don't have a frame size
+	change trigger restoring the frame.
+
 2005-07-20  Didier Verna  <didier@xemacs.org>
 
 	Following suggestions from Stephen J. Turnbull:
--- a/src/frame-msw.c	Sat Jul 23 21:51:08 2005 +0000
+++ b/src/frame-msw.c	Sun Jul 24 17:53:27 2005 +0000
@@ -353,7 +353,7 @@
 		      GetMenu (FRAME_MSWINDOWS_HANDLE (f)) != NULL,
 		      qxeGetWindowLong (FRAME_MSWINDOWS_HANDLE (f), GWL_EXSTYLE));
 
-  if (IsIconic (FRAME_MSWINDOWS_HANDLE (f)) || IsZoomed (FRAME_MSWINDOWS_HANDLE (f)))
+  if (IsIconic (FRAME_MSWINDOWS_HANDLE (f)))
     ShowWindow (FRAME_MSWINDOWS_HANDLE (f), SW_RESTORE);
 
   SetWindowPos (FRAME_MSWINDOWS_HANDLE (f), NULL,