mirror of
				https://github.com/nicbarker/clay.git
				synced 2025-11-04 08:36:17 +00:00 
			
		
		
		
	Fixed a typo bug with drag scrolling in scroll containers
This commit is contained in:
		
							parent
							
								
									d5cd05aedc
								
							
						
					
					
						commit
						9c5b90e71b
					
				
							
								
								
									
										5
									
								
								clay.h
									
									
									
									
									
								
							
							
						
						
									
										5
									
								
								clay.h
									
									
									
									
									
								
							| 
						 | 
				
			
			@ -780,6 +780,7 @@ typedef struct
 | 
			
		|||
    Clay_Vector2 pointerOrigin;
 | 
			
		||||
    Clay_Vector2 scrollMomentum;
 | 
			
		||||
    Clay_Vector2 scrollPosition;
 | 
			
		||||
    Clay_Vector2 previousDelta;
 | 
			
		||||
    float momentumTime;
 | 
			
		||||
    uint32_t elementId;
 | 
			
		||||
    bool openThisFrame;
 | 
			
		||||
| 
						 | 
				
			
			@ -2229,9 +2230,9 @@ void Clay_UpdateScrollContainers(bool isPointerActive, Clay_Vector2 scrollDelta,
 | 
			
		|||
                    float oldYScrollPosition = highestPriorityScrollData->scrollPosition.y;
 | 
			
		||||
                    highestPriorityScrollData->scrollPosition.y = highestPriorityScrollData->scrollOrigin.y + (Clay__pointerPosition.y - highestPriorityScrollData->pointerOrigin.y);
 | 
			
		||||
                    highestPriorityScrollData->scrollPosition.y = CLAY__MAX(CLAY__MIN(highestPriorityScrollData->scrollPosition.y, 0), -(highestPriorityScrollData->contentSize.height - highestPriorityScrollData->boundingBox.height));
 | 
			
		||||
                    scrollDeltaX = highestPriorityScrollData->scrollPosition.x - oldYScrollPosition;
 | 
			
		||||
                    scrollDeltaY = highestPriorityScrollData->scrollPosition.y - oldYScrollPosition;
 | 
			
		||||
                }
 | 
			
		||||
                if (scrollDeltaX > -0.1f && scrollDeltaX < 0.1f && scrollDeltaY > -0.1f && scrollDeltaY < 0.1f && highestPriorityScrollData->momentumTime > 0.5f) {
 | 
			
		||||
                if (scrollDeltaX > -0.1f && scrollDeltaX < 0.1f && scrollDeltaY > -0.1f && scrollDeltaY < 0.1f && highestPriorityScrollData->momentumTime > 0.15f) {
 | 
			
		||||
                    highestPriorityScrollData->momentumTime = 0;
 | 
			
		||||
                    highestPriorityScrollData->pointerOrigin = Clay__pointerPosition;
 | 
			
		||||
                    highestPriorityScrollData->scrollOrigin = highestPriorityScrollData->scrollPosition;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -221,7 +221,7 @@
 | 
			
		|||
        window.touchDown = false;
 | 
			
		||||
        let zeroTimeout = null;
 | 
			
		||||
        addEventListener("wheel", (event) => {
 | 
			
		||||
            window.mouseWheelXThisFrame = event.deltaX * -0.1;
 | 
			
		||||
            window.mouseWheelXThisFrame = event.deltaX * 0.1;
 | 
			
		||||
            window.mouseWheelYThisFrame = event.deltaY * -0.1;
 | 
			
		||||
            clearTimeout(zeroTimeout);
 | 
			
		||||
            zeroTimeout = setTimeout(() => {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue