[webkit-reviews] review denied: [Bug 12515] Plug-ins that draw through the Quickdraw interface fail in a CGBitmapContex. : [Attachment 12885] Allows QD based plugins to draw into offscreen bitmap contexts.

bugzilla-request-daemon at macosforge.org bugzilla-request-daemon at macosforge.org
Fri Feb 2 15:07:08 PST 2007


Darin Adler <darin at apple.com> has denied Darin Adler <darin at apple.com>'s
request for review:
Bug 12515: Plug-ins that draw through the Quickdraw interface fail in a
CGBitmapContex.
http://bugs.webkit.org/show_bug.cgi?id=12515

Attachment 12885: Allows QD based plugins to draw into offscreen bitmap
contexts.
http://bugs.webkit.org/attachment.cgi?id=12885&action=edit

------- Additional Comments from Darin Adler <darin at apple.com>
All the trailing space stripping in this patch makes it unnecessarily hard to
review. Lets do that in a separate patch either before or after this one.

What is this new ALLOW_QUICKDRAW_OFFSCREEN_DRAWING flag? Why would it ever be
0?

+// We would like to simply say:
if(CGBitmapContextGetBitmapInfo(currentContext)) {...}
+// however using the public API in the documented and approved way to check
+// for an CGBitmapContext, will log a warning to stdout if it's not a bitmap
context.
+// ...So we cheat a little bit.
+CG_EXTERN_C_BEGIN
+enum ContextType_priv { PrivateCGBitmapContextType = 4 };
+extern ContextType_priv CGContextGetType(CGContextRef c);
+CG_EXTERN_C_END

It's not really OK to put this kind of thing into WebCore. If something like
this is necessary we do it in WebKitSystemInterface.

Why is it OK to bypass all the clipping logic? It looks like the new code path
ignores clipping and will ask the plug-in to paint too much each time which
will presumably hurt performance.



More information about the webkit-reviews mailing list