Reviving old thread. So, I've looked at WebWidget::paint, and it gets its drawing canvas by doing
chrome/renderer/render_widget.cc:440: RenderProcess::current()->GetDrawingCanvas(¤t_scroll_buf_, damaged_rect); I don't fully undestand the relation between GraphicsContext, PlatformContext, and PlatformCanvas. Does a PlatformContext contain a PlatformCanvas or vice versa? Is there only one "canvas" per process? If I found a way to do something similar to above (ask RenderProcess::current() to crate a drawing convas), would I be safe in passing that to the webmedia player paint function? Or am I completely not making sense here. Sorry for the basic questions...still trying to orient to the webkit codebase. Thanks, Albert On Thu, May 7, 2009 at 2:16 PM, Darin Fisher <da...@chromium.org> wrote: > We have exactly the same issue with WebWidget::paint. That uses WebCanvas. > I think that WebMediaPlayer::paint should be the same. > -Darin > > > On Thu, May 7, 2009 at 1:50 PM, Andrew Scherkus <scher...@chromium.org>wrote: > >> On Wed, May 6, 2009 at 10:44 AM, Darin Fisher <da...@chromium.org> wrote: >> >>> We could either use skia/ext/platform_canvas_mac.h or we could define it >>> to be a CG type. I'm not sure I fully understand the hybridization of CG >>> and Skia in our Chromium Mac port. >> >> >> I am equally (or even more so) clueless on CG. Anyway with hclam >> upstreaming our code an #ifdef solution might be the easiest way to get it >> working for now. >> >> I talked to Eric Carlson about the MediaPlayer interface and he had an >> idea about exposing which painting methods a MediaPlayer prefers >> (GraphicsContext or exposing an RGB surface) and having WebKit decide. We >> sort of have this today with the media engine and mime type supports, so it >> might not be a big stretch. >> >> Andrew >> >> >>> -darin >>> >>> >>> On Wed, May 6, 2009 at 10:41 AM, Darin Fisher <da...@chromium.org>wrote: >>> >>>> We just need to figure out what the correct typedef is for the Mac >>>> platform. >>>> -Darin >>>> >>>> >>>> On Wed, May 6, 2009 at 10:40 AM, Darin Fisher <da...@chromium.org>wrote: >>>> >>>>> Please see WebCanvas in the WebKit API. It was designed for this. >>>>> -Darin >>>>> >>>>> >>>>> On Tue, May 5, 2009 at 5:40 PM, Andrew Scherkus <scher...@chromium.org >>>>> > wrote: >>>>> >>>>>> WebKit's MediaPlayerPrivate interface is a bit backwards where they >>>>>> pass in a GraphicsContext: >>>>>> >>>>>> http://src.chromium.org/viewvc/chrome/trunk/deps/third_party/WebKit/WebCore/platform/graphics/MediaPlayer.h?view=markup >>>>>> >>>>>> We currently forward the MediaPlayerPrivate::paint(GraphicsContext* p, >>>>>> const IntRect& r) call into Chrome, converting the GraphicsContext to >>>>>> a PlatformContextSkia in the process. We realized today this doesn't >>>>>> work >>>>>> on Mac since it's actually a CGContext. >>>>>> >>>>>> Without resorting to #ifdefs everywhere, what's the best way to pass >>>>>> a PlatformGraphicsContext back to Chrome? >>>>>> >>>>>> Andrew >>>>>> >>>>>> >>>>>> >>>>>> >>>>> >>>> >>> >> >> >> >> > --~--~---------~--~----~------------~-------~--~----~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~----------~----~----~----~------~----~------~--~---