{
if (pControl->GetChangingEventTarget() == true && pControl->GetVisibleState() == true)
{
- r = __pTouchEventManager->AddControl(pointId, pControl->GetHandle());
- SysTryReturnVoidResult(NID_UI, r == E_SUCCESS, E_SYSTEM, "[E_SYSTEM] A system error occurred.");
+ _Control* pTouchedControl = __pTouchEventManager->GetControl(pointId);
+ if (pTouchedControl && pTouchedControl->GetParent() == pControl->GetParent())
+ {
+ r = __pTouchEventManager->AddControl(pointId, pControl->GetHandle());
+ SysTryReturnVoidResult(NID_UI, r == E_SUCCESS, E_SYSTEM, "[E_SYSTEM] A system error occurred.");
+ }
}
}
}