(U+6215): Apply new conventions for glyph granularity.
[chise/xemacs-chise.git.1] / src / EmacsShell-sub.c
index 490530b..1a59ac3 100644 (file)
@@ -90,6 +90,8 @@ Boston, MA 02111-1307, USA.  */
 #include <X11/VendorP.h>
 #include "EmacsShellP.h"
 
+#define ABORT abort
+
 #if defined (DEFINE_TOP_LEVEL_EMACS_SHELL)
 #define EMACS_SHELL_WIDGET TopLevelEmacsShellWidget
 #define SUPERCLASS_WIDGET_CLASS topLevelShellWidgetClass
@@ -192,9 +194,9 @@ EMACS_SHELL_CLASS_REC_TYPE EMACS_SHELL_CLASS_REC = {
     /* resources         */    resources,
     /* resource_count    */    XtNumber (resources),
     /* xrm_class         */    NULLQUARK,
-    /* compress_motion   */    FALSE,
-    /* compress_exposure  */   TRUE,
-    /* compress_enterleave*/   FALSE,
+    /* compress_motion   */    TRUE,
+    /* compress_exposure  */   XtExposeCompressMaximal | XtExposeNoRegion,
+    /* compress_enterleave*/   TRUE,
     /* visible_interest          */    TRUE,
     /* destroy           */    NULL,
     /* resize            */    XtInheritResize,
@@ -286,7 +288,7 @@ SuperClassRootGeometryManager (Widget gw,
     }
 
   if (!gcer)
-    abort ();
+    ABORT ();
 
   /* call it to actually make the geometry request */
   scer = (ShellClassExtensionRec *) gcer;
@@ -304,7 +306,7 @@ RootGeometryManager (Widget gw,
   XtGeometryResult result;
 
   if (reentrant)
-    abort ();
+    ABORT ();
   reentrant++;
 
 #ifdef DEBUG_GEOMETRY_MANAGEMENT
@@ -333,11 +335,16 @@ RootGeometryManager (Widget gw,
          result == XtGeometryAlmost ? "XtGeometryAlmost" :
          "XtGeometryDone");
   if (reply->request_mode & CWWidth)
-    printf ("width returned;");
+    printf ("width returned was %d%s",
+           reply->width,
+           reply->request_mode & CWHeight ? "; " : ".\n");
   if (reply->request_mode & CWHeight)
-    printf ("height returned;");
-  printf ("\n");
-  printf ("  resulting shell size: %d %d\n", reply->width, reply->height);
+    printf ("height returned was %d.\n", reply->height);
+  /* #### does this also need to depend on the result?
+     With XtGeometryYes there doesn't seem to be a useful reply object. */
+  printf ("  resulting shell size: %d %d\n",
+         reply->request_mode & CWWidth ? reply->width : w->core.width,
+         reply->request_mode & CWHeight ? reply->height : w->core.height);
   printf ("----------\n");
   fflush (stdout);
 #endif
@@ -364,11 +371,11 @@ ChangeManaged (Widget wid)
       for (i = 0; i < w->composite.num_children; i++) {
        if (XtIsManaged(w->composite.children[i])) {
          child = w->composite.children[i];
+         update_size_hints_internal (w, child->core.width,
+                                     child->core.height);
          break;
        }
       }
-
-      update_size_hints_internal (w, child->core.width, child->core.height);
     }
 
   /* call the real ChangeManaged */