diff --git a/src/managers/EdgeScrollManager.ts b/src/managers/EdgeScrollManager.ts index 7a30382..54be817 100644 --- a/src/managers/EdgeScrollManager.ts +++ b/src/managers/EdgeScrollManager.ts @@ -22,8 +22,8 @@ export class EdgeScrollManager { // Constants - fixed values as per requirements private readonly OUTER_ZONE = 100; // px from edge (slow zone) private readonly INNER_ZONE = 50; // px from edge (fast zone) - private readonly SLOW_SPEED_PXS = 80; // px/sec in outer zone - private readonly FAST_SPEED_PXS = 240; // px/sec in inner zone + private readonly SLOW_SPEED_PXS = 140; // px/sec in outer zone + private readonly FAST_SPEED_PXS = 640; // px/sec in inner zone constructor(private eventBus: IEventBus) { this.init(); diff --git a/src/managers/HeaderManager.ts b/src/managers/HeaderManager.ts index e09f62f..d1a6530 100644 --- a/src/managers/HeaderManager.ts +++ b/src/managers/HeaderManager.ts @@ -13,13 +13,10 @@ import { ColumnDetectionUtils } from '../utils/ColumnDetectionUtils'; */ export class HeaderManager { - // Event listeners for drag events - private dragMouseEnterHeaderListener: ((event: Event) => void) | null = null; - private dragMouseLeaveHeaderListener: ((event: Event) => void) | null = null; - constructor() { - // Bind methods for event listeners - this.setupHeaderDragListeners = this.setupHeaderDragListeners.bind(this); + // Bind handler methods for event listeners + this.handleDragMouseEnterHeader = this.handleDragMouseEnterHeader.bind(this); + this.handleDragMouseLeaveHeader = this.handleDragMouseLeaveHeader.bind(this); // Listen for navigation events to update header this.setupNavigationListener(); @@ -40,46 +37,51 @@ export class HeaderManager { } /** - * Setup header drag event listeners - REFACTORED to listen to DragDropManager events + * Setup header drag event listeners - Listen to DragDropManager events */ public setupHeaderDragListeners(): void { console.log('🎯 HeaderManager: Setting up drag event listeners'); - // Create and store event listeners - this.dragMouseEnterHeaderListener = (event: Event) => { - const { targetColumn: targetDate, mousePosition, originalElement, draggedClone: cloneElement } = (event as CustomEvent).detail; - - console.log('🎯 HeaderManager: Received drag:mouseenter-header', { - targetDate, - originalElement: !!originalElement, - cloneElement: !!cloneElement - }); - - if (targetDate) { - const calendarType = calendarConfig.getCalendarMode(); - const headerRenderer = CalendarTypeFactory.getHeaderRenderer(calendarType); - - - } - }; - - this.dragMouseLeaveHeaderListener = (event: Event) => { - const { targetDate, mousePosition, originalElement, draggedClone: cloneElement } = (event as CustomEvent).detail; - - console.log('🚪 HeaderManager: Received drag:mouseleave-header', { - targetDate, - originalElement: !!originalElement, - cloneElement: !!cloneElement - }); - }; - - // Listen for drag events from DragDropManager - eventBus.on('drag:mouseenter-header', this.dragMouseEnterHeaderListener); - eventBus.on('drag:mouseleave-header', this.dragMouseLeaveHeaderListener); + // Subscribe to drag events from DragDropManager + eventBus.on('drag:mouseenter-header', this.handleDragMouseEnterHeader); + eventBus.on('drag:mouseleave-header', this.handleDragMouseLeaveHeader); console.log('✅ HeaderManager: Drag event listeners attached'); } + /** + * Handle drag mouse enter header event + */ + private handleDragMouseEnterHeader(event: Event): void { + const { targetColumn: targetDate, mousePosition, originalElement, draggedClone: cloneElement } = + (event as CustomEvent).detail; + + console.log('🎯 HeaderManager: Received drag:mouseenter-header', { + targetDate, + originalElement: !!originalElement, + cloneElement: !!cloneElement + }); + + if (targetDate) { + const calendarType = calendarConfig.getCalendarMode(); + const headerRenderer = CalendarTypeFactory.getHeaderRenderer(calendarType); + } + } + + /** + * Handle drag mouse leave header event + */ + private handleDragMouseLeaveHeader(event: Event): void { + const { targetDate, mousePosition, originalElement, draggedClone: cloneElement } = + (event as CustomEvent).detail; + + console.log('🚪 HeaderManager: Received drag:mouseleave-header', { + targetDate, + originalElement: !!originalElement, + cloneElement: !!cloneElement + }); + } + /** * Setup navigation event listener */