summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGraeme Geldenhuys <graemeg@gmail.com>2010-12-30 15:46:21 +0200
committerGraeme Geldenhuys <graemeg@gmail.com>2010-12-30 15:46:21 +0200
commit31bf30fb5812a8913bcd2463b53a27689bc90edd (patch)
tree496dc3b3761a65204826604a240108e2f087663c /src
parente37fc9a4821500a87be0342e01714b048501f39f (diff)
downloadfpGUI-31bf30fb5812a8913bcd2463b53a27689bc90edd.tar.xz
X11: Correctly implemented the handling of X11's GraphicsExpose event.
Diffstat (limited to 'src')
-rw-r--r--src/corelib/x11/fpg_x11.pas12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/corelib/x11/fpg_x11.pas b/src/corelib/x11/fpg_x11.pas
index 0a432335..8c7350d7 100644
--- a/src/corelib/x11/fpg_x11.pas
+++ b/src/corelib/x11/fpg_x11.pas
@@ -1743,6 +1743,17 @@ begin
end;
end;
+ X.GraphicsExpose:
+ begin
+ repeat
+ //
+ until not XCheckTypedWindowEvent(display, ev.xexpose.window, X.GraphicsExpose, @ev);
+ if ev.xgraphicsexpose.count = 0 then
+ begin
+ fpgPostMessage(nil, FindWindowByHandle(ev.xgraphicsexpose.drawable), FPGM_PAINT);
+ end;
+ end;
+
X.MotionNotify:
begin
repeat
@@ -2008,7 +2019,6 @@ begin
RemoveWindowLookup(TfpgX11Window(w));
end;
- X.GraphicsExpose,
X.NoExpose:
begin
// writeln('got a GraphicsExpose or NoExpose event');