custom-selector: adds a button to delete the current folder in custom selector (#5925)

* Issue #5811: "Delete folder" menu in custom image selector

* Issue 5811: folder deletion for api < 29.

* Issue 5811: folder deletion for api < 29.

* Issue 5811: folder deletion for api 29.

* Issue 5811: folder deletion

* Issue 5811: fixes merge conflicts, replaces used function onActivityResult with an ActivityResultLauncher

* Update Constants.java

---------

Co-authored-by: Nicolas Raoul <nicolas.raoul@gmail.com>
This commit is contained in:
StrawberryShortcake 2024-11-13 14:11:38 +01:00 committed by GitHub
parent 17a8845dfd
commit 634bc3ede1
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 447 additions and 12 deletions

View file

@ -12,6 +12,7 @@ import android.net.Uri;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
@ -59,6 +60,7 @@ import java.util.Locale;
import java.util.Map;
import javax.inject.Inject;
import javax.inject.Named;
import timber.log.Timber;
public class SettingsFragment extends PreferenceFragmentCompat {
@ -81,6 +83,7 @@ public class SettingsFragment extends PreferenceFragmentCompat {
private ListPreference themeListPreference;
private Preference descriptionLanguageListPreference;
private Preference appUiLanguageListPreference;
private Preference showDeletionButtonPreference;
private String keyLanguageListPreference;
private TextView recentLanguagesTextView;
private View separator;
@ -188,6 +191,18 @@ public class SettingsFragment extends PreferenceFragmentCompat {
}
});
//
showDeletionButtonPreference = findPreference("displayDeletionButton");
if (showDeletionButtonPreference != null) {
showDeletionButtonPreference.setOnPreferenceChangeListener((preference, newValue) -> {
boolean isEnabled = (boolean) newValue;
// Save preference when user toggles the button
defaultKvStore.putBoolean("displayDeletionButton", isEnabled);
return true;
});
}
Preference betaTesterPreference = findPreference("becomeBetaTester");
betaTesterPreference.setOnPreferenceClickListener(preference -> {
Utils.handleWebUrl(getActivity(), Uri.parse(getResources().getString(R.string.beta_opt_in_link)));