Loading res/layout/preferences_dialog.xml +8 −0 Original line number Diff line number Diff line Loading @@ -30,4 +30,12 @@ android:layout_marginBottom="16dp" android:text="@string/menu_mobile_data_warning" android:textSize="16sp" /> <Switch android:id="@+id/preferences_ab_perf_mode" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginBottom="16dp" android:text="@string/menu_ab_perf_mode" android:textSize="16sp" /> </LinearLayout> res/values/strings.xml +1 −0 Original line number Diff line number Diff line Loading @@ -70,6 +70,7 @@ <string name="menu_export_update">Export update</string> <string name="menu_show_changelog">Show changelog</string> <string name="menu_changelog_url" translatable="false">https://download.lineageos.org/<xliff:g id="device_name">%1$s</xliff:g>/changes</string> <string name="menu_ab_perf_mode">Install updates faster</string> <string name="snack_updates_found">New updates found</string> <string name="snack_no_updates_found">No new updates found</string> Loading src/org/lineageos/updater/UpdatesActivity.java +11 −0 Original line number Diff line number Diff line Loading @@ -409,11 +409,17 @@ public class UpdatesActivity extends UpdatesListActivity { Switch autoCheck = view.findViewById(R.id.preferences_auto_updates_check); Switch autoDelete = view.findViewById(R.id.preferences_auto_delete_updates); Switch dataWarning = view.findViewById(R.id.preferences_mobile_data_warning); Switch abPerfMode = view.findViewById(R.id.preferences_ab_perf_mode); if (!Utils.isABDevice()) { abPerfMode.setVisibility(View.GONE); } SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this); autoCheck.setChecked(prefs.getBoolean(Constants.PREF_AUTO_UPDATES_CHECK, true)); autoDelete.setChecked(prefs.getBoolean(Constants.PREF_AUTO_DELETE_UPDATES, false)); dataWarning.setChecked(prefs.getBoolean(Constants.PREF_MOBILE_DATA_WARNING, true)); abPerfMode.setChecked(prefs.getBoolean(Constants.PREF_AB_PERF_MODE, false)); new AlertDialog.Builder(this) .setTitle(R.string.menu_preferences) Loading @@ -426,6 +432,8 @@ public class UpdatesActivity extends UpdatesListActivity { autoDelete.isChecked()) .putBoolean(Constants.PREF_MOBILE_DATA_WARNING, dataWarning.isChecked()) .putBoolean(Constants.PREF_AB_PERF_MODE, abPerfMode.isChecked()) .apply(); if (autoCheck.isChecked()) { Loading @@ -434,6 +442,9 @@ public class UpdatesActivity extends UpdatesListActivity { UpdatesCheckReceiver.cancelRepeatingUpdatesCheck(this); UpdatesCheckReceiver.cancelUpdatesCheck(this); } boolean enableABPerfMode = abPerfMode.isChecked(); mUpdaterService.getUpdaterController().setPerformanceMode(enableABPerfMode); }) .show(); } Loading src/org/lineageos/updater/controller/ABUpdateInstaller.java +8 −0 Original line number Diff line number Diff line Loading @@ -200,6 +200,10 @@ class ABUpdateInstaller { } } boolean enableABPerfMode = PreferenceManager.getDefaultSharedPreferences(mContext) .getBoolean(Constants.PREF_AB_PERF_MODE, false); mUpdateEngine.setPerformanceMode(enableABPerfMode); String zipFileUri = "file://" + file.getAbsolutePath(); mUpdateEngine.applyPayload(zipFileUri, offset, 0, headerKeyValuePairs); Loading Loading @@ -265,4 +269,8 @@ class ABUpdateInstaller { return true; } public void setPerformanceMode(boolean enable) { mUpdateEngine.setPerformanceMode(enable); } } src/org/lineageos/updater/controller/UpdaterController.java +7 −0 Original line number Diff line number Diff line Loading @@ -525,4 +525,11 @@ public class UpdaterController { public boolean isWaitingForReboot(String downloadId) { return ABUpdateInstaller.isWaitingForReboot(mContext, downloadId); } public void setPerformanceMode(boolean enable) { if (!Utils.isABDevice()) { return; } ABUpdateInstaller.getInstance(mContext, this).setPerformanceMode(enable); } } Loading
res/layout/preferences_dialog.xml +8 −0 Original line number Diff line number Diff line Loading @@ -30,4 +30,12 @@ android:layout_marginBottom="16dp" android:text="@string/menu_mobile_data_warning" android:textSize="16sp" /> <Switch android:id="@+id/preferences_ab_perf_mode" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginBottom="16dp" android:text="@string/menu_ab_perf_mode" android:textSize="16sp" /> </LinearLayout>
res/values/strings.xml +1 −0 Original line number Diff line number Diff line Loading @@ -70,6 +70,7 @@ <string name="menu_export_update">Export update</string> <string name="menu_show_changelog">Show changelog</string> <string name="menu_changelog_url" translatable="false">https://download.lineageos.org/<xliff:g id="device_name">%1$s</xliff:g>/changes</string> <string name="menu_ab_perf_mode">Install updates faster</string> <string name="snack_updates_found">New updates found</string> <string name="snack_no_updates_found">No new updates found</string> Loading
src/org/lineageos/updater/UpdatesActivity.java +11 −0 Original line number Diff line number Diff line Loading @@ -409,11 +409,17 @@ public class UpdatesActivity extends UpdatesListActivity { Switch autoCheck = view.findViewById(R.id.preferences_auto_updates_check); Switch autoDelete = view.findViewById(R.id.preferences_auto_delete_updates); Switch dataWarning = view.findViewById(R.id.preferences_mobile_data_warning); Switch abPerfMode = view.findViewById(R.id.preferences_ab_perf_mode); if (!Utils.isABDevice()) { abPerfMode.setVisibility(View.GONE); } SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this); autoCheck.setChecked(prefs.getBoolean(Constants.PREF_AUTO_UPDATES_CHECK, true)); autoDelete.setChecked(prefs.getBoolean(Constants.PREF_AUTO_DELETE_UPDATES, false)); dataWarning.setChecked(prefs.getBoolean(Constants.PREF_MOBILE_DATA_WARNING, true)); abPerfMode.setChecked(prefs.getBoolean(Constants.PREF_AB_PERF_MODE, false)); new AlertDialog.Builder(this) .setTitle(R.string.menu_preferences) Loading @@ -426,6 +432,8 @@ public class UpdatesActivity extends UpdatesListActivity { autoDelete.isChecked()) .putBoolean(Constants.PREF_MOBILE_DATA_WARNING, dataWarning.isChecked()) .putBoolean(Constants.PREF_AB_PERF_MODE, abPerfMode.isChecked()) .apply(); if (autoCheck.isChecked()) { Loading @@ -434,6 +442,9 @@ public class UpdatesActivity extends UpdatesListActivity { UpdatesCheckReceiver.cancelRepeatingUpdatesCheck(this); UpdatesCheckReceiver.cancelUpdatesCheck(this); } boolean enableABPerfMode = abPerfMode.isChecked(); mUpdaterService.getUpdaterController().setPerformanceMode(enableABPerfMode); }) .show(); } Loading
src/org/lineageos/updater/controller/ABUpdateInstaller.java +8 −0 Original line number Diff line number Diff line Loading @@ -200,6 +200,10 @@ class ABUpdateInstaller { } } boolean enableABPerfMode = PreferenceManager.getDefaultSharedPreferences(mContext) .getBoolean(Constants.PREF_AB_PERF_MODE, false); mUpdateEngine.setPerformanceMode(enableABPerfMode); String zipFileUri = "file://" + file.getAbsolutePath(); mUpdateEngine.applyPayload(zipFileUri, offset, 0, headerKeyValuePairs); Loading Loading @@ -265,4 +269,8 @@ class ABUpdateInstaller { return true; } public void setPerformanceMode(boolean enable) { mUpdateEngine.setPerformanceMode(enable); } }
src/org/lineageos/updater/controller/UpdaterController.java +7 −0 Original line number Diff line number Diff line Loading @@ -525,4 +525,11 @@ public class UpdaterController { public boolean isWaitingForReboot(String downloadId) { return ABUpdateInstaller.isWaitingForReboot(mContext, downloadId); } public void setPerformanceMode(boolean enable) { if (!Utils.isABDevice()) { return; } ABUpdateInstaller.getInstance(mContext, this).setPerformanceMode(enable); } }