Vector2 MoveContent(Vector2 delta)
{
float ox = textField.x;
float oy = textField.y;
float nx = ox + delta.x;
float ny = oy + delta.y;
if (_contentRect.width - nx > textField.textWidth)
nx = _contentRect.width - textField.textWidth;
if (_contentRect.height - ny > textField.textHeight)
ny = _contentRect.height - textField.textHeight;
if (nx > 0)
nx = 0;
if (ny > 0)
ny = 0;
nx = (int)nx;
ny = (int)ny;
if (nx != ox || ny != oy)
{
textField.SetXY(nx, ny);
List<HtmlElement> elements = textField.htmlElements;
int count = elements.Count;
for (int i = 0; i < count; i++)
{
HtmlElement element = elements[i];
if (element.htmlObject != null)
element.htmlObject.SetPosition(element.position.x + nx, element.position.y + ny);
}
}
delta.x = nx - ox;
delta.y = ny - oy;
return delta;
}