Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
743b38d
Merge remote-tracking branch 'upstream/main' into camx_occ
camsim99 May 1, 2023
4427ac6
Undo changes
camsim99 May 10, 2023
3f9cf35
Start wrapping
camsim99 Nov 27, 2023
c37e8cd
Progress, left todo as marker
camsim99 Dec 13, 2023
ad9c29c
More wrapping, start with meteringpoint
camsim99 Dec 13, 2023
8472b7c
Wrapping
camsim99 Dec 26, 2023
886706b
New files
camsim99 Dec 27, 2023
51da157
Finish non cam2 wrpaping
camsim99 Jan 2, 2024
d157b46
Adding tests + docs
camsim99 Jan 3, 2024
4a0872c
More wrapping and tests
camsim99 Jan 4, 2024
aa0f947
More wrapping, tests
camsim99 Jan 5, 2024
05b784d
Final inital wrapping
camsim99 Jan 5, 2024
36257d4
java formatting + fix dart tests
camsim99 Jan 5, 2024
a9af98d
Fix Java classes
camsim99 Jan 8, 2024
4af2266
Get tests running
camsim99 Jan 8, 2024
fb7927b
Fix java tests
camsim99 Jan 8, 2024
b5e974c
Bump version
camsim99 Jan 8, 2024
ba95c41
Self review
camsim99 Jan 9, 2024
c435903
Merge remote-tracking branch 'upstream/main' into camx_cc
camsim99 Jan 9, 2024
be193db
Merge branch 'main' into camx_cc
camsim99 Jan 9, 2024
2e69a9c
Nits
camsim99 Jan 9, 2024
cc4ecee
Merge remote-tracking branch 'refs/remotes/origin/camx_cc' into camx_cc
camsim99 Jan 9, 2024
643fabb
lint
camsim99 Jan 9, 2024
36d9a2e
Update packages/camera/camera_android_camerax/pigeons/camerax_library…
camsim99 Jan 24, 2024
92157c4
Update packages/camera/camera_android_camerax/android/src/test/java/i…
camsim99 Jan 24, 2024
9977463
Update packages/camera/camera_android_camerax/lib/src/camera_control.…
camsim99 Jan 24, 2024
469d0cd
Merge remote-tracking branch 'upstream/main' into camx_cc
camsim99 Jan 24, 2024
cdfd98c
format
camsim99 Jan 24, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
java formatting + fix dart tests
  • Loading branch information
