liyujie
2025-08-28 786ff4f4ca2374bdd9177f2e24b503d43e7a3b93
android/packages/apps/Camera2/src/com/android/camera/settings/PictureSizeLoader.java
old mode 100755new mode 100644
....@@ -49,17 +49,22 @@
4949 public static class PictureSizes {
5050 public final List<Size> backCameraSizes;
5151 public final List<Size> frontCameraSizes;
52
+ public final List<Size> externalCameraSizes;
5253 public final Optional<SelectedVideoQualities> videoQualitiesBack;
5354 public final Optional<SelectedVideoQualities> videoQualitiesFront;
54
-
55
+ public final Optional<SelectedVideoQualities> videoQualitiesExternal;
5556 PictureSizes(List<Size> backCameraSizes,
5657 List<Size> frontCameraSizes,
58
+ List<Size> externalCameraSizes,
5759 Optional<SelectedVideoQualities> videoQualitiesBack,
58
- Optional<SelectedVideoQualities> videoQualitiesFront) {
60
+ Optional<SelectedVideoQualities> videoQualitiesFront,
61
+ Optional<SelectedVideoQualities> videoQualitiesExternal) {
5962 this.backCameraSizes = backCameraSizes;
6063 this.frontCameraSizes = frontCameraSizes;
64
+ this.externalCameraSizes = externalCameraSizes;
6165 this.videoQualitiesBack = videoQualitiesBack;
6266 this.videoQualitiesFront = videoQualitiesFront;
67
+ this.videoQualitiesExternal = videoQualitiesExternal;
6368 }
6469 }
6570
....@@ -111,17 +116,24 @@
111116 * We then calculate the resolutions that should be available and in the end
112117 * filter it in case a resolution is on the blacklist for this device.
113118 */
119
+
114120 public PictureSizes computePictureSizes() {
115121 List<Size> backCameraSizes = computeSizesForCamera(SettingsUtil.CAMERA_FACING_BACK);
116122 List<Size> frontCameraSizes = computeSizesForCamera(SettingsUtil.CAMERA_FACING_FRONT);
123
+ List<Size> externalCameraSizes = computeSizesForCamera(SettingsUtil.CAMERA_FACING_EXTERNAL);
117124 Optional<SelectedVideoQualities> videoQualitiesBack =
118
- computeQualitiesForCamera(SettingsUtil.CAMERA_FACING_BACK);
125
+ computeQualitiesForCamera(SettingsUtil.CAMERA_FACING_BACK);
119126 Optional<SelectedVideoQualities> videoQualitiesFront =
120
- computeQualitiesForCamera(SettingsUtil.CAMERA_FACING_FRONT);
121
- return new PictureSizes(backCameraSizes, frontCameraSizes, videoQualitiesBack,
122
- videoQualitiesFront);
127
+ computeQualitiesForCamera(SettingsUtil.CAMERA_FACING_FRONT);
128
+ Optional<SelectedVideoQualities> videoQualitiesExternal =
129
+ computeQualitiesForCamera(SettingsUtil.CAMERA_FACING_EXTERNAL);
130
+ return new PictureSizes(backCameraSizes, frontCameraSizes, externalCameraSizes,
131
+ videoQualitiesBack,
132
+ videoQualitiesFront,
133
+ videoQualitiesExternal);
123134 }
124135
136
+
125137 private List<Size> computeSizesForCamera(CameraDeviceSelector facingSelector) {
126138 List<Size> sizes;
127139 int cameraId = SettingsUtil.getCameraId(mCameraDeviceInfo, facingSelector);