Changeset 70048 in webkit


Ignore:
Timestamp:
Oct 19, 2010 5:15:52 AM (14 years ago)
Author:
Philippe Normand
Message:

2010-10-19 Philippe Normand <pnormand@igalia.com>

Reviewed by Martin Robinson.

GStreamer PlatformVideoWindow needs an API to prepare the widget before applying the overlay
https://bugs.webkit.org/show_bug.cgi?id=46790

Simple API addition to PlatformVideoWindow to allow
implementations to optionally prepare their own PlatformWidget
before applying the GStreamer XOverlay to it. This will likely be
needed on Mac OSX only.

  • platform/graphics/gstreamer/GStreamerGWorld.cpp: (WebCore::GStreamerGWorld::setWindowOverlay):
  • platform/graphics/gstreamer/PlatformVideoWindow.h:
  • platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp: (PlatformVideoWindow::prepareForOverlay):
  • platform/graphics/gstreamer/PlatformVideoWindowEfl.cpp: (PlatformVideoWindow::prepareForOverlay):
Location:
trunk/WebCore
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebCore/ChangeLog

    r70047 r70048  
     12010-10-19  Philippe Normand  <pnormand@igalia.com>
     2
     3        Reviewed by Martin Robinson.
     4
     5        GStreamer PlatformVideoWindow needs an API to prepare the widget before applying the overlay
     6        https://bugs.webkit.org/show_bug.cgi?id=46790
     7
     8        Simple API addition to PlatformVideoWindow to allow
     9        implementations to optionally prepare their own PlatformWidget
     10        before applying the GStreamer XOverlay to it. This will likely be
     11        needed on Mac OSX only.
     12
     13        * platform/graphics/gstreamer/GStreamerGWorld.cpp:
     14        (WebCore::GStreamerGWorld::setWindowOverlay):
     15        * platform/graphics/gstreamer/PlatformVideoWindow.h:
     16        * platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp:
     17        (PlatformVideoWindow::prepareForOverlay):
     18        * platform/graphics/gstreamer/PlatformVideoWindowEfl.cpp:
     19        (PlatformVideoWindow::prepareForOverlay):
     20
    1212010-10-19  Ben Murdoch  <benm@google.com>
    222
  • trunk/WebCore/platform/graphics/gstreamer/GStreamerGWorld.cpp

    r68632 r70048  
    195195        g_object_set(sink, "force-aspect-ratio", TRUE, NULL);
    196196
    197     if (m_videoWindow)
     197    if (m_videoWindow) {
     198        m_videoWindow->prepareForOverlay(message);
    198199#if GST_CHECK_VERSION(0, 10, 31) || GST_VERSION_NANO
    199200        gst_x_overlay_set_window_handle(GST_X_OVERLAY(sink), m_videoWindow->videoWindowId());
     
    201202        gst_x_overlay_set_xwindow_id(GST_X_OVERLAY(sink), m_videoWindow->videoWindowId());
    202203#endif
     204    }
    203205}
    204206
  • trunk/WebCore/platform/graphics/gstreamer/PlatformVideoWindow.h

    r68632 r70048  
    2626#include <wtf/RefCounted.h>
    2727
     28typedef struct _GstMessage GstMessage;
     29
    2830namespace WebCore {
    2931
     
    3537        ~PlatformVideoWindow();
    3638
     39
     40        void prepareForOverlay(GstMessage*);
    3741        PlatformWidget window() const { return m_window; }
    3842        unsigned long videoWindowId() const { return m_videoWindowId; }
  • trunk/WebCore/platform/graphics/gstreamer/PlatformVideoWindowEfl.cpp

    r68632 r70048  
    3636}
    3737
     38void PlatformVideoWindow::prepareForOverlay(GstMessage*)
     39{
     40}
     41
    3842#endif // USE(GSTREAMER)
  • trunk/WebCore/platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp

    r68632 r70048  
    6262    m_videoWindowId = 0;
    6363}
     64
     65void PlatformVideoWindow::prepareForOverlay(GstMessage*)
     66{
     67}
    6468#endif // USE(GSTREAMER)
     69
Note: See TracChangeset for help on using the changeset viewer.