On Tue, May 5, 2009 at 9:38 PM, Amanda Walker <ama...@chromium.org> wrote:

> Ah, I see.  Hmm, going in that direction (from a GraphicsContext back
> up to the PlatformCanvas that wraps it) is an interesting question
> (the rest of our rendering code goes in the other direction).  And as
> Brett can attest, this isn't the first time that PLATFORM(CG) has
> caused a headache--we just (so far) haven't been willing to
> duplicate/fork all of the Mac rendering code that currently lives in
> PLATFORM(CG), since there's a lot of it (especially text handling)
> that would end up the same.
>
> Brett's idea (change your paint routine to take a raw pixmap (an
> RGBA32Buffer), which we can easily draw into a GraphicsContext on any
> platform, is basically what the ImageDecoder subclasses do (including
> rudimentary multi-frame support for things like animated GIFs).  If
> that will work, it's probably the easiest to integrate into all 3
> platforms, since the dirty work has already been done.  If that's too
> many frame copies for video, we can write a function that can create,
> say, an SkBitmap* pointing at the destination bits given a
> GraphicsContext and a rectangle.
>
> Would either of those approaches work?


They both sound workable, and might be the best option at this point.

We'd actually considered something similar, but didn't really like the idea
of having the GraphicsContext draw call happen inside the webkit glue code;
all our other glue code just delegates, so this would suddenly add behavior
into the glue class.

Another suggestion that Alpha brought up was to write some sort of simple
wrapper for GraphicsContext that could allow us to call the draw lower down
in the call chain without violating the typing abstraction.

-Albert


>
>
> --Amanda
>
>
> On Tue, May 5, 2009 at 11:38 PM, Albert J. Wong (王重傑)
> <ajw...@chromium.org> wrote:
> > If there was a nice way to get a PlatformCanvas out of a
> > PlatformGraphicsContext when PLATFORM(CG), that'd be awesome.
>

--~--~---------~--~----~------------~-------~--~----~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
    http://groups.google.com/group/chromium-dev
-~----------~----~----~----~------~----~------~--~---

Reply via email to