am 3bc69e62: Merge change Ib59457e0 into eclair-mr2
Merge commit '3bc69e6256b616514871276e24bf98f37b3f89ad' into eclair-mr2-plus-aosp * commit '3bc69e6256b616514871276e24bf98f37b3f89ad': Change full screen surface to Opaque as it is required
This commit is contained in:
@@ -35,7 +35,6 @@ import android.view.View;
|
|||||||
import android.view.WindowManager;
|
import android.view.WindowManager;
|
||||||
import android.view.SurfaceHolder.Callback;
|
import android.view.SurfaceHolder.Callback;
|
||||||
import android.view.ViewGroup.LayoutParams;
|
import android.view.ViewGroup.LayoutParams;
|
||||||
import android.webkit.plugin.FullScreenDrawingModel;
|
|
||||||
import android.webkit.plugin.NativePlugin;
|
import android.webkit.plugin.NativePlugin;
|
||||||
import android.webkit.plugin.SurfaceDrawingModel;
|
import android.webkit.plugin.SurfaceDrawingModel;
|
||||||
import android.widget.FrameLayout;
|
import android.widget.FrameLayout;
|
||||||
@@ -53,7 +52,7 @@ public class SamplePlugin implements NativePlugin {
|
|||||||
private Context context;
|
private Context context;
|
||||||
|
|
||||||
private SurfaceDrawingModel embeddedSurface;
|
private SurfaceDrawingModel embeddedSurface;
|
||||||
private FullScreenDrawingModel fullScreenSurface;
|
private SurfaceDrawingModel fullScreenSurface;
|
||||||
|
|
||||||
private boolean validNPP = false;
|
private boolean validNPP = false;
|
||||||
private Object nppLock = new Object();
|
private Object nppLock = new Object();
|
||||||
@@ -71,7 +70,7 @@ public class SamplePlugin implements NativePlugin {
|
|||||||
return embeddedSurface;
|
return embeddedSurface;
|
||||||
}
|
}
|
||||||
|
|
||||||
public FullScreenDrawingModel getFullScreenSurface() {
|
public SurfaceDrawingModel getFullScreenSurface() {
|
||||||
if (fullScreenSurface == null) {
|
if (fullScreenSurface == null) {
|
||||||
fullScreenSurface = new FullScreenSurface();
|
fullScreenSurface = new FullScreenSurface();
|
||||||
}
|
}
|
||||||
@@ -145,7 +144,7 @@ public class SamplePlugin implements NativePlugin {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private class FullScreenSurface implements FullScreenDrawingModel {
|
private class FullScreenSurface implements SurfaceDrawingModel {
|
||||||
|
|
||||||
public View getSurface() {
|
public View getSurface() {
|
||||||
/* TODO make this aware of the plugin instance and get the video file
|
/* TODO make this aware of the plugin instance and get the video file
|
||||||
@@ -156,37 +155,30 @@ public class SamplePlugin implements NativePlugin {
|
|||||||
LayoutParams fp = new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
|
LayoutParams fp = new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
|
||||||
layout.setLayoutParams(fp);
|
layout.setLayoutParams(fp);
|
||||||
|
|
||||||
VideoView video = new VideoView(context);
|
// VideoView video = new VideoView(context);
|
||||||
LayoutParams vp = new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
|
// LayoutParams vp = new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
|
||||||
layout.setLayoutParams(vp);
|
// layout.setLayoutParams(vp);
|
||||||
|
|
||||||
GLSurfaceView gl = new GLSurfaceView(context);
|
GLSurfaceView gl = new GLSurfaceView(context);
|
||||||
LayoutParams gp = new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
|
LayoutParams gp = new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
|
||||||
layout.setLayoutParams(gp);
|
layout.setLayoutParams(gp);
|
||||||
|
|
||||||
layout.addView(video);
|
|
||||||
layout.addView(gl);
|
layout.addView(gl);
|
||||||
|
// layout.addView(video);
|
||||||
|
|
||||||
// We want an 8888 pixel format because that's required for a translucent
|
|
||||||
// window. And we want a depth buffer.
|
|
||||||
gl.setEGLConfigChooser(8, 8, 8, 8, 16, 0);
|
|
||||||
// Tell the cube renderer that we want to render a translucent version
|
// Tell the cube renderer that we want to render a translucent version
|
||||||
// of the cube:
|
// of the cube:
|
||||||
gl.setRenderer(new CubeRenderer(true));
|
gl.setRenderer(new CubeRenderer(false));
|
||||||
// Use a surface format with an Alpha channel:
|
|
||||||
gl.getHolder().setFormat(PixelFormat.TRANSLUCENT);
|
|
||||||
gl.setWindowType(WindowManager.LayoutParams.TYPE_APPLICATION_MEDIA_OVERLAY);
|
gl.setWindowType(WindowManager.LayoutParams.TYPE_APPLICATION_MEDIA_OVERLAY);
|
||||||
|
|
||||||
video.setVideoPath("/sdcard/test_video.3gp");
|
// video.setVideoPath("/sdcard/test_video.3gp");
|
||||||
video.setMediaController(new MediaController(context));
|
// video.setMediaController(new MediaController(context));
|
||||||
video.requestFocus();
|
// video.requestFocus();
|
||||||
|
|
||||||
// ensure that the view system is aware that we will be drawing
|
// ensure that the view system is aware that we will be drawing
|
||||||
layout.setWillNotDraw(false);
|
layout.setWillNotDraw(false);
|
||||||
|
|
||||||
return layout;
|
return layout;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void onSurfaceRemoved() { }
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user