Bug 1180657 - Use hwc directly on GonkDisplayICS. r=sotaro

This commit is contained in:
Boris Chiou 2015-08-03 19:43:00 +02:00
Родитель a9c1e1a537
Коммит 2abd17130d
2 изменённых файлов: 9 добавлений и 9 удалений

Просмотреть файл

@ -840,14 +840,7 @@ bool
HwcComposer2D::Render(nsIWidget* aWidget)
{
nsScreenGonk* screen = static_cast<nsWindow*>(aWidget)->GetScreen();
GetGonkDisplay()->SwapBuffers(screen->GetEGLDisplay(), screen->GetEGLSurface());
if (!mHal->HasHwc()) {
return true;
}
mHal->Prepare(nullptr, screen->GetDisplayType(), nullptr, -1);
return !mHal->Set(nullptr, screen->GetDisplayType());
return GetGonkDisplay()->SwapBuffers(screen->GetEGLDisplay(), screen->GetEGLSurface());
}
#endif

Просмотреть файл

@ -168,7 +168,14 @@ GonkDisplayICS::SwapBuffers(EGLDisplay dpy, EGLSurface sur)
{
// Should be called when composition rendering is complete for a frame.
// Only HWC v1.0 needs this call. ICS gonk always needs the call.
return !mFBSurface->compositionComplete();
mFBSurface->compositionComplete();
if (!mHwc) {
return true;
}
mHwc->prepare(mHwc, nullptr);
return !mHwc->set(mHwc, dpy, sur, 0);
}
ANativeWindowBuffer*