GET_SHAPE_CONFIG(EDIT::COPYPASTE_MAGNIFIER_HEIGHT, orientation, height);
bounds = FloatRectangle(cursorPoint.x - width/2, cursorPoint.y - height, width, height);
+ if (bounds.y < 0.0f)
+ {
+ bounds.y = 0.0f;
+ }
pCopyPasteMagnifier->SetBounds(bounds);
pCopyPasteMagnifier->Open();
{
FloatRectangle bounds = FloatRectangle(point.x - GetBoundsF().width/2, point.y - GetBoundsF().height, GetBoundsF().width, GetBoundsF().height);
__handlerCursorPos = handlerCursorPos;
+ if (bounds.y < 0.0f)
+ {
+ bounds.y = 0.0f;
+ }
SetBounds(bounds);
Invalidate();
}
delete __pHandlerBitmap;
__pHandlerBitmap = null;
}
+ if (__singleHandler)
+ {
+ if (__handlerDirection == HANDLER_DIRECTION_NONE)
+ {
+ GET_BITMAP_CONFIG_N(EDIT::COPY_PASTE_ICON_CENTER_NORMAL, BITMAP_PIXEL_FORMAT_ARGB8888, __pHandlerBitmap);
+ }
+ else
+ {
+ GET_BITMAP_CONFIG_N(EDIT::COPY_PASTE_ICON_REVERSE_CENTER_NORMAL, BITMAP_PIXEL_FORMAT_ARGB8888, __pHandlerBitmap);
+ }
+ return;
+ }
if (__leftHandler)
{
switch(__handlerDirection)
rect.x = cursorRect.x - __pHandlerBitmap->GetWidthF()/2.0f;
rect.y = cursorRect.y + cursorRect.height;
checkPoint = FloatPoint(cursorRect.x , cursorRect.y + cursorRect.height);
+ if (__handlerDirection == HANDLER_DIRECTION_REVERSE_2)
+ {
+ rect.y -= (cursorRect.height + __pHandlerBitmap->GetHeightF());
+ }
}
else
{
_Edit* pEdit = __pCopyPasteManager->GetEdit();
_ControlOrientation orientation = pEdit->GetOrientation();
FloatRectangle rect = GetBoundsF();
+ FloatRectangle cursorAbsBounds = __pCopyPasteManager->GetCursorBoundsF(true);
if (orientation == _CONTROL_ORIENTATION_PORTRAIT)
{
if (__singleHandler)
{
+ if ((__handlerDirection == HANDLER_DIRECTION_NONE) && ((cursorAbsBounds.y + cursorAbsBounds.height + rect.height) > screenSize.height))
+ {
+ __handlerDirection = HANDLER_DIRECTION_REVERSE_2;
+ rect.y -= (cursorAbsBounds.height + rect.height);
+ __reverseCheck = true;
+ }
+ else if ((__handlerDirection == HANDLER_DIRECTION_REVERSE_2) && ((cursorAbsBounds.y + cursorAbsBounds.height + rect.height) <= screenSize.height))
+ {
+ __handlerDirection = HANDLER_DIRECTION_NONE;
+ rect.y += (cursorAbsBounds.height + rect.height);
+ __reverseCheck = true;
+ }
+ ChangeHandlerBitmap();
+ SetBounds(rect);
return;
}
pEditPresenter->CalculateAbsoluteCursorBounds(__rowIndex, __columnIndex, absCursorRect);
}
- if (absTextObjectBounds.height > (totalHeight - firstDisplayY))
+ if (absTextObjectBounds.height >= (totalHeight - firstDisplayY))
{
absTextObjectBounds.height = totalHeight - firstDisplayY;
absTextObjectBounds.y += absCursorRect.height/2.0f;
__pHandle[HANDLER_TYPE_CENTER]->SetHandlerCursorPosition(__pEdit->GetCursorPosition());
// __pHandle[HANDLER_TYPE_CENTER]->MoveCopyPasteMagnifier();
}
- __pHandle[HANDLER_TYPE_CENTER]->AdjustBounds();
+ __pHandle[HANDLER_TYPE_CENTER]->CheckReverseStatus();
__pEdit->Invalidate();
}
, __rowCursorIndex(-1)
, __columnCursorIndex(-1)
, __isPasswordVisible(false)
+ , __needToCreateCopyPastePopup(false)
{
}
if (__pCopyPasteManager)
{
__pCopyPasteManager->CreateHandle();
- __pCopyPasteManager->CreateCopyPastePopup();
+ if (__needToCreateCopyPastePopup)
+ {
+ __pCopyPasteManager->CreateCopyPastePopup();
+ __needToCreateCopyPastePopup = false;
+ }
__pCopyPasteManager->Show();
}
}
if (__pCopyPasteManager)
{
+ if (__pCopyPasteManager->GetCopyPastePopup())
+ {
+ __needToCreateCopyPastePopup = true;
+ }
__pCopyPasteManager->Release();
}
int __rowCursorIndex;
int __columnCursorIndex;
bool __isPasswordVisible;
+ bool __needToCreateCopyPastePopup;
}; // _EditPresenter
}}} // Tizen::Ui::Controls
DECLARE_IMAGE_CONFIG(BG_DISABLED, 4)
DECLARE_IMAGE_CONFIG(BG_EFFECT, 5)
DECLARE_IMAGE_CONFIG(COPY_PASTE_ICON_CENTER_NORMAL, 6)
- DECLARE_IMAGE_CONFIG(COPY_PASTE_ICON_LEFT_NORMAL, 7)
- DECLARE_IMAGE_CONFIG(COPY_PASTE_ICON_RIGHT_NORMAL, 8)
- DECLARE_IMAGE_CONFIG(COPY_PASTE_ICON_REVERSE_LEFT_NORMAL, 9)
- DECLARE_IMAGE_CONFIG(COPY_PASTE_ICON_REVERSE_RIGHT_NORMAL, 10)
- DECLARE_IMAGE_CONFIG(COPY_PASTE_SEARCH_ICON, 11)
- DECLARE_IMAGE_CONFIG(COPY_PASTE_MAGNIFIER, 12)
- DECLARE_IMAGE_CONFIG(BG_ROUND_NORMAL, 13)
- DECLARE_IMAGE_CONFIG(BG_ROUND_EFFECT, 14)
- DECLARE_IMAGE_CONFIG(CLEAR_ICON_NORMAL, 15)
- DECLARE_IMAGE_CONFIG(CLEAR_ICON_PRESSED, 16)
- DECLARE_IMAGE_CONFIG(GROUPED_SINGLE_BG_NORMAL, 17)
- DECLARE_IMAGE_CONFIG(GROUPED_SINGLE_BG_EFFECT_NORMAL, 18)
- DECLARE_IMAGE_CONFIG(GROUPED_TOP_BG_NORMAL, 19)
- DECLARE_IMAGE_CONFIG(GROUPED_TOP_BG_EFFECT_NORMAL, 20)
- DECLARE_IMAGE_CONFIG(GROUPED_MIDDLE_BG_NORMAL, 21)
- DECLARE_IMAGE_CONFIG(GROUPED_MIDDLE_BG_EFFECT_NORMAL, 22)
- DECLARE_IMAGE_CONFIG(GROUPED_BOTTOM_BG_NORMAL, 23)
- DECLARE_IMAGE_CONFIG(GROUPED_BOTTOM_BG_EFFECT_NORMAL, 24)
+ DECLARE_IMAGE_CONFIG(COPY_PASTE_ICON_REVERSE_CENTER_NORMAL, 7)
+ DECLARE_IMAGE_CONFIG(COPY_PASTE_ICON_LEFT_NORMAL, 8)
+ DECLARE_IMAGE_CONFIG(COPY_PASTE_ICON_RIGHT_NORMAL, 9)
+ DECLARE_IMAGE_CONFIG(COPY_PASTE_ICON_REVERSE_LEFT_NORMAL, 10)
+ DECLARE_IMAGE_CONFIG(COPY_PASTE_ICON_REVERSE_RIGHT_NORMAL, 11)
+ DECLARE_IMAGE_CONFIG(COPY_PASTE_SEARCH_ICON, 12)
+ DECLARE_IMAGE_CONFIG(COPY_PASTE_MAGNIFIER, 13)
+ DECLARE_IMAGE_CONFIG(BG_ROUND_NORMAL, 14)
+ DECLARE_IMAGE_CONFIG(BG_ROUND_EFFECT, 15)
+ DECLARE_IMAGE_CONFIG(CLEAR_ICON_NORMAL, 16)
+ DECLARE_IMAGE_CONFIG(CLEAR_ICON_PRESSED, 17)
+ DECLARE_IMAGE_CONFIG(GROUPED_SINGLE_BG_NORMAL, 18)
+ DECLARE_IMAGE_CONFIG(GROUPED_SINGLE_BG_EFFECT_NORMAL, 19)
+ DECLARE_IMAGE_CONFIG(GROUPED_TOP_BG_NORMAL, 20)
+ DECLARE_IMAGE_CONFIG(GROUPED_TOP_BG_EFFECT_NORMAL, 21)
+ DECLARE_IMAGE_CONFIG(GROUPED_MIDDLE_BG_NORMAL, 22)
+ DECLARE_IMAGE_CONFIG(GROUPED_MIDDLE_BG_EFFECT_NORMAL, 23)
+ DECLARE_IMAGE_CONFIG(GROUPED_BOTTOM_BG_NORMAL, 24)
+ DECLARE_IMAGE_CONFIG(GROUPED_BOTTOM_BG_EFFECT_NORMAL, 25)
DECLARE_DIMENSION_CONFIG(MIN_SIZE, 1)
DECLARE_DIMENSION_CONFIG(TITLE_STYLE_MIN_SIZE, 2)
ADD_IMAGE_CONFIG(BG_DISABLED, #00_edit_field_no_line_square_bg.#.png);
ADD_IMAGE_CONFIG(BG_EFFECT, #00_edit_field_no_line_square_bg.#.png);
ADD_IMAGE_CONFIG(COPY_PASTE_ICON_CENTER_NORMAL, #copy&paste_Handler_center.png);
+ ADD_IMAGE_CONFIG(COPY_PASTE_ICON_REVERSE_CENTER_NORMAL, #copy&paste_Handler_center_reverse.png);
ADD_IMAGE_CONFIG(COPY_PASTE_ICON_LEFT_NORMAL, #copy&paste_Handler_left_01.png);
ADD_IMAGE_CONFIG(COPY_PASTE_ICON_RIGHT_NORMAL, #copy&paste_Handler_right.png);
ADD_IMAGE_CONFIG(COPY_PASTE_ICON_REVERSE_LEFT_NORMAL, #copy&paste_Handler_left.png);