diff --git a/client/electron/src/components/CalendarView.tsx b/client/electron/src/components/CalendarView.tsx index 783ca2f..a5033c9 100644 --- a/client/electron/src/components/CalendarView.tsx +++ b/client/electron/src/components/CalendarView.tsx @@ -178,7 +178,15 @@ export default function CalendarView() { const onTouchStart = (e: React.TouchEvent) => { const t = e.touches[0]; if (!t) return; - if (startsInHorizontalScroller(e.target, e.currentTarget)) { + /* + * 只在**周/日**刻度卡严(用户原话:「我觉得**周视图**需要卡严条件」)。 + * + * 我第一版对所有刻度都卡,结果连月视图的翻页手势也一起没了 —— + * 因为"日历内存在可横滚容器"在月视图里也成立(外层容器本身就带 auto)。 + * 判据必须贴在**真正有横向滚动需求的那个刻度**上,而不是"这页里有没有横滚容器"。 + */ + const needsStrict = scale === 'week' || scale === 'day'; + if (needsStrict && startsInHorizontalScroller(e.target, e.currentTarget)) { // 卡严条件:这一次手势完全不参与翻页判断 touch.current = null; return;