Remove nsBaseWidget::NewCompositorBridgeParent. (bug 1272472 part 1, r=kats)

This commit is contained in:
David Anderson 2016-05-17 22:33:21 -07:00
parent e34cf523cf
commit bb2cbc24f4
6 changed files with 24 additions and 46 deletions

View File

@ -3569,19 +3569,6 @@ nsWindow::NeedsPaint()
return nsIWidget::NeedsPaint(); return nsIWidget::NeedsPaint();
} }
CompositorBridgeParent*
nsWindow::NewCompositorBridgeParent(int aSurfaceWidth, int aSurfaceHeight)
{
if (!mCompositorWidgetProxy) {
mCompositorWidgetProxy = NewCompositorWidgetProxy();
}
return new CompositorBridgeParent(mCompositorWidgetProxy,
GetDefaultScale(),
UseAPZ(),
true,
aSurfaceWidth, aSurfaceHeight);
}
void void
nsWindow::ConfigureAPZControllerThread() nsWindow::ConfigureAPZControllerThread()
{ {

View File

@ -177,9 +177,6 @@ public:
virtual void DrawWindowUnderlay(LayerManagerComposite* aManager, LayoutDeviceIntRect aRect) override; virtual void DrawWindowUnderlay(LayerManagerComposite* aManager, LayoutDeviceIntRect aRect) override;
virtual void DrawWindowOverlay(LayerManagerComposite* aManager, LayoutDeviceIntRect aRect) override; virtual void DrawWindowOverlay(LayerManagerComposite* aManager, LayoutDeviceIntRect aRect) override;
virtual mozilla::layers::CompositorBridgeParent* NewCompositorBridgeParent(
int aSurfaceWidth, int aSurfaceHeight) override;
static bool IsCompositionPaused(); static bool IsCompositionPaused();
static void InvalidateAndScheduleComposite(); static void InvalidateAndScheduleComposite();
static void SchedulePauseComposition(); static void SchedulePauseComposition();
@ -239,6 +236,10 @@ protected:
virtual nsresult NotifyIMEInternal( virtual nsresult NotifyIMEInternal(
const IMENotification& aIMENotification) override; const IMENotification& aIMENotification) override;
bool UseExternalCompositingSurface() const override {
return true;
}
static void DumpWindows(); static void DumpWindows();
static void DumpWindows(const nsTArray<nsWindow*>& wins, int indent = 0); static void DumpWindows(const nsTArray<nsWindow*>& wins, int indent = 0);
static void LogWindow(nsWindow *win, int index, int indent); static void LogWindow(nsWindow *win, int index, int indent);

View File

@ -720,18 +720,6 @@ nsWindow::DestroyCompositor()
nsBaseWidget::DestroyCompositor(); nsBaseWidget::DestroyCompositor();
} }
CompositorBridgeParent*
nsWindow::NewCompositorBridgeParent(int aSurfaceWidth, int aSurfaceHeight)
{
if (!mCompositorWidgetProxy) {
mCompositorWidgetProxy = NewCompositorWidgetProxy();
}
return new CompositorBridgeParent(mCompositorWidgetProxy,
GetDefaultScale(),
UseAPZ(),
true, aSurfaceWidth, aSurfaceHeight);
}
void void
nsWindow::BringToTop() nsWindow::BringToTop()
{ {

View File

@ -117,8 +117,6 @@ public:
bool* aAllowRetaining = nullptr); bool* aAllowRetaining = nullptr);
virtual void DestroyCompositor(); virtual void DestroyCompositor();
virtual CompositorBridgeParent* NewCompositorBridgeParent(int aSurfaceWidth, int aSurfaceHeight);
NS_IMETHOD_(void) SetInputContext(const InputContext& aContext, NS_IMETHOD_(void) SetInputContext(const InputContext& aContext,
const InputContextAction& aAction); const InputContextAction& aAction);
NS_IMETHOD_(InputContext) GetInputContext(); NS_IMETHOD_(InputContext) GetInputContext();
@ -148,6 +146,10 @@ protected:
// event (like a keypress or mouse click). // event (like a keypress or mouse click).
void UserActivity(); void UserActivity();
bool UseExternalCompositingSurface() const override {
return true;
}
private: private:
// This is used by SynthesizeNativeTouchPoint to maintain state between // This is used by SynthesizeNativeTouchPoint to maintain state between
// multiple synthesized points // multiple synthesized points

View File

@ -937,20 +937,6 @@ nsBaseWidget::UseAPZ()
(WindowType() == eWindowType_toplevel || WindowType() == eWindowType_child)); (WindowType() == eWindowType_toplevel || WindowType() == eWindowType_child));
} }
CompositorBridgeParent*
nsBaseWidget::NewCompositorBridgeParent(int aSurfaceWidth,
int aSurfaceHeight)
{
if (!mCompositorWidgetProxy) {
mCompositorWidgetProxy = NewCompositorWidgetProxy();
}
return new CompositorBridgeParent(mCompositorWidgetProxy,
GetDefaultScale(),
UseAPZ(),
false,
aSurfaceWidth, aSurfaceHeight);
}
void nsBaseWidget::CreateCompositor() void nsBaseWidget::CreateCompositor()
{ {
LayoutDeviceIntRect rect; LayoutDeviceIntRect rect;
@ -1286,7 +1272,17 @@ void nsBaseWidget::CreateCompositor(int aWidth, int aHeight)
} }
CreateCompositorVsyncDispatcher(); CreateCompositorVsyncDispatcher();
mCompositorBridgeParent = NewCompositorBridgeParent(aWidth, aHeight);
if (!mCompositorWidgetProxy) {
mCompositorWidgetProxy = NewCompositorWidgetProxy();
}
mCompositorBridgeParent = new CompositorBridgeParent(
mCompositorWidgetProxy,
GetDefaultScale(),
UseAPZ(),
UseExternalCompositingSurface(),
aWidth, aHeight);
RefPtr<ClientLayerManager> lm = new ClientLayerManager(this); RefPtr<ClientLayerManager> lm = new ClientLayerManager(this);
mCompositorBridgeChild = new CompositorBridgeChild(lm); mCompositorBridgeChild = new CompositorBridgeChild(lm);
mCompositorBridgeChild->OpenSameProcess(mCompositorBridgeParent); mCompositorBridgeChild->OpenSameProcess(mCompositorBridgeParent);

View File

@ -170,7 +170,6 @@ public:
mozilla::CompositorVsyncDispatcher* GetCompositorVsyncDispatcher(); mozilla::CompositorVsyncDispatcher* GetCompositorVsyncDispatcher();
void CreateCompositorVsyncDispatcher(); void CreateCompositorVsyncDispatcher();
virtual CompositorBridgeParent* NewCompositorBridgeParent(int aSurfaceWidth, int aSurfaceHeight);
virtual void CreateCompositor(); virtual void CreateCompositor();
virtual void CreateCompositor(int aWidth, int aHeight); virtual void CreateCompositor(int aWidth, int aHeight);
virtual void PrepareWindowEffects() override {} virtual void PrepareWindowEffects() override {}
@ -538,6 +537,11 @@ protected:
bool UseAPZ(); bool UseAPZ();
protected: protected:
// Returns whether compositing should use an external surface size.
virtual bool UseExternalCompositingSurface() const {
return false;
}
/** /**
* Starts the OMTC compositor destruction sequence. * Starts the OMTC compositor destruction sequence.
* *