Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9814df70 authored by Biswarup Pal's avatar Biswarup Pal
Browse files

Support non-numerical virtual camera id

Test: atest VirtualCameraControllerTest
Bug: 343404629
Change-Id: Ifeb73cbcbeb0b1f6a4b0c58fd0dbfd09e567549d
parent 26b25da3
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -281,5 +281,5 @@ interface IVirtualDevice {
     * Returns the id of the virtual camera with given config.
     */
    @EnforcePermission("CREATE_VIRTUAL_DEVICE")
    int getVirtualCameraId(in VirtualCameraConfig camera);
    String getVirtualCameraId(in VirtualCameraConfig camera);
}
+2 −2
Original line number Diff line number Diff line
@@ -378,8 +378,8 @@ public class VirtualDeviceInternal {
    VirtualCamera createVirtualCamera(@NonNull VirtualCameraConfig config) {
        try {
            mVirtualDevice.registerVirtualCamera(config);
            return new VirtualCamera(mVirtualDevice,
                            Integer.toString(mVirtualDevice.getVirtualCameraId(config)), config);
            return new VirtualCamera(mVirtualDevice, mVirtualDevice.getVirtualCameraId(config),
                    config);
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
        }
+1 −1
Original line number Diff line number Diff line
@@ -1055,7 +1055,7 @@ final class VirtualDeviceImpl extends IVirtualDevice.Stub

    @Override // Binder call
    @EnforcePermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE)
    public int getVirtualCameraId(@NonNull VirtualCameraConfig cameraConfig)
    public String getVirtualCameraId(@NonNull VirtualCameraConfig cameraConfig)
            throws RemoteException {
        super.getVirtualCameraId_enforcePermission();
        Objects.requireNonNull(cameraConfig);
+1 −1
Original line number Diff line number Diff line
@@ -135,7 +135,7 @@ public final class VirtualCameraController implements IBinder.DeathRecipient {
    }

    /** Return the id of the virtual camera with the given config. */
    public int getCameraId(@NonNull VirtualCameraConfig cameraConfig) {
    public String getCameraId(@NonNull VirtualCameraConfig cameraConfig) {
        connectVirtualCameraServiceIfNeeded();

        try {
+1 −1
Original line number Diff line number Diff line
@@ -95,7 +95,7 @@ public class VirtualCameraControllerTest {
        mVirtualCameraController = new VirtualCameraController(mVirtualCameraServiceMock,
                DEVICE_POLICY_CUSTOM, DEVICE_ID);
        when(mVirtualCameraServiceMock.registerCamera(any(), any(), anyInt())).thenReturn(true);
        when(mVirtualCameraServiceMock.getCameraId(any())).thenReturn(0);
        when(mVirtualCameraServiceMock.getCameraId(any())).thenReturn("0");
    }

    @After