Bug 14797

Summary: [gtk] Make GraphicsContext use a full GdkEventExpose* to ease implementing Widget::paint
Product: WebKit Reporter: Holger Freyther <zecke>
Component: New BugsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED WONTFIX    
Severity: Normal Keywords: Gtk
Priority: P2    
Version: 523.x (Safari 3)   
Hardware: Mac   
OS: OS X 10.4   
Bug Depends on: 14781    
Bug Blocks:    
Attachments:
Description Flags
Store GdkEventExpose* in GraphicsContext and implement Widget::paint none

Description Holger Freyther 2007-07-27 20:06:45 PDT
To implement Widget::paint we need to paint at the moment RenderWidget is going to request painting. To ease that we will store the full GdkEventExpose inside the GraphicsContext. And create a synthetic GdkEvent and ask gtkWidget to paint, this should be roughly similiar to how GtkContainer is handling exposing of children and will continue to work once we have multiple frames in Gtk as well.
Comment 1 Holger Freyther 2007-07-27 20:11:31 PDT
Created attachment 15715 [details]
Store GdkEventExpose* in GraphicsContext and implement Widget::paint

-No ChangeLog entry as it requires 14781
-This is a patch from git and won't apply with svn-apply

-setGdkExposeEvent matches the Qt naming of such methods (e.g. mousePressEvent,...) but the parameter has it reversed with GdkEventExpose. I think the way I named the method follows the WebCore naming style and is the way to go.
-I ignore the clip rect of Widget::paint but that should directly come from the expose event anyway.
Comment 2 Holger Freyther 2007-07-30 12:44:40 PDT
#14729 has this part included as well. 
Comment 3 Alp Toker 2007-08-01 20:16:52 PDT
Comment on attachment 15715 [details]
Store GdkEventExpose* in GraphicsContext and implement Widget::paint

Seems to be obsoleted by http://bugs.webkit.org/attachment.cgi?id=15794