ios: fix XCode 16 regressions (tap not working on files, quotes, images, voice messages, etc.), open link previews on tap (#5880)

* ios: fix XCode 16 regressions (tap not working on files, quotes, images, voice messages, etc.), open link previews on tap

* fix voice recording

* fix video, accepting calls from chat, preference toggles in chat

* WIP message and meta

* handle links in attributed strings

* custom attribute for links to prevent race conditions with default tap handler
This commit is contained in:
Evgeny
2025-05-10 14:37:45 +01:00
committed by GitHub
parent 5f56f61c36
commit 4b42a19ccb
28 changed files with 461 additions and 420 deletions
-10
View File
@@ -25,8 +25,6 @@ data NotificationPreviewMode = NPMHidden | NPMContact | NPMMessage deriving (Sho
data LockScreenCalls = LSCDisable | LSCShow | LSCAccept deriving (Show)
data OpenLinksSetting = OLSYes | OLSNo | OLSAsk deriving (Show)
data AppSettings = AppSettings
{ appPlatform :: Maybe AppPlatform,
networkConfig :: Maybe NetworkConfig,
@@ -35,7 +33,6 @@ data AppSettings = AppSettings
privacyAskToApproveRelays :: Maybe Bool,
privacyAcceptImages :: Maybe Bool,
privacyLinkPreviews :: Maybe Bool,
privacyChatListOpenLinks :: Maybe OpenLinksSetting,
privacyShowChatPreviews :: Maybe Bool,
privacySaveLastDraft :: Maybe Bool,
privacyProtectScreen :: Maybe Bool,
@@ -86,7 +83,6 @@ defaultAppSettings =
privacyAskToApproveRelays = Just True,
privacyAcceptImages = Just True,
privacyLinkPreviews = Just True,
privacyChatListOpenLinks = Just OLSAsk,
privacyShowChatPreviews = Just True,
privacySaveLastDraft = Just True,
privacyProtectScreen = Just False,
@@ -124,7 +120,6 @@ defaultParseAppSettings =
privacyAskToApproveRelays = Nothing,
privacyAcceptImages = Nothing,
privacyLinkPreviews = Nothing,
privacyChatListOpenLinks = Nothing,
privacyShowChatPreviews = Nothing,
privacySaveLastDraft = Nothing,
privacyProtectScreen = Nothing,
@@ -162,7 +157,6 @@ combineAppSettings platformDefaults storedSettings =
privacyAskToApproveRelays = p privacyAskToApproveRelays,
privacyAcceptImages = p privacyAcceptImages,
privacyLinkPreviews = p privacyLinkPreviews,
privacyChatListOpenLinks = p privacyChatListOpenLinks,
privacyShowChatPreviews = p privacyShowChatPreviews,
privacySaveLastDraft = p privacySaveLastDraft,
privacyProtectScreen = p privacyProtectScreen,
@@ -203,8 +197,6 @@ $(JQ.deriveJSON (enumJSON $ dropPrefix "LSC") ''LockScreenCalls)
$(JQ.deriveJSON (enumJSON $ dropPrefix "NPA") ''NetworkProxyAuth)
$(JQ.deriveJSON (enumJSON $ dropPrefix "OLS") ''OpenLinksSetting)
$(JQ.deriveJSON defaultJSON ''NetworkProxy)
$(JQ.deriveToJSON defaultJSON ''AppSettings)
@@ -218,7 +210,6 @@ instance FromJSON AppSettings where
privacyAskToApproveRelays <- p "privacyAskToApproveRelays"
privacyAcceptImages <- p "privacyAcceptImages"
privacyLinkPreviews <- p "privacyLinkPreviews"
privacyChatListOpenLinks <- p "privacyChatListOpenLinks"
privacyShowChatPreviews <- p "privacyShowChatPreviews"
privacySaveLastDraft <- p "privacySaveLastDraft"
privacyProtectScreen <- p "privacyProtectScreen"
@@ -253,7 +244,6 @@ instance FromJSON AppSettings where
privacyAskToApproveRelays,
privacyAcceptImages,
privacyLinkPreviews,
privacyChatListOpenLinks,
privacyShowChatPreviews,
privacySaveLastDraft,
privacyProtectScreen,