diff -r d5e927d5853b -r 7cee158cb8cd javauis/lcdui_akn/javalcdui/src/Canvas.cpp --- a/javauis/lcdui_akn/javalcdui/src/Canvas.cpp Tue Sep 14 21:06:50 2010 +0300 +++ b/javauis/lcdui_akn/javalcdui/src/Canvas.cpp Wed Sep 15 12:05:25 2010 +0300 @@ -39,6 +39,7 @@ TSize iSize; TBool iFrameBuffer; TBool iHasBackground; + TBool iVideoOverlayEnabled; }; LOCAL_C void CreateCanvasL(CMIDToolkit* aToolkit, TCanvasCreate* aCreate, TCanvasAttribs* aAttribs) @@ -58,7 +59,7 @@ // Check from a MMIDEnv object if the canvas object has a background or not aAttribs->iHasBackground = aToolkit->Env()->CanvasHasBackground(*canvas); - + aAttribs->iVideoOverlayEnabled = aToolkit->Env()->VideoOverlayEnabled(); } JNIEXPORT jint JNICALL Java_javax_microedition_lcdui_Canvas__1create @@ -77,10 +78,12 @@ create.iDisplayable=aDisplayable; create.iRef= aJni->NewWeakGlobalRef(aCanvas); create.iIsGameCanvas = aIsGameCanvas; + TCanvasAttribs attribs; attribs.iFrameBuffer=EFalse; + attribs.iHasBackground = EFalse; + attribs.iVideoOverlayEnabled = EFalse; - attribs.iHasBackground = EFalse; jint error; if (create.iRef) { @@ -97,14 +100,15 @@ aJni->DeleteWeakGlobalRef(create.iRef); } - ASSERT(aJni->GetArrayLength(aAttribsReturn) == 5); - jint attribsArray[5]; + ASSERT(aJni->GetArrayLength(aAttribsReturn) == 6); + jint attribsArray[6]; attribsArray[0] = static_cast< jint >(attribs.iHandle); attribsArray[1] = static_cast< jint >(attribs.iSize.iWidth); attribsArray[2] = static_cast< jint >(attribs.iSize.iHeight); attribsArray[3] = static_cast< jint >(attribs.iFrameBuffer); attribsArray[4] = static_cast< jint >(attribs.iHasBackground); - aJni->SetIntArrayRegion(aAttribsReturn, 0, 5, &attribsArray[0]); + attribsArray[5] = static_cast< jint >(attribs.iVideoOverlayEnabled); + aJni->SetIntArrayRegion(aAttribsReturn, 0, 6, &attribsArray[0]); LCDUI_DEBUG_INT2("Canvas_create(%x == %x)", handle, (TInt)MIDUnhandObject(handle)); return error;