folks, hi, got a bit of an issue with a directfb gtk app, using a gtk ScrollWindow and a webkit webview widget embedded in it. mouse and keyboard scroll events give screen corruption when using VESA, IntelFB and also an embedded device (exact details unknown to me). the amount and nature of the screen corruption that occurs is dependent on how much of the display area is being scrolled (by the mouse or the keyboard) but it varies from black artefacts, blue artefacts, both of width of the entire screen, and clearly distinguishable portions of the web page being viewed being shifted vertically by random offsets.
the corruption DOES NOT occur if: * the vertical scrollbar position is set _manually_ using value adjustment on the scrollbar: m_VerticalAdjustment = gtk_scrolled_window_get_vadjustment( GTK_SCROLLED_WINDOW(scrolled_window)); gtk_adjustment_set_value(m_VerticalAdjustment, val + INCR); * the application is compiled as an X-Windows gtk app. under these circumstances, no screen corruption occurs at all. probably-relevant info: ldd build-i686/rmi | grep direct libgtk-directfb-2.0.so.0 => /usr/lib/libgtk-directfb-2.0.so.0 (0x00002b5aab05a000) libgdk-directfb-2.0.so.0 => /usr/lib/libgdk-directfb-2.0.so.0 (0x00002b5aab63a000) libdirectfb-1.2.so.0 => /usr/lib/libdirectfb-1.2.so.0 (0x00002b5aab8c6000) libdirect-1.2.so.0 => /usr/lib/libdirect-1.2.so.0 (0x00002b5aabd5b000) dpkg -l | grep directfb ii libcairo-directfb2 1.8.6-2+b1 The Cairo 2D vector graphics library DirectFB build (d ii libcairo-directfb2-dev 1.8.6-2+b1 Development files for Cairo graphics library DirectFB ii libdirectfb-1.2-0 1.2.7-2 direct frame buffer graphics - shared libraries ii libdirectfb-dev 1.2.7-2 direct frame buffer graphics library - development fil ii libdirectfb-extra 1.2.7-2 direct frame buffer graphics - extra providers ii libgtk-directfb-2.0-0 2.14.7-5 The GTK+ graphical user interface library - DirectFB r ii libgtk-directfb-2.0-dev 2.14.7-5 for a testcase, you can take the standard example from WebKit - GtkLauncher main.c - and compile it with the following Makefile: WEBKIT_INC= `pkg-config webkit-directfb-1.0 --cflags` WEBKIT_LIB= `pkg-config webkit-directfb-1.0 --libs` PKGINC = \ $(WEBKIT_INC) PKGLIB2 = \ `pkg-config --libs directfb` \ $(WEBKIT_LIB) CFLAGS = -ggdb3 -g -g -D_FILE_OFFSET_BITS=64 $(PKGINC) %.o: ./%.c $(CC) $(CFLAGS) -c $< -o $@ %.o: ./%.cpp $(CXX) $(CFLAGS) -c $< -o $@ OBJS2 = main.o test2: $(OBJS2) $(CC) -o test2 $(LDFLAGS) $(OBJS2) $(PKGLIB2) clean: -rm -f $(OBJS2) test2 where you will have had to have compiled webkit with directfb and then created a webkit-directfb-1.0.pc manually (copied from whatever webkit-1.0.pc is created), example here, placed in /usr/share/pkgconfig manually. as you can see from the prefix, i did ./configure --prefix=/opt/local --with-target=directfb prefix=/opt/local exec_prefix=${prefix} libdir=${exec_prefix}/lib includedir=${prefix}/include Name: WebKit Description: Web content engine for GTK+ Version: 1.0.3 Requires: gtk+-directfb-2.0 Libs: -L${libdir} -lwebkit-directfb-1.0 Cflags: -I${includedir}/webkit-1.0 any help with this greatly appreciated, it's a bit of a show-stopper. l. -- View this message in context: http://www.nabble.com/scrolling-window-corruption-in-gtk-directfb-app-using-webkit-tp23486532p23486532.html Sent from the DirectFB Dev mailing list archive at Nabble.com. _______________________________________________ directfb-dev mailing list directfb-dev@directfb.org http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev