diff -r 5456b4e8b3a8 -r 3321d3e205b6 idlehomescreen/xmluirendering/uiengine/src/xnwidgetextensionadapter.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnwidgetextensionadapter.cpp Wed Sep 01 12:32:46 2010 +0100 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnwidgetextensionadapter.cpp Tue Sep 14 20:58:58 2010 +0300 @@ -98,12 +98,12 @@ // void CXnWidgetExtensionAdapter::HandleScreenDeviceChangedL() { - if( IsVisible() ) + if( iPopup ) { - CCoeControl::MakeVisible( EFalse ); + HidePopupL(); } - CXnControlAdapter::HandleScreenDeviceChangedL(); - + + CXnControlAdapter::HandleScreenDeviceChangedL(); } // ----------------------------------------------------------------------------- @@ -178,7 +178,7 @@ } CXnPluginData* plugin( - iAppUiAdapter->ViewManager().ActiveViewData().Plugin( &iNode.Node() ) ); + iAppUiAdapter->ViewManager().ActiveViewData().Plugin( &iNode.Node() ) ); if ( !plugin ) { @@ -186,6 +186,7 @@ } SetPointerCapture( aVisible ); + Window().SetPointerGrab( aVisible ); plugin->SetIsDisplayingPopup( aVisible, &iNode.Node() ); @@ -231,6 +232,11 @@ effectStarted = ETrue; } + if ( aVisible && OwnsWindow() ) + { + Window().SetOrdinalPosition( 0 ); + } + CCoeControl::MakeVisible( aVisible ); if ( effectStarted ) @@ -247,8 +253,7 @@ // void CXnWidgetExtensionAdapter::HandlePointerEventL( const TPointerEvent& aPointerEvent ) - { - + { // in case of popup, we have to make sure that // it will be closed after tapping outside of the // area of itself and its parent