changeset 98222:d614f7f30db9

(x_display_pixel_height, x_display_pixel_width): New functions. (x_calc_absolute_position): Use them. (x_term_init): Omit removed `height' and `width' members.
author Chong Yidong <cyd@stupidchicken.com>
date Thu, 18 Sep 2008 18:11:05 +0000
parents 72976c727c57
children 033f7f08bc55
files src/xterm.c
diffstat 1 files changed, 19 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/src/xterm.c	Thu Sep 18 18:09:45 2008 +0000
+++ b/src/xterm.c	Thu Sep 18 18:11:05 2008 +0000
@@ -526,6 +526,20 @@
   x_uncatch_errors ();
 }
 
+int
+x_display_pixel_height (dpyinfo)
+     struct x_display_info *dpyinfo;
+{
+  return HeightOfScreen (dpyinfo->screen);
+}
+
+int
+x_display_pixel_width (dpyinfo)
+     struct x_display_info *dpyinfo;
+{
+  return WidthOfScreen (dpyinfo->screen);
+}
+
 
 /***********************************************************************
 		    Starting and ending an update
@@ -8335,8 +8349,8 @@
   /* Treat negative positions as relative to the leftmost bottommost
      position that fits on the screen.  */
   if (flags & XNegative)
-    f->left_pos = (FRAME_X_DISPLAY_INFO (f)->width
-                   - FRAME_PIXEL_WIDTH (f) + f->left_pos);
+    f->left_pos = x_display_pixel_width (FRAME_X_DISPLAY_INFO (f))
+      - FRAME_PIXEL_WIDTH (f) + f->left_pos;
 
   {
     int height = FRAME_PIXEL_HEIGHT (f);
@@ -8357,8 +8371,9 @@
     XtVaGetValues (f->output_data.x->column_widget, XtNheight, &height, NULL);
 #endif
 
-  if (flags & YNegative)
-    f->top_pos = (FRAME_X_DISPLAY_INFO (f)->height - height + f->top_pos);
+    if (flags & YNegative)
+      f->top_pos = x_display_pixel_height (FRAME_X_DISPLAY_INFO (f))
+	- height + f->top_pos;
   }
 
   /* The left_pos and top_pos
@@ -10193,8 +10208,6 @@
 				     DefaultScreen (dpyinfo->display));
   select_visual (dpyinfo);
   dpyinfo->cmap = DefaultColormapOfScreen (dpyinfo->screen);
-  dpyinfo->height = HeightOfScreen (dpyinfo->screen);
-  dpyinfo->width = WidthOfScreen (dpyinfo->screen);
   dpyinfo->root_window = RootWindowOfScreen (dpyinfo->screen);
   dpyinfo->client_leader_window = 0;
   dpyinfo->grabbed = 0;