Search in sources :

Example 21 with SurfaceView

use of android.view.SurfaceView in project android_frameworks_base by AOSPA.

the class TvView method resetSurfaceView.

private void resetSurfaceView() {
    if (mSurfaceView != null) {
        mSurfaceView.getHolder().removeCallback(mSurfaceHolderCallback);
        removeView(mSurfaceView);
    }
    mSurface = null;
    mSurfaceView = new SurfaceView(getContext(), mAttrs, mDefStyleAttr) {

        @Override
        protected void updateWindow(boolean force, boolean redrawNeeded) {
            super.updateWindow(force, redrawNeeded);
            relayoutSessionOverlayView();
        }
    };
    // The surface view's content should be treated as secure all the time.
    mSurfaceView.setSecure(true);
    mSurfaceView.getHolder().addCallback(mSurfaceHolderCallback);
    if (mWindowZOrder == ZORDER_MEDIA_OVERLAY) {
        mSurfaceView.setZOrderMediaOverlay(true);
    } else if (mWindowZOrder == ZORDER_ON_TOP) {
        mSurfaceView.setZOrderOnTop(true);
    }
    addView(mSurfaceView);
}
Also used : SurfaceView(android.view.SurfaceView)

Example 22 with SurfaceView

use of android.view.SurfaceView in project platform_frameworks_base by android.

the class EGLImpl method eglCreateWindowSurface.

public EGLSurface eglCreateWindowSurface(EGLDisplay display, EGLConfig config, Object native_window, int[] attrib_list) {
    Surface sur = null;
    if (native_window instanceof SurfaceView) {
        SurfaceView surfaceView = (SurfaceView) native_window;
        sur = surfaceView.getHolder().getSurface();
    } else if (native_window instanceof SurfaceHolder) {
        SurfaceHolder holder = (SurfaceHolder) native_window;
        sur = holder.getSurface();
    } else if (native_window instanceof Surface) {
        sur = (Surface) native_window;
    }
    long eglSurfaceId;
    if (sur != null) {
        eglSurfaceId = _eglCreateWindowSurface(display, config, sur, attrib_list);
    } else if (native_window instanceof SurfaceTexture) {
        eglSurfaceId = _eglCreateWindowSurfaceTexture(display, config, native_window, attrib_list);
    } else {
        throw new java.lang.UnsupportedOperationException("eglCreateWindowSurface() can only be called with an instance of " + "Surface, SurfaceView, SurfaceHolder or SurfaceTexture at the moment.");
    }
    if (eglSurfaceId == 0) {
        return EGL10.EGL_NO_SURFACE;
    }
    return new EGLSurfaceImpl(eglSurfaceId);
}
Also used : SurfaceHolder(android.view.SurfaceHolder) SurfaceTexture(android.graphics.SurfaceTexture) SurfaceView(android.view.SurfaceView) Surface(android.view.Surface)

Example 23 with SurfaceView

use of android.view.SurfaceView in project platform_frameworks_base by android.

