Notification Profiles: Fix scrollbars in the time picker

This commit is contained in:
Scott Nonnenberg
2025-12-18 02:44:29 +10:00
committed by GitHub
parent 11b1b30ca6
commit ec9a31007b
2 changed files with 25 additions and 7 deletions

View File

@@ -1974,7 +1974,11 @@ function TimePicker({
theme ? themeClassName2(theme) : undefined theme ? themeClassName2(theme) : undefined
)} )}
> >
<div className={tw('w-[46px] overflow-y-scroll')}> <div
className={tw(
'w-[46px] overflow-y-scroll scrollbar-width-none'
)}
>
{(use24HourTime ? HOURS_24 : HOURS_12).map(hour => { {(use24HourTime ? HOURS_24 : HOURS_12).map(hour => {
const isSelected = hour === hours; const isSelected = hour === hours;
@@ -1983,7 +1987,9 @@ function TimePicker({
key={hour.toString()} key={hour.toString()}
ref={isSelected ? selectedHour : null} ref={isSelected ? selectedHour : null}
className={classNames( className={classNames(
tw('w-[46px] rounded-sm py-[7px] type-body-medium'), tw(
'w-[46px] rounded-sm border-[2.5px] border-transparent py-[7px] type-body-medium outline-none focus:border-border-focused'
),
isSelected ? tw('bg-fill-secondary') : null isSelected ? tw('bg-fill-secondary') : null
)} )}
type="button" type="button"
@@ -1997,7 +2003,11 @@ function TimePicker({
); );
})} })}
</div> </div>
<div className={tw('ms-0.5 w-[46px] overflow-y-scroll')}> <div
className={tw(
'ms-0.5 w-[46px] overflow-y-scroll scrollbar-width-none'
)}
>
{MINUTES.map(minute => { {MINUTES.map(minute => {
const isSelected = minute === minutes; const isSelected = minute === minutes;
@@ -2006,7 +2016,9 @@ function TimePicker({
key={minute.toString()} key={minute.toString()}
ref={isSelected ? selectedMinute : null} ref={isSelected ? selectedMinute : null}
className={classNames( className={classNames(
tw('w-[46px] rounded-sm py-[7px] type-body-medium'), tw(
'w-[46px] rounded-sm border-[2.5px] border-transparent py-[7px] type-body-medium outline-none focus:border-border-focused'
),
isSelected ? tw('bg-fill-secondary') : null isSelected ? tw('bg-fill-secondary') : null
)} )}
type="button" type="button"
@@ -2021,7 +2033,11 @@ function TimePicker({
})} })}
</div> </div>
{!use24HourTime ? ( {!use24HourTime ? (
<div className={tw('ms-0.5 w-[46px] overflow-y-scroll')}> <div
className={tw(
'ms-0.5 w-[46px] overflow-y-scroll scrollbar-width-none'
)}
>
{AM_PM.map(item => { {AM_PM.map(item => {
const isSelected = item === period; const isSelected = item === period;
@@ -2029,7 +2045,9 @@ function TimePicker({
<button <button
key={item} key={item}
className={classNames( className={classNames(
tw('w-[46px] rounded-sm py-[7px] type-body-medium'), tw(
'w-[46px] rounded-sm border-[2.5px] border-transparent py-[7px] type-body-medium outline-none focus:border-border-focused'
),
isSelected ? tw('bg-fill-secondary') : null isSelected ? tw('bg-fill-secondary') : null
)} )}
type="button" type="button"

View File

@@ -449,7 +449,7 @@ async function generateManifest(
: notificationProfiles; : notificationProfiles;
if (notificationProfileSyncDisabled) { if (notificationProfileSyncDisabled) {
const localOnlyCount = const localOnlyCount =
notificationProfilesToUpload.length - notificationProfiles.length; notificationProfiles.length - notificationProfilesToUpload.length;
log.info( log.info(
`upload(${version}): ` + `upload(${version}): ` +
`sync=OFF; adding notificationProfiles=${notificationProfilesToUpload.length}, excluding ${localOnlyCount} local profiles` `sync=OFF; adding notificationProfiles=${notificationProfilesToUpload.length}, excluding ${localOnlyCount} local profiles`