Fix tooltip fading transitions and synchronize additional attributes

This commit is contained in:
2025-05-14 15:02:46 +02:00
parent 3a5bff8810
commit 6bb6be011c
3 changed files with 15 additions and 7 deletions

View File

@ -319,7 +319,7 @@ export class IcsCalendar extends inheritHtmlElement("div") {
click: async (event: Event) => {
const button = event.target as HTMLButtonElement;
button.classList.add("text-copy");
button.setAttribute("tooltip-class", "text-copy");
button.setAttribute("tooltip-class", "calendar-copy-tooltip");
if (!button.hasAttribute("tooltip-position")) {
button.setAttribute("tooltip-position", "top");
}
@ -334,11 +334,10 @@ export class IcsCalendar extends inheritHtmlElement("div") {
).toString(),
);
setTimeout(() => {
button.setAttribute("tooltip-class", "text-copied");
button.setAttribute("tooltip-class", "calendar-copy-tooltip text-copied");
button.classList.remove("text-copied");
button.classList.add("text-copied");
button.classList.remove("text-copy");
button.removeAttribute("tooltip");
}, 1500);
},
},

View File

@ -117,7 +117,6 @@ ics-calendar {
transition: 500ms ease-out;
margin-right: 0.5rem;
}
}
.fc .fc-helpButton-button {
border-radius: 70%;
@ -136,6 +135,12 @@ ics-calendar {
}
}
.tooltip.text-copy {
.tooltip.calendar-copy-tooltip {
opacity: 1;
transition: opacity 500ms ease-in;
}
.tooltip.calendar-copy-tooltip.text-copied {
opacity: 0;
transition: opacity 500ms ease-out;
}