diff options
| -rwxr-xr-x | indra/llui/lltextbase.cpp | 2 | ||||
| -rwxr-xr-x | indra/llui/lltexteditor.cpp | 5 | 
2 files changed, 5 insertions, 2 deletions
diff --git a/indra/llui/lltextbase.cpp b/indra/llui/lltextbase.cpp index cc171661ce..5ec4cf4fe5 100755 --- a/indra/llui/lltextbase.cpp +++ b/indra/llui/lltextbase.cpp @@ -1029,7 +1029,7 @@ BOOL LLTextBase::handleMouseDown(S32 x, S32 y, MASK mask)  BOOL LLTextBase::handleMouseUp(S32 x, S32 y, MASK mask)  {  	LLTextSegmentPtr cur_segment = getSegmentAtLocalPos(x, y); -	if (cur_segment && cur_segment->handleMouseUp(x, y, mask)) +	if (hasMouseCapture() && cur_segment && cur_segment->handleMouseUp(x, y, mask))  	{  		// Did we just click on a link?  		if (mURLClickSignal diff --git a/indra/llui/lltexteditor.cpp b/indra/llui/lltexteditor.cpp index 764f0b8b36..7f309a5ff6 100755 --- a/indra/llui/lltexteditor.cpp +++ b/indra/llui/lltexteditor.cpp @@ -721,7 +721,6 @@ BOOL LLTextEditor::handleMouseDown(S32 x, S32 y, MASK mask)  				setCursorAtLocalPos( x, y, true );  				startSelection();  			} -			gFocusMgr.setMouseCapture( this );  		}  		handled = TRUE; @@ -730,6 +729,10 @@ BOOL LLTextEditor::handleMouseDown(S32 x, S32 y, MASK mask)  	// Delay cursor flashing  	resetCursorBlink(); +	if (handled) +	{ +		gFocusMgr.setMouseCapture( this ); +	}  	return handled;  }  | 
