[teklib-general] teklib: Merge

hg-notify at neoscientists.org hg-notify at neoscientists.org
Wed Jan 16 10:34:26 CET 2008


details:   http://hg.teklib.org/teklib/rev/64acd43770f6
changeset: 154:64acd43770f6
user:      Timm S. Mueller <tmueller at neoscientists.org>
date:      Tue Jan 15 18:46:22 2008 +0100
description:
Merge

diffs (96 lines):

diff -r 71fec58b9146 -r 64acd43770f6 src/display_x11/display_x11_api.c
--- a/src/display_x11/display_x11_api.c	Tue Jan 15 18:05:11 2008 +0100
+++ b/src/display_x11/display_x11_api.c	Tue Jan 15 18:46:22 2008 +0100
@@ -72,7 +72,7 @@ x11_openvisual(TMOD_X11 *mod, struct TVR
 			break;
 
 		swa.colormap = v->colormap;
-		swa.event_mask = StructureNotifyMask;
+		swa.event_mask = StructureNotifyMask | ExposureMask;
 
 		TDBPRINTF(TDB_INFO,("x: %d - y: %d - w: %d - y: %d\n",
 			v->winleft, v->wintop, v->winwidth, v->winheight));
@@ -135,6 +135,7 @@ x11_openvisual(TMOD_X11 *mod, struct TVR
 			if (!v->draw) break;
 		}
 
+#if 0
 		do
 		{
 			XNextEvent(mod->x11_Display, &ev);
@@ -146,6 +147,11 @@ x11_openvisual(TMOD_X11 *mod, struct TVR
 				v->winheight = ((XConfigureEvent *) &ev)->height;
 			}
 		} while (ev.type != MapNotify);
+#endif
+
+		/* TODO/HACK: refresh is on right from the start (see also
+		ExposureMask above): */
+		v->eventmask = TITYPE_REFRESH;
 
 		v->base_mask = swa.event_mask;
 		v->bgpen = TVPEN_UNDEFINED;
diff -r 71fec58b9146 -r 64acd43770f6 src/display_x11/display_x11_inst.c
--- a/src/display_x11/display_x11_inst.c	Tue Jan 15 18:05:11 2008 +0100
+++ b/src/display_x11/display_x11_inst.c	Tue Jan 15 18:46:22 2008 +0100
@@ -499,6 +499,7 @@ x11_processevent(TMOD_X11 *mod)
 			continue;
 		}
 
+		/* lookup window: */
 		w = ((XAnyEvent *) &ev)->window;
 		v = TNULL;
 		node = mod->x11_vlist.tlh_Head;
@@ -572,6 +573,7 @@ x11_processvisualevent(TMOD_X11 *mod, VI
 				{
 					if (getimsg(mod, v, &imsg, TITYPE_NEWSIZE))
 						TAddTail(&v->imsgqueue, &imsg->timsg_Node);
+					TDBPRINTF(TDB_TRACE,("Configure: NEWSIZE\n"));
 				}
 			}
 			break;
@@ -588,9 +590,10 @@ x11_processvisualevent(TMOD_X11 *mod, VI
 			}
 			break;
 
+#if 0
 		case MapNotify:
-			if ((v->eventmask & TITYPE_REFRESH) &&
-				((XExposeEvent *) ev)->count == 0)
+			if ((v->eventmask & TITYPE_REFRESH) /*&&
+				((XExposeEvent *) ev)->count == 0*/)
 			{
 				if (getimsg(mod, v, &imsg, TITYPE_REFRESH))
 				{
@@ -599,9 +602,11 @@ x11_processvisualevent(TMOD_X11 *mod, VI
 					imsg->timsg_Width = v->winwidth;
 					imsg->timsg_Height = v->winheight;
 					TAddTail(&v->imsgqueue, &imsg->timsg_Node);
-				}
-			}
-			break;
+					TDBPRINTF(TDB_TRACE,("Map: REFRESH\n"));
+				}
+			}
+			break;
+#endif
 
 		case Expose:
 			if ((v->eventmask & TITYPE_REFRESH) &&
@@ -612,6 +617,7 @@ x11_processvisualevent(TMOD_X11 *mod, VI
 				imsg->timsg_Width = ((XExposeEvent *) ev)->width;
 				imsg->timsg_Height = ((XExposeEvent *) ev)->height;
 				TAddTail(&v->imsgqueue, &imsg->timsg_Node);
+					TDBPRINTF(TDB_TRACE,("Expose: REFRESH\n"));
 			}
 			break;
 
@@ -640,6 +646,8 @@ x11_processvisualevent(TMOD_X11 *mod, VI
 				mod->x11_RequestInProgress = TNULL;
 				mod->x11_CopyExposeHook = TNULL;
 			}
+			else
+				TDBPRINTF(TDB_TRACE,("Map: TITYPE_REFRESH NOT SET\n"));
 			break;
 
 		case FocusIn:


More information about the teklib-general mailing list