mirror of
https://github.com/SchildiChat/SchildiChat-android.git
synced 2025-02-09 08:38:43 +01:00
Add missing push rules
This commit is contained in:
parent
8a2bafec5f
commit
551604cdcb
@ -148,6 +148,11 @@ data class PushRule(
|
||||
const val RULE_ID_CALL = ".m.rule.call"
|
||||
const val RULE_ID_SUPPRESS_BOTS_NOTIFICATIONS = ".m.rule.suppress_notices"
|
||||
const val RULE_ID_ALL_OTHER_MESSAGES_ROOMS = ".m.rule.message"
|
||||
const val RULE_ID_AT_ROOMS = ".m.rule.roomnotif"
|
||||
const val RULE_ID_TOMBSTONE = ".m.rule.tombstone"
|
||||
const val RULE_ID_E2E_ONE_TO_ONE_ROOM = ".m.rule.encrypted_room_one_to_one"
|
||||
const val RULE_ID_E2E_GROUP = ".m.rule.encrypted"
|
||||
const val RULE_ID_REACTION = ".m.rule.reaction"
|
||||
const val RULE_ID_FALLBACK = ".m.rule.fallback"
|
||||
|
||||
/* ==========================================================================================
|
||||
|
@ -121,6 +121,10 @@ class VectorPreferences @Inject constructor(private val context: Context) {
|
||||
const val SETTINGS_MESSAGES_IN_GROUP_CHAT_PREFERENCE_KEY = "SETTINGS_MESSAGES_IN_GROUP_CHAT_PREFERENCE_KEY_2"
|
||||
const val SETTINGS_INVITED_TO_ROOM_PREFERENCE_KEY = "SETTINGS_INVITED_TO_ROOM_PREFERENCE_KEY_2"
|
||||
const val SETTINGS_CALL_INVITATIONS_PREFERENCE_KEY = "SETTINGS_CALL_INVITATIONS_PREFERENCE_KEY_2"
|
||||
const val SETTINGS_MESSAGES_CONTAINING_AT_ROOM_PREFERENCE_KEY = "SETTINGS_MESSAGES_CONTAINING_AT_ROOM_PREFERENCE_KEY"
|
||||
const val SETTINGS_MESSAGES_IN_E2E_ONE_ONE_CHAT_PREFERENCE_KEY = "SETTINGS_MESSAGES_IN_E2E_ONE_ONE_CHAT_PREFERENCE_KEY"
|
||||
const val SETTINGS_MESSAGES_IN_E2E_GROUP_CHAT_PREFERENCE_KEY = "SETTINGS_MESSAGES_IN_E2E_GROUP_CHAT_PREFERENCE_KEY"
|
||||
const val SETTINGS_ROOMS_UPGRADED_KEY = "SETTINGS_ROOMS_UPGRADED_KEY"
|
||||
|
||||
// media
|
||||
private const val SETTINGS_DEFAULT_MEDIA_COMPRESSION_KEY = "SETTINGS_DEFAULT_MEDIA_COMPRESSION_KEY"
|
||||
|
@ -118,23 +118,27 @@ class VectorSettingsAdvancedNotificationPreferenceFragment @Inject constructor(
|
||||
if (newRule != null) {
|
||||
displayLoadingView()
|
||||
|
||||
session.updatePushRuleActions(ruleAndKind.kind, preference.ruleAndKind?.pushRule ?: ruleAndKind.pushRule, newRule, object : MatrixCallback<Unit> {
|
||||
override fun onSuccess(data: Unit) {
|
||||
if (!isAdded) {
|
||||
return
|
||||
}
|
||||
preference.setPushRule(ruleAndKind.copy(pushRule = newRule))
|
||||
hideLoadingView()
|
||||
}
|
||||
session.updatePushRuleActions(
|
||||
ruleAndKind.kind,
|
||||
preference.ruleAndKind?.pushRule ?: ruleAndKind.pushRule,
|
||||
newRule,
|
||||
object : MatrixCallback<Unit> {
|
||||
override fun onSuccess(data: Unit) {
|
||||
if (!isAdded) {
|
||||
return
|
||||
}
|
||||
preference.setPushRule(ruleAndKind.copy(pushRule = newRule))
|
||||
hideLoadingView()
|
||||
}
|
||||
|
||||
override fun onFailure(failure: Throwable) {
|
||||
if (!isAdded) {
|
||||
return
|
||||
}
|
||||
hideLoadingView()
|
||||
activity?.toast(errorFormatter.toHumanReadable(failure))
|
||||
}
|
||||
})
|
||||
override fun onFailure(failure: Throwable) {
|
||||
if (!isAdded) {
|
||||
return
|
||||
}
|
||||
hideLoadingView()
|
||||
activity?.toast(errorFormatter.toHumanReadable(failure))
|
||||
}
|
||||
})
|
||||
}
|
||||
false
|
||||
}
|
||||
@ -216,14 +220,18 @@ class VectorSettingsAdvancedNotificationPreferenceFragment @Inject constructor(
|
||||
private const val REQUEST_NOTIFICATION_RINGTONE = 888
|
||||
|
||||
// preference name <-> rule Id
|
||||
private var mPrefKeyToBingRuleId = mapOf(
|
||||
private val mPrefKeyToBingRuleId = mapOf(
|
||||
VectorPreferences.SETTINGS_CONTAINING_MY_DISPLAY_NAME_PREFERENCE_KEY to PushRule.RULE_ID_CONTAIN_DISPLAY_NAME,
|
||||
VectorPreferences.SETTINGS_CONTAINING_MY_USER_NAME_PREFERENCE_KEY to PushRule.RULE_ID_CONTAIN_USER_NAME,
|
||||
VectorPreferences.SETTINGS_MESSAGES_IN_ONE_TO_ONE_PREFERENCE_KEY to PushRule.RULE_ID_ONE_TO_ONE_ROOM,
|
||||
VectorPreferences.SETTINGS_MESSAGES_IN_GROUP_CHAT_PREFERENCE_KEY to PushRule.RULE_ID_ALL_OTHER_MESSAGES_ROOMS,
|
||||
VectorPreferences.SETTINGS_INVITED_TO_ROOM_PREFERENCE_KEY to PushRule.RULE_ID_INVITE_ME,
|
||||
VectorPreferences.SETTINGS_CALL_INVITATIONS_PREFERENCE_KEY to PushRule.RULE_ID_CALL,
|
||||
VectorPreferences.SETTINGS_MESSAGES_SENT_BY_BOT_PREFERENCE_KEY to PushRule.RULE_ID_SUPPRESS_BOTS_NOTIFICATIONS
|
||||
VectorPreferences.SETTINGS_MESSAGES_SENT_BY_BOT_PREFERENCE_KEY to PushRule.RULE_ID_SUPPRESS_BOTS_NOTIFICATIONS,
|
||||
VectorPreferences.SETTINGS_MESSAGES_CONTAINING_AT_ROOM_PREFERENCE_KEY to PushRule.RULE_ID_AT_ROOMS,
|
||||
VectorPreferences.SETTINGS_MESSAGES_IN_E2E_ONE_ONE_CHAT_PREFERENCE_KEY to PushRule.RULE_ID_E2E_ONE_TO_ONE_ROOM,
|
||||
VectorPreferences.SETTINGS_MESSAGES_IN_E2E_GROUP_CHAT_PREFERENCE_KEY to PushRule.RULE_ID_E2E_GROUP,
|
||||
VectorPreferences.SETTINGS_ROOMS_UPGRADED_KEY to PushRule.RULE_ID_TOMBSTONE
|
||||
)
|
||||
}
|
||||
}
|
||||
|
@ -12,6 +12,10 @@
|
||||
|
||||
<!-- BEGIN Strings added by Benoit -->
|
||||
<string name="settings_notification_configuration">Notifications configuration</string>
|
||||
<string name="settings_messages_at_room">Messages containing @room</string>
|
||||
<string name="settings_messages_in_e2e_one_to_one">Encrypted messages in one-to-one chats</string>
|
||||
<string name="settings_messages_in_e2e_group_chat">Encrypted messages in group chats</string>
|
||||
<string name="settings_when_rooms_are_upgraded">When rooms are upgraded</string>
|
||||
<!-- END Strings added by Benoit -->
|
||||
|
||||
|
||||
|
@ -14,14 +14,28 @@
|
||||
android:key="SETTINGS_CONTAINING_MY_USER_NAME_PREFERENCE_KEY_2"
|
||||
android:title="@string/settings_containing_my_user_name" />
|
||||
|
||||
<im.vector.riotx.core.preference.BingRulePreference
|
||||
android:key="SETTINGS_MESSAGES_CONTAINING_AT_ROOM_PREFERENCE_KEY"
|
||||
android:title="@string/settings_messages_at_room" />
|
||||
|
||||
<!-- TODO Support message with keywords rule -->
|
||||
|
||||
<im.vector.riotx.core.preference.BingRulePreference
|
||||
android:key="SETTINGS_MESSAGES_IN_ONE_TO_ONE_PREFERENCE_KEY_2"
|
||||
android:title="@string/settings_messages_in_one_to_one" />
|
||||
|
||||
<im.vector.riotx.core.preference.BingRulePreference
|
||||
android:key="SETTINGS_MESSAGES_IN_E2E_ONE_ONE_CHAT_PREFERENCE_KEY"
|
||||
android:title="@string/settings_messages_in_e2e_one_to_one" />
|
||||
|
||||
<im.vector.riotx.core.preference.BingRulePreference
|
||||
android:key="SETTINGS_MESSAGES_IN_GROUP_CHAT_PREFERENCE_KEY_2"
|
||||
android:title="@string/settings_messages_in_group_chat" />
|
||||
|
||||
<im.vector.riotx.core.preference.BingRulePreference
|
||||
android:key="SETTINGS_MESSAGES_IN_E2E_GROUP_CHAT_PREFERENCE_KEY"
|
||||
android:title="@string/settings_messages_in_e2e_group_chat" />
|
||||
|
||||
<im.vector.riotx.core.preference.BingRulePreference
|
||||
android:key="SETTINGS_INVITED_TO_ROOM_PREFERENCE_KEY_2"
|
||||
android:title="@string/settings_invited_to_room" />
|
||||
@ -34,6 +48,10 @@
|
||||
android:key="SETTINGS_MESSAGES_SENT_BY_BOT_PREFERENCE_KEY_2"
|
||||
android:title="@string/settings_messages_sent_by_bot" />
|
||||
|
||||
<im.vector.riotx.core.preference.BingRulePreference
|
||||
android:key="SETTINGS_ROOMS_UPGRADED_KEY"
|
||||
android:title="@string/settings_when_rooms_are_upgraded" />
|
||||
|
||||
</im.vector.riotx.core.preference.VectorPreferenceCategory>
|
||||
|
||||
<im.vector.riotx.core.preference.VectorPreferenceCategory
|
||||
|
Loading…
x
Reference in New Issue
Block a user