camsim99 committed Jan 5, 2024
commit 36257d431101453c2e2978c1c3fd0ddea0c39346
Original file line number Diff line number Diff line change
Expand Up @@ -79,8 +79,9 @@ public void onFailure(Throwable t) {

/**
* Starts a focus and metering action configured by the {@code FocusMeteringAction}.
*
* Will trigger an auto focus action and enable auto focus/auto exposure/auto white balance metering regions.
*
* <p>Will trigger an auto focus action and enable auto focus/auto exposure/auto white balance
* metering regions.
*/
public void startFocusAndMetering(
@NonNull CameraControl cameraControl,
Expand All @@ -106,47 +107,51 @@ public void onFailure(Throwable t) {
ContextCompat.getMainExecutor(context));
}

/** Cancels current {@code FocusMeteringAction} and clears AF/AE/AWB regions. */
public void cancelFocusAndMetering(@NonNull CameraControl cameraControl, @NonNull Result<Void> result) {
/** Cancels current {@code FocusMeteringAction} and clears AF/AE/AWB regions. */
public void cancelFocusAndMetering(
@NonNull CameraControl cameraControl, @NonNull Result<Void> result) {
ListenableFuture<Void> cancelFocusAndMeteringFuture = cameraControl.cancelFocusAndMetering();

Futures.addCallback(
cancelFocusAndMeteringFuture,
new FutureCallback<Void>() {
public void onSuccess(Void voidResult) {
result.success(null);
}

public void onFailure(Throwable t) {
result.error(t);
}
},
ContextCompat.getMainExecutor(context));
cancelFocusAndMeteringFuture,
new FutureCallback<Void>() {
public void onSuccess(Void voidResult) {
result.success(null);
}

public void onFailure(Throwable t) {
result.error(t);
}
},
ContextCompat.getMainExecutor(context));
}

/**
* Sets the exposure compensation index for the specified {@CameraControl} instance and returns
* the new target exposure value.
*
* The exposure compensation value to set on the camera which must be within the range of the
*
* <p>The exposure compensation value to set on the camera which must be within the range of the
* {@code ExposureState#getExposureCompensationRange()} for the current {@code ExposureState}
* for the call to succeed.
*/
public void setExposureCompensationIndex(@NonNull CameraControl cameraControl, @NonNull Long index, @NonNull Result<Long> result) {
ListenableFuture<Integer> setExposureCompensationIndexFuture = cameraControl.setExposureCompensationIndex(index.intValue());
public void setExposureCompensationIndex(
@NonNull CameraControl cameraControl, @NonNull Long index, @NonNull Result<Long> result) {
ListenableFuture<Integer> setExposureCompensationIndexFuture =
cameraControl.setExposureCompensationIndex(index.intValue());

Futures.addCallback(
setExposureCompensationIndexFuture,
new FutureCallback<Integer>() {
public void onSuccess(Integer integerResult) {
result.success(integerResult);
}

public void onFailure(Throwable t) {
result.error(t);
}
},
ContextCompat.getMainExecutor(context));
setExposureCompensationIndexFuture,
new FutureCallback<Integer>() {
public void onSuccess(Integer integerResult) {
result.success(integerResult);
}

public void onFailure(Throwable t) {
result.error(t);
}
},
ContextCompat.getMainExecutor(context));
}
}

