feat(core): remove groups locked status
This commit is contained in:
@@ -461,6 +461,10 @@
|
||||
"bypass_message_retention_policy": {
|
||||
"name": "Bypass Message Retention Policy",
|
||||
"description": "Prevents messages from being deleted after viewing them"
|
||||
},
|
||||
"remove_groups_locked_status": {
|
||||
"name": "Remove Groups Locked Status",
|
||||
"description": "Allows you to view group information after being kicked"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
@@ -80,4 +80,5 @@ class MessagingTweaks : ConfigContainer() {
|
||||
val galleryMediaSendOverride = boolean("gallery_media_send_override") { nativeHooks() }
|
||||
val stripMediaMetadata = multiple("strip_media_metadata", "hide_caption_text", "hide_snap_filters", "hide_extras", "remove_audio_note_duration", "remove_audio_note_transcript_capability") { requireRestart() }
|
||||
val bypassMessageRetentionPolicy = boolean("bypass_message_retention_policy") { addNotices(FeatureNotice.UNSTABLE); requireRestart() }
|
||||
val removeGroupsLockedStatus = boolean("remove_groups_locked_status") { requireRestart() }
|
||||
}
|
||||
@@ -16,11 +16,7 @@ import me.rhunk.snapenhance.core.features.impl.messaging.*
|
||||
import me.rhunk.snapenhance.core.features.impl.spying.HalfSwipeNotifier
|
||||
import me.rhunk.snapenhance.core.features.impl.spying.MessageLogger
|
||||
import me.rhunk.snapenhance.core.features.impl.spying.StealthMode
|
||||
import me.rhunk.snapenhance.core.features.impl.tweaks.BypassScreenshotDetection
|
||||
import me.rhunk.snapenhance.core.features.impl.tweaks.CameraTweaks
|
||||
import me.rhunk.snapenhance.core.features.impl.tweaks.DisablePermissionRequests
|
||||
import me.rhunk.snapenhance.core.features.impl.tweaks.PreventMessageListAutoScroll
|
||||
import me.rhunk.snapenhance.core.features.impl.tweaks.UnsaveableMessages
|
||||
import me.rhunk.snapenhance.core.features.impl.tweaks.*
|
||||
import me.rhunk.snapenhance.core.features.impl.ui.*
|
||||
import me.rhunk.snapenhance.core.logger.CoreLogger
|
||||
import me.rhunk.snapenhance.core.ui.menu.MenuViewInjector
|
||||
@@ -126,6 +122,7 @@ class FeatureManager(
|
||||
CallRecorder(),
|
||||
DisableMemoriesSnapFeed(),
|
||||
AccountSwitcher(),
|
||||
RemoveGroupsLockedStatus(),
|
||||
)
|
||||
|
||||
initializeFeatures()
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
package me.rhunk.snapenhance.core.features.impl.tweaks
|
||||
|
||||
import me.rhunk.snapenhance.core.features.Feature
|
||||
import me.rhunk.snapenhance.core.features.FeatureLoadParams
|
||||
import me.rhunk.snapenhance.core.util.dataBuilder
|
||||
import me.rhunk.snapenhance.core.util.hook.HookStage
|
||||
import me.rhunk.snapenhance.core.util.hook.hookConstructor
|
||||
|
||||
class RemoveGroupsLockedStatus : Feature("Remove Groups Locked Status", loadParams = FeatureLoadParams.ACTIVITY_CREATE_SYNC) {
|
||||
override fun onActivityCreate() {
|
||||
if (!context.config.messaging.removeGroupsLockedStatus.get()) return
|
||||
context.classCache.conversation.hookConstructor(HookStage.AFTER) { param ->
|
||||
param.thisObject<Any>().dataBuilder {
|
||||
set("mLockedState", "UNLOCKED")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user