[mcclim-cvs] CVS mcclim/Backends/gtkairo

dlichteblau dlichteblau at common-lisp.net
Tue May 2 13:00:12 UTC 2006


Update of /project/mcclim/cvsroot/mcclim/Backends/gtkairo
In directory clnet:/tmp/cvs-serv25592

Modified Files:
	event.lisp gtk-ffi.lisp BUGS 
Log Message:
Fixed those phantom gtkairo display glitches:

* event.lisp (expose-handler): Clear the affected area using gdk.

* gtk-ffi.lisp (gdk_window_clear_area): New function.


--- /project/mcclim/cvsroot/mcclim/Backends/gtkairo/event.lisp	2006/05/01 21:21:39	1.5
+++ /project/mcclim/cvsroot/mcclim/Backends/gtkairo/event.lisp	2006/05/02 13:00:11	1.6
@@ -130,6 +130,7 @@
 (define-signal expose-handler (widget event)
   (enqueue
    (cffi:with-foreign-slots ((x y width height) event gdkeventexpose)
+     (gdk_window_clear_area (gtkwidget-gdkwindow widget) x y width height)
      (make-instance 'window-repaint-event
        :timestamp (get-internal-real-time)
        :sheet (widget->sheet widget *port*)
--- /project/mcclim/cvsroot/mcclim/Backends/gtkairo/gtk-ffi.lisp	2006/04/23 17:36:28	1.4
+++ /project/mcclim/cvsroot/mcclim/Backends/gtkairo/gtk-ffi.lisp	2006/05/02 13:00:12	1.5
@@ -674,6 +674,14 @@
   (window :pointer)
   (title :string))
 
+(defcfun "gdk_window_clear_area"
+    :void
+  (window :pointer)
+  (x :int)
+  (y :int)
+  (width :int)
+  (height :int))
+
 (defconstant GDK_EXPOSURE_MASK             (ash 1 1))
 (defconstant GDK_POINTER_MOTION_MASK       (ash 1 2))
 (defconstant GDK_POINTER_MOTION_HINT_MASK  (ash 1 3))
--- /project/mcclim/cvsroot/mcclim/Backends/gtkairo/BUGS	2006/05/01 21:21:38	1.7
+++ /project/mcclim/cvsroot/mcclim/Backends/gtkairo/BUGS	2006/05/02 13:00:12	1.8
@@ -46,7 +46,7 @@
     The frontend specifies background colors (*3d-normal-color*) where
     the gtk theme should take precedence.
 
-9.
+(FIXED) 9.
     Sometimes repaint seems to draw again without clearing the window
     first.  For example, the header in demodemo gets darker with every
     repaint, until the originally antialiased text looks really crappy.




More information about the Mcclim-cvs mailing list