# HG changeset patch # User Jon Medhurst # Date 1287753040 -3600 # Node ID 3e31350c24909def4cb6ca6af39bef2d5ce7a185 # Parent 5023b77b78d42258f23bfb69f7a0ff4268e51f69 Guest EGL change so that newly created surfaces are registered with the Window Server. (Probably needed by ALF) diff -r 5023b77b78d4 -r 3e31350c2490 guestrendering/guestegl/src/guestegl.cpp --- a/guestrendering/guestegl/src/guestegl.cpp Fri Oct 22 13:37:16 2010 +0100 +++ b/guestrendering/guestegl/src/guestegl.cpp Fri Oct 22 14:10:40 2010 +0100 @@ -33,8 +33,13 @@ // FAISALMEMON STUB CODE #define EGL_CHECK_ERROR(a, b, c) /* This does no checking; just a stub */ -void CGuestEGL::EglInternalFunction_DestroyWindowSurface(TSurfaceInfo&) +void CGuestEGL::EglInternalFunction_DestroyWindowSurface(TSurfaceInfo& aSurfaceInfo) { + RWindow* window = aSurfaceInfo.iNativeWindow; + TInt screen = window->ScreenNumber(); + RWsSession* session = window->Session(); + session->UnregisterSurface(screen, aSurfaceInfo.iSurfaceId); + return; // stub code } @@ -300,6 +305,11 @@ surfaceInfo->iSurfaceUpdateSession.Connect(); TSurfaceConfiguration surfaceConfig; surfaceConfig.SetSurfaceId(surfaceInfo->iSurfaceId); + + TInt screen = window->ScreenNumber(); + RWsSession& session = *window->Session(); + session.RegisterSurface(screen, surfaceInfo->iSurfaceId); + window->SetBackgroundSurface(surfaceConfig, ETrue); } CVghwUtils::SwitchFromVghwHeap(threadHeap);