[teklib-general] teklib: Added basic treatment of GraphicsExpose/NoExpose

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


details:   http://hg.teklib.org/teklib/rev/c5f8dd05d5db
changeset: 149:c5f8dd05d5db
user:      Timm S. Mueller <tmueller at neoscientists.org>
date:      Tue Jan 15 02:20:07 2008 +0100
description:
Added basic treatment of GraphicsExpose/NoExpose

diffs (42 lines):

diff -r 3d7c2eb71921 -r c5f8dd05d5db src/display_x11/display_x11_inst.c
--- a/src/display_x11/display_x11_inst.c	Mon Jan 07 16:09:26 2008 +0100
+++ b/src/display_x11/display_x11_inst.c	Tue Jan 15 02:20:07 2008 +0100
@@ -600,19 +600,25 @@ x11_processvisualevent(TMOD_X11 *mod, VI
 
 		case GraphicsExpose:
 		case Expose:
-			/* remap an area */
-			if ((v->eventmask & TITYPE_REFRESH)
-				/*&& ((XExposeEvent *) ev)->count == 0*/)
-			{
-				if (getimsg(mod, v, &imsg, TITYPE_REFRESH))
-				{
-					imsg->timsg_X = ((XExposeEvent *) ev)->x;
-					imsg->timsg_Y = ((XExposeEvent *) ev)->y;
-					imsg->timsg_Width = ((XExposeEvent *) ev)->width;
-					imsg->timsg_Height = ((XExposeEvent *) ev)->height;
-					TAddTail(&v->imsgqueue, &imsg->timsg_Node);
-				}
-			}
+			if ((v->eventmask & TITYPE_REFRESH) &&
+				getimsg(mod, v, &imsg, TITYPE_REFRESH))
+			{
+				imsg->timsg_X = ((XExposeEvent *) ev)->x;
+				imsg->timsg_Y = ((XExposeEvent *) ev)->y;
+				imsg->timsg_Width = ((XExposeEvent *) ev)->width;
+				imsg->timsg_Height = ((XExposeEvent *) ev)->height;
+				TAddTail(&v->imsgqueue, &imsg->timsg_Node);
+			}
+			/* fallthru: */
+
+		case NoExpose:
+
+			if (ev->type == NoExpose || (ev->type == GraphicsExpose &&
+				((XGraphicsExposeEvent *) ev)->count == 0))
+			{
+				TDBPRINTF(10,("COPY COMPLETE\n"));
+			}
+
 			break;
 
 		case FocusIn:


More information about the teklib-general mailing list