--- a/idlehomescreen/xmluirendering/uiengine/src/xnuiengineimpl.cpp Thu Jan 07 12:39:41 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnuiengineimpl.cpp Mon Jan 18 20:10:36 2010 +0200
@@ -52,6 +52,8 @@
#include "xnnode.h"
#include "xnpanic.h"
#include "xneffectmanager.h"
+#include "xneditor.h"
+#include "xnbackgroundmanager.h"
#ifdef _XN_PERFORMANCE_TEST_
#include "xntimemon.h"
@@ -7779,7 +7781,7 @@
CXnProperty* name = CXnProperty::NewL(
XnPropertyNames::action::trigger::KName,
- nameValue, aUiEngine.ODT()->DomDocument().StringPool() );
+ nameValue, *aUiEngine.ODT()->DomDocument().StringPool() );
CleanupStack::Pop( nameValue );
@@ -7838,7 +7840,7 @@
//
static CXnNode* BuildScreenDeviceChangeTriggerNodeLC( CXnUiEngine& aUiEngine )
{
- CXnDomStringPool& sp( aUiEngine.ODT()->DomDocument().StringPool() );
+ CXnDomStringPool* sp( aUiEngine.ODT()->DomDocument().StringPool() );
CXnNode* node = CXnNode::NewL();
CleanupStack::PushL( node );
@@ -7859,7 +7861,7 @@
XnPropertyNames::action::trigger::name::KScreenDeviceChange );
CXnProperty* name = CXnProperty::NewL(
- XnPropertyNames::action::trigger::KName, nameValue, sp );
+ XnPropertyNames::action::trigger::KName, nameValue, *sp );
CleanupStack::Pop( nameValue );
CleanupStack::PushL( name );
@@ -7885,7 +7887,7 @@
reasonValue->SetStringValueL( CXnDomPropertyValue::EString, *reasonString );
CXnProperty* reason = CXnProperty::NewL( XnPropertyNames::action::trigger::
- name::uidefinitionmodification::KReason, reasonValue, sp );
+ name::uidefinitionmodification::KReason, reasonValue, *sp );
CleanupStack::Pop( reasonValue );
@@ -8934,6 +8936,12 @@
// Update client rect
SetClientRectL( iAppUiAdapter.ClientRect(), EFalse );
+ // Update background rect
+ // Bg rect is always screen size.
+ TRect bgRect;
+ AknLayoutUtils::LayoutMetricsRect( AknLayoutUtils::EScreen, bgRect );
+ Editor()->BgManager().SetRect( bgRect );
+
iEditMode->HandleScreenDeviceChangedL();
// Force relayout
@@ -9373,7 +9381,7 @@
iClientRect );
iAppUiAdapter.ViewAdapter().BgControl().SetRect( aRect );
-
+
if ( aDrawNow )
{
RootNode()->SetDirtyL();
@@ -9507,7 +9515,7 @@
void CXnUiEngineImpl::PositionStylusPopupL( CXnNode& aNode,
CXnNode& aReference, const TPoint& aPosition )
{
- CXnDomStringPool& sp( aNode.DomNode()->StringPool() );
+ CXnDomStringPool* sp( aNode.DomNode()->StringPool() );
TXnDirtyRegion* dirtyRegion = FindDirtyRegionL( *iCurrentView );
RRegion region;
region.Copy( dirtyRegion->iRegion );
@@ -9516,14 +9524,14 @@
// Set initial position to (0, 0) to calculate popup metrics
CXnProperty* top = CXnProperty::NewL(
XnPropertyNames::style::common::KTop, 0,
- CXnDomPropertyValue::EPx, sp );
+ CXnDomPropertyValue::EPx, *sp );
CleanupStack::PushL( top );
aNode.SetPropertyL( top );
CleanupStack::Pop( top );
top = NULL;
CXnProperty* left = CXnProperty::NewL(
XnPropertyNames::style::common::KLeft, 0,
- CXnDomPropertyValue::EPx, sp );
+ CXnDomPropertyValue::EPx, *sp );
CleanupStack::PushL( left );
aNode.SetPropertyL( left );
CleanupStack::Pop( left );
@@ -9533,7 +9541,7 @@
CXnProperty* display = CXnProperty::NewL(
XnPropertyNames::style::common::KDisplay,
XnPropertyNames::style::common::display::KBlock,
- CXnDomPropertyValue::EString, sp );
+ CXnDomPropertyValue::EString, *sp );
CleanupStack::PushL( display );
aNode.SetPropertyL( display );
CleanupStack::Pop( display );
@@ -9717,13 +9725,13 @@
// Set positions
top = CXnProperty::NewL(
XnPropertyNames::style::common::KTop, tl.iY,
- CXnDomPropertyValue::EPx, sp );
+ CXnDomPropertyValue::EPx, *sp );
CleanupStack::PushL( top );
aNode.SetPropertyL( top );
CleanupStack::Pop( top );
left = CXnProperty::NewL(
XnPropertyNames::style::common::KLeft, tl.iX,
- CXnDomPropertyValue::EPx, sp );
+ CXnDomPropertyValue::EPx, *sp );
CleanupStack::PushL( left );
aNode.SetPropertyL( left );
CleanupStack::Pop( left );