Menu ▾ ▴

#17 Hide names & avatars toggle (Cmd/Ctrl+Shift+N)

closed
nobody
2026-06-29
2026-06-28
Anonymous
No

Originally created by: kristofferR

Hide names & avatars (Cmd/Ctrl+Shift+N)

Add a toggle that blurs/obscures contact names and profile pictures throughout Messenger — great for screen-sharing, screen recording, or using Carrier in a public/shared space. This is Caprine's "Hide Names and Avatars" feature.

Behaviour

  • Toggle via menu item and keyboard shortcut Cmd/Ctrl+Shift+N.
  • Optional: persist as a setting (e.g. hide_names_avatars) so it survives reloads — recommended.
  • When on: blur names and avatar images in the chat list and the conversation header (and ideally in-thread sender avatars).

Implementation notes

This slots directly into patterns Carrier already has — it's the same shape as compact mode:

  • Add a marker attribute on <html> (like data-carrier-compact) toggled from a small IIFE in src-tauri/inject/messenger.js, driven by window.__CARRIER_SETTINGS__ + the carrier:settings event.
  • Add the CSS in src-tauri/inject/messenger.css keyed off html[data-carrier-hide-names] — filter: blur() on avatar imgs and on the name text spans (target via ARIA roles / the chat-list grid, consistent with the existing selectors). Verify selectors against the live DOM.
  • Keyboard shortcut: add Shift+N handling to the accelerator keydown listener in messenger.js (note Cmd+N is New Window — this is Cmd+Shift+N, distinct).
  • Menu item: add a "Hide Names & Avatars" entry to the View submenu in build_menu (src-tauri/src/lib.rs) wired through mutate_settings, alongside Compact/Always-on-Top.

Notes

  • Pure CSS blur — no network interception, low risk. Good first privacy feature to land.

Part of the Caprine privacy-parity set.

Related

Tickets: #22
Tickets: #23

Discussion

  • Anonymous

    Anonymous - 2026-06-29

    Ticket changed by: kristofferR

    • status: open --> closed
     
  • Anonymous

    Anonymous - 2026-06-29

    Originally posted by: kristofferR

    Done — shipped in [#22] (merged to main, commit d5029b9).

    What landed:

    • New hide_names_avatars setting (default off), reachable three ways — Settings checkbox, View ▸ Hide Names & Avatars menu item, and the Cmd/Ctrl+Shift+N accelerator.
    • Blurs contact names, avatars, and message previews in the conversation list, driven by a data-carrier-hide-names attribute on <html> (same live-update pattern as compact mode, no reload). CSS anchors on the proven a[href*="/t/"] selector rather than a guessed deep one.

    Deferred (the "ideally" part of this issue): blurring the open thread's header name and in-thread sender avatars was left out on purpose — it needs verification against the live Messenger DOM, and I'm avoiding shipping unverified selectors after the compact-mode stale-selector bug (#20). Closing this since the primary screen-share privacy surface (the list of who you talk to) is covered; I'll open a separate follow-up issue for the in-thread blurring if we want to pursue it.

     

    Related

    Tickets: #22


Log in to post a comment.