Migrate preferences to AndroidX

This commit is contained in:
TacoTheDank
2020-12-26 19:05:18 -05:00
parent 191e22db65
commit 22fbbd3341
7 changed files with 67 additions and 34 deletions

View File

@@ -41,7 +41,7 @@ public class AboutActivity extends AppCompatActivity
.put("ZXing", "https://github.com/zxing/zxing")
.put("ZXing Android Embedded", "https://github.com/journeyapps/zxing-android-embedded")
.put("Color Picker", "https://github.com/jaredrummler/ColorPicker")
.put("VNTNumberPickerPreference", "https://github.com/vanniktech/VNTNumberPickerPreference")
.put("NumberPickerPreference", "https://github.com/invissvenska/NumberPickerPreference")
.build();
final Map<String, String> USED_ASSETS = ImmutableMap.of

View File

@@ -2,7 +2,7 @@ package protect.card_locker.preferences;
import android.content.Context;
import android.content.SharedPreferences;
import android.preference.PreferenceManager;
import androidx.preference.PreferenceManager;
import androidx.annotation.IntegerRes;
import androidx.annotation.StringRes;
import androidx.appcompat.app.AppCompatDelegate;

View File

@@ -1,13 +1,16 @@
package protect.card_locker.preferences;
import android.os.Bundle;
import android.preference.Preference;
import android.preference.PreferenceFragment;
import androidx.fragment.app.DialogFragment;
import androidx.preference.Preference;
import androidx.preference.PreferenceFragmentCompat;
import androidx.appcompat.app.ActionBar;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.app.AppCompatDelegate;
import android.view.MenuItem;
import nl.invissvenska.numberpickerpreference.NumberDialogPreference;
import nl.invissvenska.numberpickerpreference.NumberPickerPreferenceDialogFragment;
import protect.card_locker.R;
public class SettingsActivity extends AppCompatActivity
@@ -24,7 +27,7 @@ public class SettingsActivity extends AppCompatActivity
}
// Display the fragment as the main content.
getFragmentManager().beginTransaction()
getSupportFragmentManager().beginTransaction()
.replace(android.R.id.content, new SettingsFragment())
.commit();
}
@@ -43,13 +46,12 @@ public class SettingsActivity extends AppCompatActivity
return super.onOptionsItemSelected(item);
}
public static class SettingsFragment extends PreferenceFragment
public static class SettingsFragment extends PreferenceFragmentCompat
{
private static final String DIALOG_FRAGMENT_TAG = "SettingsFragment";
@Override
public void onCreate(final Bundle savedInstanceState)
public void onCreatePreferences(Bundle savedInstanceState, String rootKey)
{
super.onCreate(savedInstanceState);
// Load the preferences from an XML resource
addPreferencesFromResource(R.xml.preferences);
@@ -76,6 +78,28 @@ public class SettingsActivity extends AppCompatActivity
}
});
}
@Override
public void onDisplayPreferenceDialog(Preference preference)
{
if (preference instanceof NumberDialogPreference)
{
NumberDialogPreference dialogPreference = (NumberDialogPreference) preference;
DialogFragment dialogFragment = NumberPickerPreferenceDialogFragment
.newInstance(
dialogPreference.getKey(),
dialogPreference.getMinValue(),
dialogPreference.getMaxValue(),
dialogPreference.getUnitText()
);
dialogFragment.setTargetFragment(this, 0);
dialogFragment.show(getParentFragmentManager(), DIALOG_FRAGMENT_TAG);
}
else
{
super.onDisplayPreferenceDialog(preference);
}
}
}
}

View File

