mirror of
https://codeberg.org/Bazsalanszky/Infinity-For-Lemmy.git
synced 2024-11-14 06:22:50 +01:00
Continue playing videos after orientation. Deleting all subreddits and users is now available in advanced settings.
This commit is contained in:
parent
a5a5e6dac2
commit
ea27af4080
@ -267,7 +267,8 @@
|
|||||||
<activity
|
<activity
|
||||||
android:name=".Activity.ViewVideoActivity"
|
android:name=".Activity.ViewVideoActivity"
|
||||||
android:parentActivityName=".Activity.MainActivity"
|
android:parentActivityName=".Activity.MainActivity"
|
||||||
android:theme="@style/AppTheme.ActionBar.Transparent" />
|
android:theme="@style/AppTheme.ActionBar.Transparent"
|
||||||
|
android:configChanges="orientation|screenSize|layoutDirection" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".Activity.ViewPostDetailActivity"
|
android:name=".Activity.ViewPostDetailActivity"
|
||||||
android:parentActivityName=".Activity.MainActivity"
|
android:parentActivityName=".Activity.MainActivity"
|
||||||
|
@ -46,6 +46,7 @@ import ml.docilealligator.infinityforreddit.Fragment.SubredditListingFragment;
|
|||||||
import ml.docilealligator.infinityforreddit.Fragment.SubscribedSubredditsListingFragment;
|
import ml.docilealligator.infinityforreddit.Fragment.SubscribedSubredditsListingFragment;
|
||||||
import ml.docilealligator.infinityforreddit.Fragment.UserListingFragment;
|
import ml.docilealligator.infinityforreddit.Fragment.UserListingFragment;
|
||||||
import ml.docilealligator.infinityforreddit.Service.SubmitPostService;
|
import ml.docilealligator.infinityforreddit.Service.SubmitPostService;
|
||||||
|
import ml.docilealligator.infinityforreddit.Settings.AdvancedPreferenceFragment;
|
||||||
import ml.docilealligator.infinityforreddit.Settings.GesturesAndButtonsPreferenceFragment;
|
import ml.docilealligator.infinityforreddit.Settings.GesturesAndButtonsPreferenceFragment;
|
||||||
import ml.docilealligator.infinityforreddit.Settings.MainPreferenceFragment;
|
import ml.docilealligator.infinityforreddit.Settings.MainPreferenceFragment;
|
||||||
import ml.docilealligator.infinityforreddit.Settings.NotificationPreferenceFragment;
|
import ml.docilealligator.infinityforreddit.Settings.NotificationPreferenceFragment;
|
||||||
@ -149,4 +150,6 @@ public interface AppComponent {
|
|||||||
void inject(CustomThemeListingActivity customThemeListingActivity);
|
void inject(CustomThemeListingActivity customThemeListingActivity);
|
||||||
|
|
||||||
void inject(SidebarFragment sidebarFragment);
|
void inject(SidebarFragment sidebarFragment);
|
||||||
|
|
||||||
|
void inject(AdvancedPreferenceFragment advancedPreferenceFragment);
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,33 @@
|
|||||||
|
package ml.docilealligator.infinityforreddit.AsyncTask;
|
||||||
|
|
||||||
|
import android.os.AsyncTask;
|
||||||
|
|
||||||
|
import ml.docilealligator.infinityforreddit.RedditDataRoomDatabase;
|
||||||
|
|
||||||
|
public class DeleteAllSubredditsAsyncTask extends AsyncTask<Void, Void, Void> {
|
||||||
|
|
||||||
|
private RedditDataRoomDatabase redditDataRoomDatabase;
|
||||||
|
private DeleteAllSubredditsAsyncTaskListener deleteAllSubredditsAsyncTaskListener;
|
||||||
|
|
||||||
|
public interface DeleteAllSubredditsAsyncTaskListener {
|
||||||
|
void success();
|
||||||
|
}
|
||||||
|
|
||||||
|
public DeleteAllSubredditsAsyncTask(RedditDataRoomDatabase redditDataRoomDatabase,
|
||||||
|
DeleteAllSubredditsAsyncTaskListener deleteAllSubredditsAsyncTaskListener) {
|
||||||
|
this.redditDataRoomDatabase = redditDataRoomDatabase;
|
||||||
|
this.deleteAllSubredditsAsyncTaskListener = deleteAllSubredditsAsyncTaskListener;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected Void doInBackground(Void... voids) {
|
||||||
|
redditDataRoomDatabase.subredditDao().deleteAllSubreddits();
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onPostExecute(Void aVoid) {
|
||||||
|
super.onPostExecute(aVoid);
|
||||||
|
deleteAllSubredditsAsyncTaskListener.success();
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,33 @@
|
|||||||
|
package ml.docilealligator.infinityforreddit.AsyncTask;
|
||||||
|
|
||||||
|
import android.os.AsyncTask;
|
||||||
|
|
||||||
|
import ml.docilealligator.infinityforreddit.RedditDataRoomDatabase;
|
||||||
|
|
||||||
|
public class DeleteAllUsersAsyncTask extends AsyncTask<Void, Void, Void> {
|
||||||
|
|
||||||
|
private RedditDataRoomDatabase redditDataRoomDatabase;
|
||||||
|
private DeleteAllUsersAsyncTaskListener deleteAllUsersAsyncTaskListener;
|
||||||
|
|
||||||
|
public interface DeleteAllUsersAsyncTaskListener {
|
||||||
|
void success();
|
||||||
|
}
|
||||||
|
|
||||||
|
public DeleteAllUsersAsyncTask(RedditDataRoomDatabase redditDataRoomDatabase,
|
||||||
|
DeleteAllUsersAsyncTaskListener deleteAllUsersAsyncTaskListener) {
|
||||||
|
this.redditDataRoomDatabase = redditDataRoomDatabase;
|
||||||
|
this.deleteAllUsersAsyncTaskListener = deleteAllUsersAsyncTaskListener;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected Void doInBackground(Void... voids) {
|
||||||
|
redditDataRoomDatabase.userDao().deleteAllUsers();
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onPostExecute(Void aVoid) {
|
||||||
|
super.onPostExecute(aVoid);
|
||||||
|
deleteAllUsersAsyncTaskListener.success();
|
||||||
|
}
|
||||||
|
}
|
@ -1,12 +1,25 @@
|
|||||||
package ml.docilealligator.infinityforreddit.Settings;
|
package ml.docilealligator.infinityforreddit.Settings;
|
||||||
|
|
||||||
|
import android.app.Activity;
|
||||||
|
import android.content.Context;
|
||||||
|
import android.content.SharedPreferences;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
|
import android.widget.Toast;
|
||||||
|
|
||||||
|
import androidx.annotation.NonNull;
|
||||||
|
import androidx.appcompat.app.AppCompatActivity;
|
||||||
import androidx.fragment.app.Fragment;
|
import androidx.fragment.app.Fragment;
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.PreferenceFragmentCompat;
|
import androidx.preference.PreferenceFragmentCompat;
|
||||||
|
|
||||||
|
import javax.inject.Inject;
|
||||||
|
import javax.inject.Named;
|
||||||
|
|
||||||
|
import ml.docilealligator.infinityforreddit.AsyncTask.DeleteAllSubredditsAsyncTask;
|
||||||
|
import ml.docilealligator.infinityforreddit.AsyncTask.DeleteAllUsersAsyncTask;
|
||||||
|
import ml.docilealligator.infinityforreddit.Infinity;
|
||||||
import ml.docilealligator.infinityforreddit.R;
|
import ml.docilealligator.infinityforreddit.R;
|
||||||
|
import ml.docilealligator.infinityforreddit.RedditDataRoomDatabase;
|
||||||
import ml.docilealligator.infinityforreddit.Utils.SharedPreferencesUtils;
|
import ml.docilealligator.infinityforreddit.Utils.SharedPreferencesUtils;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -14,13 +27,56 @@ import ml.docilealligator.infinityforreddit.Utils.SharedPreferencesUtils;
|
|||||||
*/
|
*/
|
||||||
public class AdvancedPreferenceFragment extends PreferenceFragmentCompat {
|
public class AdvancedPreferenceFragment extends PreferenceFragmentCompat {
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
RedditDataRoomDatabase mRedditDataRoomDatabase;
|
||||||
|
@Inject
|
||||||
|
@Named("default")
|
||||||
|
SharedPreferences mSharedPreferences;
|
||||||
|
private Activity activity;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
|
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
|
||||||
setPreferencesFromResource(R.xml.advanced_preferences, rootKey);
|
setPreferencesFromResource(R.xml.advanced_preferences, rootKey);
|
||||||
|
|
||||||
|
((Infinity) activity.getApplication()).getAppComponent().inject(this);
|
||||||
|
|
||||||
Preference deleteSubredditsPreference = findPreference(SharedPreferencesUtils.DELETE_ALL_SUBREDDITS_DATA_IN_DATABASE);
|
Preference deleteSubredditsPreference = findPreference(SharedPreferencesUtils.DELETE_ALL_SUBREDDITS_DATA_IN_DATABASE);
|
||||||
Preference deleteUsersPreference = findPreference(SharedPreferencesUtils.DELETE_ALL_USERS_DATA_IN_DATABASE);
|
Preference deleteUsersPreference = findPreference(SharedPreferencesUtils.DELETE_ALL_USERS_DATA_IN_DATABASE);
|
||||||
Preference deleteSortTypePreference = findPreference(SharedPreferencesUtils.DELETE_ALL_SORT_TYPE_DATA_IN_DATABASE);
|
Preference deleteSortTypePreference = findPreference(SharedPreferencesUtils.DELETE_ALL_SORT_TYPE_DATA_IN_DATABASE);
|
||||||
Preference deletePostLaoutPreference = findPreference(SharedPreferencesUtils.DELETE_ALL_POST_LAYOUT_DATA_IN_DATABASE);
|
Preference deletePostLaoutPreference = findPreference(SharedPreferencesUtils.DELETE_ALL_POST_LAYOUT_DATA_IN_DATABASE);
|
||||||
|
|
||||||
|
deleteSubredditsPreference.setOnPreferenceClickListener(preference -> {
|
||||||
|
new DeleteAllSubredditsAsyncTask(mRedditDataRoomDatabase,
|
||||||
|
() -> Toast.makeText(activity, R.string.delete_all_subreddits_success, Toast.LENGTH_SHORT).show()).execute();
|
||||||
|
return true;
|
||||||
|
});
|
||||||
|
|
||||||
|
deleteUsersPreference.setOnPreferenceClickListener(preference -> {
|
||||||
|
new DeleteAllUsersAsyncTask(mRedditDataRoomDatabase,
|
||||||
|
() -> Toast.makeText(activity, R.string.delete_all_users_success, Toast.LENGTH_SHORT).show()).execute();
|
||||||
|
return true;
|
||||||
|
});
|
||||||
|
|
||||||
|
deleteSortTypePreference.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
|
||||||
|
@Override
|
||||||
|
public boolean onPreferenceClick(Preference preference) {
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
deletePostLaoutPreference.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
|
||||||
|
@Override
|
||||||
|
public boolean onPreferenceClick(Preference preference) {
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onAttach(@NonNull Context context) {
|
||||||
|
super.onAttach(context);
|
||||||
|
activity = (AppCompatActivity) context;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -643,7 +643,7 @@
|
|||||||
<string name="color_picker">Color Picker</string>
|
<string name="color_picker">Color Picker</string>
|
||||||
<string name="invalid_color">Invalid Color</string>
|
<string name="invalid_color">Invalid Color</string>
|
||||||
|
|
||||||
<!-- TODO: Remove or change this placeholder text -->
|
<string name="delete_all_subreddits_success">Delete all subreddits successful</string>
|
||||||
<string name="hello_blank_fragment">Hello blank fragment</string>
|
<string name="delete_all_users_success">Delete all users successful</string>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
Loading…
Reference in New Issue
Block a user