KamoCRM

Every email address opens a Write popup, and every phone number — settings included — opens Call / Text

Featurekamo-internal
Shipped
October 14, 2026 at 2:50 AM UTC
Author
Kamo
Commit
835e164

Email addresses, project wide. <EmailAddress> is the email twin of <PhoneNumber>; pressed, it opens one design of popup: - Write opens the email composer window addressed to them — nothing is sent until Send. - The second tile follows the records: Chat for a colleague, Call (number on the dialpad, never dialled) when a number is on file, Copy otherwise. - Who the address is in the org's own records (colleague, contact, lead — the mailbox's correspondent lookup, once, on open) with Open lead / Open contact / View profile; personal provider or company domain; the colleague's local time; a typo check ("gmial.com" → gmail.com, Write to that instead); send-only noreply@ boxes can't be written to; Copy, Use my mail app; E / C / Y keys. The lead view routes Write through its opt-out guard; a surface can pass a composeWarning (Write then takes a second press). Phone numbers, now truly everywhere — including the organization's own: Behavior & Labeling's main and toll-free numbers and contact email, member phone settings, text numbers, phone-system numbers and providers, voicemail callers, Contact Sales, the member card, the mail correspondent card, the hex head's extension, softphone CRM/contacts/history, report PHONE columns, AI calls console and consent history, quote preview (icon-less, so it prints as text), the media player's caller line, and no-name call titles on the lead timeline. Shared engine **************** ContactPopover (placement, arrow, focus trap, keys, outside press), ContactHeader and parts, ContactTrigger, and ContactPopupHost — mounted beside the tool dock, it draws the open popup away from its trigger, so one opened inside a hover card or popover survives the card closing as the pointer moves into it. One popup at a time across both kinds; a route change closes it. Triggers carry GRID_OWN_CLICK for AG Grid rows. Left plain on purpose: values inside a picker option, select, label or a row that is itself a button (selection UIs); inside a translated sentence; the live-call screen and quick-dial buttons; the SMS/mail clients' own conversation lists and address plates; email-template placeholders. The "Use my device" tel: link now carries the extension (;ext=). mailboxMemberCards counted every dialog trigger as a member card; it now skips the address triggers.

All changes

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing