diff lisp/window-xemacs.el @ 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 627e25731054
children 6caa3d30f19f
line wrap: on
line diff
--- 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)))