Make YouTube link previews opt-in#138
Conversation
RankoR
left a comment
There was a problem hiding this comment.
@thomasbuilds it should be configurable in settings (off by default), not fully removed
I suggest adding a sub-screen - "Privacy" and add it there as a toggle, with a short description that enabling it may reduce privacy
|
I don't see any reason to special-case this third-party website? |
|
@thomasbuilds it might be extended to other services in the future, especially if we manage to make RCS work one day. Plus, it's a pre-existing and compact (in terms of LoC) feature that improves UX (for those who want to keep it turned on), there's no reason to remove it if it will be opt-in. But I agree that having it on by default (especially without the ability to turn it off) is a privacy issue. |
RankoR
left a comment
There was a problem hiding this comment.
Production combines the repository preference with conversation messages and forwards it into every mapped message in ConversationMessagesDelegate.kt lines 134–164 (
But ConversationMessagesDelegateImplTest (https://github.com/GrapheneOS/Messaging/blob/c359552bbab06ecde93bb829220ffc8386fa63c2/app/src/test/kotlin/com/android/messaging/ui/conversation/messages/delegate/ConversationMessagesDelegateImplTest.kt) only adds the new repository mock to the constructor; it does not test this behavior.
Please add a focused coroutine test that binds the delegate, returns false and then true from isYouTubeLinkPreviewsEnabled(), triggers refresh(), and verifies the mapper receives the corresponding value.
The rest looks good.
|
This can't be merged without a rebase. |
The conversation screen auto-fetches YouTube thumbnails from img.youtube.com as soon as a conversation containing a YouTube link is viewed, disclosing the viewer's IP address and read time to Google with no opt-out. Gate the feature behind a new YouTube link previews toggle in a Privacy settings sub-screen, disabled by default. The preference is re-read when the conversation screen is foregrounded, so toggling it applies to open conversations without reopening them.
The conversation screen auto-fetches YouTube thumbnails from img.youtube.com as soon as a conversation containing a YouTube link is viewed, disclosing the viewer's IP address and read time to Google with no opt-out. Gate the feature behind a new YouTube link previews toggle in a Privacy settings sub-screen, disabled by default. The preference is re-read when the conversation screen is foregrounded, so toggling it applies to open conversations without reopening them.