@@ -4,52 +4,60 @@
xmlns:app="http://schemas.android.com/apk/res-auto">
<PreferenceCategory
android:title="@string/settings_category_title_ui">
android:title="@string/settings_category_title_ui"
app:iconSpaceReserved="false">
<ListPreference
android:key="@string/settings_key_theme"
android:title="@string/settings_theme"
android:defaultValue="@string/settings_key_system_theme"
android:entries="@array/theme_value_strings"
android:entryValues="@array/theme_values"/>
android:entryValues="@array/theme_values"
app:iconSpaceReserved="false" />
<com.vanniktech.vntnumberpickerpreference.VNTNumberPickerPreference
<nl.invissvenska.numberpickerpreference.NumberDialogPreference
android:key="@string/settings_key_card_title_list_font_size"
android:title="@string/settings_card_title_list_font_size"
android:defaultValue="@integer/settings_card_title_list_font_size_sp"
app:vnt_maxValue="@integer/settings_card_title_list_max_font_size_sp"
app:vnt_minValue="@integer/settings_card_title_list_min_font_size_sp" />
app:defaultValue="@integer/settings_card_title_list_font_size_sp"
app:numberPickerPreference_maxValue="@integer/settings_card_title_list_max_font_size_sp"
app:numberPickerPreference_minValue="@integer/settings_card_title_list_min_font_size_sp"
app:iconSpaceReserved="false" />
<com.vanniktech.vntnumberpickerpreference.VNTNumberPickerPreference
<nl.invissvenska.numberpickerpreference.NumberDialogPreference
android:key="@string/settings_key_card_note_list_font_size"
android:title="@string/settings_card_note_list_font_size"
android:defaultValue="@integer/settings_card_note_list_font_size_sp"
app:vnt_maxValue="@integer/settings_card_note_list_max_font_size_sp"
app:vnt_minValue="@integer/settings_card_note_list_min_font_size_sp" />
app:defaultValue="@integer/settings_card_note_list_font_size_sp"
app:numberPickerPreference_maxValue="@integer/settings_card_note_list_max_font_size_sp"
app:numberPickerPreference_minValue="@integer/settings_card_note_list_min_font_size_sp"
app:iconSpaceReserved="false" />
<com.vanniktech.vntnumberpickerpreference.VNTNumberPickerPreference
<nl.invissvenska.numberpickerpreference.NumberDialogPreference
android:key="@string/settings_key_card_title_font_size"
android:title="@string/settings_card_title_font_size"
android:defaultValue="@integer/settings_card_title_font_size_sp"
app:vnt_maxValue="@integer/settings_card_title_max_font_size_sp"
app:vnt_minValue="@integer/settings_card_title_min_font_size_sp"/>
app:defaultValue="@integer/settings_card_title_font_size_sp"
app:numberPickerPreference_maxValue="@integer/settings_card_title_max_font_size_sp"
app:numberPickerPreference_minValue="@integer/settings_card_title_min_font_size_sp"
app:iconSpaceReserved="false" />
<com.vanniktech.vntnumberpickerpreference.VNTNumberPickerPreference
<nl.invissvenska.numberpickerpreference.NumberDialogPreference
android:key="@string/settings_key_card_id_font_size"
android:title="@string/settings_card_id_font_size"
android:defaultValue="@integer/settings_card_id_font_size_sp"
app:vnt_maxValue="@integer/settings_card_id_max_font_size_sp"
app:vnt_minValue="@integer/settings_card_id_min_font_size_sp" />
app:defaultValue="@integer/settings_card_id_font_size_sp"
app:numberPickerPreference_maxValue="@integer/settings_card_id_max_font_size_sp"
app:numberPickerPreference_minValue="@integer/settings_card_id_min_font_size_sp"
app:iconSpaceReserved="false" />
<CheckBoxPreference
<SwitchPreferenceCompat
android:defaultValue="true"
android:key="@string/settings_key_display_barcode_max_brightness"
android:title="@string/settings_display_barcode_max_brightness"/>
android:title="@string/settings_display_barcode_max_brightness"
app:iconSpaceReserved="false" />
<CheckBoxPreference
<SwitchPreferenceCompat
android:defaultValue="false"
android:key="@string/settings_key_lock_barcode_orientation"
android:title="@string/settings_lock_barcode_orientation"/>
android:title="@string/settings_lock_barcode_orientation"
app:iconSpaceReserved="false" />
</PreferenceCategory>
</PreferenceScreen>

View File

@@ -4,7 +4,7 @@ import android.app.Activity;
import android.content.SharedPreferences;
import android.database.Cursor;
import android.graphics.Color;
import android.preference.PreferenceManager;
import androidx.preference.PreferenceManager;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;

View File

@@ -17,7 +17,7 @@ import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.net.Uri;
import android.os.Bundle;
import android.preference.PreferenceManager;
import androidx.preference.PreferenceManager;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;