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