/**
Expand Down Expand Up @@ -218,11 +223,11 @@ public void cancelFocusAndMetering(@NonNull Long identifier, @NonNull Result<Voi
}

@Override
public void setExposureCompensationIndex(@NonNull Long identifier, @NonNull Long index, @NonNull Result<Long> result) {
public void setExposureCompensationIndex(
@NonNull Long identifier, @NonNull Long index, @NonNull Result<Long> result) {
proxy.setExposureCompensationIndex(getCameraControlInstance(identifier), index, result);
}


private CameraControl getCameraControlInstance(@NonNull Long identifier) {
return Objects.requireNonNull(instanceManager.getInstance(identifier));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,9 +38,7 @@ public FocusMeteringActionFlutterApiImpl(
* {@link FocusMeteringAction} instance that is attached to this one. If {@code instance} has
* already been added, this method does nothing.
*/
public void create(
@NonNull FocusMeteringAction instance,
@NonNull Reply<Void> callback) {
public void create(@NonNull FocusMeteringAction instance, @NonNull Reply<Void> callback) {
if (!instanceManager.containsInstance(instance)) {
focusMeteringActionFlutterApi.create(
instanceManager.addHostCreatedInstance(instance), callback);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,11 @@

package io.flutter.plugins.camerax;

import android.util.Size;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
import io.flutter.plugins.camerax.GeneratedCameraXLibrary.FocusMeteringActionHostApi;
import io.flutter.plugins.camerax.GeneratedCameraXLibrary.ResolutionInfo;
import io.flutter.plugins.camerax.GeneratedCameraXLibrary.VideoQuality;
import io.flutter.plugins.camerax.GeneratedCameraXLibrary.VideoQualityData;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;

/**
* Host API implementation for {@link FocusMeteringAction}.
Expand All @@ -34,7 +28,8 @@ public static class FocusMeteringActionProxy {
public @NonNull FocusMeteringAction create(
@NonNull List<MeteringPoint> meteringPoints, @NonNull List<Integer> meteringPointModes) {
if (meteringPoints.size() != meteringPointModes.size()) {
throw new IllegalArgumentException("The number of specified metering points must match the number of specified metering point modes.");
throw new IllegalArgumentException(
"The number of specified metering points must match the number of specified metering point modes.");
}
FocusMeteringAction.Builder focusMeteringActionBuilder;

Expand All @@ -61,18 +56,19 @@ public static class FocusMeteringActionProxy {

return focusMeteringActionBuilder.build();
}
}

@VisibleForTesting
@NonNull
public FocusMeteringAction.Builder getFocusMeteringActionBuilder(MeteringPoint meteringPoint) {
return new FocusMeteringAction.Builder(meteringPoint);
}
@VisibleForTesting
@NonNull
public FocusMeteringAction.Builder getFocusMeteringActionBuilder(MeteringPoint meteringPoint) {
return new FocusMeteringAction.Builder(meteringPoint);
}

@VisibleForTesting
@NonNull
public FocusMeteringAction.Builder getFocusMeteringActionBuilder(MeteringPoint meteringPoint, int meteringMode) {
return new new FocusMeteringAction.Builder(meteringPoint, meteringMode);
@VisibleForTesting
@NonNull
public FocusMeteringAction.Builder getFocusMeteringActionBuilder(
MeteringPoint meteringPoint, int meteringMode) {
return new FocusMeteringAction.Builder(meteringPoint, meteringMode);
}
}

/**
Expand All @@ -96,9 +92,9 @@ public FocusMeteringActionHostApiImpl(@NonNull InstanceManager instanceManager)
this.proxy = proxy;
}


@Override
public void create(@NonNull Long identifier, @NonNull List<MeteringPointInfo> meteringPointInfos) {
public void create(
@NonNull Long identifier, @NonNull List<MeteringPointInfo> meteringPointInfos) {
final List<MeteringPoint> meteringPoints = new ArrayList<MeteringPoint>();
final List<Integer> meteringPointModes = new ArrayList<int>();
for (MeteringPointInfo meteringPointInfo : meteringPointInfos) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,9 +38,7 @@ public FocusMeteringResultFlutterApiImpl(
* {@link FocusMeteringResult} instance that is attached to this one. If {@code instance} has
* already been added, this method does nothing.
*/
public void create(
@NonNull FocusMeteringResult instance,
@NonNull Reply<Void> callback) {
public void create(@NonNull FocusMeteringResult instance, @NonNull Reply<Void> callback) {
if (!instanceManager.containsInstance(instance)) {
FocusMeteringResultFlutterApi.create(
instanceManager.addHostCreatedInstance(instance), callback);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,9 @@

package io.flutter.plugins.camerax;

import android.util.Size;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
import io.flutter.plugins.camerax.GeneratedCameraXLibrary.FocusMeteringResultHostApi;
import io.flutter.plugins.camerax.GeneratedCameraXLibrary.ResolutionInfo;
import io.flutter.plugins.camerax.GeneratedCameraXLibrary.VideoQuality;
import io.flutter.plugins.camerax.GeneratedCameraXLibrary.VideoQualityData;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;

/**
* Host API implementation for {@link FocusMeteringResult}.
Expand All @@ -30,17 +22,17 @@ public class FocusMeteringResultHostApiImpl implements FocusMeteringResultHostAp
/** Proxy for constructors and static method of {@link FocusMeteringResult}. */
@VisibleForTesting
public static class FocusMeteringResultProxy {
/**
* Returns whether or not auto focus was successful.
*
* If the current camera does not support auto focus, it will return true. If auto focus is not requested,
* it will return false.
*/
@NonNull
public Boolean isFocusSuccessful(@NonNull FocusMeteringResult focusMeteringResult) {
return focusMeteringResult.isFocusSuccessful();
}

/**
* Returns whether or not auto focus was successful.
*
* <p>If the current camera does not support auto focus, it will return true. If auto focus is
* not requested, it will return false.
*/
@NonNull
public Boolean isFocusSuccessful(@NonNull FocusMeteringResult focusMeteringResult) {
return focusMeteringResult.isFocusSuccessful();
}
}

/**
Expand All @@ -64,7 +56,6 @@ public FocusMeteringResultHostApiImpl(@NonNull InstanceManager instanceManager)
this.proxy = proxy;
}


@Override
@NonNull
public Boolean isFocusSuccessful(@NonNull Long identifier) {
Expand Down
Loading