~singpolyma/cheogram-android

cd319fd1071c627477938f0b30ef2b8bdc14289e — Stephen Paul Weber 3 months ago 56ffe4f
Option to clear blocked media
M src/main/java/eu/siacs/conversations/persistance/DatabaseBackend.java => src/main/java/eu/siacs/conversations/persistance/DatabaseBackend.java +5 -0
@@ 801,6 801,11 @@ public class DatabaseBackend extends SQLiteOpenHelper {
        return is;
    }

    public void clearBlockedMedia() {
        SQLiteDatabase db = this.getWritableDatabase();
        db.execSQL("DELETE FROM cheogram.blocked_media");
    }

    public void createConversation(Conversation conversation) {
        SQLiteDatabase db = this.getWritableDatabase();
        db.insert(Conversation.TABLENAME, null, conversation.getContentValues());

M src/main/java/eu/siacs/conversations/services/XmppConnectionService.java => src/main/java/eu/siacs/conversations/services/XmppConnectionService.java +4 -0
@@ 581,6 581,10 @@ public class XmppConnectionService extends Service {
        this.databaseBackend.blockMedia(cid);
    }

    public void clearBlockedMedia() {
        this.databaseBackend.clearBlockedMedia();
    }

    public AvatarService getAvatarService() {
        return this.mAvatarService;
    }

M src/main/java/eu/siacs/conversations/ui/SettingsActivity.java => src/main/java/eu/siacs/conversations/ui/SettingsActivity.java +9 -0
@@ 385,6 385,15 @@ public class SettingsActivity extends XmppActivity implements OnSharedPreference
            });
        }

        final Preference clearBlockedMedia = mSettingsFragment.findPreference("clear_blocked_media");
        if (clearBlockedMedia != null) {
            clearBlockedMedia.setOnPreferenceClickListener((p) -> {
                xmppConnectionService.clearBlockedMedia();
                displayToast("Blocked media will be displayed again.");
                return true;
            });
        }

        final String theTheme = PreferenceManager.getDefaultSharedPreferences(this).getString(THEME, "");
        if (Build.VERSION.SDK_INT < 30 || !theTheme.equals("custom")) {
            final PreferenceCategory uiCategory = (PreferenceCategory) mSettingsFragment.findPreference("ui");

M src/main/res/xml/preferences.xml => src/main/res/xml/preferences.xml +3 -0
@@ 370,6 370,9 @@
                <Preference
                    android:title="Change Stickers Location"
                    android:key="sticker_directory" />
                <Preference
                    android:title="Clear Blocked Media"
                    android:key="clear_blocked_media" />
            </PreferenceCategory>
            <PreferenceCategory android:title="@string/pref_presence_settings">
                <CheckBoxPreference