javauis/lcdui_akn/javalcdui/src/Canvas.cpp
branchRCL_3
changeset 77 7cee158cb8cd
parent 19 04becd199f91
child 83 26b2b12093af
--- 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<MMIDCanvas>(handle));
     return error;