mirror of
https://github.com/rhunk/SnapEnhance.git
synced 2025-05-28 12:30:12 +02:00
feat(core): auto close friend feed menu
Automatically closes the Friend Feed Menu after pressing a setting button of SnapEnhance Signed-off-by: rhunk <101876869+rhunk@users.noreply.github.com>
This commit is contained in:
parent
5d2277db7c
commit
4beb63e7aa
@ -555,6 +555,10 @@
|
||||
"name": "Friend Feed Menu Buttons",
|
||||
"description": "Select which buttons to show in the Friend Feed Menu"
|
||||
},
|
||||
"auto_close_friend_feed_menu": {
|
||||
"name": "Auto Close Friend Feed Menu",
|
||||
"description": "Automatically closes the Friend Feed Menu after pressing a setting button"
|
||||
},
|
||||
"vertical_story_viewer": {
|
||||
"name": "Vertical Story Viewer",
|
||||
"description": "Enables the vertical story viewer for all stories"
|
||||
|
@ -57,6 +57,7 @@ class UserInterfaceTweaks : ConfigContainer() {
|
||||
).apply {
|
||||
set(mutableListOf("conversation_info", MessagingRuleType.STEALTH.key))
|
||||
}
|
||||
val autoCloseFriendFeedMenu = boolean("auto_close_friend_feed_menu")
|
||||
val customizeUi = container("customize_ui", CustomizeUIConfig()) { addNotices(FeatureNotice.UNSTABLE); requireRestart() }
|
||||
val friendFeedMessagePreview = container("friend_feed_message_preview", FriendFeedMessagePreview()) { requireRestart() }
|
||||
val snapPreview = boolean("snap_preview") { addNotices(FeatureNotice.UNSTABLE); requireRestart() }
|
||||
|
@ -384,6 +384,11 @@ class FriendFeedInfoMenu : AbstractMenu() {
|
||||
|
||||
val translation = context.translation.getCategory("friend_menu_option")
|
||||
|
||||
fun closeMenu() {
|
||||
if (!context.config.userInterface.autoCloseFriendFeedMenu.get()) return
|
||||
context.mainActivity?.triggerRootCloseTouchEvent()
|
||||
}
|
||||
|
||||
@Composable
|
||||
fun ComposeFriendFeedMenu() {
|
||||
Column(
|
||||
@ -418,7 +423,7 @@ class FriendFeedInfoMenu : AbstractMenu() {
|
||||
context.translation.format("rules.toasts.${if (state) "enabled" else "disabled"}", "ruleName" to context.translation[ruleFeature.ruleType.translateOptionKey(ruleState.key)]),
|
||||
durationMs = 1500
|
||||
)
|
||||
context.mainActivity?.triggerRootCloseTouchEvent()
|
||||
closeMenu()
|
||||
}
|
||||
|
||||
MenuElement(
|
||||
@ -446,7 +451,7 @@ class FriendFeedInfoMenu : AbstractMenu() {
|
||||
translation["mark_snaps_as_seen"],
|
||||
onClick = {
|
||||
context.apply {
|
||||
mainActivity?.triggerRootCloseTouchEvent()
|
||||
closeMenu()
|
||||
feature(AutoMarkAsRead::class).markSnapsAsSeen(conversationId)
|
||||
}
|
||||
}
|
||||
@ -462,7 +467,7 @@ class FriendFeedInfoMenu : AbstractMenu() {
|
||||
translation["mark_stories_as_seen_locally"],
|
||||
onClick = {
|
||||
context.apply {
|
||||
mainActivity?.triggerRootCloseTouchEvent()
|
||||
closeMenu()
|
||||
inAppOverlay.showStatusToast(
|
||||
Icons.Default.Info,
|
||||
if (database.setStoriesViewedState(targetUser!!, true)) markAsSeenTranslation["seen_toast"]
|
||||
@ -474,7 +479,7 @@ class FriendFeedInfoMenu : AbstractMenu() {
|
||||
onLongClick = {
|
||||
view.post {
|
||||
context.apply {
|
||||
mainActivity?.triggerRootCloseTouchEvent()
|
||||
closeMenu()
|
||||
inAppOverlay.showStatusToast(
|
||||
Icons.Default.Info,
|
||||
if (database.setStoriesViewedState(targetUser!!, false)) markAsSeenTranslation["unseen_toast"]
|
||||
|
Loading…
x
Reference in New Issue
Block a user