{
  "id": 1613316,
  "title": "How Bluesky draws its logo on screenshots",
  "url": "https://urgent.news/2026/08/17/how-bluesky-draws-its-logo-on-screenshots-1613316",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-08-17T22:20:40.000Z",
  "source": {
    "name": "Hacker News Best",
    "slug": "hacker-news-best",
    "url": "https://timmarinin.net/2026/bluesky-screenshots/"
  },
  "original_language": "en",
  "account": "When I take a screenshot of a post I like on Bluesky, either to share it with friends or save a copy, I noticed the app's logo in the right corner. At first, I found it odd that the logo didn't bother me when using the app, but upon looking again, I realized it had disappeared and been replaced by the \"Follow\" button. I recalled that some apps hide their logo where the iPhone notch is, so it doesn't stick out. However, here the logo was placed in an open area, and I wondered how they managed to do it. I decided to take another screenshot, this time while switching to another app. It made me wonder if they set up a listener for two buttons to take a screenshot and switch the logo at the last moment. As an iOS developer, I'm unsure what's possible and what's not on that platform. Thankfully, I knew Bluesky's code was open source. The answer was in the file called GrowthHack.tsx, introduced in January 2026 by mozzius. After looking into the package expo-privacy-sensitive, I discovered that it creates a UITextField with the isSecureTextEntry property set to true, and renders the button content into that field's .layer. When I take a screenshot, iOS hides this UITextField by blanking the layer, allowing the Bluesky logo to shimmer through. For other platforms, it simply renders the content as-is, without masking. I'm curious as to why this doesn't work when I switch between apps. I believe it's because iOS takes a snapshot itself at the start of the gesture, without triggering the blanking, and when I do a screenshot, there's no live UITextField instance to react to that. Once again, I'm not an iOS developer. While some people in the thread disliked this behavior, the people adding it didn't seem to mind. I think it's a clever trick and not an abuse of the API meant for privacy. In fact, this trick is well-known, as Telegram and Signal have implemented similar things for their secret chats. I don't expect Apple to patch this any time soon.",
  "summary": "Article URL: https://timmarinin.net/2026/bluesky-screenshots/ Comments URL: https://news.ycombinator.com/item?id=49338459 Points: 247 # Comments: 182",
  "key_points": [],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 2,
    "also_reported_by": [
      {
        "outlet": "Lobsters",
        "title": "How Bluesky draws its logo on screenshots",
        "url": "https://urgent.news/2026/08/17/how-bluesky-draws-its-logo-on-screenshots",
        "published": "2026-08-17T21:46:01.000Z"
      }
    ]
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}