Bug 77760

Summary: GtkLauncher.exe doesn't draw anything in its webkitwebview
Product: WebKit Reporter: Kalev Lember <kalevlember>
Component: WebKitGTKAssignee: Nobody <webkit-unassigned>
Status: RESOLVED DUPLICATE    
Severity: Normal    
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Create the backing store after WebKitWebView is realized none

Kalev Lember
Reported 2012-02-03 11:49:16 PST
On Windows, GtkLauncher.exe starts up with two Gdk-CRITICAL **: IA__gdk_window_create_similar_surface: assertion `GDK_IS_WINDOW (window)' failed warnings, and doesn't draw anything in its WebKitWebView. This is coming from createSurfaceForBackingStore() in WidgetBackingStoreCairo.cpp, which tries to call gtk_widget_get_window() before the widget is realized.
Attachments
Create the backing store after WebKitWebView is realized (3.51 KB, patch)
2012-02-03 11:50 PST, Kalev Lember
no flags
Kalev Lember
Comment 1 2012-02-03 11:50:41 PST
Created attachment 125378 [details] Create the backing store after WebKitWebView is realized The widget backing store was created in size_allocate() before the widget was realized. This wasn't a problem for GtkWidgetBackingStoreX11, but WidgetBackingStoreCairo's constructor needs the widget's GDK window, which is is created in realize(). Fixes the WebKitWebView not painting on platforms that use WidgetBackingStoreCairo, e.g. win32. Gdk-CRITICAL **: IA__gdk_window_create_similar_surface: assertion `GDK_IS_WINDOW (window)' failed
Martin Robinson
Comment 2 2012-02-03 12:59:48 PST
Comment on attachment 125378 [details] Create the backing store after WebKitWebView is realized Please check if my patch at https://bugs.webkit.org/show_bug.cgi?id=77743 fixes this issue. It should delay the backing store creation until mapping.
Kalev Lember
Comment 3 2012-02-03 13:55:34 PST
I can confirm that the patch in bug 77743 also fixes it, thanks! *** This bug has been marked as a duplicate of bug 77743 ***
Note You need to log in before you can comment on or make changes to this bug.