From 9d7a28e408ee4203e50dbdddd9d7371543c1ca1a Mon Sep 17 00:00:00 2001 From: Cameron Gutman Date: Sun, 25 Feb 2018 13:33:52 -0800 Subject: [PATCH] Implement deletion of OSC settings --- .../ConfirmDeleteOscPreference.java | 41 +++++++++++++++++++ app/src/main/res/values/strings.xml | 5 +++ app/src/main/res/xml/preferences.xml | 9 ++++ 3 files changed, 55 insertions(+) create mode 100644 app/src/main/java/com/limelight/preferences/ConfirmDeleteOscPreference.java diff --git a/app/src/main/java/com/limelight/preferences/ConfirmDeleteOscPreference.java b/app/src/main/java/com/limelight/preferences/ConfirmDeleteOscPreference.java new file mode 100644 index 00000000..fecc5b29 --- /dev/null +++ b/app/src/main/java/com/limelight/preferences/ConfirmDeleteOscPreference.java @@ -0,0 +1,41 @@ +package com.limelight.preferences; + +import android.annotation.TargetApi; +import android.content.Context; +import android.content.DialogInterface; +import android.content.SharedPreferences; +import android.os.Build; +import android.preference.DialogPreference; +import android.util.AttributeSet; +import android.widget.Toast; + +import com.limelight.R; + +import static com.limelight.binding.input.virtual_controller.VirtualControllerConfigurationLoader.OSC_PREFERENCE; + +public class ConfirmDeleteOscPreference extends DialogPreference { + @TargetApi(Build.VERSION_CODES.LOLLIPOP) + public ConfirmDeleteOscPreference(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) { + super(context, attrs, defStyleAttr, defStyleRes); + } + + public ConfirmDeleteOscPreference(Context context, AttributeSet attrs, int defStyleAttr) { + super(context, attrs, defStyleAttr); + } + + public ConfirmDeleteOscPreference(Context context, AttributeSet attrs) { + super(context, attrs); + } + + @TargetApi(Build.VERSION_CODES.LOLLIPOP) + public ConfirmDeleteOscPreference(Context context) { + super(context); + } + + public void onClick(DialogInterface dialog, int which) { + if (which == DialogInterface.BUTTON_POSITIVE) { + getContext().getSharedPreferences(OSC_PREFERENCE, Context.MODE_PRIVATE).edit().clear().apply(); + Toast.makeText(getContext(), R.string.toast_reset_osc_success, Toast.LENGTH_SHORT).show(); + } + } +} diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index a85d0cc1..9a80f4e0 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -136,6 +136,11 @@ Show virtual controller overlay on touchscreen Only show L3 and R3 Hide all virtual buttons except L3 and R3 + Clear saved on-screen controls layout + Resets all on-screen controls to their default size and position + Reset Layout + Are you sure you want to delete your saved on-screen controls layout? + On-screen controls reset to default UI Settings Language diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml index 4bd452cc..5590d474 100644 --- a/app/src/main/res/xml/preferences.xml +++ b/app/src/main/res/xml/preferences.xml @@ -84,6 +84,15 @@ android:key="checkbox_only_show_L3R3" android:summary="@string/summary_only_l3r3" android:title="@string/title_only_l3r3" /> + +