the class SinkActivity method onCreate.

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    mUsbManager = (UsbManager) getSystemService(Context.USB_SERVICE);
    setContentView(R.layout.sink_activity);
    mLogTextView = (TextView) findViewById(R.id.logTextView);
    mLogTextView.setMovementMethod(ScrollingMovementMethod.getInstance());
    mLogger = new TextLogger();
    mFpsTextView = (TextView) findViewById(R.id.fpsTextView);
    mSurfaceView = (SurfaceView) findViewById(R.id.surfaceView);
    mSurfaceView.setOnTouchListener(new View.OnTouchListener() {

        @Override
        public boolean onTouch(View v, MotionEvent event) {
            sendHidTouch(event);
            return true;
        }
    });
    mLogger.log("Waiting for accessory display source to be attached to USB...");
    IntentFilter filter = new IntentFilter();
    filter.addAction(UsbManager.ACTION_USB_DEVICE_ATTACHED);
    filter.addAction(UsbManager.ACTION_USB_DEVICE_DETACHED);
    filter.addAction(ACTION_USB_DEVICE_PERMISSION);
    mReceiver = new DeviceReceiver();
    registerReceiver(mReceiver, filter);
    Intent intent = getIntent();
    if (intent.getAction().equals(UsbManager.ACTION_USB_DEVICE_ATTACHED)) {
        UsbDevice device = intent.<UsbDevice>getParcelableExtra(UsbManager.EXTRA_DEVICE);
        if (device != null) {
            onDeviceAttached(device);
        }
    } else {
        Map<String, UsbDevice> devices = mUsbManager.getDeviceList();
        if (devices != null) {
            for (UsbDevice device : devices.values()) {
                onDeviceAttached(device);
            }
        }
    }
}
Also used : IntentFilter(android.content.IntentFilter) UsbDevice(android.hardware.usb.UsbDevice) Intent(android.content.Intent) PendingIntent(android.app.PendingIntent) SurfaceView(android.view.SurfaceView) View(android.view.View) TextView(android.widget.TextView) MotionEvent(android.view.MotionEvent)

Example 24 with SurfaceView

use of android.view.SurfaceView in project platform_frameworks_base by android.

the class MffContext method createDummySurfaceView.

@SuppressWarnings("deprecation")
private SurfaceView createDummySurfaceView(Context context) {
    // This is only called on Gingerbread devices, so deprecation warning is unnecessary.
    SurfaceView dummySurfaceView = new SurfaceView(context);
    dummySurfaceView.getHolder().setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
    // If we have an activity for this context we'll add the SurfaceView to it (as a 1x1 view
    // in the top-left corner). If not, we warn the user that they may need to add one manually.
    Activity activity = findActivityForContext(context);
    if (activity != null) {
        ViewGroup.LayoutParams params = new ViewGroup.LayoutParams(1, 1);
        activity.addContentView(dummySurfaceView, params);
    } else {
        Log.w("MffContext", "Could not find activity for dummy surface! Consider specifying " + "your own SurfaceView!");
    }
    return dummySurfaceView;
}
Also used : ViewGroup(android.view.ViewGroup) Activity(android.app.Activity) SurfaceView(android.view.SurfaceView)

Example 25 with SurfaceView

use of android.view.SurfaceView in project platform_frameworks_base by android.

the class SurfaceHolderTarget method onBindToView.

@Override
public void onBindToView(View view) {
    if (view instanceof SurfaceView) {
        SurfaceHolder holder = ((SurfaceView) view).getHolder();
        if (holder == null) {
            throw new RuntimeException("Could not get SurfaceHolder from SurfaceView " + view + "!");
        }
        setSurfaceHolder(holder);
    } else {
        throw new IllegalArgumentException("View must be a SurfaceView!");
    }
}
Also used : SurfaceHolder(android.view.SurfaceHolder) SurfaceView(android.view.SurfaceView)

Aggregations

SurfaceView (android.view.SurfaceView)137 SurfaceHolder (android.view.SurfaceHolder)65 View (android.view.View)35 SurfaceTexture (android.graphics.SurfaceTexture)18 Intent (android.content.Intent)16 FrameLayout (android.widget.FrameLayout)15 Surface (android.view.Surface)14 Button (android.widget.Button)13 TextView (android.widget.TextView)11 SharedPreferences (android.content.SharedPreferences)10 Bitmap (android.graphics.Bitmap)9 ImageView (android.widget.ImageView)9 IOException (java.io.IOException)9 ViewGroup (android.view.ViewGroup)8 LinearLayout (android.widget.LinearLayout)8 FileOutputStream (java.io.FileOutputStream)8 AudioManager (android.media.AudioManager)7 OnClickListener (android.view.View.OnClickListener)7 CameraManager (com.google.zxing.client.android.camera.CameraManager)7 IntentFilter (android.content.IntentFilter)6