if (__isCursorDisabled == false && IsCurrentFocused() && __isTextBlocked == false)
{
+ bool outOfRangeInSignleLine = false;
FloatRectangle cursorBounds;
- CalculateCursorBounds(__textObjectBounds, cursorBounds);
+ if (CalculateCursorBounds(__textObjectBounds, cursorBounds) != E_SUCCESS)
+ {
+ if (__pEdit->GetEditStyle() & EDIT_STYLE_SINGLE_LINE)
+ {
+ outOfRangeInSignleLine = true;
+ }
+ }
__pCursorVisualElement->SetOpacity(1.0f);
__pCursorVisualElement->SetBounds(cursorBounds);
{
return E_SYSTEM;
}
- __isCursorInitialized = false;
+
+ if (outOfRangeInSignleLine)
+ {
+ __isCursorOpaque = false;
+ }
+ else
+ {
+ __isCursorInitialized = false;
+ }
+
DrawCursor(*pCanvas, cursorBounds, __isCursorOpaque);
if (__pInputConnection)