Loading core/java/android/hardware/camera2/CameraManager.java +18 −21 Original line number Diff line number Diff line Loading @@ -152,21 +152,8 @@ public final class CameraManager { mContext.checkSelfPermission(CAMERA_OPEN_CLOSE_LISTENER_PERMISSION) == PackageManager.PERMISSION_GRANTED; } mFoldStateListener = new FoldStateListener(context); try { context.getSystemService(DeviceStateManager.class).registerCallback( new HandlerExecutor(CameraManagerGlobal.get().getDeviceStateHandler()), mFoldStateListener); } catch (IllegalStateException e) { Log.v(TAG, "Failed to register device state listener!"); Log.v(TAG, "Device state dependent characteristics updates will not be functional!"); mFoldStateListener = null; } } private FoldStateListener mFoldStateListener; /** * @hide */ Loading Loading @@ -228,12 +215,7 @@ public final class CameraManager { * @hide */ public void registerDeviceStateListener(@NonNull CameraCharacteristics chars) { synchronized (mLock) { DeviceStateListener listener = chars.getDeviceStateListener(); if (mFoldStateListener != null) { mFoldStateListener.addDeviceStateListener(listener); } } CameraManagerGlobal.get().registerDeviceStateListener(chars, mContext); } /** Loading Loading @@ -1781,6 +1763,7 @@ public final class CameraManager { private HandlerThread mDeviceStateHandlerThread; private Handler mDeviceStateHandler; private FoldStateListener mFoldStateListener; // Singleton, don't allow construction private CameraManagerGlobal() { } Loading @@ -1795,7 +1778,8 @@ public final class CameraManager { return gCameraManager; } public Handler getDeviceStateHandler() { public void registerDeviceStateListener(@NonNull CameraCharacteristics chars, @NonNull Context ctx) { synchronized(mLock) { if (mDeviceStateHandlerThread == null) { mDeviceStateHandlerThread = new HandlerThread(TAG); Loading @@ -1803,7 +1787,20 @@ public final class CameraManager { mDeviceStateHandler = new Handler(mDeviceStateHandlerThread.getLooper()); } return mDeviceStateHandler; if (mFoldStateListener == null) { mFoldStateListener = new FoldStateListener(ctx); try { ctx.getSystemService(DeviceStateManager.class).registerCallback( new HandlerExecutor(mDeviceStateHandler), mFoldStateListener); } catch (IllegalStateException e) { Log.v(TAG, "Failed to register device state listener!"); Log.v(TAG, "Device state dependent characteristics updates will not be" + "functional!"); return; } } mFoldStateListener.addDeviceStateListener(chars.getDeviceStateListener()); } } Loading Loading
core/java/android/hardware/camera2/CameraManager.java +18 −21 Original line number Diff line number Diff line Loading @@ -152,21 +152,8 @@ public final class CameraManager { mContext.checkSelfPermission(CAMERA_OPEN_CLOSE_LISTENER_PERMISSION) == PackageManager.PERMISSION_GRANTED; } mFoldStateListener = new FoldStateListener(context); try { context.getSystemService(DeviceStateManager.class).registerCallback( new HandlerExecutor(CameraManagerGlobal.get().getDeviceStateHandler()), mFoldStateListener); } catch (IllegalStateException e) { Log.v(TAG, "Failed to register device state listener!"); Log.v(TAG, "Device state dependent characteristics updates will not be functional!"); mFoldStateListener = null; } } private FoldStateListener mFoldStateListener; /** * @hide */ Loading Loading @@ -228,12 +215,7 @@ public final class CameraManager { * @hide */ public void registerDeviceStateListener(@NonNull CameraCharacteristics chars) { synchronized (mLock) { DeviceStateListener listener = chars.getDeviceStateListener(); if (mFoldStateListener != null) { mFoldStateListener.addDeviceStateListener(listener); } } CameraManagerGlobal.get().registerDeviceStateListener(chars, mContext); } /** Loading Loading @@ -1781,6 +1763,7 @@ public final class CameraManager { private HandlerThread mDeviceStateHandlerThread; private Handler mDeviceStateHandler; private FoldStateListener mFoldStateListener; // Singleton, don't allow construction private CameraManagerGlobal() { } Loading @@ -1795,7 +1778,8 @@ public final class CameraManager { return gCameraManager; } public Handler getDeviceStateHandler() { public void registerDeviceStateListener(@NonNull CameraCharacteristics chars, @NonNull Context ctx) { synchronized(mLock) { if (mDeviceStateHandlerThread == null) { mDeviceStateHandlerThread = new HandlerThread(TAG); Loading @@ -1803,7 +1787,20 @@ public final class CameraManager { mDeviceStateHandler = new Handler(mDeviceStateHandlerThread.getLooper()); } return mDeviceStateHandler; if (mFoldStateListener == null) { mFoldStateListener = new FoldStateListener(ctx); try { ctx.getSystemService(DeviceStateManager.class).registerCallback( new HandlerExecutor(mDeviceStateHandler), mFoldStateListener); } catch (IllegalStateException e) { Log.v(TAG, "Failed to register device state listener!"); Log.v(TAG, "Device state dependent characteristics updates will not be" + "functional!"); return; } } mFoldStateListener.addDeviceStateListener(chars.getDeviceStateListener()); } } Loading