mirror of
https://github.com/AngelAuraMC/Amethyst-Android.git
synced 2025-09-13 14:51:51 -04:00
Feat[ui]: hide the system driver option when Vulkan is not available
This commit is contained in:
parent
96ccf71509
commit
6dcf86ee9b
@ -1 +1 @@
|
||||
1694961457757
|
||||
1694975384776
|
@ -41,7 +41,6 @@ import android.widget.Toast;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.core.app.NotificationManagerCompat;
|
||||
import androidx.core.content.res.TypedArrayUtils;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.fragment.app.FragmentActivity;
|
||||
import androidx.fragment.app.FragmentTransaction;
|
||||
@ -1091,20 +1090,21 @@ public final class Tools {
|
||||
}
|
||||
}
|
||||
|
||||
public static boolean checkVulkanSupport(PackageManager packageManager) {
|
||||
if(SDK_INT >= Build.VERSION_CODES.N) {
|
||||
return packageManager.hasSystemFeature(PackageManager.FEATURE_VULKAN_HARDWARE_LEVEL) &&
|
||||
packageManager.hasSystemFeature(PackageManager.FEATURE_VULKAN_HARDWARE_VERSION);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/** Return the renderers that are compatible with this device */
|
||||
public static RenderersList getCompatibleRenderers(Context context) {
|
||||
if(sCompatibleRenderers != null) return sCompatibleRenderers;
|
||||
Resources resources = context.getResources();
|
||||
String[] defaultRenderers = resources.getStringArray(R.array.renderer_values);
|
||||
String[] defaultRendererNames = resources.getStringArray(R.array.renderer);
|
||||
PackageManager packageManager = context.getPackageManager();
|
||||
boolean deviceHasVulkan;
|
||||
if (SDK_INT >= Build.VERSION_CODES.N) {
|
||||
deviceHasVulkan = packageManager.hasSystemFeature(PackageManager.FEATURE_VULKAN_HARDWARE_LEVEL) &&
|
||||
packageManager.hasSystemFeature(PackageManager.FEATURE_VULKAN_HARDWARE_VERSION);
|
||||
}else{
|
||||
deviceHasVulkan = false;
|
||||
}
|
||||
boolean deviceHasVulkan = checkVulkanSupport(context.getPackageManager());
|
||||
// Currently, only 32-bit x86 does not have the Zink binary
|
||||
boolean deviceHasZinkBinary = !(Architecture.is32BitsDevice() && Architecture.isx86Device());
|
||||
List<String> rendererIds = new ArrayList<>(defaultRenderers.length);
|
||||
|
@ -2,11 +2,18 @@ package net.kdt.pojavlaunch.prefs.screens;
|
||||
|
||||
import android.os.Bundle;
|
||||
|
||||
import androidx.preference.Preference;
|
||||
|
||||
import net.kdt.pojavlaunch.R;
|
||||
import net.kdt.pojavlaunch.Tools;
|
||||
|
||||
public class LauncherPreferenceMiscellaneousFragment extends LauncherPreferenceFragment {
|
||||
@Override
|
||||
public void onCreatePreferences(Bundle b, String str) {
|
||||
addPreferencesFromResource(R.xml.pref_misc);
|
||||
Preference driverPreference = findPreference("zinkPreferSystemDriver");
|
||||
if(!Tools.checkVulkanSupport(driverPreference.getContext().getPackageManager())) {
|
||||
driverPreference.setVisible(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -410,7 +410,7 @@
|
||||
<string name="hint_search_modpack">Search for modpacks</string>
|
||||
|
||||
<string name="preference_vulkan_driver_system_title">Use system Vulkan driver</string>
|
||||
<string name="preference_vulkan_driver_system_description">Force the launcher to use the system Vulkan driver instead of Turnip on Adreno GPUs. Only affects Zink.</string>
|
||||
<string name="preference_vulkan_driver_system_description">Force the launcher to use the system Vulkan driver instead of Turnip on Adreno GPUs. Only affects Zink and mods that use Vulkan.</string>
|
||||
|
||||
<string name="generic_install">Install</string>
|
||||
<string name="generic_apply">Apply</string>
|
||||
|
Loading…
x
Reference in New Issue
Block a user