mirror of
https://github.com/AngelAuraMC/Amethyst-Android.git
synced 2025-09-18 00:59:35 -04:00
Fix: hide gyro if not supported
This commit is contained in:
parent
383b3edd75
commit
19afab28f4
@ -19,6 +19,8 @@ import android.content.pm.PackageManager;
|
|||||||
import android.content.res.Configuration;
|
import android.content.res.Configuration;
|
||||||
import android.content.res.Resources;
|
import android.content.res.Resources;
|
||||||
import android.database.Cursor;
|
import android.database.Cursor;
|
||||||
|
import android.hardware.Sensor;
|
||||||
|
import android.hardware.SensorManager;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Build;
|
import android.os.Build;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
@ -1285,4 +1287,9 @@ public final class Tools {
|
|||||||
sCompatibleRenderers = null;
|
sCompatibleRenderers = null;
|
||||||
System.gc();
|
System.gc();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static boolean deviceSupportsGyro(@NonNull Context context) {
|
||||||
|
return ((SensorManager)context.getSystemService(Context.SENSOR_SERVICE)).getDefaultSensor(Sensor.TYPE_GYROSCOPE) != null;
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -48,7 +48,10 @@ public abstract class QuickSettingSideDialog extends com.kdt.SideDialogView {
|
|||||||
@Override
|
@Override
|
||||||
protected void onInflate() {
|
protected void onInflate() {
|
||||||
bindLayout();
|
bindLayout();
|
||||||
Tools.runOnUiThread(this::setupListeners);
|
Tools.runOnUiThread(() -> {
|
||||||
|
this.setupListeners();
|
||||||
|
this.updateGyroCompatibility();
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -187,6 +190,14 @@ public abstract class QuickSettingSideDialog extends com.kdt.SideDialogView {
|
|||||||
mGyroSensitivityDisplayText.setVisibility(visibility);
|
mGyroSensitivityDisplayText.setVisibility(visibility);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void updateGyroCompatibility() {
|
||||||
|
boolean isGyroAvailable = Tools.deviceSupportsGyro(mDialogContent.getContext());
|
||||||
|
if (!isGyroAvailable) {
|
||||||
|
mGyroSwitch.setVisibility(View.GONE);
|
||||||
|
updateGestureVisibility(false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void updateGestureVisibility(boolean isDisabled) {
|
private void updateGestureVisibility(boolean isDisabled) {
|
||||||
int visibility = isDisabled ? View.GONE : View.VISIBLE;
|
int visibility = isDisabled ? View.GONE : View.VISIBLE;
|
||||||
mGestureDelayBar.setVisibility(visibility);
|
mGestureDelayBar.setVisibility(visibility);
|
||||||
|
@ -9,6 +9,7 @@ import android.os.Bundle;
|
|||||||
import androidx.preference.PreferenceCategory;
|
import androidx.preference.PreferenceCategory;
|
||||||
|
|
||||||
import net.kdt.pojavlaunch.R;
|
import net.kdt.pojavlaunch.R;
|
||||||
|
import net.kdt.pojavlaunch.Tools;
|
||||||
import net.kdt.pojavlaunch.prefs.CustomSeekBarPreference;
|
import net.kdt.pojavlaunch.prefs.CustomSeekBarPreference;
|
||||||
import net.kdt.pojavlaunch.prefs.LauncherPreferences;
|
import net.kdt.pojavlaunch.prefs.LauncherPreferences;
|
||||||
|
|
||||||
@ -62,7 +63,7 @@ public class LauncherPreferenceControlFragment extends LauncherPreferenceFragmen
|
|||||||
|
|
||||||
Context context = getContext();
|
Context context = getContext();
|
||||||
if(context != null) {
|
if(context != null) {
|
||||||
mGyroAvailable = ((SensorManager)context.getSystemService(Context.SENSOR_SERVICE)).getDefaultSensor(Sensor.TYPE_GYROSCOPE) != null;
|
mGyroAvailable = Tools.deviceSupportsGyro(context);
|
||||||
}
|
}
|
||||||
PreferenceCategory gyroCategory = requirePreference("gyroCategory",
|
PreferenceCategory gyroCategory = requirePreference("gyroCategory",
|
||||||
PreferenceCategory.class);
|
PreferenceCategory.class);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user