The subject says it all.
The patch below fixes it for me, but there's probably cleaner way to do it.


        Stefan


Index: events.c
===================================================================
RCS file: /u/monnier/cvsroot/ctwm/events.c,v
retrieving revision 1.1.1.13
diff -u -u -b -r1.1.1.13 events.c
--- events.c    2 Apr 2005 23:00:27 -0000       1.1.1.13
+++ events.c    4 Apr 2005 17:32:38 -0000
@@ -3975,11 +4036,15 @@
        Tmp_win->old_bw = cre->border_width;  /* for restoring */
     }
 
-    if (cre->value_mask & CWX) {       /* override even if border change */
+    /* If old_bw is zero, the application has asked not to have any border,
+       so we indeed do not draw any border.  Maybe it would be better to set
+       frame_bw and frame_bw3D to 0 in this case, but I don't know where
+       this is handled.  --Stef  */
+    if (cre->value_mask & CWX && Tmp_win->old_bw) { /* override even if border 
change */
        x = cre->x - bw;
        x -= ((gravx < 0) ? 0 : Tmp_win->frame_bw3D);
     }
-    if (cre->value_mask & CWY) {
+    if (cre->value_mask & CWY && Tmp_win->old_bw) {
        y = cre->y - ((gravy < 0) ? 0 : Tmp_win->title_height) - bw;
        y -= ((gravy < 0) ? 0 : Tmp_win->frame_bw3D);
     }

Reply via email to