Signal-Android/app/src/main/java/org/thoughtcrime/securesms/mediasend/CameraFragment.java

42 lines
1.0 KiB
Java
Raw Normal View History

2019-06-27 00:10:57 +02:00
package org.thoughtcrime.securesms.mediasend;
import android.annotation.SuppressLint;
2019-06-27 00:10:57 +02:00
import androidx.annotation.NonNull;
import androidx.fragment.app.Fragment;
import org.thoughtcrime.securesms.mediasend.camerax.CameraXUtil;
import java.io.FileDescriptor;
2019-06-27 00:10:57 +02:00
public interface CameraFragment {
@SuppressLint("RestrictedApi")
2019-06-27 00:10:57 +02:00
static Fragment newInstance() {
if (CameraXUtil.isSupported()) {
2019-06-27 00:10:57 +02:00
return CameraXFragment.newInstance();
} else {
return Camera1Fragment.newInstance();
}
}
2020-03-02 16:21:57 +01:00
@SuppressLint("RestrictedApi")
static Fragment newInstanceForAvatarCapture() {
if (CameraXUtil.isSupported()) {
2020-03-02 16:21:57 +01:00
return CameraXFragment.newInstanceForAvatarCapture();
} else {
return Camera1Fragment.newInstance();
}
}
2019-06-27 00:10:57 +02:00
interface Controller {
void onCameraError();
void onImageCaptured(@NonNull byte[] data, int width, int height);
void onVideoCaptured(@NonNull FileDescriptor fd);
void onVideoCaptureError();
void onGalleryClicked();
2019-06-27 00:10:57 +02:00
int getDisplayRotation();
void onCameraCountButtonClicked();
2019-06-27 00:10:57 +02:00
}
}