[Webkit-unassigned] [Bug 96627] [EFL] Use the shareable GraphicsContext3DOpenGL* implementation.

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Oct 3 22:10:02 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=96627





--- Comment #17 from Regina Chung <heejin.r.chung at samsung.com>  2012-10-03 22:10:26 PST ---
(In reply to comment #12)
> (From update of attachment 166164 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=166164&action=review
> > Source/WebCore/ChangeLog:15
> > +        * PlatformEfl.cmake: Removed cairo implementaion of GC3D and added efl files to WebCore_SOURCES.
> implementaion -> implementation

I'll fix that typo :)
> > Source/WebCore/platform/graphics/efl/GraphicsContext3DEfl.cpp:205
> > +    cairo_rectangle(cr, 0, 0, canvasWidth, canvasHeight);
> > +    cairo_set_operator(cr, CAIRO_OPERATOR_CLEAR);
> > +    cairo_paint(cr);
> >  
> > -void GraphicsContext3D::deleteProgram(Platform3DObject program)
> > -{
> > -    m_private->deleteProgram(program);
> > -}
> > +    RefPtr<cairo_surface_t> imageSurface = adoptRef(cairo_image_surface_create_for_data(
> > +        const_cast<unsigned char*>(imagePixels), CAIRO_FORMAT_ARGB32, imageWidth, imageHeight, imageWidth * 4));
> >  
> > -void GraphicsContext3D::deleteRenderbuffer(Platform3DObject buffer)
> > -{
> > -    m_private->deleteRenderbuffer(buffer);
> > -}
> > +    // OpenGL keeps the pixels stored bottom up, so we need to flip the image here.
> > +    cairo_translate(cr, 0, imageHeight);
> > +    cairo_scale(cr, 1, -1);
> >  
> > -void GraphicsContext3D::deleteShader(Platform3DObject shader)
> > -{
> > -    m_private->deleteShader(shader);
> > -}
> > +    cairo_set_operator(cr, CAIRO_OPERATOR_OVER);
> Just a thought, but isn't CLEAR + OVER the same as just OPERATOR_SOURCE? I mean, perhaps you can safe an operation here :)

Yes, you're right, removed the unnecessary operation as you suggested. Thanks!

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the webkit-unassigned mailing list