Changeset 87806 in webkit


Ignore:
Timestamp:
Jun 1, 2011 8:28:13 AM (13 years ago)
Author:
Adam Roben
Message:

Route plugin window geometry updates through the DrawingArea

This will allow the geometry updates to be handled by the LayerTreeHost in compositing mode
in the future.

More rep work for <http://webkit.org/b/58054> <rdar://problem/9249839> REGRESSION (WebKit2):
Accelerated CSS animations have a lower framerate than in WebKit1

Reviewed by Anders Carlsson.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::scheduleWindowedPluginGeometryUpdate): Tell the DrawingArea, not the
WebPage, about the geometry update.

  • WebProcess/WebPage/DrawingArea.h:
  • WebProcess/WebPage/DrawingAreaImpl.h:
  • WebProcess/WebPage/win/DrawingAreaImplWin.cpp: Added.

(WebKit::DrawingAreaImpl::scheduleChildWindowGeometryUpdate):
Moved code here...

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/win/WebPageWin.cpp:

...from here.

  • win/WebKit2.vcproj: Added DrawingAreaImplWin.cpp.
Location:
trunk/Source/WebKit2
Files:
1 added
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r87805 r87806  
     12011-06-01  Adam Roben  <aroben@apple.com>
     2
     3        Route plugin window geometry updates through the DrawingArea
     4
     5        This will allow the geometry updates to be handled by the LayerTreeHost in compositing mode
     6        in the future.
     7
     8        More rep work for <http://webkit.org/b/58054> <rdar://problem/9249839> REGRESSION (WebKit2):
     9        Accelerated CSS animations have a lower framerate than in WebKit1
     10
     11        Reviewed by Anders Carlsson.
     12
     13        * WebProcess/Plugins/PluginView.cpp:
     14        (WebKit::PluginView::scheduleWindowedPluginGeometryUpdate): Tell the DrawingArea, not the
     15        WebPage, about the geometry update.
     16
     17        * WebProcess/WebPage/DrawingArea.h:
     18        * WebProcess/WebPage/DrawingAreaImpl.h:
     19        * WebProcess/WebPage/win/DrawingAreaImplWin.cpp: Added.
     20        (WebKit::DrawingAreaImpl::scheduleChildWindowGeometryUpdate):
     21        Moved code here...
     22
     23        * WebProcess/WebPage/WebPage.h:
     24        * WebProcess/WebPage/win/WebPageWin.cpp:
     25        ...from here.
     26
     27        * win/WebKit2.vcproj: Added DrawingAreaImplWin.cpp.
     28
    1292011-06-01  Adam Roben  <aroben@apple.com>
    230
  • trunk/Source/WebKit2/WebProcess/Plugins/PluginView.cpp

    r87324 r87806  
    10591059void PluginView::scheduleWindowedPluginGeometryUpdate(const WindowGeometry& geometry)
    10601060{
    1061     m_webPage->scheduleChildWindowGeometryUpdate(geometry);
     1061    m_webPage->drawingArea()->scheduleChildWindowGeometryUpdate(geometry);
    10621062}
    10631063#endif
  • trunk/Source/WebKit2/WebProcess/WebPage/DrawingArea.h

    r87755 r87806  
    4747struct WebPageCreationParameters;
    4848
     49#if PLATFORM(WIN)
     50struct WindowGeometry;
     51#endif
     52
    4953class DrawingArea {
    5054    WTF_MAKE_NONCOPYABLE(DrawingArea);
     
    7680    virtual void didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageID, CoreIPC::ArgumentDecoder*) = 0;
    7781
     82#if PLATFORM(WIN)
     83    virtual void scheduleChildWindowGeometryUpdate(const WindowGeometry&) = 0;
     84#endif
     85
    7886protected:
    7987    DrawingArea(DrawingAreaType, WebPage*);
  • trunk/Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.h

    r87755 r87806  
    6161    virtual void syncCompositingLayers();
    6262    virtual void didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageID, CoreIPC::ArgumentDecoder*);
     63
     64#if PLATFORM(WIN)
     65    virtual void scheduleChildWindowGeometryUpdate(const WindowGeometry&);
     66#endif
    6367
    6468    // CoreIPC message handlers.
  • trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h

    r86812 r87806  
    113113struct WebPreferencesStore;
    114114
    115 #if PLATFORM(WIN)
    116 struct WindowGeometry;
    117 #endif
    118 
    119115#if ENABLE(GESTURE_EVENTS)
    120116class WebGestureEvent;
     
    265261#elif PLATFORM(WIN)
    266262    HWND nativeWindow() const { return m_nativeWindow; }
    267     void scheduleChildWindowGeometryUpdate(const WindowGeometry&);
    268263#endif
    269264
  • trunk/Source/WebKit2/WebProcess/WebPage/win/WebPageWin.cpp

    r86285 r87806  
    3333#include "WebPreferencesStore.h"
    3434#include "WebProcess.h"
    35 #include "WindowGeometry.h"
    3635#include <WebCore/FocusController.h>
    3736#include <WebCore/FontRenderingMode.h>
     
    467466}
    468467
    469 void WebPage::scheduleChildWindowGeometryUpdate(const WindowGeometry& geometry)
    470 {
    471     WebProcess::shared().connection()->send(Messages::WebPageProxy::ScheduleChildWindowGeometryUpdate(geometry), m_pageID);
    472 }
    473 
    474468} // namespace WebKit
  • trunk/Source/WebKit2/win/WebKit2.vcproj

    r87805 r87806  
    19781978                                        >
    19791979                                        <File
     1980                                                RelativePath="..\WebProcess\WebPage\win\DrawingAreaImplWin.cpp"
     1981                                                >
     1982                                        </File>
     1983                                        <File
    19801984                                                RelativePath="..\WebProcess\WebPage\win\LayerTreeHostWin.cpp"
    19811985                                                >
Note: See TracChangeset for help on using the changeset viewer.