diff -r 6a1564a2f3e6 -r 18f84489a694 windowing/windowserver/nga/SERVER/ROOTWIN.CPP --- a/windowing/windowserver/nga/SERVER/ROOTWIN.CPP Fri Sep 17 08:36:49 2010 +0300 +++ b/windowing/windowserver/nga/SERVER/ROOTWIN.CPP Mon Oct 04 02:31:51 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 1995-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 1995-2010 Nokia Corporation and/or its subsidiary(-ies). // All rights reserved. // This component and the accompanying materials are made available // under the terms of "Eclipse Public License v1.0" @@ -125,8 +125,8 @@ CWsClientWindow *win=group->Child(); while(win!=NULL) { - const TRegion *baseArea=win->BaseArea(); - if (win->IsVisible() && baseArea->Contains(aInPos)) + + if (win->IsVisible() && win->PointerHit(aInPos)) { aOriginalWinItIsIn=win; winItIsInGroup=group; @@ -152,14 +152,13 @@ CWsClientWindow *win=group->Child(); while(win!=NULL) { - const TRegion *baseArea=win->BaseArea(); const TBool underTheSameGroup=winItIsInGroup==group; if (win->IsVisible() && ((win->iFlags&EFlagPointerCaptured && ((!underTheSameGroup && win->iFlags&EFlagPointerCaptureAllGroups) || (winItIsInGroup==NULL && group==CWsTop::FocusWindowGroup()) || (underTheSameGroup && win->iPointerCapturePriority>=aOriginalWinItIsIn->iPointerCapturePriority))) - || baseArea->Contains(aInPos))) + || win->PointerHit(aInPos))) { winItIsIn=win; win=win->Child();