diff options
Diffstat (limited to 'core/java/android/os/GraphicsEnvironment.java')
| -rw-r--r-- | core/java/android/os/GraphicsEnvironment.java | 33 |
1 files changed, 24 insertions, 9 deletions
diff --git a/core/java/android/os/GraphicsEnvironment.java b/core/java/android/os/GraphicsEnvironment.java index b0b8f493e98a..e4622dbdc379 100644 --- a/core/java/android/os/GraphicsEnvironment.java +++ b/core/java/android/os/GraphicsEnvironment.java @@ -480,21 +480,36 @@ public class GraphicsEnvironment { return; } - if (getGlobalSettingsString(coreSettings, Settings.Global.GUP_DEV_OPT_OUT_APPS) - .contains(ai.packageName)) { + // GUP_DEV_ALL_APPS + // 0: Default (Invalid values fallback to default as well) + // 1: All apps use Game Update Package + // 2: All apps use system graphics driver + int gupDevAllApps = coreSettings.getInt(Settings.Global.GUP_DEV_ALL_APPS, 0); + if (gupDevAllApps == 2) { if (DEBUG) { - Log.w(TAG, ai.packageName + " opts out from GUP."); + Log.w(TAG, "GUP is turned off on this device"); } return; } - if (!getGlobalSettingsString(coreSettings, Settings.Global.GUP_DEV_OPT_IN_APPS) - .contains(ai.packageName) - && !onWhitelist(context, driverPackageName, ai.packageName)) { - if (DEBUG) { - Log.w(TAG, ai.packageName + " is not on the whitelist."); + if (gupDevAllApps != 1) { + // GUP_DEV_OPT_OUT_APPS has higher priority than GUP_DEV_OPT_IN_APPS + if (getGlobalSettingsString(coreSettings, Settings.Global.GUP_DEV_OPT_OUT_APPS) + .contains(ai.packageName)) { + if (DEBUG) { + Log.w(TAG, ai.packageName + " opts out from GUP."); + } + return; + } + + if (!getGlobalSettingsString(coreSettings, Settings.Global.GUP_DEV_OPT_IN_APPS) + .contains(ai.packageName) + && !onWhitelist(context, driverPackageName, ai.packageName)) { + if (DEBUG) { + Log.w(TAG, ai.packageName + " is not on the whitelist."); + } + return; } - return; } ApplicationInfo driverInfo; |
