mirror of
https://codeberg.org/Bazsalanszky/Infinity-For-Lemmy.git
synced 2025-02-06 06:34:46 +01:00
Fix post filter usage not retain after saving the post filter again.
This commit is contained in:
parent
68d8aaf61d
commit
98a66a8bb7
@ -133,6 +133,7 @@ public class ParsePost {
|
|||||||
}
|
}
|
||||||
if (data.has(JSONUtils.CROSSPOST_PARENT_LIST)) {
|
if (data.has(JSONUtils.CROSSPOST_PARENT_LIST)) {
|
||||||
//Cross post
|
//Cross post
|
||||||
|
//data.getJSONArray(JSONUtils.CROSSPOST_PARENT_LIST).getJSONObject(0) out of bounds????????????
|
||||||
data = data.getJSONArray(JSONUtils.CROSSPOST_PARENT_LIST).getJSONObject(0);
|
data = data.getJSONArray(JSONUtils.CROSSPOST_PARENT_LIST).getJSONObject(0);
|
||||||
Post crosspostParent = parseBasicData(data);
|
Post crosspostParent = parseBasicData(data);
|
||||||
Post post = parseData(data, permalink, id, fullName, subredditName, subredditNamePrefixed,
|
Post post = parseData(data, permalink, id, fullName, subredditName, subredditNamePrefixed,
|
||||||
@ -227,7 +228,7 @@ public class ParsePost {
|
|||||||
|
|
||||||
JSONArray thumbnailPreviews = images.getJSONArray(JSONUtils.RESOLUTIONS_KEY);
|
JSONArray thumbnailPreviews = images.getJSONArray(JSONUtils.RESOLUTIONS_KEY);
|
||||||
for (int i = 0; i < thumbnailPreviews.length(); i++) {
|
for (int i = 0; i < thumbnailPreviews.length(); i++) {
|
||||||
JSONObject thumbnailPreview = images.getJSONArray(JSONUtils.RESOLUTIONS_KEY).getJSONObject(2);
|
JSONObject thumbnailPreview = images.getJSONArray(JSONUtils.RESOLUTIONS_KEY).getJSONObject(i);
|
||||||
String thumbnailPreviewUrl = thumbnailPreview.getString(JSONUtils.URL_KEY);
|
String thumbnailPreviewUrl = thumbnailPreview.getString(JSONUtils.URL_KEY);
|
||||||
int thumbnailPreviewWidth = thumbnailPreview.getInt(JSONUtils.WIDTH_KEY);
|
int thumbnailPreviewWidth = thumbnailPreview.getInt(JSONUtils.WIDTH_KEY);
|
||||||
int thumbnailPreviewHeight = thumbnailPreview.getInt(JSONUtils.HEIGHT_KEY);
|
int thumbnailPreviewHeight = thumbnailPreview.getInt(JSONUtils.HEIGHT_KEY);
|
||||||
|
@ -14,6 +14,9 @@ public interface PostFilterUsageDao {
|
|||||||
@Query("SELECT * FROM post_filter_usage WHERE name = :name")
|
@Query("SELECT * FROM post_filter_usage WHERE name = :name")
|
||||||
LiveData<List<PostFilterUsage>> getAllPostFilterUsageLiveData(String name);
|
LiveData<List<PostFilterUsage>> getAllPostFilterUsageLiveData(String name);
|
||||||
|
|
||||||
|
@Query("SELECT * FROM post_filter_usage WHERE name = :name")
|
||||||
|
List<PostFilterUsage> getAllPostFilterUsage(String name);
|
||||||
|
|
||||||
@Insert(onConflict = OnConflictStrategy.REPLACE)
|
@Insert(onConflict = OnConflictStrategy.REPLACE)
|
||||||
void insertPostFilterUsage(PostFilterUsage postFilterUsage);
|
void insertPostFilterUsage(PostFilterUsage postFilterUsage);
|
||||||
|
|
||||||
|
@ -2,6 +2,7 @@ package ml.docilealligator.infinityforreddit.postfilter;
|
|||||||
|
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
import java.util.concurrent.Executor;
|
import java.util.concurrent.Executor;
|
||||||
|
|
||||||
import ml.docilealligator.infinityforreddit.RedditDataRoomDatabase;
|
import ml.docilealligator.infinityforreddit.RedditDataRoomDatabase;
|
||||||
@ -19,10 +20,15 @@ public class SavePostFilter {
|
|||||||
redditDataRoomDatabase.postFilterDao().getPostFilter(postFilter.name) != null) {
|
redditDataRoomDatabase.postFilterDao().getPostFilter(postFilter.name) != null) {
|
||||||
handler.post(savePostFilterListener::duplicate);
|
handler.post(savePostFilterListener::duplicate);
|
||||||
} else {
|
} else {
|
||||||
|
List<PostFilterUsage> postFilterUsages = redditDataRoomDatabase.postFilterUsageDao().getAllPostFilterUsage(originalName);
|
||||||
if (!originalName.equals(postFilter.name)) {
|
if (!originalName.equals(postFilter.name)) {
|
||||||
redditDataRoomDatabase.postFilterDao().deletePostFilter(originalName);
|
redditDataRoomDatabase.postFilterDao().deletePostFilter(originalName);
|
||||||
}
|
}
|
||||||
redditDataRoomDatabase.postFilterDao().insert(postFilter);
|
redditDataRoomDatabase.postFilterDao().insert(postFilter);
|
||||||
|
for (PostFilterUsage postFilterUsage : postFilterUsages) {
|
||||||
|
postFilterUsage.name = postFilter.name;
|
||||||
|
redditDataRoomDatabase.postFilterUsageDao().insertPostFilterUsage(postFilterUsage);
|
||||||
|
}
|
||||||
handler.post(savePostFilterListener::success);
|
handler.post(savePostFilterListener::success);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -5,5 +5,5 @@
|
|||||||
android:viewportHeight="24">
|
android:viewportHeight="24">
|
||||||
<path
|
<path
|
||||||
android:pathData="M12,5.69l5,4.5V18h-2v-6H9v6H7v-7.81l5,-4.5M12,3L2,12h3v8h6v-6h2v6h6v-8h3L12,3z"
|
android:pathData="M12,5.69l5,4.5V18h-2v-6H9v6H7v-7.81l5,-4.5M12,3L2,12h3v8h6v-6h2v6h6v-8h3L12,3z"
|
||||||
android:fillColor="#000000"/>
|
android:fillColor="#FFFFFF"/>
|
||||||
</vector>
|
</vector>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user