Răsfoiți Sursa

Fixed doubleclick to select word in UITextInput

Ivan Safrin 12 ani în urmă
părinte
comite
8b7f8e37cd

+ 1 - 0
Modules/Contents/UI/Include/PolyUITextInput.h

@@ -479,6 +479,7 @@ namespace Polycode {
 			Timer *blinkTimer;
 			UIBox *inputRect;
 			ScreenShape *blinkerRect;
+			Vector2 dragMouseStart;
 			
 			Color selectionColor;
 			void _setSelectionColor(Color color);

+ 4 - 1
Modules/Contents/UI/Source/PolyUITextInput.cpp

@@ -2028,7 +2028,9 @@ void UITextInput::Update() {
 	resizeTimer += core->getElapsed();
 	
 	if(draggingSelection) {
-		dragSelectionTo(selectionDragMouse.x, selectionDragMouse.y - linesContainer->getPosition().y);		
+		if(selectionDragMouse != dragMouseStart) {
+			dragSelectionTo(selectionDragMouse.x, selectionDragMouse.y - linesContainer->getPosition().y);	
+		}
 	}
 	
 	if(resizeTimer > 0.2 && !didMultilineResize) {
@@ -2392,6 +2394,7 @@ void UITextInput::handleEvent(Event *event) {
 				}
 				setCaretToMouse(((InputEvent*)event)->mousePosition.x, ((InputEvent*)event)->mousePosition.y - linesContainer->getPosition().y);
 				selectionDragMouse = ((InputEvent*)event)->mousePosition;				
+				dragMouseStart = ((InputEvent*)event)->mousePosition;
 				draggingSelection = true;
 			break;
 			case InputEvent::EVENT_MOUSEUP: