Add force legacy QR scanning switch.

This commit is contained in:
Cody Henthorne
2022-06-01 16:38:15 -04:00
parent 4c44f1ee02
commit d6108fbbf3
3 changed files with 29 additions and 9 deletions

View File

@@ -18,6 +18,7 @@ import androidx.core.view.ViewCompat;
import org.signal.qr.QrScannerView;
import org.signal.qr.kitkat.ScanListener;
import org.thoughtcrime.securesms.util.FeatureFlags;
import org.thoughtcrime.securesms.util.LifecycleDisposable;
import org.thoughtcrime.securesms.util.ViewUtil;
@@ -56,7 +57,7 @@ public class DeviceAddFragment extends LoggingFragment {
});
}
scannerView.start(getViewLifecycleOwner());
scannerView.start(getViewLifecycleOwner(), FeatureFlags.useQrLegacyScan());
lifecycleDisposable.bindTo(getViewLifecycleOwner());

View File

@@ -97,6 +97,7 @@ public final class FeatureFlags {
private static final String USE_FCM_FOREGROUND_SERVICE = "android.useFcmForegroundService.3";
private static final String STORIES_AUTO_DOWNLOAD_MAXIMUM = "android.stories.autoDownloadMaximum";
private static final String GIFT_BADGES = "android.giftBadges.3";
private static final String USE_QR_LEGACY_SCAN = "android.qr.legacy_scan";
/**
* We will only store remote values for flags in this set. If you want a flag to be controllable
@@ -146,7 +147,8 @@ public final class FeatureFlags {
PAYMENTS_COUNTRY_BLOCKLIST,
USE_FCM_FOREGROUND_SERVICE,
STORIES_AUTO_DOWNLOAD_MAXIMUM,
GIFT_BADGES
GIFT_BADGES,
USE_QR_LEGACY_SCAN
);
@VisibleForTesting
@@ -206,7 +208,8 @@ public final class FeatureFlags {
USE_HARDWARE_AEC_IF_OLD,
USE_AEC3,
PAYMENTS_COUNTRY_BLOCKLIST,
USE_FCM_FOREGROUND_SERVICE
USE_FCM_FOREGROUND_SERVICE,
USE_QR_LEGACY_SCAN
);
/**
@@ -510,6 +513,10 @@ public final class FeatureFlags {
return getBoolean(GIFT_BADGES, Environment.IS_STAGING);
}
public static boolean useQrLegacyScan() {
return getBoolean(USE_QR_LEGACY_SCAN, false);
}
/** Only for rendering debug info. */
public static synchronized @NonNull Map<String, Object> getMemoryValues() {
return new TreeMap<>(REMOTE_VALUES);