diff --git a/src/elements/SwpEventElement.ts b/src/elements/SwpEventElement.ts index 5644646..16ff270 100644 --- a/src/elements/SwpEventElement.ts +++ b/src/elements/SwpEventElement.ts @@ -85,7 +85,6 @@ export class SwpEventElement extends BaseSwpEventElement { if (!this.hasChildNodes()) { this.render(); } - this.applyPositioning(); } /** @@ -193,16 +192,6 @@ export class SwpEventElement extends BaseSwpEventElement { } } - /** - * Apply initial positioning based on start/end times - */ - private applyPositioning(): void { - const position = PositionUtils.calculateEventPosition(this.start, this.end); - this.style.top = `${position.top + 1}px`; - this.style.height = `${position.height - 3}px`; - this.style.left = '2px'; - this.style.right = '2px'; - } /** * Calculate start/end minutes from Y position diff --git a/src/renderers/EventRenderer.ts b/src/renderers/EventRenderer.ts index 237e961..8a06e97 100644 --- a/src/renderers/EventRenderer.ts +++ b/src/renderers/EventRenderer.ts @@ -182,7 +182,17 @@ export class DateEventRenderer implements EventRendererStrategy { } private renderEvent(event: CalendarEvent): HTMLElement { - return SwpEventElement.fromCalendarEvent(event); + const element = SwpEventElement.fromCalendarEvent(event); + + // Apply positioning (moved from SwpEventElement.applyPositioning) + const position = this.calculateEventPosition(event); + element.style.position = 'absolute'; + element.style.top = `${position.top + 1}px`; + element.style.height = `${position.height - 3}px`; + element.style.left = '2px'; + element.style.right = '2px'; + + return element; } protected calculateEventPosition(event: CalendarEvent): { top: number; height: number } {