From 60b92e6ef4eeafab4cf13ead4cc93fa12ba0bd76 Mon Sep 17 00:00:00 2001 From: Linus Rath <139418639+rathlinus@users.noreply.github.com> Date: Fri, 2 Oct 2026 13:01:57 +0200 Subject: [PATCH] fix: give widget buttons a 48dp tap area #52 Most widget buttons were 32dp tall (Archive, Delete, Reply and Next on the triage card, Accept, Maybe and Decline, Send wishes, Mail my free times), Up next's were 36dp and the round compose/new buttons in the headers 28-32dp, all under the 48dp a finger needs, so taps landed beside them and did nothing. Button and Fab take a transparent tap area around what they draw (`slop`), and the layouts give up the same amount of padding or gap next to them, so the widgets look the same but the buttons take a 48dp tap. --- src/widgets/layouts/calendar.tsx | 10 ++++---- src/widgets/layouts/hubs.tsx | 2 +- src/widgets/layouts/mail.tsx | 17 ++++++------- src/widgets/layouts/plans.tsx | 20 +++++++++++----- src/widgets/primitives.tsx | 41 ++++++++++++++++++++++++++++---- 5 files changed, 66 insertions(+), 24 deletions(-) diff --git a/src/widgets/layouts/calendar.tsx b/src/widgets/layouts/calendar.tsx index 171a4437..ef25e63e 100644 --- a/src/widgets/layouts/calendar.tsx +++ b/src/widgets/layouts/calendar.tsx @@ -192,7 +192,7 @@ export const AgendaLayout: Layout = ({ s, p, f, now, height }) => { iconName="calendar" title={f.t('widgets.calendar.agenda', 'Agenda')} click={open(links.calendar())} - trailing={} + trailing={} /> ); const days = agendaDays(s.calendar.events, now, 14); @@ -1008,7 +1008,8 @@ export const UpNextLayout: Layout = ({ s, p, f, now }) => { : f.t('widgets.calendar.join', 'Join'); return ( - + // 36dp buttons in a 48dp tap area (slop 6), which takes 6dp of the bottom padding. + @@ -1040,9 +1041,9 @@ export const UpNextLayout: Layout = ({ s, p, f, now }) => { {e.videoUrl ? ( -