diff -r ff572dfe6d86 -r 9674c1a575e9 idlehomescreen/xmluirendering/uiengine/src/xneditmode.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xneditmode.cpp Fri Mar 12 15:41:49 2010 +0200 +++ b/idlehomescreen/xmluirendering/uiengine/src/xneditmode.cpp Mon Mar 15 12:39:47 2010 +0200 @@ -36,6 +36,7 @@ #include "xnuiengine.h" #include "xncontroladapter.h" #include "xnpopupcontroladapter.h" +#include "xnviewcontroladapter.h" #include "xnfocuscontrol.h" #include "xneditor.h" #include "xntype.h" @@ -349,11 +350,12 @@ // Remove focus appui.HideFocus(); - CCoeControl& bg( appui.ViewAdapter().BgControl() ); - + CXnViewControlAdapter* control = static_cast< CXnViewControlAdapter* >( + appui.ViewManager().ActiveViewData().ViewNode()->Control() ); + if ( aVisible ) { - bg.DrawableWindow()->SetPointerGrab( EFalse ); + control->DrawableWindow()->SetPointerGrab( EFalse ); Window().SetOrdinalPosition( 0 ); Window().SetPointerGrab( ETrue ); @@ -365,13 +367,13 @@ { Window().SetPointerGrab( EFalse ); - bg.DrawableWindow()->SetPointerGrab( ETrue ); + control->DrawableWindow()->SetPointerGrab( ETrue ); TRAP_IGNORE( appui.HandleEnterEditModeL( EFalse ) ); } // Update background - appui.ViewAdapter().BgManager().DrawNow(); + appui.ViewAdapter().BgManager().UpdateScreen(); } // -----------------------------------------------------------------------------