# HG changeset patch # User Dremov Kirill (Nokia-D-MSW/Tampere) # Date 1286968710 -10800 # Node ID ba63c83f4716b452b93704e7c86e7c69737da365 # Parent b01126ce0bec58f9a232ec53ce2a66e3bb703609 Revision: 201039 Kit: 201041 diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/common/empty_2001f47f/group/bld.inf --- a/idlehomescreen/data/common/empty_2001f47f/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,55 +0,0 @@ -/* -* Copyright (c) 2002-2008 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* The information required for building -* -*/ - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS -// Support for productization and Carbide.Ui customization -//******************************************************** -../hsps/00/manifest.dat /epoc32/data/Z/resource/homescreen/empty_2001f47f/hsps/manifest.dat -../hsps/00/widgetconfiguration.xml /epoc32/data/Z/resource/homescreen/empty_2001f47f/hsps/widgetconfiguration.xml -../xuikon/00/empty.dat /epoc32/data/Z/resource/homescreen/empty_2001f47f/xuikon/empty_2001f47f.dat -../xuikon/00/empty.css /epoc32/data/Z/resource/homescreen/empty_2001f47f/xuikon/empty.css -../xuikon/00/empty.xml /epoc32/data/Z/resource/homescreen/empty_2001f47f/xuikon/empty.xml - -// Support for S60 builds -//*********************** -../rom/empty_variant.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(empty_2001f47f_variant.iby) -../rom/empty.iby CORE_APP_LAYER_IBY_EXPORT_PATH(empty_2001f47f.iby) - -// Dtd-localization -//***************** -PRJ_EXTENSIONS -START EXTENSION tools/dtd -OPTION SWITCH_LOC_FILE_NAME empty_2001f47f -OPTION DTD_TYPE widget -OPTION LOC_FOLDERS yes -END - -PRJ_MMPFILES - -PRJ_TESTMMPFILES - -// End of File - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/common/empty_2001f47f/hsps/00/manifest.dat --- a/idlehomescreen/data/common/empty_2001f47f/hsps/00/manifest.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,60 +0,0 @@ - - - - - - qhd_tch - vga_tch - - - - widget - - - - - - 0x2001f48a - - - - - - 0x101fb657 - - - - - - 0x2001f47f - - - - - - &qtn_empty_2001f47f_name; - - empty - - 1.0 - - - - - - widgetconfiguration.xml - - - - - empty.o0000 - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/common/empty_2001f47f/hsps/00/widgetconfiguration.xml --- a/idlehomescreen/data/common/empty_2001f47f/hsps/00/widgetconfiguration.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,5 +0,0 @@ - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/common/empty_2001f47f/rom/empty.iby --- a/idlehomescreen/data/common/empty_2001f47f/rom/empty.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,26 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* Empty widget HSPS-plugin IBY file -* -*/ - -#ifndef __EMPTY_2001F47F_IBY__ -#define __EMPTY_2001F47F_IBY__ - -// Enabled by DTD-localization tools -data=ZPRIVATE\200159c0\install\empty_2001f47f\xuikon\00\empty.o0000 \private\200159c0\install\empty_2001f47f\xuikon\00\empty.o0000 -data=ZPRIVATE\200159c0\install\empty_2001f47f\hsps\00\manifest.dat \private\200159c0\install\empty_2001f47f\hsps\00\manifest.dat - -#endif // __EMPTY_2001F47F_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/common/empty_2001f47f/rom/empty_variant.iby --- a/idlehomescreen/data/common/empty_2001f47f/rom/empty_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,25 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* Empty widget HSPS-plugin variant specific IBY file. -* -*/ - -#ifndef __EMPTY_2001F47F_VARIANT_IBY__ -#define __EMPTY_2001F47F_VARIANT_IBY__ - -// Enabled by variation tools, variant specific -data=ZPRIVATE\200159c0\install\empty_2001f47f\hsps\00\widgetconfiguration.xml \private\200159c0\install\empty_2001f47f\hsps\00\widgetconfiguration.xml - -#endif // __EMPTY_2001F47F_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/common/empty_2001f47f/xuikon/00/empty.css --- a/idlehomescreen/data/common/empty_2001f47f/xuikon/00/empty.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,6 +0,0 @@ -widget -{ - display: none; - visibility: hidden; -} - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/common/empty_2001f47f/xuikon/00/empty.dat --- a/idlehomescreen/data/common/empty_2001f47f/xuikon/00/empty.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,11 +0,0 @@ - - - E029CF57 - 101FB657 - 11001001 - empty - empty - 1.0 - empty.xml - empty.css - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/common/empty_2001f47f/xuikon/00/empty.xml --- a/idlehomescreen/data/common/empty_2001f47f/xuikon/00/empty.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,4 +0,0 @@ - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/common/group/bld.inf --- a/idlehomescreen/data/common/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,24 +0,0 @@ -/* -* Copyright (c) 2009 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: The information required for building -* -*/ - -#include "../empty_2001f47f/group/bld.inf" -#include "../view_200286ed/group/bld.inf" - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/common/view_200286ed/conf/view200286ed.confml --- a/idlehomescreen/data/common/view_200286ed/conf/view200286ed.confml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,97 +0,0 @@ - - - - - The Qhd touch is a supported display type of the xuikon homescreen - - - The Vga touch is a supported display type of the xuikon homescreen - - - Widgets on Blanko Homescreen - - Widget name - - - Bundle identifier for the (C)WRT widgets. Leave empty if not set. - - - Templeate identifier for the (C)WRT widgets. None for the native widgets - - - Locking status - - - - - true - true - - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/common/view_200286ed/conf/view200286ed.gcfml --- a/idlehomescreen/data/common/view_200286ed/conf/view200286ed.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/common/view_200286ed/conf/view200286edmanifest.confml Binary file idlehomescreen/data/common/view_200286ed/conf/view200286edmanifest.confml has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/common/view_200286ed/conf/view200286edmanifest.gcfml --- a/idlehomescreen/data/common/view_200286ed/conf/view200286edmanifest.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,62 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - & - - ; - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/common/view_200286ed/conf/view200286edxuikon.confml Binary file idlehomescreen/data/common/view_200286ed/conf/view200286edxuikon.confml has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/common/view_200286ed/conf/view200286edxuikon.gcfml --- a/idlehomescreen/data/common/view_200286ed/conf/view200286edxuikon.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/common/view_200286ed/group/bld.inf --- a/idlehomescreen/data/common/view_200286ed/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,40 +0,0 @@ -/* -* Copyright (c) 2002-2008 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* The information required for building -* -*/ - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS - -//Confml and cfgml files for the customization -// starting use confml it is need to remove root_configuration.xml direct exporting (view_200286e5_variant.iby) -//*********************************** -../conf/view200286ed.confml APP_LAYER_CONFML(view200286ed.confml) -../conf/view200286ed.gcfml APP_LAYER_GCFML(view200286ed.gcfml) -../conf/view200286edmanifest.confml APP_LAYER_CONFML(view200286edmanifest.confml) -../conf/view200286edmanifest.gcfml APP_LAYER_GCFML(view200286edmanifest.gcfml) -../conf/view200286edxuikon.confml APP_LAYER_CONFML(view200286edxuikon.confml) -../conf/view200286edxuikon.gcfml APP_LAYER_GCFML(view200286edxuikon.gcfml) - -PRJ_MMPFILES - -PRJ_TESTMMPFILES - -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/group/bld.inf --- a/idlehomescreen/data/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/group/bld.inf Wed Oct 13 14:18:30 2010 +0300 @@ -16,7 +16,6 @@ */ -#include "../common/group/bld.inf" #include "../vga_tch/group/bld.inf" // Buzzidle #include "../qhd_tch/group/bld.inf" // Flashidle diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/desktop_20026f4f/hsps/00/widgetconfiguration.xml --- a/idlehomescreen/data/qhd_tch/desktop_20026f4f/hsps/00/widgetconfiguration.xml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/desktop_20026f4f/hsps/00/widgetconfiguration.xml Wed Oct 13 14:18:30 2010 +0300 @@ -4,28 +4,28 @@ - + - - + + - + - + - + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/empty_2001f47f/group/bld.inf --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/idlehomescreen/data/qhd_tch/empty_2001f47f/group/bld.inf Wed Oct 13 14:18:30 2010 +0300 @@ -0,0 +1,55 @@ +/* +* Copyright (c) 2002-2008 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" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* The information required for building +* +*/ + +#include + +PRJ_PLATFORMS +DEFAULT + +PRJ_EXPORTS +// Support for productization and Carbide.Ui customization +//******************************************************** +../hsps/00/manifest.dat /epoc32/data/Z/resource/homescreen/empty_2001f47f/hsps/manifest.dat +../hsps/00/widgetconfiguration.xml /epoc32/data/Z/resource/homescreen/empty_2001f47f/hsps/widgetconfiguration.xml +../xuikon/00/empty.dat /epoc32/data/Z/resource/homescreen/empty_2001f47f/xuikon/empty_2001f47f.dat +../xuikon/00/empty.css /epoc32/data/Z/resource/homescreen/empty_2001f47f/xuikon/empty.css +../xuikon/00/empty.xml /epoc32/data/Z/resource/homescreen/empty_2001f47f/xuikon/empty.xml + +// Support for S60 builds +//*********************** +../rom/empty_variant.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(empty_2001f47f_variant.iby) +../rom/empty.iby CORE_APP_LAYER_IBY_EXPORT_PATH(empty_2001f47f.iby) + +// Dtd-localization +//***************** +PRJ_EXTENSIONS +START EXTENSION tools/dtd +OPTION SWITCH_LOC_FILE_NAME empty_2001f47f +OPTION DTD_TYPE widget +OPTION LOC_FOLDERS yes +END + +PRJ_MMPFILES + +PRJ_TESTMMPFILES + +// End of File + + + + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/empty_2001f47f/hsps/00/manifest.dat --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/idlehomescreen/data/qhd_tch/empty_2001f47f/hsps/00/manifest.dat Wed Oct 13 14:18:30 2010 +0300 @@ -0,0 +1,60 @@ + + + + + + + qhd_tch + + + + widget + + + + + + 0x2001f48a + + + + + + 0x101fb657 + + + + + + 0x2001f47f + + + + + + &qtn_empty_2001f47f_name; + + empty + + 1.0 + + + + + + widgetconfiguration.xml + + + + + empty.o0000 + + + + + + + + + + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/empty_2001f47f/hsps/00/widgetconfiguration.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/idlehomescreen/data/qhd_tch/empty_2001f47f/hsps/00/widgetconfiguration.xml Wed Oct 13 14:18:30 2010 +0300 @@ -0,0 +1,5 @@ + + + + + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/empty_2001f47f/rom/empty.iby --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/idlehomescreen/data/qhd_tch/empty_2001f47f/rom/empty.iby Wed Oct 13 14:18:30 2010 +0300 @@ -0,0 +1,30 @@ +/* +* Copyright (c) 2005-2007 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" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* Empty widget HSPS-plugin IBY file +* +*/ + +#ifndef __EMPTY_2001F47F_IBY__ +#define __EMPTY_2001F47F_IBY__ + +#if defined(__LAYOUT_360_640_TOUCH) || defined(__LAYOUT_640_360_TOUCH) + +// Enabled by DTD-localization tools +data=ZPRIVATE\200159c0\install\empty_2001f47f\xuikon\00\empty.o0000 \private\200159c0\install\empty_2001f47f\xuikon\00\empty.o0000 +data=ZPRIVATE\200159c0\install\empty_2001f47f\hsps\00\manifest.dat \private\200159c0\install\empty_2001f47f\hsps\00\manifest.dat + +#endif // __LAYOUT_360_640_TOUCH || __LAYOUT_640_360_TOUCH + +#endif // __EMPTY_2001F47F_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/empty_2001f47f/rom/empty_variant.iby --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/idlehomescreen/data/qhd_tch/empty_2001f47f/rom/empty_variant.iby Wed Oct 13 14:18:30 2010 +0300 @@ -0,0 +1,29 @@ +/* +* Copyright (c) 2005-2007 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" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* Empty widget HSPS-plugin variant specific IBY file. +* +*/ + +#ifndef __EMPTY_2001F47F_VARIANT_IBY__ +#define __EMPTY_2001F47F_VARIANT_IBY__ + +#if defined(__LAYOUT_360_640_TOUCH) || defined(__LAYOUT_640_360_TOUCH) + +// Enabled by variation tools, variant specific +data=ZPRIVATE\200159c0\install\empty_2001f47f\hsps\00\widgetconfiguration.xml \private\200159c0\install\empty_2001f47f\hsps\00\widgetconfiguration.xml + +#endif // __LAYOUT_360_640_TOUCH || __LAYOUT_640_360_TOUCH + +#endif // __EMPTY_2001F47F_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/empty_2001f47f/xuikon/00/empty.css --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/idlehomescreen/data/qhd_tch/empty_2001f47f/xuikon/00/empty.css Wed Oct 13 14:18:30 2010 +0300 @@ -0,0 +1,6 @@ +widget +{ + display: none; + visibility: hidden; +} + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/empty_2001f47f/xuikon/00/empty.dat --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/idlehomescreen/data/qhd_tch/empty_2001f47f/xuikon/00/empty.dat Wed Oct 13 14:18:30 2010 +0300 @@ -0,0 +1,11 @@ + + + E029CF57 + 101FB657 + 11001001 + empty + empty + 1.0 + empty.xml + empty.css + \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/empty_2001f47f/xuikon/00/empty.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/idlehomescreen/data/qhd_tch/empty_2001f47f/xuikon/00/empty.xml Wed Oct 13 14:18:30 2010 +0300 @@ -0,0 +1,4 @@ + + + + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/group/bld.inf --- a/idlehomescreen/data/qhd_tch/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/group/bld.inf Wed Oct 13 14:18:30 2010 +0300 @@ -16,6 +16,7 @@ */ #include "../desktop_20026f4f/group/bld.inf" +#include "../empty_2001f47f/group/bld.inf" #include "../onerow_2001f480/group/bld.inf" #include "../tworows_2001f488/group/bld.inf" #include "../threerows_2001f486/group/bld.inf" @@ -27,6 +28,7 @@ #include "../view_20022fe0/group/bld.inf" #include "../view_200286e4/group/bld.inf" #include "../view_200286e5/group/bld.inf" +#include "../view_200286ed/group/bld.inf" #include "../templateview_20026f50/group/bld.inf" #include "../root_2001f482/group/bld.inf" diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/00/onerow.css --- a/idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/00/onerow.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/00/onerow.css Wed Oct 13 14:18:30 2010 +0300 @@ -1,40 +1,30 @@ widget#onerow_template { block-progression:rl; - } image#image_container { - height: 70px; - width: 70px; - margin-top:3px; - margin-bottom:3px; - margin-left:3px; - margin-right:2px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; + padding-top:8px; + padding-bottom:8px; + padding-left:8px; + padding-right:8px; + height: 90%; + width: 20%; nav-index:appearance; _s60-aspect-ratio:preserve; } text { - font-size:3.5u; - margin-left:2px; - margin-right:3px; - margin-top:3px; - margin-bottom:3px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; - text-align:center; + padding-left:8px; + padding-right:8px; + font-line-space: 15; + text-align:left; text-overflow-mode: wrap; max-line-amount: 2; font-family: EAknLogicalFontSecondaryFont; + font-size: 23px; color: "SKIN(268458534 13056 74)"; nav-index:appearance; } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/37/onerow.css --- a/idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/37/onerow.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/37/onerow.css Wed Oct 13 14:18:30 2010 +0300 @@ -6,36 +6,27 @@ image#image_container { - height: 70px; - width: 70px; - margin-top:3px; - margin-bottom:3px; - margin-left:3px; - margin-right:2px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; + padding-top:8px; + padding-bottom:8px; + padding-left:8px; + padding-right:8px; + height: 90%; + width: 20%; nav-index:appearance; _s60-aspect-ratio:preserve; } text { - font-size:3.5u; - margin-left:2px; - margin-right:3px; - margin-top:3px; - margin-bottom:3px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; + padding-left:8px; + padding-right:8px; + font-line-space: 15; direction: ltr; - text-align:center; + text-align: right; text-overflow-mode: wrap; max-line-amount: 2; font-family: EAknLogicalFontSecondaryFont; + font-size: 23px; color: "SKIN(268458534 13056 74)"; nav-index:appearance; } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/50/onerow.css --- a/idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/50/onerow.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/50/onerow.css Wed Oct 13 14:18:30 2010 +0300 @@ -6,36 +6,27 @@ image#image_container { - height: 70px; - width: 70px; - margin-top:3px; - margin-bottom:3px; - margin-left:3px; - margin-right:2px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; + padding-top:8px; + padding-bottom:8px; + padding-left:8px; + padding-right:8px; + height: 90%; + width: 20%; nav-index:appearance; _s60-aspect-ratio:preserve; } text { - font-size:3.5u; - margin-left:2px; - margin-right:3px; - margin-top:3px; - margin-bottom:3px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; + padding-left:8px; + padding-right:8px; + font-line-space: 15; direction: ltr; - text-align:center; + text-align: right; text-overflow-mode: wrap; max-line-amount: 2; font-family: EAknLogicalFontSecondaryFont; + font-size: 23px; color: "SKIN(268458534 13056 74)"; nav-index:appearance; } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/57/onerow.css --- a/idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/57/onerow.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/57/onerow.css Wed Oct 13 14:18:30 2010 +0300 @@ -6,36 +6,27 @@ image#image_container { - height: 70px; - width: 70px; - margin-top:3px; - margin-bottom:3px; - margin-left:3px; - margin-right:2px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; + padding-top:8px; + padding-bottom:8px; + padding-left:8px; + padding-right:8px; + height: 90%; + width: 20%; nav-index:appearance; _s60-aspect-ratio:preserve; } text { - font-size:3.5u; - margin-left:2px; - margin-right:3px; - margin-top:3px; - margin-bottom:3px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; + padding-left:8px; + padding-right:8px; + font-line-space: 15; direction: ltr; - text-align:center; + text-align: right; text-overflow-mode: wrap; max-line-amount: 2; font-family: EAknLogicalFontSecondaryFont; + font-size: 23px; color: "SKIN(268458534 13056 74)"; nav-index:appearance; } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/94/onerow.css --- a/idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/94/onerow.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/94/onerow.css Wed Oct 13 14:18:30 2010 +0300 @@ -6,36 +6,27 @@ image#image_container { - height: 70px; - width: 70px; - margin-top:3px; - margin-bottom:3px; - margin-left:3px; - margin-right:2px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; + padding-top:8px; + padding-bottom:8px; + padding-left:8px; + padding-right:8px; + height: 90%; + width: 20%; nav-index:appearance; _s60-aspect-ratio:preserve; } text { - font-size:3.5u; - margin-left:2px; - margin-right:3px; - margin-top:3px; - margin-bottom:3px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; + padding-left:8px; + padding-right:8px; + font-line-space: 15; direction: ltr; - text-align:center; + text-align: right; text-overflow-mode: wrap; max-line-amount: 2; font-family: EAknLogicalFontSecondaryFont; + font-size: 23px; color: "SKIN(268458534 13056 74)"; nav-index:appearance; } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/posterwideimage_2001fdbc/xuikon/00/posterwideimage.css --- a/idlehomescreen/data/qhd_tch/posterwideimage_2001fdbc/xuikon/00/posterwideimage.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/posterwideimage_2001fdbc/xuikon/00/posterwideimage.css Wed Oct 13 14:18:30 2010 +0300 @@ -1,9 +1,5 @@ widget#posterwideimage_template { - padding-top: 4px; - padding-left: 10px; - padding-right: 10px; - padding-bottom: 5px; nav-index:appearance; background-color: none; } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/profile_2001cb7c/xuikon/00/profile.css --- a/idlehomescreen/data/qhd_tch/profile_2001cb7c/xuikon/00/profile.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/profile_2001cb7c/xuikon/00/profile.css Wed Oct 13 14:18:30 2010 +0300 @@ -9,30 +9,20 @@ block-progression: lr; } -clock#clock +clock { width: 152px; margin-right: 3px; padding-top: 2px; padding-bottom: 2px; _s60-format: locale; - _s60-font-size: 56px; + _s60-ampm-font-size: 16px; + _s60-digital-font-size: 56px; color: "SKIN(268458534 13056 74)"; background-color: "SKIN(268458534 9916)"; nav-index: appearance; } -ampm -{ - position: absolute; - width: 46px; - height: 20px; - left: 88px; - top: 60px; - text-align: right; - _s60-font-size: 16px; -} - box.clock_profile { background-color: "SKIN(268458534 9916)"; @@ -46,22 +36,34 @@ block-progression: tb; } -clock#date_content +box#date_container { width: auto; height: 26px; - margin-left: auto; - margin-right: auto; + block-progression: lr; margin-bottom: 3px; padding-bottom: 2px; - color:"SKIN(268458534 13056 74)"; - background-color: "SKIN(268458534 9916)"; - nav-index: appearance; +} + +box#date_content +{ + width: adaptive; + height: adaptive; + margin-left: auto; + margin-right: auto; } -date +text#date_text { - _s60-font-size: 3.5u; + text-align: center; + margin-left: 2px; + margin-right: 2px; + width: adaptive; + height: adaptive; + font-family: EAknLogicalFontSecondaryFont; + font-size: 3.5u; + _s60-text-valign: top; + color:"SKIN(268458534 13056 74)"; } box#profile_softindicator diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/profile_2001cb7c/xuikon/00/profile.xml --- a/idlehomescreen/data/qhd_tch/profile_2001cb7c/xuikon/00/profile.xml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/profile_2001cb7c/xuikon/00/profile.xml Wed Oct 13 14:18:30 2010 +0300 @@ -9,14 +9,6 @@ - - - - - - - - @@ -25,16 +17,20 @@ - - - + + + + + + + - - + + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/profile_2001cb7c/xuikon/37/profile.css --- a/idlehomescreen/data/qhd_tch/profile_2001cb7c/xuikon/37/profile.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/profile_2001cb7c/xuikon/37/profile.css Wed Oct 13 14:18:30 2010 +0300 @@ -9,30 +9,20 @@ block-progression: lr; } -clock#clock +clock { width: 152px; margin-left: 3px; padding-top: 2px; padding-bottom: 2px; _s60-format: locale; - _s60-font-size: 56px; + _s60-ampm-font-size: 16px; + _s60-digital-font-size: 56px; color: "SKIN(268458534 13056 74)"; background-color: "SKIN(268458534 9916)"; nav-index: appearance; } -ampm -{ - position: absolute; - width: 46px; - height: 20px; - left: 88px; - top: 60px; - text-align: right; - _s60-font-size: 16px; -} - box.clock_profile { background-color: "SKIN(268458534 9916)"; @@ -46,22 +36,34 @@ block-progression: tb; } -clock#date_content +box#date_container { width: auto; height: 26px; - margin-left: auto; - margin-right: auto; + block-progression: rl; margin-bottom: 3px; padding-bottom: 2px; - color:"SKIN(268458534 13056 74)"; - background-color: "SKIN(268458534 9916)"; - nav-index: appearance; +} + +box#date_content +{ + width: adaptive; + height: adaptive; + margin-left: auto; + margin-right: auto; } -date +text#date_text { - _s60-font-size: 3.5u; + text-align: center; + margin-left: 2px; + margin-right: 2px; + width: adaptive; + height: adaptive; + font-family: EAknLogicalFontSecondaryFont; + font-size: 3.5u; + _s60-text-valign: top; + color:"SKIN(268458534 13056 74)"; } box#profile_softindicator diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/profile_2001cb7c/xuikon/50/profile.css --- a/idlehomescreen/data/qhd_tch/profile_2001cb7c/xuikon/50/profile.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/profile_2001cb7c/xuikon/50/profile.css Wed Oct 13 14:18:30 2010 +0300 @@ -9,30 +9,20 @@ block-progression: lr; } -clock#clock +clock { width: 152px; margin-left: 3px; padding-top: 2px; padding-bottom: 2px; _s60-format: locale; - _s60-font-size: 56px; + _s60-ampm-font-size: 16px; + _s60-digital-font-size: 56px; color: "SKIN(268458534 13056 74)"; background-color: "SKIN(268458534 9916)"; nav-index: appearance; } -ampm -{ - position: absolute; - width: 46px; - height: 20px; - left: 88px; - top: 60px; - text-align: right; - _s60-font-size: 16px; -} - box.clock_profile { background-color: "SKIN(268458534 9916)"; @@ -46,22 +36,34 @@ block-progression: tb; } -clock#date_content +box#date_container { width: auto; height: 26px; - margin-left: auto; - margin-right: auto; + block-progression: rl; margin-bottom: 3px; padding-bottom: 2px; - color:"SKIN(268458534 13056 74)"; - background-color: "SKIN(268458534 9916)"; - nav-index: appearance; +} + +box#date_content +{ + width: adaptive; + height: adaptive; + margin-left: auto; + margin-right: auto; } -date +text#date_text { - _s60-font-size: 3.5u; + text-align: center; + margin-left: 2px; + margin-right: 2px; + width: adaptive; + height: adaptive; + font-family: EAknLogicalFontSecondaryFont; + font-size: 3.5u; + _s60-text-valign: top; + color:"SKIN(268458534 13056 74)"; } box#profile_softindicator diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/profile_2001cb7c/xuikon/57/profile.css --- a/idlehomescreen/data/qhd_tch/profile_2001cb7c/xuikon/57/profile.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/profile_2001cb7c/xuikon/57/profile.css Wed Oct 13 14:18:30 2010 +0300 @@ -9,30 +9,20 @@ block-progression: lr; } -clock#clock +clock { width: 152px; margin-left: 3px; padding-top: 2px; padding-bottom: 2px; _s60-format: locale; - _s60-font-size: 56px; + _s60-ampm-font-size: 16px; + _s60-digital-font-size: 56px; color: "SKIN(268458534 13056 74)"; background-color: "SKIN(268458534 9916)"; nav-index: appearance; } -ampm -{ - position: absolute; - width: 46px; - height: 20px; - left: 88px; - top: 60px; - text-align: right; - _s60-font-size: 16px; -} - box.clock_profile { background-color: "SKIN(268458534 9916)"; @@ -46,22 +36,34 @@ block-progression: tb; } -clock#date_content +box#date_container { width: auto; height: 26px; - margin-left: auto; - margin-right: auto; + block-progression: rl; margin-bottom: 3px; padding-bottom: 2px; - color:"SKIN(268458534 13056 74)"; - background-color: "SKIN(268458534 9916)"; - nav-index: appearance; +} + +box#date_content +{ + width: adaptive; + height: adaptive; + margin-left: auto; + margin-right: auto; } -date +text#date_text { - _s60-font-size: 3.5u; + text-align: center; + margin-left: 2px; + margin-right: 2px; + width: adaptive; + height: adaptive; + font-family: EAknLogicalFontSecondaryFont; + font-size: 3.5u; + _s60-text-valign: top; + color:"SKIN(268458534 13056 74)"; } box#profile_softindicator diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/profile_2001cb7c/xuikon/94/profile.css --- a/idlehomescreen/data/qhd_tch/profile_2001cb7c/xuikon/94/profile.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/profile_2001cb7c/xuikon/94/profile.css Wed Oct 13 14:18:30 2010 +0300 @@ -9,30 +9,20 @@ block-progression: lr; } -clock#clock +clock { width: 152px; margin-left: 3px; padding-top: 2px; padding-bottom: 2px; _s60-format: locale; - _s60-font-size: 56px; + _s60-ampm-font-size: 16px; + _s60-digital-font-size: 56px; color: "SKIN(268458534 13056 74)"; background-color: "SKIN(268458534 9916)"; nav-index: appearance; } -ampm -{ - position: absolute; - width: 46px; - height: 20px; - left: 88px; - top: 60px; - text-align: right; - _s60-font-size: 16px; -} - box.clock_profile { background-color: "SKIN(268458534 9916)"; @@ -46,22 +36,34 @@ block-progression: tb; } -clock#date_content +box#date_container { width: auto; height: 26px; - margin-left: auto; - margin-right: auto; + block-progression: rl; margin-bottom: 3px; padding-bottom: 2px; - color:"SKIN(268458534 13056 74)"; - background-color: "SKIN(268458534 9916)"; - nav-index: appearance; +} + +box#date_content +{ + width: adaptive; + height: adaptive; + margin-left: auto; + margin-right: auto; } -date +text#date_text { - _s60-font-size: 3.5u; + text-align: center; + margin-left: 2px; + margin-right: 2px; + width: adaptive; + height: adaptive; + font-family: EAknLogicalFontSecondaryFont; + font-size: 3.5u; + _s60-text-valign: top; + color:"SKIN(268458534 13056 74)"; } box#profile_softindicator diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/root_2001f482/conf/root2001f482.confml Binary file idlehomescreen/data/qhd_tch/root_2001f482/conf/root2001f482.confml has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/root_2001f482/conf/root2001f482.gcfml --- a/idlehomescreen/data/qhd_tch/root_2001f482/conf/root2001f482.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/root_2001f482/conf/root2001f482.gcfml Wed Oct 13 14:18:30 2010 +0300 @@ -1,5 +1,5 @@ - + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/templateview_20026f50/loc/templateview.loc --- a/idlehomescreen/data/qhd_tch/templateview_20026f50/loc/templateview.loc Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/templateview_20026f50/loc/templateview.loc Wed Oct 13 14:18:30 2010 +0300 @@ -308,15 +308,3 @@ // w: // r: TB9.2 #define qtn_hs_text_softkey_call "Call" - -// d: Lock keypad -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_lock_keypad "Lock keypad" - -// d: Menu -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_apps_menu_skey "Menu" diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/00/templateview.css --- a/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/00/templateview.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/00/templateview.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: ltr; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins @@ -25,7 +23,7 @@ margin-bottom: 4px; margin-right: 5px; margin-left: 5px; - + _s60-longtap: true; nav-index: appearance; @@ -50,7 +48,7 @@ { _s60-longtap: true; _s60-aspect-ratio: preserve; -} +} softkey#msk_ltr { @@ -61,4 +59,3 @@ { display: none; } - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/00/templateview.xml --- a/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/00/templateview.xml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/00/templateview.xml Wed Oct 13 14:18:30 2010 +0300 @@ -133,7 +133,6 @@ - @@ -143,6 +142,7 @@ + @@ -286,3 +286,4 @@ + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/00/view.dtd --- a/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/00/view.dtd Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/00/view.dtd Wed Oct 13 14:18:30 2010 +0300 @@ -494,21 +494,3 @@ qtn_hs_text_softkey_call.parents "" --> - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/37/templateview.css --- a/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/37/templateview.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/37/templateview.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: rtl; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins @@ -25,7 +23,7 @@ margin-bottom: 4px; margin-right: 5px; margin-left: 5px; - + _s60-longtap: true; nav-index: appearance; @@ -50,7 +48,7 @@ { _s60-longtap: true; _s60-aspect-ratio: preserve; -} +} softkey#msk_ltr { @@ -61,4 +59,3 @@ { display: block; } - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/50/templateview.css --- a/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/50/templateview.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/50/templateview.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: rtl; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins @@ -25,7 +23,7 @@ margin-bottom: 4px; margin-right: 5px; margin-left: 5px; - + _s60-longtap: true; nav-index: appearance; @@ -50,7 +48,7 @@ { _s60-longtap: true; _s60-aspect-ratio: preserve; -} +} softkey#msk_ltr { @@ -61,4 +59,3 @@ { display: block; } - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/57/templateview.css --- a/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/57/templateview.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/57/templateview.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: rtl; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins @@ -25,7 +23,7 @@ margin-bottom: 4px; margin-right: 5px; margin-left: 5px; - + _s60-longtap: true; nav-index: appearance; @@ -50,7 +48,7 @@ { _s60-longtap: true; _s60-aspect-ratio: preserve; -} +} softkey#msk_ltr { @@ -61,4 +59,3 @@ { display: block; } - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/94/templateview.css --- a/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/94/templateview.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/94/templateview.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: rtl; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins @@ -25,7 +23,7 @@ margin-bottom: 4px; margin-right: 5px; margin-left: 5px; - + _s60-longtap: true; nav-index: appearance; @@ -50,7 +48,7 @@ { _s60-longtap: true; _s60-aspect-ratio: preserve; -} +} softkey#msk_ltr { @@ -61,4 +59,3 @@ { display: block; } - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/00/threerows.css --- a/idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/00/threerows.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/00/threerows.css Wed Oct 13 14:18:30 2010 +0300 @@ -5,38 +5,29 @@ image#image_container { - height: 70px; - width: 70px; - margin-top:3px; - margin-bottom:3px; - margin-left:3px; - margin-right:2px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; + padding-top:8px; + padding-bottom:8px; + padding-left:8px; + padding-right:8px; + height: 90%; + width: 20%; + _s60-aspect-ratio:preserve; nav-index:appearance; - _s60-aspect-ratio:preserve; } box#text_container { - direction: ltr; block-progression:tb; - margin-left:2px; - margin-right:3px; } text.text_box { - padding-right:3px; - padding-left:3px; - padding-top:1px; - padding-bottom:1px; + padding-left:8px; + padding-right:8px; + text-align:left; font-family: EAknLogicalFontSecondaryFont; - font-size: 3.5u; - height:25px; - color:"SKIN(268458534 13056 74)"; + font-size: 23px; + color: "SKIN(268458534 13056 74)"; nav-index:appearance; _s60-text-valign: top; } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/37/threerows.css --- a/idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/37/threerows.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/37/threerows.css Wed Oct 13 14:18:30 2010 +0300 @@ -6,40 +6,30 @@ image#image_container { - height: 70px; - width: 70px; - margin-top:3px; - margin-bottom:3px; - margin-left:3px; - margin-right:2px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; + padding-top:8px; + padding-bottom:8px; + padding-left:8px; + padding-right:8px; + height: 90%; + width: 20%; + _s60-aspect-ratio:preserve; nav-index:appearance; - _s60-aspect-ratio:preserve; } box#text_container { - direction: ltr; block-progression:tb; - margin-left:2px; - margin-right:3px; } text.text_box { - padding-right:3px; - padding-left:3px; - padding-top:1px; - padding-bottom:1px; + padding-left:8px; + padding-right:8px; direction: ltr; text-align: right; font-family: EAknLogicalFontSecondaryFont; - font-size: 3.5u; - height:25px; - color:"SKIN(268458534 13056 74)"; + font-size: 23px; + color: "SKIN(268458534 13056 74)"; nav-index:appearance; _s60-text-valign: top; } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/50/threerows.css --- a/idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/50/threerows.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/50/threerows.css Wed Oct 13 14:18:30 2010 +0300 @@ -6,40 +6,30 @@ image#image_container { - height: 70px; - width: 70px; - margin-top:3px; - margin-bottom:3px; - margin-left:3px; - margin-right:2px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; + padding-top:8px; + padding-bottom:8px; + padding-left:8px; + padding-right:8px; + height: 90%; + width: 20%; + _s60-aspect-ratio:preserve; nav-index:appearance; - _s60-aspect-ratio:preserve; } box#text_container { - direction: ltr; block-progression:tb; - margin-left:2px; - margin-right:3px; } text.text_box { - padding-right:3px; - padding-left:3px; - padding-top:1px; - padding-bottom:1px; + padding-left:8px; + padding-right:8px; direction: ltr; text-align: right; font-family: EAknLogicalFontSecondaryFont; - font-size: 3.5u; - height:25px; - color:"SKIN(268458534 13056 74)"; + font-size: 23px; + color: "SKIN(268458534 13056 74)"; nav-index:appearance; _s60-text-valign: top; } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/57/threerows.css --- a/idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/57/threerows.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/57/threerows.css Wed Oct 13 14:18:30 2010 +0300 @@ -6,40 +6,31 @@ image#image_container { - height: 70px; - width: 70px; - margin-top:3px; - margin-bottom:3px; - margin-left:3px; - margin-right:2px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; + padding-top:8px; + padding-bottom:8px; + padding-left:8px; + padding-right:8px; + height: 90%; + width: 20%; + _s60-aspect-ratio:preserve; nav-index:appearance; - _s60-aspect-ratio:preserve; } box#text_container { - direction: ltr; block-progression:tb; - margin-left:2px; - margin-right:3px; } text.text_box { - padding-right:3px; - padding-left:3px; - padding-top:1px; - padding-bottom:1px; + padding-left:8px; + padding-right:8px; direction: ltr; text-align: right; font-family: EAknLogicalFontSecondaryFont; - font-size: 3.5u; - height:25px; - color:"SKIN(268458534 13056 74)"; + font-size: 23px; + color: "SKIN(268458534 13056 74)"; nav-index:appearance; _s60-text-valign: top; } + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/94/threerows.css --- a/idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/94/threerows.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/94/threerows.css Wed Oct 13 14:18:30 2010 +0300 @@ -6,40 +6,30 @@ image#image_container { - height: 70px; - width: 70px; - margin-top:3px; - margin-bottom:3px; - margin-left:3px; - margin-right:2px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; + padding-top:8px; + padding-bottom:8px; + padding-left:8px; + padding-right:8px; + height: 90%; + width: 20%; + _s60-aspect-ratio:preserve; nav-index:appearance; - _s60-aspect-ratio:preserve; } box#text_container { - direction: ltr; block-progression:tb; - margin-left:2px; - margin-right:3px; } text.text_box { - padding-right:3px; - padding-left:3px; - padding-top:1px; - padding-bottom:1px; + padding-left:8px; + padding-right:8px; direction: ltr; text-align: right; font-family: EAknLogicalFontSecondaryFont; - font-size: 3.5u; - height:25px; - color:"SKIN(268458534 13056 74)"; + font-size: 23px; + color: "SKIN(268458534 13056 74)"; nav-index:appearance; _s60-text-valign: top; } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/00/tworows.css --- a/idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/00/tworows.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/00/tworows.css Wed Oct 13 14:18:30 2010 +0300 @@ -5,38 +5,29 @@ image#image_container { - height: 70px; - width: 70px; - margin-top:3px; - margin-bottom:3px; - margin-left:3px; - margin-right:2px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; + padding-top:8px; + padding-bottom:8px; + padding-left:8px; + padding-right:8px; + height: 90%; + width: 20%; + _s60-aspect-ratio:preserve; nav-index:appearance; - _s60-aspect-ratio:preserve; } box#text_container { - direction: ltr; block-progression:tb; - margin-left:2px; - margin-right:3px; - margin-top:10px; } text.text_box { - padding-right:3px; - padding-left:3px; - padding-top:3px; - padding-bottom:3px; + padding-right:8px; + padding-left:8px; + padding-top:8px; + text-align:left; font-family: EAknLogicalFontSecondaryFont; - font-size: 3.5u; - height:25px; + font-size: 23px; color:"SKIN(268458534 13056 74)"; nav-index:appearance; _s60-text-valign: top; diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/37/tworows.css --- a/idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/37/tworows.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/37/tworows.css Wed Oct 13 14:18:30 2010 +0300 @@ -6,39 +6,30 @@ image#image_container { - height: 70px; - width: 70px; - margin-top:3px; - margin-bottom:3px; - margin-left:3px; - margin-right:2px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; + padding-top:8px; + padding-bottom:8px; + padding-left:8px; + padding-right:8px; + height: 90%; + width: 20%; + _s60-aspect-ratio:preserve; nav-index:appearance; - _s60-aspect-ratio:preserve; } box#text_container { block-progression:tb; - margin-left:2px; - margin-right:3px; - margin-top:10px; } text.text_box { - padding-right:3px; - padding-left:3px; - padding-top:3px; - padding-bottom:3px; + padding-right:8px; + padding-left:8px; + padding-top:8px; direction: ltr; text-align: right; font-family: EAknLogicalFontSecondaryFont; - font-size: 3.5u; - height:25px; + font-size: 23px; color:"SKIN(268458534 13056 74)"; nav-index:appearance; _s60-text-valign: top; diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/50/tworows.css --- a/idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/50/tworows.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/50/tworows.css Wed Oct 13 14:18:30 2010 +0300 @@ -6,39 +6,30 @@ image#image_container { - height: 70px; - width: 70px; - margin-top:3px; - margin-bottom:3px; - margin-left:3px; - margin-right:2px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; + padding-top:8px; + padding-bottom:8px; + padding-left:8px; + padding-right:8px; + height: 90%; + width: 20%; + _s60-aspect-ratio:preserve; nav-index:appearance; - _s60-aspect-ratio:preserve; } box#text_container { block-progression:tb; - margin-left:2px; - margin-right:3px; - margin-top:10px; } text.text_box { - padding-right:3px; - padding-left:3px; - padding-top:3px; - padding-bottom:3px; + padding-right:8px; + padding-left:8px; + padding-top:8px; direction: ltr; text-align: right; font-family: EAknLogicalFontSecondaryFont; - font-size: 3.5u; - height:25px; + font-size: 23px; color:"SKIN(268458534 13056 74)"; nav-index:appearance; _s60-text-valign: top; diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/57/tworows.css --- a/idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/57/tworows.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/57/tworows.css Wed Oct 13 14:18:30 2010 +0300 @@ -6,39 +6,30 @@ image#image_container { - height: 70px; - width: 70px; - margin-top:3px; - margin-bottom:3px; - margin-left:3px; - margin-right:2px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; + padding-top:8px; + padding-bottom:8px; + padding-left:8px; + padding-right:8px; + height: 90%; + width: 20%; + _s60-aspect-ratio:preserve; nav-index:appearance; - _s60-aspect-ratio:preserve; } box#text_container { block-progression:tb; - margin-left:2px; - margin-right:3px; - margin-top:10px; } text.text_box { - padding-right:3px; - padding-left:3px; - padding-top:3px; - padding-bottom:3px; + padding-right:8px; + padding-left:8px; + padding-top:8px; direction: ltr; text-align: right; font-family: EAknLogicalFontSecondaryFont; - font-size: 3.5u; - height:25px; + font-size: 23px; color:"SKIN(268458534 13056 74)"; nav-index:appearance; _s60-text-valign: top; diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/94/tworows.css --- a/idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/94/tworows.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/94/tworows.css Wed Oct 13 14:18:30 2010 +0300 @@ -6,39 +6,30 @@ image#image_container { - height: 70px; - width: 70px; - margin-top:3px; - margin-bottom:3px; - margin-left:3px; - margin-right:2px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; + padding-top:8px; + padding-bottom:8px; + padding-left:8px; + padding-right:8px; + height: 90%; + width: 20%; + _s60-aspect-ratio:preserve; nav-index:appearance; - _s60-aspect-ratio:preserve; } box#text_container { block-progression:tb; - margin-left:2px; - margin-right:3px; - margin-top:10px; } text.text_box { - padding-right:3px; - padding-left:3px; - padding-top:3px; - padding-bottom:3px; + padding-right:8px; + padding-left:8px; + padding-top:8px; direction: ltr; text-align: right; font-family: EAknLogicalFontSecondaryFont; - font-size: 3.5u; - height:25px; + font-size: 23px; color:"SKIN(268458534 13056 74)"; nav-index:appearance; _s60-text-valign: top; diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_2001f48b/conf/view2001f48b.confml --- a/idlehomescreen/data/qhd_tch/view_2001f48b/conf/view2001f48b.confml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_2001f48b/conf/view2001f48b.confml Wed Oct 13 14:18:30 2010 +0300 @@ -1,12 +1,6 @@ - - The Qhd touch is a supported display type of the xuikon homescreen - - - The Vga touch is a supported display type of the xuikon homescreen - Maximum widget amount in Homescreen 1 page. Customizable @@ -32,6 +26,7 @@ Widgets in the Homescreen 1 Widget name + - true - true 6 true hs_qhd_tch_view diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_2001f48b/conf/view2001f48b.gcfml --- a/idlehomescreen/data/qhd_tch/view_2001f48b/conf/view2001f48b.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_2001f48b/conf/view2001f48b.gcfml Wed Oct 13 14:18:30 2010 +0300 @@ -1,9 +1,10 @@ - + + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_2001f48b/conf/view2001f48bmanifest.confml Binary file idlehomescreen/data/qhd_tch/view_2001f48b/conf/view2001f48bmanifest.confml has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_2001f48b/conf/view2001f48bmanifest.gcfml --- a/idlehomescreen/data/qhd_tch/view_2001f48b/conf/view2001f48bmanifest.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_2001f48b/conf/view2001f48bmanifest.gcfml Wed Oct 13 14:18:30 2010 +0300 @@ -1,5 +1,5 @@ - + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_2001f48b/conf/view2001f48bxuikon.confml Binary file idlehomescreen/data/qhd_tch/view_2001f48b/conf/view2001f48bxuikon.confml has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_2001f48b/conf/view2001f48bxuikon.gcfml --- a/idlehomescreen/data/qhd_tch/view_2001f48b/conf/view2001f48bxuikon.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_2001f48b/conf/view2001f48bxuikon.gcfml Wed Oct 13 14:18:30 2010 +0300 @@ -1,5 +1,5 @@ - + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_2001f48b/hsps/00/viewconfiguration.xml --- a/idlehomescreen/data/qhd_tch/view_2001f48b/hsps/00/viewconfiguration.xml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_2001f48b/hsps/00/viewconfiguration.xml Wed Oct 13 14:18:30 2010 +0300 @@ -12,44 +12,12 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_2001f48b/loc/View.loc --- a/idlehomescreen/data/qhd_tch/view_2001f48b/loc/View.loc Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_2001f48b/loc/View.loc Wed Oct 13 14:18:30 2010 +0300 @@ -308,15 +308,3 @@ // w: // r: TB9.2 #define qtn_hs_text_softkey_call "Call" - -// d: Lock keypad -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_lock_keypad "Lock keypad" - -// d: Menu -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_apps_menu_skey "Menu" diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/00/View.css --- a/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/00/View.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/00/View.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: ltr; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/00/View.dtd --- a/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/00/View.dtd Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/00/View.dtd Wed Oct 13 14:18:30 2010 +0300 @@ -494,21 +494,3 @@ qtn_hs_text_softkey_call.parents "" --> - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/00/View.xml --- a/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/00/View.xml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/00/View.xml Wed Oct 13 14:18:30 2010 +0300 @@ -133,7 +133,6 @@ - @@ -143,6 +142,7 @@ + @@ -286,3 +286,4 @@ + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/37/View.css --- a/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/37/View.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/37/View.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: rtl; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/50/View.css --- a/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/50/View.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/50/View.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: rtl; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/57/View.css --- a/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/57/View.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/57/View.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: rtl; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/94/View.css --- a/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/94/View.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/94/View.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: rtl; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_20022fe0/conf/view20022fe0.confml --- a/idlehomescreen/data/qhd_tch/view_20022fe0/conf/view20022fe0.confml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_20022fe0/conf/view20022fe0.confml Wed Oct 13 14:18:30 2010 +0300 @@ -1,12 +1,6 @@ - - The Qhd touch is a supported display type of the xuikon homescreen - - - The Vga touch is a supported display type of the xuikon homescreen - Maximum widget amount in Homescreen 4 page. Customizable @@ -253,8 +247,6 @@ - true - true 6 true hs_qhd_tch_view diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_20022fe0/conf/view20022fe0.gcfml --- a/idlehomescreen/data/qhd_tch/view_20022fe0/conf/view20022fe0.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_20022fe0/conf/view20022fe0.gcfml Wed Oct 13 14:18:30 2010 +0300 @@ -1,5 +1,5 @@ - + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_20022fe0/conf/view20022fe0manifest.confml --- a/idlehomescreen/data/qhd_tch/view_20022fe0/conf/view20022fe0manifest.confml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_20022fe0/conf/view20022fe0manifest.confml Wed Oct 13 14:18:30 2010 +0300 @@ -1,12 +1,6 @@ - + - - The Qhd touch is a supported display type of the xuikon homescreen - - - The Vga touch is a supported display type of the xuikon homescreen - - true - true 2.0 qhd_tch view diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_20022fe0/conf/view20022fe0manifest.gcfml --- a/idlehomescreen/data/qhd_tch/view_20022fe0/conf/view20022fe0manifest.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_20022fe0/conf/view20022fe0manifest.gcfml Wed Oct 13 14:18:30 2010 +0300 @@ -1,5 +1,5 @@ - + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_20022fe0/conf/view20022fe0xuikon.confml --- a/idlehomescreen/data/qhd_tch/view_20022fe0/conf/view20022fe0xuikon.confml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_20022fe0/conf/view20022fe0xuikon.confml Wed Oct 13 14:18:30 2010 +0300 @@ -1,18 +1,9 @@ - - - The Qhd touch is a supported display type of the xuikon homescreen - - - The Vga touch is a supported display type of the xuikon homescreen - - + - true - true foo diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_20022fe0/conf/view20022fe0xuikon.gcfml --- a/idlehomescreen/data/qhd_tch/view_20022fe0/conf/view20022fe0xuikon.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_20022fe0/conf/view20022fe0xuikon.gcfml Wed Oct 13 14:18:30 2010 +0300 @@ -1,5 +1,5 @@ - + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_20022fe0/loc/View.loc --- a/idlehomescreen/data/qhd_tch/view_20022fe0/loc/View.loc Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_20022fe0/loc/View.loc Wed Oct 13 14:18:30 2010 +0300 @@ -308,15 +308,3 @@ // w: // r: TB9.2 #define qtn_hs_text_softkey_call "Call" - -// d: Lock keypad -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_lock_keypad "Lock keypad" - -// d: Menu -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_apps_menu_skey "Menu" diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/00/View.css --- a/idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/00/View.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/00/View.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: ltr; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins @@ -31,6 +29,11 @@ nav-index: appearance; } +plugin:edit +{ + background-color:"SKIN(270501603 8582)"; +} + trigger#hs_popup_open_hold:edit { display: none; diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/00/View.dtd --- a/idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/00/View.dtd Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/00/View.dtd Wed Oct 13 14:18:30 2010 +0300 @@ -494,21 +494,3 @@ qtn_hs_text_softkey_call.parents "" --> - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/00/View.xml --- a/idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/00/View.xml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/00/View.xml Wed Oct 13 14:18:30 2010 +0300 @@ -133,7 +133,6 @@ - @@ -143,6 +142,7 @@ + @@ -286,3 +286,4 @@ + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/37/View.css --- a/idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/37/View.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/37/View.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: rtl; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins @@ -25,10 +23,13 @@ margin-bottom: 4px; margin-right: 5px; margin-left: 5px; - _s60-longtap: true; + nav-index: appearance; +} - nav-index: appearance; +plugin:edit +{ + background-color:"SKIN(270501603 8582)"; } trigger#hs_popup_open_hold:edit diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/50/View.css --- a/idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/50/View.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/50/View.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: rtl; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins @@ -25,10 +23,13 @@ margin-bottom: 4px; margin-right: 5px; margin-left: 5px; - _s60-longtap: true; + nav-index: appearance; +} - nav-index: appearance; +plugin:edit +{ + background-color:"SKIN(270501603 8582)"; } trigger#hs_popup_open_hold:edit diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/57/View.css --- a/idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/57/View.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/57/View.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: rtl; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins @@ -25,10 +23,13 @@ margin-bottom: 4px; margin-right: 5px; margin-left: 5px; - _s60-longtap: true; + nav-index: appearance; +} - nav-index: appearance; +plugin:edit +{ + background-color:"SKIN(270501603 8582)"; } trigger#hs_popup_open_hold:edit diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/94/View.css --- a/idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/94/View.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_20022fe0/xuikon/94/View.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: rtl; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins @@ -25,10 +23,13 @@ margin-bottom: 4px; margin-right: 5px; margin-left: 5px; - _s60-longtap: true; + nav-index: appearance; +} - nav-index: appearance; +plugin:edit +{ + background-color:"SKIN(270501603 8582)"; } trigger#hs_popup_open_hold:edit diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e4/conf/view200286e4.confml --- a/idlehomescreen/data/qhd_tch/view_200286e4/conf/view200286e4.confml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e4/conf/view200286e4.confml Wed Oct 13 14:18:30 2010 +0300 @@ -1,12 +1,6 @@ - - The Qhd touch is a supported display type of the xuikon homescreen - - - The Vga touch is a supported display type of the xuikon homescreen - Maximum widget amount in Homescreen 2 page. Customizable @@ -32,6 +26,7 @@ Widgets in the Homescreen 2 Widget name + - true - true 6 true hs_qhd_tch_view diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e4/conf/view200286e4.gcfml --- a/idlehomescreen/data/qhd_tch/view_200286e4/conf/view200286e4.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e4/conf/view200286e4.gcfml Wed Oct 13 14:18:30 2010 +0300 @@ -1,5 +1,5 @@ - + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e4/conf/view200286e4manifest.confml Binary file idlehomescreen/data/qhd_tch/view_200286e4/conf/view200286e4manifest.confml has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e4/conf/view200286e4manifest.gcfml --- a/idlehomescreen/data/qhd_tch/view_200286e4/conf/view200286e4manifest.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e4/conf/view200286e4manifest.gcfml Wed Oct 13 14:18:30 2010 +0300 @@ -1,5 +1,5 @@ - + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e4/conf/view200286e4xuikon.confml Binary file idlehomescreen/data/qhd_tch/view_200286e4/conf/view200286e4xuikon.confml has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e4/conf/view200286e4xuikon.gcfml --- a/idlehomescreen/data/qhd_tch/view_200286e4/conf/view200286e4xuikon.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e4/conf/view200286e4xuikon.gcfml Wed Oct 13 14:18:30 2010 +0300 @@ -1,5 +1,5 @@ - + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e4/loc/View.loc --- a/idlehomescreen/data/qhd_tch/view_200286e4/loc/View.loc Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e4/loc/View.loc Wed Oct 13 14:18:30 2010 +0300 @@ -308,15 +308,3 @@ // w: // r: TB9.2 #define qtn_hs_text_softkey_call "Call" - -// d: Lock keypad -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_lock_keypad "Lock keypad" - -// d: Menu -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_apps_menu_skey "Menu" diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e4/xuikon/00/View.css --- a/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/00/View.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/00/View.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: ltr; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins @@ -31,6 +29,11 @@ nav-index: appearance; } +plugin:edit +{ + background-color:"SKIN(270501603 8582)"; +} + trigger#hs_popup_open_hold:edit { display: none; diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e4/xuikon/00/View.dtd --- a/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/00/View.dtd Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/00/View.dtd Wed Oct 13 14:18:30 2010 +0300 @@ -494,21 +494,3 @@ qtn_hs_text_softkey_call.parents "" --> - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e4/xuikon/00/View.xml --- a/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/00/View.xml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/00/View.xml Wed Oct 13 14:18:30 2010 +0300 @@ -133,7 +133,6 @@ - @@ -143,6 +142,7 @@ + @@ -286,3 +286,4 @@ + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e4/xuikon/37/View.css --- a/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/37/View.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/37/View.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: rtl; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins @@ -25,10 +23,13 @@ margin-bottom: 4px; margin-right: 5px; margin-left: 5px; - _s60-longtap: true; + nav-index: appearance; +} - nav-index: appearance; +plugin:edit +{ + background-color:"SKIN(270501603 8582)"; } trigger#hs_popup_open_hold:edit diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e4/xuikon/50/View.css --- a/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/50/View.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/50/View.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: rtl; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins @@ -25,10 +23,13 @@ margin-bottom: 4px; margin-right: 5px; margin-left: 5px; - _s60-longtap: true; + nav-index: appearance; +} - nav-index: appearance; +plugin:edit +{ + background-color:"SKIN(270501603 8582)"; } trigger#hs_popup_open_hold:edit diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e4/xuikon/57/View.css --- a/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/57/View.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/57/View.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: rtl; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins @@ -25,10 +23,13 @@ margin-bottom: 4px; margin-right: 5px; margin-left: 5px; - _s60-longtap: true; + nav-index: appearance; +} - nav-index: appearance; +plugin:edit +{ + background-color:"SKIN(270501603 8582)"; } trigger#hs_popup_open_hold:edit diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e4/xuikon/94/View.css --- a/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/94/View.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/94/View.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: rtl; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins @@ -25,10 +23,13 @@ margin-bottom: 4px; margin-right: 5px; margin-left: 5px; - _s60-longtap: true; + nav-index: appearance; +} - nav-index: appearance; +plugin:edit +{ + background-color:"SKIN(270501603 8582)"; } trigger#hs_popup_open_hold:edit diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e5/conf/view200286e5.confml --- a/idlehomescreen/data/qhd_tch/view_200286e5/conf/view200286e5.confml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e5/conf/view200286e5.confml Wed Oct 13 14:18:30 2010 +0300 @@ -1,12 +1,6 @@ - - The Qhd touch is a supported display type of the xuikon homescreen - - - The Vga touch is a supported display type of the xuikon homescreen - Maximum widget amount in Homescreen 3 page. Customizable @@ -32,6 +26,7 @@ Widgets in the Homescreen 3 Widget name + - true - true 6 true hs_qhd_tch_view diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e5/conf/view200286e5.gcfml --- a/idlehomescreen/data/qhd_tch/view_200286e5/conf/view200286e5.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e5/conf/view200286e5.gcfml Wed Oct 13 14:18:30 2010 +0300 @@ -1,5 +1,5 @@ - + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e5/conf/view200286e5manifest.confml Binary file idlehomescreen/data/qhd_tch/view_200286e5/conf/view200286e5manifest.confml has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e5/conf/view200286e5manifest.gcfml --- a/idlehomescreen/data/qhd_tch/view_200286e5/conf/view200286e5manifest.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e5/conf/view200286e5manifest.gcfml Wed Oct 13 14:18:30 2010 +0300 @@ -1,5 +1,5 @@ - + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e5/conf/view200286e5xuikon.confml Binary file idlehomescreen/data/qhd_tch/view_200286e5/conf/view200286e5xuikon.confml has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e5/conf/view200286e5xuikon.gcfml --- a/idlehomescreen/data/qhd_tch/view_200286e5/conf/view200286e5xuikon.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e5/conf/view200286e5xuikon.gcfml Wed Oct 13 14:18:30 2010 +0300 @@ -1,5 +1,5 @@ - + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e5/loc/View.loc --- a/idlehomescreen/data/qhd_tch/view_200286e5/loc/View.loc Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e5/loc/View.loc Wed Oct 13 14:18:30 2010 +0300 @@ -308,15 +308,3 @@ // w: // r: TB9.2 #define qtn_hs_text_softkey_call "Call" - -// d: Lock keypad -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_lock_keypad "Lock keypad" - -// d: Menu -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_apps_menu_skey "Menu" diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e5/xuikon/00/View.css --- a/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/00/View.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/00/View.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: ltr; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins @@ -31,6 +29,11 @@ nav-index: appearance; } +plugin:edit +{ + background-color:"SKIN(270501603 8582)"; +} + trigger#hs_popup_open_hold:edit { display: none; diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e5/xuikon/00/View.dtd --- a/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/00/View.dtd Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/00/View.dtd Wed Oct 13 14:18:30 2010 +0300 @@ -494,21 +494,3 @@ qtn_hs_text_softkey_call.parents "" --> - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e5/xuikon/00/View.xml --- a/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/00/View.xml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/00/View.xml Wed Oct 13 14:18:30 2010 +0300 @@ -133,7 +133,6 @@ - @@ -143,6 +142,7 @@ + @@ -286,3 +286,4 @@ + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e5/xuikon/37/View.css --- a/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/37/View.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/37/View.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: rtl; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins @@ -25,10 +23,13 @@ margin-bottom: 4px; margin-right: 5px; margin-left: 5px; - _s60-longtap: true; + nav-index: appearance; +} - nav-index: appearance; +plugin:edit +{ + background-color:"SKIN(270501603 8582)"; } trigger#hs_popup_open_hold:edit diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e5/xuikon/50/View.css --- a/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/50/View.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/50/View.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: rtl; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins @@ -25,10 +23,13 @@ margin-bottom: 4px; margin-right: 5px; margin-left: 5px; - _s60-longtap: true; + nav-index: appearance; +} - nav-index: appearance; +plugin:edit +{ + background-color:"SKIN(270501603 8582)"; } trigger#hs_popup_open_hold:edit diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e5/xuikon/57/View.css --- a/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/57/View.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/57/View.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: rtl; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins @@ -25,10 +23,13 @@ margin-bottom: 4px; margin-right: 5px; margin-left: 5px; - _s60-longtap: true; + nav-index: appearance; +} - nav-index: appearance; +plugin:edit +{ + background-color:"SKIN(270501603 8582)"; } trigger#hs_popup_open_hold:edit diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286e5/xuikon/94/View.css --- a/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/94/View.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/94/View.css Wed Oct 13 14:18:30 2010 +0300 @@ -13,8 +13,6 @@ direction: rtl; block-progression: rl; padding-top: 3px; - padding-left: 17px; - padding-right: 17px; } plugin.plugins @@ -25,10 +23,13 @@ margin-bottom: 4px; margin-right: 5px; margin-left: 5px; - _s60-longtap: true; + nav-index: appearance; +} - nav-index: appearance; +plugin:edit +{ + background-color:"SKIN(270501603 8582)"; } trigger#hs_popup_open_hold:edit diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286ed/conf/view200286ed.confml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/idlehomescreen/data/qhd_tch/view_200286ed/conf/view200286ed.confml Wed Oct 13 14:18:30 2010 +0300 @@ -0,0 +1,99 @@ + + + + + Widgets on Blanko Homescreen + + Widget name + + + Bundle identifier for the (C)WRT widgets. Leave empty if not set. + + + Templeate identifier for the (C)WRT widgets. None for the native widgets + + + Locking status + + + + + + + \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286ed/conf/view200286ed.gcfml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/idlehomescreen/data/qhd_tch/view_200286ed/conf/view200286ed.gcfml Wed Oct 13 14:18:30 2010 +0300 @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286ed/conf/view200286edmanifest.confml Binary file idlehomescreen/data/qhd_tch/view_200286ed/conf/view200286edmanifest.confml has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286ed/conf/view200286edmanifest.gcfml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/idlehomescreen/data/qhd_tch/view_200286ed/conf/view200286edmanifest.gcfml Wed Oct 13 14:18:30 2010 +0300 @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + & + + ; + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286ed/conf/view200286edxuikon.confml Binary file idlehomescreen/data/qhd_tch/view_200286ed/conf/view200286edxuikon.confml has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286ed/conf/view200286edxuikon.gcfml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/idlehomescreen/data/qhd_tch/view_200286ed/conf/view200286edxuikon.gcfml Wed Oct 13 14:18:30 2010 +0300 @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/qhd_tch/view_200286ed/group/bld.inf --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/idlehomescreen/data/qhd_tch/view_200286ed/group/bld.inf Wed Oct 13 14:18:30 2010 +0300 @@ -0,0 +1,40 @@ +/* +* Copyright (c) 2002-2008 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" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* The information required for building +* +*/ + +#include + +PRJ_PLATFORMS +DEFAULT + +PRJ_EXPORTS + +//Confml and cfgml files for the customization +// starting use confml it is need to remove root_configuration.xml direct exporting (view_200286e5_variant.iby) +//*********************************** +../conf/view200286ed.confml APP_LAYER_CONFML(view200286ed.confml) +../conf/view200286ed.gcfml APP_LAYER_GCFML(view200286ed.gcfml) +../conf/view200286edmanifest.confml APP_LAYER_CONFML(view200286edmanifest.confml) +../conf/view200286edmanifest.gcfml APP_LAYER_GCFML(view200286edmanifest.gcfml) +../conf/view200286edxuikon.confml APP_LAYER_CONFML(view200286edxuikon.confml) +../conf/view200286edxuikon.gcfml APP_LAYER_GCFML(view200286edxuikon.gcfml) + +PRJ_MMPFILES + +PRJ_TESTMMPFILES + +// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/clockdate_200286e6/gfx/icon.mif Binary file idlehomescreen/data/vga_tch/clockdate_200286e6/gfx/icon.mif has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/clockdate_200286e6/group/bld.inf --- a/idlehomescreen/data/vga_tch/clockdate_200286e6/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,71 +0,0 @@ -/* -* Copyright (c) 2002-2008 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -*/ - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS -// Support for productization and Carbide.Ui customization -//******************************************************** -../hsps/00/manifest.dat /epoc32/data/Z/resource/homescreen/clockdate_200286e6/hsps/manifest.dat -../hsps/00/widgetconfiguration.xml /epoc32/data/Z/resource/homescreen/clockdate_200286e6/hsps/widgetconfiguration.xml - -../xuikon/00/clockdate.dat /epoc32/data/Z/resource/homescreen/clockdate_200286e6/xuikon/clockdate_200286e6.dat -../xuikon/00/clockdate.css /epoc32/data/Z/resource/homescreen/clockdate_200286e6/xuikon/clockdate.css -../xuikon/00/clockdate.xml /epoc32/data/Z/resource/homescreen/clockdate_200286e6/xuikon/clockdate.xml - -// logo icon -../gfx/icon.mif /epoc32/data/Z/resource/homescreen/clockdate_200286e6/hsps/icon.mif - -// Arabic languages -//***************** -../xuikon/37/clockdate.css /epoc32/data/Z/resource/homescreen/clockdate_200286e6/xuikon/37/clockdate.css -../xuikon/50/clockdate.css /epoc32/data/Z/resource/homescreen/clockdate_200286e6/xuikon/50/clockdate.css -../xuikon/57/clockdate.css /epoc32/data/Z/resource/homescreen/clockdate_200286e6/xuikon/57/clockdate.css -../xuikon/94/clockdate.css /epoc32/data/Z/resource/homescreen/clockdate_200286e6/xuikon/94/clockdate.css - -// Support for S60 localization -//***************************** -// export localizable loc files (engineering versions) -../loc/clockdatewidget.loc APP_LAYER_LOC_EXPORT_PATH(clockdatewidget.loc) -../loc/clockdateconfiguration.loc APP_LAYER_LOC_EXPORT_PATH(clockdateconfiguration.loc) - -// Support for S60 builds -//*********************** -../rom/clockdatewidget_resources.iby LANGUAGE_APP_LAYER_IBY_EXPORT_PATH(clockdate_200286e6_resources.iby) -../rom/clockdatewidget_customer.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(clockdate_200286e6_customer.iby) -../rom/clockdatewidget_variant.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(clockdate_200286e6_variant.iby) -../rom/clockdatewidget.iby CORE_APP_LAYER_IBY_EXPORT_PATH(clockdate_200286e6.iby) - -// Dtd-localization -//***************** -PRJ_EXTENSIONS -START EXTENSION tools/dtd -OPTION SWITCH_LOC_FILE_NAME clockdate_200286e6 -OPTION DTD_TYPE widget -OPTION LOC_FOLDERS yes -END - -PRJ_MMPFILES - -PRJ_TESTMMPFILES - -// End of File - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/clockdate_200286e6/hsps/00/clockdateconfiguration.dtd --- a/idlehomescreen/data/vga_tch/clockdate_200286e6/hsps/00/clockdateconfiguration.dtd Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,41 +0,0 @@ - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/clockdate_200286e6/hsps/00/manifest.dat --- a/idlehomescreen/data/vga_tch/clockdate_200286e6/hsps/00/manifest.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,33 +0,0 @@ - - - - vga_tch - - widget - - - 0x2001f48a - - - 0x101fb657 - - - 0x200286e6 - - Time and Date - clockdate - 1.0 - - - Clock widget - - - widgetconfiguration.xml - - skin(270501603 9360):mif(icon.mif 16384 16385) - - - clockdate.o0000 - - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/clockdate_200286e6/hsps/00/widgetconfiguration.xml --- a/idlehomescreen/data/vga_tch/clockdate_200286e6/hsps/00/widgetconfiguration.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,5 +0,0 @@ - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/clockdate_200286e6/loc/clockdateconfiguration.loc --- a/idlehomescreen/data/vga_tch/clockdate_200286e6/loc/clockdateconfiguration.loc Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2006 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Localization strings for project Active Idle 3 (hsps) -* -*/ - - -// d: clockdate widget name -// l: listrow_wgtman_pane_t1 -// w: -// r: TB9.2 -#define qtn_clockdate_configuration_name "Time & date" - -// d: clockdate widget description -// l: wgtman_list_pane_t1 -// w: -// r: TB9.2 -#define qtn_clockdate_configuration_desc "Quick access to time and date." \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/clockdate_200286e6/loc/clockdatewidget.loc --- a/idlehomescreen/data/vga_tch/clockdate_200286e6/loc/clockdatewidget.loc Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,17 +0,0 @@ -/* -* Copyright (c) 2005-2006 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Localization strings for project Active Idle 3 (xuikon) -* -*/ - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/clockdate_200286e6/rom/clockdatewidget.iby --- a/idlehomescreen/data/vga_tch/clockdate_200286e6/rom/clockdatewidget.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* clockdate widget HSPS-plugin IBY file. -* -*/ - -#ifndef __CLOCKDATEWIDGET_200286e6_IBY__ -#define __CLOCKDATEWIDGET_200286e6_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools -data=ZPRIVATE\200159c0\install\clockdate_200286e6\hsps\00\manifest.dat \private\200159c0\install\clockdate_200286e6\hsps\00\manifest.dat - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __CLOCKDATEWIDGET_200286e6_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/clockdate_200286e6/rom/clockdatewidget_customer.iby --- a/idlehomescreen/data/vga_tch/clockdate_200286e6/rom/clockdatewidget_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* clockdate widget HSPS-plugin language specific IBY file. -* -*/ - -#ifndef __CLOCKDATEWIDGET_200286e6_CUSTOMER_IBY__ -#define __CLOCKDATEWIDGET_200286e6_CUSTOMER_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools, language specific -data=ZPRIVATE\200159c0\install\clockdate_200286e6\xuikon\00\clockdate.o0000 \private\200159c0\install\clockdate_200286e6\xuikon\00\clockdate.o0000 -// data=ZPRIVATE\200159c0\install\clockdate_200286e6\hsps\00\clockdateconfiguration.dtd \private\200159c0\install\clockdate_200286e6\hsps\00\clockdateconfiguration.dtd - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __CLOCKDATEWIDGET_200286e6_CUSTOMER_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/clockdate_200286e6/rom/clockdatewidget_resources.iby --- a/idlehomescreen/data/vga_tch/clockdate_200286e6/rom/clockdatewidget_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* profile widget HSPS-plugin language specific IBY file. -* -*/ - -#ifndef __CLOCKDATEWIDGET_200286e6_RESOURCES_IBY__ -#define __CLOCKDATEWIDGET_200286e6_RESOURCES_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -data=ZPRIVATE\200159c0\install\clockdate_200286e6\xuikon\00\clockdate.o0000 \private\200159c0\install\clockdate_200286e6\xuikon\00\clockdate.o0000 -data=ZPRIVATE\200159c0\install\clockdate_200286e6\hsps\00\icon.mif \private\200159c0\install\clockdate_200286e6\hsps\00\icon.mif -// data=ZPRIVATE\200159c0\install\clockdate_200286e6\hsps\00\clockdateconfiguration.dtd \private\200159c0\install\clockdate_200286e6\hsps\00\clockdateconfiguration.dtd - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __CLOCKDATEWIDGET_200286e6_RESOURCES_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/clockdate_200286e6/rom/clockdatewidget_variant.iby --- a/idlehomescreen/data/vga_tch/clockdate_200286e6/rom/clockdatewidget_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* clockdate widget HSPS-plugin variant specific IBY file. -* -*/ - -#ifndef __clockdateWIDGET_200286e6_VARIANT_IBY__ -#define __clockdateWIDGET_200286e6_VARIANT_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by variation tools, variant specific -data=ZPRIVATE\200159c0\install\clockdate_200286e6\hsps\00\widgetconfiguration.xml \private\200159c0\install\clockdate_200286e6\hsps\00\widgetconfiguration.xml - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __clockdateWIDGET_200286e6_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/clockdate_200286e6/xuikon/00/clockdate.css --- a/idlehomescreen/data/vga_tch/clockdate_200286e6/xuikon/00/clockdate.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,71 +0,0 @@ -clock#clock -{ - width: 176px; - height: 115px; - _s60-font-size: 48px; - color: "SKIN(268458534 13056 74)"; - nav-index: appearance; -} - -face12 -{ - position: absolute; - top: 14px; - left: 19px; - width: 102px; - height: 59px; - text-align: right; - font-family: EAknLogicalFontPrimaryFont; -} - -ampm -{ - position: absolute; - width: 46px; - height: 28px; - top: 37px; - left: 124px; - text-align: left; - _s60-font-size: 28px; - font-family: EAknLogicalFontSecondaryFont; -} - -face24 -{ - position: absolute; - top: 14px; - width: auto; - height: 59px; - font-family: EAknLogicalFontPrimaryFont; -} - -date -{ - position: absolute; - top: 78px; - width: auto; - height: 28px; - _s60-font-size: 26px; - font-family: EAknLogicalFontSecondaryFont; -} - -day -{ - position: absolute; - top: 44px; - left: 117px; - width: 32px; - height: 28px; - _s60-font-size: 28px; - font-family: EAknLogicalFontSecondaryFont; -} - -face -{ - margin-left: 4px; - margin-right: 4px; - margin-top: 4px; - margin-bottom: 4px; - - face-adjustment-value: 20; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/clockdate_200286e6/xuikon/00/clockdate.dat --- a/idlehomescreen/data/vga_tch/clockdate_200286e6/xuikon/00/clockdate.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,11 +0,0 @@ - - - 2001CB4F - 101FB657 - 110012F5 - clockdate - clockdate - 1.0 - clockdate.xml - clockdate.css - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/clockdate_200286e6/xuikon/00/clockdate.xml --- a/idlehomescreen/data/vga_tch/clockdate_200286e6/xuikon/00/clockdate.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,23 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/clockdate_200286e6/xuikon/37/clockdate.css --- a/idlehomescreen/data/vga_tch/clockdate_200286e6/xuikon/37/clockdate.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,57 +0,0 @@ -clock#clock -{ - width: 176px; - height: 115px; - _s60-font-size: 48px; - color: "SKIN(268458534 13056 74)"; - background-color: "SKIN(268458534 9916)"; - nav-index: appearance; -} - -face12 -{ - position: absolute; - left: 55px; - top: 14px; - width: 102px; - height: 59px; - text-align: left; -} - -ampm -{ - position: absolute; - width: 46px; - height: 28px; - left: 6px; - top: 37px; - text-align: right; - _s60-font-size: 28px; -} - -face24 -{ - position: absolute; - top: 14px; - width: auto; - height: 59px; -} - -date -{ - position: absolute; - top: 78px; - width: auto; - height: 28px; - _s60-font-size: 26px; -} - -face -{ - width: auto; - height: auto; - - margin-left: 6px; - margin-right: 6px; - margin-bottom: 5px; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/clockdate_200286e6/xuikon/50/clockdate.css --- a/idlehomescreen/data/vga_tch/clockdate_200286e6/xuikon/50/clockdate.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,57 +0,0 @@ -clock#clock -{ - width: 176px; - height: 115px; - _s60-font-size: 48px; - color: "SKIN(268458534 13056 74)"; - background-color: "SKIN(268458534 9916)"; - nav-index: appearance; -} - -face12 -{ - position: absolute; - left: 55px; - top: 14px; - width: 102px; - height: 59px; - text-align: left; -} - -ampm -{ - position: absolute; - width: 46px; - height: 28px; - left: 6px; - top: 37px; - text-align: right; - _s60-font-size: 28px; -} - -face24 -{ - position: absolute; - top: 14px; - width: auto; - height: 59px; -} - -date -{ - position: absolute; - top: 78px; - width: auto; - height: 28px; - _s60-font-size: 26px; -} - -face -{ - width: auto; - height: auto; - - margin-left: 6px; - margin-right: 6px; - margin-bottom: 5px; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/clockdate_200286e6/xuikon/57/clockdate.css --- a/idlehomescreen/data/vga_tch/clockdate_200286e6/xuikon/57/clockdate.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,57 +0,0 @@ -clock#clock -{ - width: 176px; - height: 115px; - _s60-font-size: 48px; - color: "SKIN(268458534 13056 74)"; - background-color: "SKIN(268458534 9916)"; - nav-index: appearance; -} - -face12 -{ - position: absolute; - left: 55px; - top: 14px; - width: 102px; - height: 59px; - text-align: left; -} - -ampm -{ - position: absolute; - width: 46px; - height: 28px; - left: 6px; - top: 37px; - text-align: right; - _s60-font-size: 28px; -} - -face24 -{ - position: absolute; - top: 14px; - width: auto; - height: 59px; -} - -date -{ - position: absolute; - top: 78px; - width: auto; - height: 28px; - _s60-font-size: 26px; -} - -face -{ - width: auto; - height: auto; - - margin-left: 6px; - margin-right: 6px; - margin-bottom: 5px; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/clockdate_200286e6/xuikon/94/clockdate.css --- a/idlehomescreen/data/vga_tch/clockdate_200286e6/xuikon/94/clockdate.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,57 +0,0 @@ -clock#clock -{ - width: 176px; - height: 115px; - _s60-font-size: 48px; - color: "SKIN(268458534 13056 74)"; - background-color: "SKIN(268458534 9916)"; - nav-index: appearance; -} - -face12 -{ - position: absolute; - left: 55px; - top: 14px; - width: 102px; - height: 59px; - text-align: left; -} - -ampm -{ - position: absolute; - width: 46px; - height: 28px; - left: 6px; - top: 37px; - text-align: right; - _s60-font-size: 28px; -} - -face24 -{ - position: absolute; - top: 14px; - width: auto; - height: 59px; -} - -date -{ - position: absolute; - top: 78px; - width: auto; - height: 28px; - _s60-font-size: 26px; -} - -face -{ - width: auto; - height: auto; - - margin-left: 6px; - margin-right: 6px; - margin-bottom: 5px; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/desktop_20018eee/hsps/00/manifest.dat --- a/idlehomescreen/data/vga_tch/desktop_20018eee/hsps/00/manifest.dat Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/desktop_20018eee/hsps/00/manifest.dat Wed Oct 13 14:18:30 2010 +0300 @@ -23,7 +23,7 @@ widgetconfiguration.xml - unlimited + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/desktop_20018eee/hsps/00/widgetconfiguration.xml --- a/idlehomescreen/data/vga_tch/desktop_20018eee/hsps/00/widgetconfiguration.xml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/desktop_20018eee/hsps/00/widgetconfiguration.xml Wed Oct 13 14:18:30 2010 +0300 @@ -4,31 +4,45 @@ - + - + - + - + + + + + + + + - - + + - + + + + + + + + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/desktop_20018eee/rom/desktop.iby --- a/idlehomescreen/data/vga_tch/desktop_20018eee/rom/desktop.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/desktop_20018eee/rom/desktop.iby Wed Oct 13 14:18:30 2010 +0300 @@ -12,18 +12,20 @@ * Contributors: * * Description: -* Desktop widget HSPS-plugin core IBY file. +* Top Contacts widget HSPS-plugin core IBY file. * */ -#ifndef __DESKTOP_20018EEE_IBY__ -#define __DESKTOP_20018EEE_IBY__ +#ifdef FF_TOPCONTACTSWIDGET_COMPONENT -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#ifndef __TOPCONTACTS_IBY__ +#define __TOPCONTACTS_IBY__ + +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools -data=ZPRIVATE\200159c0\install\desktop_20018eee\hsps\00\manifest.dat \private\200159c0\install\desktop_20018eee\hsps\00\manifest.dat +data=ZPRIVATE\200159c0\install\topcontacts\hsps\00\manifest.dat \private\200159c0\install\topcontacts\hsps\00\manifest.dat -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) -#endif // __DESKTOP_20018EEE_IBY__ \ No newline at end of file +#endif // FF_TOPCONTACTSWIDGET_COMPONENT \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/desktop_20018eee/rom/desktop_customer.iby --- a/idlehomescreen/data/vga_tch/desktop_20018eee/rom/desktop_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/desktop_20018eee/rom/desktop_customer.iby Wed Oct 13 14:18:30 2010 +0300 @@ -12,17 +12,22 @@ * Contributors: * * Description: -* Desktop widget HSPS-plugin customer specific IBY file. +* Top Contacts widget HSPS-plugin customer specific IBY file. * */ +#ifdef FF_TOPCONTACTSWIDGET_COMPONENT + #ifndef __DESKTOP_20018EEE_CUSTOMER_IBY__ #define __DESKTOP_20018EEE_CUSTOMER_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) -data=ZPRIVATE\200159c0\install\desktop_20018eee\xuikon\00\Desktop.o0000 \private\200159c0\install\desktop_20018eee\xuikon\00\Desktop.o0000 +data=ZPRIVATE\200159c0\install\topcontacts\xuikon\00\TopContacts.o0000 \private\200159c0\install\topcontacts\xuikon\00\TopContacts.o0000 +data=ZPRIVATE\200159c0\install\topcontacts\hsps\00\topcontact_hs_widget.dtd \private\200159c0\install\topcontacts\hsps\00\topcontact_hs_widget.dtd -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // FF_LAYOUT_480_640_VGA3 #endif // __DESKTOP_20018EEE_CUSTOMER_IBY__ + +#endif // FF_TOPCONTACTSWIDGET_COMPONENT diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/desktop_20018eee/rom/desktop_resources.iby --- a/idlehomescreen/data/vga_tch/desktop_20018eee/rom/desktop_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/desktop_20018eee/rom/desktop_resources.iby Wed Oct 13 14:18:30 2010 +0300 @@ -12,30 +12,36 @@ * Contributors: * * Description: -* Desktop widget HSPS-plugin language specific IBY file. +* Top Contacts widget HSPS-plugin language specific IBY file. * */ +#ifdef FF_TOPCONTACTSWIDGET_COMPONENT + #ifndef __DESKTOP_20018EEE_RESOURCES_IBY__ #define __DESKTOP_20018EEE_RESOURCES_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools, language specific #if defined (__LOCALES_37_IBY__) -data=ZPRIVATE\200159c0\install\desktop_20018eee\xuikon\37\Desktop.o0037 \private\200159c0\install\desktop_20018eee\xuikon\37\Desktop.o0037 +data=ZPRIVATE\200159c0\install\topcontacts\xuikon\37\topcontacts.o0037 \private\200159c0\install\topcontacts\xuikon\37\topcontacts.o0037 #endif #if defined (__LOCALES_50_IBY__) -data=ZPRIVATE\200159c0\install\desktop_20018eee\xuikon\50\Desktop.o0050 \private\200159c0\install\desktop_20018eee\xuikon\50\Desktop.o0050 +data=ZPRIVATE\200159c0\install\topcontacts\xuikon\50\topcontacts.o0050 \private\200159c0\install\topcontacts\xuikon\50\topcontacts.o0050 #endif #if defined (__LOCALES_57_IBY__) -data=ZPRIVATE\200159c0\install\desktop_20018eee\xuikon\57\Desktop.o0057 \private\200159c0\install\desktop_20018eee\xuikon\57\Desktop.o0057 +data=ZPRIVATE\200159c0\install\topcontacts\xuikon\57\topcontacts.o0057 \private\200159c0\install\topcontacts\xuikon\57\topcontacts.o0057 #endif #if defined (__LOCALES_94_IBY__) -data=ZPRIVATE\200159c0\install\desktop_20018eee\xuikon\94\Desktop.o0094 \private\200159c0\install\desktop_20018eee\xuikon\94\Desktop.o0094 +data=ZPRIVATE\200159c0\install\topcontacts\xuikon\94\topcontacts.o0094 \private\200159c0\install\topcontacts\xuikon\94\topcontacts.o0094 #endif -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 + +data=ZPRIVATE\200159c0\install\topcontacts\hsps\00\topcontact_hs_widget.dtd \private\200159c0\install\topcontacts\hsps\00\topcontact_hs_widget.dtd + +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __DESKTOP_20018EEE_RESOURCES_IBY__ +#endif // FF_TOPCONTACTSWIDGET_COMPONENT diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/desktop_20018eee/rom/desktop_variant.iby --- a/idlehomescreen/data/vga_tch/desktop_20018eee/rom/desktop_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/desktop_20018eee/rom/desktop_variant.iby Wed Oct 13 14:18:30 2010 +0300 @@ -12,18 +12,22 @@ * Contributors: * * Description: -* Desktop widget HSPS-plugin variant specific IBY file. +* Top Contacts widget HSPS-plugin variant specific IBY file. * */ +#ifdef FF_TOPCONTACTSWIDGET_COMPONENT + #ifndef __DESKTOP_20018EEE_VARIANT_IBY__ #define __DESKTOP_20018EEE_VARIANT_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by variation tools, variant specific -data=ZPRIVATE\200159c0\install\desktop_20018eee\hsps\00\widgetconfiguration.xml \private\200159c0\install\desktop_20018eee\hsps\00\widgetconfiguration.xml +data=ZPRIVATE\200159c0\install\topcontacts\hsps\00\widgetconfiguration.xml \private\200159c0\install\topcontacts\hsps\00\widgetconfiguration.xml -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __DESKTOP_20018EEE_VARIANT_IBY__ + +#endif // FF_TOPCONTACTSWIDGET_COMPONENT diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/desktop_20018eee/xuikon/00/desktop.css --- a/idlehomescreen/data/vga_tch/desktop_20018eee/xuikon/00/desktop.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/desktop_20018eee/xuikon/00/desktop.css Wed Oct 13 14:18:30 2010 +0300 @@ -1,31 +1,59 @@ widget#desktop_widget { + width: auto; + height: 70px; + block-progression: rl; direction: ltr; - color: "SKIN(268458534 13056 74)"; - background-color: "SKIN(268458534 9916)"; } button.button { + width: 70px; + height: auto; + nav-index: appearance; - width: 105px; - height: 105px; - margin-top: 5px; + + margin-left: 4px; + margin-right: 4px; + + background-color: "SKIN(268458534 9906)"; } button#button1 { - margin-left: 10px; + margin-left: 0px; +} + +button#button6 +{ + margin-right: 0px; +} + +button.button:focus +{ + focus-background: "SKIN(268458534 5120 9)"; } image.icon { + width: auto; + height: auto; + _s60-aspect-ratio: preserve; - padding-left: 5px; - padding-top: 5px; - width: 95px; - height: 95px; +} + +/* For presence */ +image.second_icon +{ + margin-top:0%; + width: 25%; + height: 25%; + position: absolute; + bottom: 0%; + left: 70%; + top: 3%; + _s60-aspect-ratio:preserve; } tooltip.tooltip @@ -47,14 +75,12 @@ padding-right: 6px; } - text.tooltiptext -{ +{ font-family: EAknLogicalFontSecondaryFont; font-size: 23px; width: adaptive; color: "SKIN(268458534 13056 19)"; - overflow: visible; } /********************* diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/desktop_20018eee/xuikon/00/desktop.xml --- a/idlehomescreen/data/vga_tch/desktop_20018eee/xuikon/00/desktop.xml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/desktop_20018eee/xuikon/00/desktop.xml Wed Oct 13 14:18:30 2010 +0300 @@ -2,14 +2,23 @@ - + + + + + + + + + + + + + + + + + + + + @@ -96,5 +199,6 @@ + - + \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/desktop_20018eee/xuikon/37/desktop.css --- a/idlehomescreen/data/vga_tch/desktop_20018eee/xuikon/37/desktop.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/desktop_20018eee/xuikon/37/desktop.css Wed Oct 13 14:18:30 2010 +0300 @@ -1,38 +1,66 @@ widget#desktop_widget { + width: auto; + height: 70px; + block-progression: rl; direction: rtl; - color: "SKIN(268458534 13056 74)"; - background-color: "SKIN(268458534 9916)"; } button.button { + width: 70px; + height: auto; + nav-index: appearance; - width: 105px; - height: 105px; - margin-top: 5px; + + margin-left: 4px; + margin-right: 4px; + background-color: "SKIN(268458534 9906)"; } button#button1 { - margin-right: 10px; + margin-left: 0px; +} + +button#button6 +{ + margin-right: 0px; +} + +button.button:focus +{ + focus-background: "SKIN(268458534 5120 9)"; } image.icon { + width: auto; + height: auto; + _s60-aspect-ratio: preserve; - padding-left: 5px; - padding-top: 5px; - width: 95px; - height: 95px; +} + +/* For presence */ +image.second_icon +{ + margin-top:0%; + width: 25%; + height: 25%; + position: absolute; + bottom: 0%; + left: 70%; + top: 3%; + _s60-aspect-ratio:preserve; } tooltip.tooltip { - width: adaptive; - max-width: 350px; - height: 33px; + width: 15.0u; /* any fixed lenghts works here if the owerflow is set to + both tooltip and text inside it */ + height: 5.5u; + border-style: solid; border-width: 5px; @@ -40,21 +68,23 @@ _s60-display-time: 1000000; background-color:"SKIN(268458534 8480)"; - display: block; - padding-left: 6px; - padding-top: 3px; - padding-bottom: 3px; - padding-right: 6px; + overflow: visible; } text.tooltiptext -{ +{ + position: static; font-family: EAknLogicalFontSecondaryFont; - font-size: 23px; - width: adaptive; + font-size: 3.5u; + width: 100%; + height: 85%; + text-align: center; color: "SKIN(268458534 13056 19)"; overflow: visible; + padding-right: 1u; + padding-left: 1u; + padding-bottom: 1u; } /********************* @@ -65,7 +95,7 @@ width: 15.0u; height: adaptive; border-style: solid; - border-width: 5px; + border-width: 5px; /* delay comes from the xSP server */ _s60-start-delay: 0; _s60-display-time: 60000000; /* 6 sec */ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/desktop_20018eee/xuikon/50/desktop.css --- a/idlehomescreen/data/vga_tch/desktop_20018eee/xuikon/50/desktop.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/desktop_20018eee/xuikon/50/desktop.css Wed Oct 13 14:18:30 2010 +0300 @@ -1,38 +1,66 @@ widget#desktop_widget { + width: auto; + height: 70px; + block-progression: rl; direction: rtl; - color: "SKIN(268458534 13056 74)"; - background-color: "SKIN(268458534 9916)"; } button.button { + width: 70px; + height: auto; + nav-index: appearance; - width: 105px; - height: 105px; - margin-top: 5px; + + margin-left: 4px; + margin-right: 4px; + background-color: "SKIN(268458534 9906)"; } button#button1 { - margin-right: 10px; + margin-left: 0px; +} + +button#button6 +{ + margin-right: 0px; +} + +button.button:focus +{ + focus-background: "SKIN(268458534 5120 9)"; } image.icon { + width: auto; + height: auto; + _s60-aspect-ratio: preserve; - padding-left: 5px; - padding-top: 5px; - width: 95px; - height: 95px; +} + +/* For presence */ +image.second_icon +{ + margin-top:0%; + width: 25%; + height: 25%; + position: absolute; + bottom: 0%; + left: 70%; + top: 3%; + _s60-aspect-ratio:preserve; } tooltip.tooltip { - width: adaptive; - max-width: 350px; - height: 33px; + width: 15.0u; /* any fixed lenghts works here if the owerflow is set to + both tooltip and text inside it */ + height: 5.5u; + border-style: solid; border-width: 5px; @@ -40,21 +68,23 @@ _s60-display-time: 1000000; background-color:"SKIN(268458534 8480)"; - display: block; - padding-left: 6px; - padding-top: 3px; - padding-bottom: 3px; - padding-right: 6px; + overflow: visible; } text.tooltiptext -{ +{ + position: static; font-family: EAknLogicalFontSecondaryFont; - font-size: 23px; - width: adaptive; + font-size: 3.5u; + width: 100%; + height: 85%; + text-align: center; color: "SKIN(268458534 13056 19)"; overflow: visible; + padding-right: 1u; + padding-left: 1u; + padding-bottom: 1u; } /********************* diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/desktop_20018eee/xuikon/57/desktop.css --- a/idlehomescreen/data/vga_tch/desktop_20018eee/xuikon/57/desktop.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/desktop_20018eee/xuikon/57/desktop.css Wed Oct 13 14:18:30 2010 +0300 @@ -1,60 +1,91 @@ -widget#desktop_widget + widget#desktop_widget { + width: auto; + height: 70px; + block-progression: rl; direction: rtl; - color: "SKIN(268458534 13056 74)"; - background-color: "SKIN(268458534 9916)"; } button.button { + width: 70px; + height: auto; + nav-index: appearance; - width: 105px; - height: 105px; - margin-top: 5px; + + margin-left: 4px; + margin-right: 4px; + + background-color: "SKIN(268458534 9906)"; } button#button1 { - margin-right: 10px; + margin-left: 0px; +} + +button#button6 +{ + margin-right: 0px; +} + +button.button:focus +{ + focus-background: "SKIN(268458534 5120 9)"; } image.icon { + width: auto; + height: auto; + _s60-aspect-ratio: preserve; - padding-left: 5px; - padding-top: 5px; - width: 95px; - height: 95px; +} + +/* For presence */ +image.second_icon +{ + margin-top:0%; + width: 25%; + height: 25%; + position: absolute; + bottom: 0%; + left: 70%; + top: 3%; + _s60-aspect-ratio:preserve; } tooltip.tooltip { - width: adaptive; - max-width: 350px; - height: 33px; + width: 15.0u; /* any fixed lenghts works here if the owerflow is set to + both tooltip and text inside it */ + height: 5.5u; + border-style: solid; - border-width: 5px; + border-width: 5px; _s60-start-delay: 1000000; _s60-display-time: 1000000; background-color:"SKIN(268458534 8480)"; - display: block; - padding-left: 6px; - padding-top: 3px; - padding-bottom: 3px; - padding-right: 6px; + overflow: visible; } text.tooltiptext -{ +{ + position: static; font-family: EAknLogicalFontSecondaryFont; - font-size: 23px; - width: adaptive; + font-size: 3.5u; + width: 100%; + height: 85%; + text-align: center; color: "SKIN(268458534 13056 19)"; overflow: visible; + padding-right: 1u; + padding-left: 1u; + padding-bottom: 1u; } /********************* diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/desktop_20018eee/xuikon/94/desktop.css --- a/idlehomescreen/data/vga_tch/desktop_20018eee/xuikon/94/desktop.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/desktop_20018eee/xuikon/94/desktop.css Wed Oct 13 14:18:30 2010 +0300 @@ -1,60 +1,91 @@ widget#desktop_widget { + width: auto; + height: 70px; + block-progression: rl; direction: rtl; - color: "SKIN(268458534 13056 74)"; - background-color: "SKIN(268458534 9916)"; } button.button { + width: 70px; + height: auto; + nav-index: appearance; - width: 105px; - height: 105px; - margin-top: 5px; + + margin-left: 4px; + margin-right: 4px; + + background-color: "SKIN(268458534 9906)"; } button#button1 { - margin-right: 10px; + margin-left: 0px; +} + +button#button6 +{ + margin-right: 0px; +} + +button.button:focus +{ + focus-background: "SKIN(268458534 5120 9)"; } image.icon { + width: auto; + height: auto; + _s60-aspect-ratio: preserve; - padding-left: 5px; - padding-top: 5px; - width: 95px; - height: 95px; +} + +/* For presence */ +image.second_icon +{ + margin-top:0%; + width: 25%; + height: 25%; + position: absolute; + bottom: 0%; + left: 70%; + top: 3%; + _s60-aspect-ratio:preserve; } tooltip.tooltip { - width: adaptive; - max-width: 350px; - height: 33px; + width: 15.0u; /* any fixed lenghts works here if the owerflow is set to + both tooltip and text inside it */ + height: 5.5u; + border-style: solid; - border-width: 5px; + border-width: 5px; _s60-start-delay: 1000000; _s60-display-time: 1000000; background-color:"SKIN(268458534 8480)"; - display: block; - padding-left: 6px; - padding-top: 3px; - padding-bottom: 3px; - padding-right: 6px; + overflow: visible; } text.tooltiptext -{ +{ + position: static; font-family: EAknLogicalFontSecondaryFont; - font-size: 23px; - width: adaptive; + font-size: 3.5u; + width: 100%; + height: 85%; + text-align: center; color: "SKIN(268458534 13056 19)"; overflow: visible; + padding-right: 1u; + padding-left: 1u; + padding-bottom: 1u; } /********************* diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/double_row_icon_widget_2001fdbd/rom/double_row_icon_widget.iby --- a/idlehomescreen/data/vga_tch/double_row_icon_widget_2001fdbd/rom/double_row_icon_widget.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/double_row_icon_widget_2001fdbd/rom/double_row_icon_widget.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,11 +19,11 @@ #ifndef __DOUBLE_ROW_ICON_WIDGET_2001FDBD_IBY__ #define __DOUBLE_ROW_ICON_WIDGET_2001FDBD_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools data=ZPRIVATE\200159c0\install\double_row_icon_widget_2001fdbd\hsps\00\manifest.dat \private\200159c0\install\double_row_icon_widget_2001fdbd\hsps\00\manifest.dat -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __DOUBLE_ROW_ICON_WIDGET_2001FDBD_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/double_row_icon_widget_2001fdbd/rom/double_row_icon_widget_customer.iby --- a/idlehomescreen/data/vga_tch/double_row_icon_widget_2001fdbd/rom/double_row_icon_widget_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/double_row_icon_widget_2001fdbd/rom/double_row_icon_widget_customer.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,11 +19,11 @@ #ifndef __DOUBLE_ROW_ICON_WIDGET_2001FDBD_CUSTOMER_IBY__ #define __DOUBLE_ROW_ICON_WIDGET_2001FDBD_CUSTOMER_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools, language specific data=ZPRIVATE\200159c0\install\double_row_icon_widget_2001fdbd\xuikon\00\double_row_icon_widget.o0000 \private\200159c0\install\double_row_icon_widget_2001fdbd\xuikon\00\double_row_icon_widget.o0000 -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __DOUBLE_ROW_ICON_WIDGET_2001FDBD_CUSTOMER_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/double_row_icon_widget_2001fdbd/rom/double_row_icon_widget_resources.iby --- a/idlehomescreen/data/vga_tch/double_row_icon_widget_2001fdbd/rom/double_row_icon_widget_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/double_row_icon_widget_2001fdbd/rom/double_row_icon_widget_resources.iby Wed Oct 13 14:18:30 2010 +0300 @@ -18,7 +18,7 @@ #ifndef __DOUBLE_ROW_ICON_WIDGET_2001FDBD_RESOURCES_IBY__ #define __DOUBLE_ROW_ICON_WIDGET_2001FDBD_RESOURCES_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools, language specific #if defined (__LOCALES_37_IBY__) @@ -34,6 +34,6 @@ data=ZPRIVATE\200159c0\install\double_row_icon_widget_2001fdbd\xuikon\94\double_row_icon_widget.o0094 \private\200159c0\install\double_row_icon_widget_2001fdbd\xuikon\94\double_row_icon_widget.o0094 #endif -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __DOUBLE_ROW_ICON_WIDGET_2001FDBD_RESOURCES_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/double_row_icon_widget_2001fdbd/rom/double_row_icon_widget_variant.iby --- a/idlehomescreen/data/vga_tch/double_row_icon_widget_2001fdbd/rom/double_row_icon_widget_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/double_row_icon_widget_2001fdbd/rom/double_row_icon_widget_variant.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,11 +19,11 @@ #ifndef __DOUBLE_ROW_ICON_WIDGET_2001FDBD_VARIANT_IBY__ #define __DOUBLE_ROW_ICON_WIDGET_2001FDBD_VARIANT_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by variation tools, variant specific data=ZPRIVATE\200159c0\install\double_row_icon_widget_2001fdbd\hsps\00\widgetconfiguration.xml \private\200159c0\install\double_row_icon_widget_2001fdbd\hsps\00\widgetconfiguration.xml -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __DOUBLE_ROW_ICON_WIDGET_2001FDBD_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/double_row_widget_2001fdc2/rom/double_row_widget.iby --- a/idlehomescreen/data/vga_tch/double_row_widget_2001fdc2/rom/double_row_widget.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/double_row_widget_2001fdc2/rom/double_row_widget.iby Wed Oct 13 14:18:30 2010 +0300 @@ -18,11 +18,11 @@ #ifndef __DOUBLE_ROW_WIDGET_2001FDC2_IBY__ #define __DOUBLE_ROW_WIDGET_2001FDC2_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools data=ZPRIVATE\200159c0\install\double_row_widget_2001fdc2\hsps\00\manifest.dat \private\200159c0\install\double_row_widget_2001fdc2\hsps\00\manifest.dat -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __DOUBLE_ROW_WIDGET_2001FDC2_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/double_row_widget_2001fdc2/rom/double_row_widget_customer.iby --- a/idlehomescreen/data/vga_tch/double_row_widget_2001fdc2/rom/double_row_widget_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/double_row_widget_2001fdc2/rom/double_row_widget_customer.iby Wed Oct 13 14:18:30 2010 +0300 @@ -18,11 +18,11 @@ #ifndef __DOUBLE_ROW_WIDGET_2001FDC2_CUSTOMER_IBY__ #define __DOUBLE_ROW_WIDGET_2001FDC2_CUSTOMER_IBY__ -#if defined(FFLAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools, language specific data=ZPRIVATE\200159c0\install\double_row_widget_2001fdc2\xuikon\00\double_row_widget.o0000 \private\200159c0\install\double_row_widget_2001fdc2\xuikon\00\double_row_widget.o0000 -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __DOUBLE_ROW_WIDGET_2001FDC2_CUSTOMER_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/double_row_widget_2001fdc2/rom/double_row_widget_resources.iby --- a/idlehomescreen/data/vga_tch/double_row_widget_2001fdc2/rom/double_row_widget_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/double_row_widget_2001fdc2/rom/double_row_widget_resources.iby Wed Oct 13 14:18:30 2010 +0300 @@ -18,7 +18,7 @@ #ifndef __DOUBLE_ROW_WIDGET_2001FDC2_RESOURCES_IBY__ #define __DOUBLE_ROW_WIDGET_2001FDC2_RESOURCES_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools, language specific #if defined (__LOCALES_37_IBY__) @@ -34,6 +34,6 @@ data=ZPRIVATE\200159c0\install\double_row_widget_2001fdc2\xuikon\94\double_row_widget.o0094 \private\200159c0\install\double_row_widget_2001fdc2\xuikon\94\double_row_widget.o0094 #endif -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __DOUBLE_ROW_WIDGET_2001FDC2_RESOURCES_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/double_row_widget_2001fdc2/rom/double_row_widget_variant.iby --- a/idlehomescreen/data/vga_tch/double_row_widget_2001fdc2/rom/double_row_widget_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/double_row_widget_2001fdc2/rom/double_row_widget_variant.iby Wed Oct 13 14:18:30 2010 +0300 @@ -18,11 +18,11 @@ #ifndef __DOUBLE_ROW_WIDGET_2001FDC2_VARIANT_IBY__ #define __DOUBLE_ROW_WIDGET_2001FDC2_VARIANT_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by variation tools, variant specific data=ZPRIVATE\200159c0\install\double_row_widget_2001fdc2\hsps\00\widgetconfiguration.xml \private\200159c0\install\double_row_widget_2001fdc2\hsps\00\widgetconfiguration.xml -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __DOUBLE_ROW_WIDGET_2001FDC2_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/group/bld.inf --- a/idlehomescreen/data/vga_tch/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/group/bld.inf Wed Oct 13 14:18:30 2010 +0300 @@ -15,26 +15,16 @@ * */ -#include "../clockdate_200286e6/group/bld.inf" -#include "../desktop_20018eee/group/bld.inf" + #include "../double_row_icon_widget_2001fdbd/group/bld.inf" #include "../double_row_widget_2001fdc2/group/bld.inf" -#include "../profilemode_200286e7/group/bld.inf" #include "../root_2001f48f/group/bld.inf" #include "../single_row_icon_widget_2001fdc0/group/bld.inf" #include "../single_row_widget_2001fdc1/group/bld.inf" #include "../triple_row_icon_widget_2001fdbe/group/bld.inf" #include "../triple_row_widget_2001fdbf/group/bld.inf" #include "../view1_2001fdb9/group/bld.inf" -#include "../view2_200286ea/group/bld.inf" -#include "../view3_200286eb/group/bld.inf" -#include "../templateview_200286ec/group/bld.inf" #include "../wideimage_10009dff/group/bld.inf" -#include "../onerow_200315c2/group/bld.inf" -#include "../tworows_200315c3/group/bld.inf" -#include "../threerows_200315c4/group/bld.inf" -#include "../threetextrows_200315c5/group/bld.inf" -#include "../posterwideimage_200315c6/group/bld.inf" PRJ_PLATFORMS DEFAULT diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/onerow_200315c2/group/bld.inf --- a/idlehomescreen/data/vga_tch/onerow_200315c2/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,67 +0,0 @@ -/* -* Copyright (c) 2002-2008 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* The information required for building -* -*/ - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS -// Support for productization and Carbide.Ui customization -//******************************************************** -../hsps/00/manifest.dat /epoc32/data/Z/resource/homescreen/onerow_200315c2/hsps/manifest.dat -../hsps/00/widgetconfiguration.xml /epoc32/data/Z/resource/homescreen/onerow_200315c2/hsps/widgetconfiguration.xml -../xuikon/00/onerow.dat /epoc32/data/Z/resource/homescreen/onerow_200315c2/xuikon/onerow_200315c2.dat -../xuikon/00/onerow.css /epoc32/data/Z/resource/homescreen/onerow_200315c2/xuikon/onerow.css -../xuikon/00/onerow.xml /epoc32/data/Z/resource/homescreen/onerow_200315c2/xuikon/onerow.xml - -// Arabic languages -//***************** -../xuikon/37/onerow.css /epoc32/data/Z/resource/homescreen/onerow_200315c2/xuikon/37/onerow.css -../xuikon/50/onerow.css /epoc32/data/Z/resource/homescreen/onerow_200315c2/xuikon/50/onerow.css -../xuikon/57/onerow.css /epoc32/data/Z/resource/homescreen/onerow_200315c2/xuikon/57/onerow.css -../xuikon/94/onerow.css /epoc32/data/Z/resource/homescreen/onerow_200315c2/xuikon/94/onerow.css - - -// Support for S60 builds -//*********************** -// export iby files -../rom/onerow_resources.iby LANGUAGE_APP_LAYER_IBY_EXPORT_PATH(onerow_200315c2_resources.iby) -../rom/onerow_customer.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(onerow_200315c2_customer.iby) -../rom/onerow_variant.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(onerow_200315c2_variant.iby) -../rom/onerow.iby CORE_APP_LAYER_IBY_EXPORT_PATH(onerow_200315c2.iby) - -// Dtd-localization -//***************** -PRJ_EXTENSIONS -START EXTENSION tools/dtd -OPTION SWITCH_LOC_FILE_NAME onerow_200315c2 -OPTION DTD_TYPE widget -OPTION LOC_FOLDERS yes -END - - -PRJ_MMPFILES - -PRJ_TESTMMPFILES - -// End of File - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/onerow_200315c2/hsps/00/manifest.dat --- a/idlehomescreen/data/vga_tch/onerow_200315c2/hsps/00/manifest.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,63 +0,0 @@ - - - - - - - vga_tch - - - - template - - - - - - 0x2001f48a - - - - - - 0x101fb657 - - - - - - 0x200315c2 - - - - - - onerow - - oner - - 1.0 - - - - - - widgetconfiguration.xml - - - - - - - - - - - - onerow.o0000 - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/onerow_200315c2/hsps/00/widgetconfiguration.xml --- a/idlehomescreen/data/vga_tch/onerow_200315c2/hsps/00/widgetconfiguration.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,34 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/onerow_200315c2/rom/onerow.iby --- a/idlehomescreen/data/vga_tch/onerow_200315c2/rom/onerow.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* Onerow widget HSPS-plugin IBY file. -* -*/ - -#ifndef __ONEROW_200315C2_IBY__ -#define __ONEROW_200315C2_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools -data=ZPRIVATE\200159c0\install\onerow_200315c2\hsps\00\manifest.dat \private\200159c0\install\onerow_200315c2\hsps\00\manifest.dat - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __ONEROW_200315C2_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/onerow_200315c2/rom/onerow_customer.iby --- a/idlehomescreen/data/vga_tch/onerow_200315c2/rom/onerow_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* Onerow widget HSPS-plugin language specific IBY file. -* -*/ - -#ifndef __ONEROW_200315C2_CUSTOMER_IBY__ -#define __ONEROW_200315C2_CUSTOMER_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools, language specific -data=ZPRIVATE\200159c0\install\onerow_200315c2\xuikon\00\onerow.o0000 \private\200159c0\install\onerow_200315c2\xuikon\00\onerow.o0000 - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __ONEROW_200315C2_CUSTOMER_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/onerow_200315c2/rom/onerow_resources.iby --- a/idlehomescreen/data/vga_tch/onerow_200315c2/rom/onerow_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,40 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* Onerow widget HSPS-plugin language specific IBY file. -* -*/ - -#ifndef __ONEROW_200315C2_RESOURCES_IBY__ -#define __ONEROW_200315C2_RESOURCES_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools, language specific -#if defined (__LOCALES_37_IBY__) -data=ZPRIVATE\200159c0\install\onerow_200315c2\xuikon\37\onerow.o0037 \private\200159c0\install\onerow_200315c2\xuikon\37\onerow.o0037 -#endif -#if defined (__LOCALES_50_IBY__) -data=ZPRIVATE\200159c0\install\onerow_200315c2\xuikon\50\onerow.o0050 \private\200159c0\install\onerow_200315c2\xuikon\50\onerow.o0050 -#endif -#if defined (__LOCALES_57_IBY__) -data=ZPRIVATE\200159c0\install\onerow_200315c2\xuikon\57\onerow.o0057 \private\200159c0\install\onerow_200315c2\xuikon\57\onerow.o0057 -#endif -#if defined (__LOCALES_94_IBY__) -data=ZPRIVATE\200159c0\install\onerow_200315c2\xuikon\94\onerow.o0094 \private\200159c0\install\onerow_200315c2\xuikon\94\onerow.o0094 -#endif - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __ONEROW_200315C2_RESOURCES_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/onerow_200315c2/rom/onerow_variant.iby --- a/idlehomescreen/data/vga_tch/onerow_200315c2/rom/onerow_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* Onerow widget HSPS-plugin variant specific IBY file. -* -*/ - -#ifndef __ONEROW_200315C2_VARIANT_IBY__ -#define __ONEROW_200315C2_VARIANT_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by variation tools, variant specific -data=ZPRIVATE\200159c0\install\onerow_200315c2\hsps\00\widgetconfiguration.xml \private\200159c0\install\onerow_200315c2\hsps\00\widgetconfiguration.xml - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __ONEROW_200315C2_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/onerow_200315c2/xuikon/00/onerow.css --- a/idlehomescreen/data/vga_tch/onerow_200315c2/xuikon/00/onerow.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,40 +0,0 @@ -widget#onerow_template -{ - block-progression:rl; - -} - -image#image_container -{ - height: 95px; - width: 95px; - margin-top:5px; - margin-bottom:5px; - margin-left:5px; - margin-right:4px; - padding-top:5px; - padding-bottom:5px; - padding-left:5px; - padding-right:5px; - nav-index:appearance; - _s60-aspect-ratio:preserve; -} - -text -{ - font-size:3.5u; - margin-left:3px; - margin-right:5px; - margin-top:5px; - margin-bottom:5px; - padding-top:5px; - padding-bottom:5px; - padding-left:5px; - padding-right:5px; - text-align:center; - text-overflow-mode: wrap; - max-line-amount: 2; - font-family: EAknLogicalFontSecondaryFont; - color: "SKIN(268458534 13056 74)"; - nav-index:appearance; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/onerow_200315c2/xuikon/00/onerow.dat --- a/idlehomescreen/data/vga_tch/onerow_200315c2/xuikon/00/onerow.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ - - - 2001CB4F - 101FB657 - 110012F6 - onerow - onerow - 1.0 - onerow.xml - onerow.css - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/onerow_200315c2/xuikon/00/onerow.xml --- a/idlehomescreen/data/vga_tch/onerow_200315c2/xuikon/00/onerow.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,61 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/onerow_200315c2/xuikon/37/onerow.css --- a/idlehomescreen/data/vga_tch/onerow_200315c2/xuikon/37/onerow.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,41 +0,0 @@ -widget#onerow_template -{ - direction: rtl; - block-progression:rl; -} - -image#image_container -{ - height: 95px; - width: 95px; - margin-top:5px; - margin-bottom:5px; - margin-left:5px; - margin-right:4px; - padding-top:5px; - padding-bottom:5px; - padding-left:5px; - padding-right:5px; - nav-index:appearance; - _s60-aspect-ratio:preserve; -} - -text -{ - font-size:3.5u; - margin-left:3px; - margin-right:5px; - margin-top:5px; - margin-bottom:5px; - padding-top:5px; - padding-bottom:5px; - padding-left:5px; - padding-right:5px; - direction: ltr; - text-align:center; - text-overflow-mode: wrap; - max-line-amount: 2; - font-family: EAknLogicalFontSecondaryFont; - color: "SKIN(268458534 13056 74)"; - nav-index:appearance; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/onerow_200315c2/xuikon/50/onerow.css --- a/idlehomescreen/data/vga_tch/onerow_200315c2/xuikon/50/onerow.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,41 +0,0 @@ -widget#onerow_template -{ - direction: rtl; - block-progression:rl; -} - -image#image_container -{ - height: 95px; - width: 95px; - margin-top:5px; - margin-bottom:5px; - margin-left:5px; - margin-right:4px; - padding-top:5px; - padding-bottom:5px; - padding-left:5px; - padding-right:5px; - nav-index:appearance; - _s60-aspect-ratio:preserve; -} - -text -{ - font-size:3.5u; - margin-left:3px; - margin-right:5px; - margin-top:5px; - margin-bottom:5px; - padding-top:5px; - padding-bottom:5px; - padding-left:5px; - padding-right:5px; - direction: ltr; - text-align:center; - text-overflow-mode: wrap; - max-line-amount: 2; - font-family: EAknLogicalFontSecondaryFont; - color: "SKIN(268458534 13056 74)"; - nav-index:appearance; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/onerow_200315c2/xuikon/57/onerow.css --- a/idlehomescreen/data/vga_tch/onerow_200315c2/xuikon/57/onerow.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,41 +0,0 @@ -widget#onerow_template -{ - direction: rtl; - block-progression:rl; -} - -image#image_container -{ - height: 95px; - width: 95px; - margin-top:5px; - margin-bottom:5px; - margin-left:5px; - margin-right:4px; - padding-top:5px; - padding-bottom:5px; - padding-left:5px; - padding-right:5px; - nav-index:appearance; - _s60-aspect-ratio:preserve; -} - -text -{ - font-size:3.5u; - margin-left:3px; - margin-right:5px; - margin-top:5px; - margin-bottom:5px; - padding-top:5px; - padding-bottom:5px; - padding-left:5px; - padding-right:5px; - direction: ltr; - text-align:center; - text-overflow-mode: wrap; - max-line-amount: 2; - font-family: EAknLogicalFontSecondaryFont; - color: "SKIN(268458534 13056 74)"; - nav-index:appearance; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/onerow_200315c2/xuikon/94/onerow.css --- a/idlehomescreen/data/vga_tch/onerow_200315c2/xuikon/94/onerow.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,41 +0,0 @@ -widget#onerow_template -{ - direction: rtl; - block-progression:rl; -} - -image#image_container -{ - height: 95px; - width: 95px; - margin-top:5px; - margin-bottom:5px; - margin-left:5px; - margin-right:4px; - padding-top:5px; - padding-bottom:5px; - padding-left:5px; - padding-right:5px; - nav-index:appearance; - _s60-aspect-ratio:preserve; -} - -text -{ - font-size:3.5u; - margin-left:3px; - margin-right:5px; - margin-top:5px; - margin-bottom:5px; - padding-top:5px; - padding-bottom:5px; - padding-left:5px; - padding-right:5px; - direction: ltr; - text-align:center; - text-overflow-mode: wrap; - max-line-amount: 2; - font-family: EAknLogicalFontSecondaryFont; - color: "SKIN(268458534 13056 74)"; - nav-index:appearance; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/posterwideimage_200315c6/group/bld.inf --- a/idlehomescreen/data/vga_tch/posterwideimage_200315c6/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,64 +0,0 @@ -/* -* Copyright (c) 2002-2008 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* The information required for building -* -*/ - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS -// Support for productization and Carbide.Ui customization -//******************************************************** -../hsps/00/manifest.dat /epoc32/data/Z/resource/homescreen/posterwideimage_200315c6/hsps/manifest.dat -../hsps/00/widgetconfiguration.xml /epoc32/data/Z/resource/homescreen/posterwideimage_200315c6/hsps/widgetconfiguration.xml -../xuikon/00/posterwideimage.dat /epoc32/data/Z/resource/homescreen/posterwideimage_200315c6/xuikon/posterwideimage_200315c6.dat -../xuikon/00/posterwideimage.css /epoc32/data/Z/resource/homescreen/posterwideimage_200315c6/xuikon/posterwideimage.css -../xuikon/00/posterwideimage.xml /epoc32/data/Z/resource/homescreen/posterwideimage_200315c6/xuikon/posterwideimage.xml -../xuikon/00/wideimage.dtd /epoc32/data/Z/resource/homescreen/posterwideimage_200315c6/xuikon/wideimage.dtd - -// Support for S60 builds -//*********************** -../rom/posterwideimage.iby CORE_APP_LAYER_IBY_EXPORT_PATH(posterwideimage_200315c6.iby) -../rom/posterwideimage_resources.iby LANGUAGE_APP_LAYER_IBY_EXPORT_PATH(posterwideimage_200315c6_resources.iby) -../rom/posterwideimage_customer.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(posterwideimage_200315c6_customer.iby) -../rom/posterwideimage_variant.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(posterwideimage_200315c6_variant.iby) - -// Support for S60 localization -//***************************** -// export localizable loc files (engineering versions) -../loc/wideimage.loc APP_LAYER_LOC_EXPORT_PATH(wideimage.loc) - -// Dtd-localization -//***************** -PRJ_EXTENSIONS -START EXTENSION tools/dtd -OPTION SWITCH_LOC_FILE_NAME posterwideimage_200315c6 -OPTION DTD_TYPE widget -OPTION LOC_FOLDERS yes -END - - -PRJ_MMPFILES - -PRJ_TESTMMPFILES - -// End of File - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/posterwideimage_200315c6/hsps/00/manifest.dat --- a/idlehomescreen/data/vga_tch/posterwideimage_200315c6/hsps/00/manifest.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,55 +0,0 @@ - - - - - - - vga_tch - - - - template - - - - - - 0x2001f48a - - - - - - 0x101fb657 - - - - - - 0x200315c6 - - - - - - posterwideimage - - posterwide - - 1.0 - - - - - - widgetconfiguration.xml - - - - - - posterwideimage.o0000 - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/posterwideimage_200315c6/hsps/00/widgetconfiguration.xml --- a/idlehomescreen/data/vga_tch/posterwideimage_200315c6/hsps/00/widgetconfiguration.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/posterwideimage_200315c6/loc/wideimage.loc --- a/idlehomescreen/data/vga_tch/posterwideimage_200315c6/loc/wideimage.loc Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,22 +0,0 @@ -/* -* Copyright (c) 2005-2006 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Localization strings for PosterWideImage widget (Xuikon) -* -*/ - -// d: Loading content -// l: ai_gene_pane_1_t1/opt4 -// w: -// r: TB9.2 -#define qtn_ai_loading_content "Loading content..." \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/posterwideimage_200315c6/rom/posterwideimage.iby --- a/idlehomescreen/data/vga_tch/posterwideimage_200315c6/rom/posterwideimage.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* PosterWideImage widget HSPS-plugin IBY file. -* -*/ - -#ifndef __POSTERWIDEIMAGE_200315C6_IBY__ -#define __POSTERWIDEIMAGE_200315C6_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools - -data=ZPRIVATE\200159c0\install\posterwideimage_200315c6\hsps\00\manifest.dat \private\200159c0\install\posterwideimage_200315c6\hsps\00\manifest.dat - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __POSTERWIDEIMAGE_200315C6_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/posterwideimage_200315c6/rom/posterwideimage_customer.iby --- a/idlehomescreen/data/vga_tch/posterwideimage_200315c6/rom/posterwideimage_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* Posterwideimage widget HSPS-plugin language specific IBY file. -* -*/ - -#ifndef __POSTERWIDEIMAGE_200315C6_CUSTOMER_IBY__ -#define __POSTERWIDEIMAGE_200315C6_CUSTOMER_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools, language specific -data=ZPRIVATE\200159c0\install\posterwideimage_200315c6\xuikon\00\posterwideimage.o0000 \private\200159c0\install\posterwideimage_200315c6\xuikon\00\posterwideimage.o0000 - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __POSTERWIDEIMAGE_200315C6_CUSTOMER_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/posterwideimage_200315c6/rom/posterwideimage_resources.iby --- a/idlehomescreen/data/vga_tch/posterwideimage_200315c6/rom/posterwideimage_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* Posterwideimage widget HSPS-plugin language specific IBY file. -* -*/ - -#ifndef __POSTERWIDEIMAGE_200315C6_RESOURCES_IBY__ -#define __POSTERWIDEIMAGE_200315C6_RESOURCES_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools, language specific -data=ZPRIVATE\200159c0\install\posterwideimage_200315c6\xuikon\00\posterwideimage.o0000 \private\200159c0\install\posterwideimage_200315c6\xuikon\00\posterwideimage.o0000 - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __POSTERWIDEIMAGE_200315C6_RESOURCES_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/posterwideimage_200315c6/rom/posterwideimage_variant.iby --- a/idlehomescreen/data/vga_tch/posterwideimage_200315c6/rom/posterwideimage_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* PosterWideImage widget HSPS-plugin variant specific IBY file. -* -*/ - -#ifndef __POSTERWIDEIMAGE_200315C6_VARIANT_IBY__ -#define __POSTERWIDEIMAGE_200315C6_VARIANT_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by variation tools, variant specific -data=ZPRIVATE\200159c0\install\posterwideimage_200315c6\hsps\00\widgetconfiguration.xml \private\200159c0\install\posterwideimage_200315c6\hsps\00\widgetconfiguration.xml - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __POSTERWIDEIMAGE_200315C6_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/posterwideimage_200315c6/xuikon/00/posterwideimage.css --- a/idlehomescreen/data/vga_tch/posterwideimage_200315c6/xuikon/00/posterwideimage.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,25 +0,0 @@ -widget#posterwideimage_template -{ - padding-top: 5px; - padding-left: 14px; - padding-right: 14px; - padding-bottom: 7px; - nav-index:appearance; - background-color: none; -} - -image#wide_image -{ - display: none; -} - -text#wide_text -{ - padding-left: 7px; - text-align: center; - font-family: EAknLogicalFontSecondaryFont; - font-size: 32px; - color: "SKIN(268458534 13056 74)"; -} - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/posterwideimage_200315c6/xuikon/00/posterwideimage.dat --- a/idlehomescreen/data/vga_tch/posterwideimage_200315c6/xuikon/00/posterwideimage.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ - - - 2001CB4F - 101FB657 - 110012F5 - posterwideimage - posterwideimage - 1.0 - posterwideimage.xml - posterwideimage.css - wideimage.dtd - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/posterwideimage_200315c6/xuikon/00/posterwideimage.xml --- a/idlehomescreen/data/vga_tch/posterwideimage_200315c6/xuikon/00/posterwideimage.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,58 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - &qtn_ai_loading_content; - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/posterwideimage_200315c6/xuikon/00/wideimage.dtd --- a/idlehomescreen/data/vga_tch/posterwideimage_200315c6/xuikon/00/wideimage.dtd Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,36 +0,0 @@ - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/profilemode_200286e7/gfx/icon.mif Binary file idlehomescreen/data/vga_tch/profilemode_200286e7/gfx/icon.mif has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/profilemode_200286e7/group/bld.inf --- a/idlehomescreen/data/vga_tch/profilemode_200286e7/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,74 +0,0 @@ -/* -* Copyright (c) 2002-2008 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -*/ - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS -// Support for productization and Carbide.Ui customization -//******************************************************** -../hsps/00/manifest.dat /epoc32/data/Z/resource/homescreen/profilemode_200286e7/hsps/manifest.dat -../hsps/00/widgetconfiguration.xml /epoc32/data/Z/resource/homescreen/profilemode_200286e7/hsps/widgetconfiguration.xml -// ../hsps/00/profilemodeconfiguration.dtd /epoc32/data/Z/resource/homescreen/profilemode_200286e7/hsps/profilemodeconfiguration.dtd - -../xuikon/00/profilemode.dat /epoc32/data/Z/resource/homescreen/profilemode_200286e7/xuikon/profilemode_200286e7.dat -../xuikon/00/profilemode.css /epoc32/data/Z/resource/homescreen/profilemode_200286e7/xuikon/profilemode.css -../xuikon/00/profilemode.xml /epoc32/data/Z/resource/homescreen/profilemode_200286e7/xuikon/profilemode.xml -// ../xuikon/00/profilemodewidget.dtd /epoc32/data/Z/resource/homescreen/profilemode_200286e7/xuikon/profilemodewidget.dtd - -// logo icon -../gfx/icon.mif /epoc32/data/Z/resource/homescreen/profilemode_200286e7/hsps/icon.mif - -// Arabic languages -//***************** -../xuikon/37/profilemode.css /epoc32/data/Z/resource/homescreen/profilemode_200286e7/xuikon/37/profilemode.css -../xuikon/50/profilemode.css /epoc32/data/Z/resource/homescreen/profilemode_200286e7/xuikon/50/profilemode.css -../xuikon/57/profilemode.css /epoc32/data/Z/resource/homescreen/profilemode_200286e7/xuikon/57/profilemode.css -../xuikon/94/profilemode.css /epoc32/data/Z/resource/homescreen/profilemode_200286e7/xuikon/94/profilemode.css - -// Support for S60 localization -//***************************** -// export localizable loc files (engineering versions) -// ../loc/profilemodewidget.loc APP_LAYER_LOC_EXPORT_PATH(profilemodewidget.loc) -// ../loc/profilemodeconfiguration.loc APP_LAYER_LOC_EXPORT_PATH(profilemodeconfiguration.loc) - -// Support for S60 builds -//*********************** -../rom/profilemodewidget_resources.iby LANGUAGE_APP_LAYER_IBY_EXPORT_PATH(profilemode_200286e7_resources.iby) -../rom/profilemodewidget_customer.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(profilemode_200286e7_customer.iby) -../rom/profilemodewidget_variant.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(profilemode_200286e7_variant.iby) -../rom/profilemodewidget.iby CORE_APP_LAYER_IBY_EXPORT_PATH(profilemode_200286e7.iby) - -// Dtd-localization -//***************** -PRJ_EXTENSIONS -START EXTENSION tools/dtd -OPTION SWITCH_LOC_FILE_NAME profilemode_200286e7 -OPTION DTD_TYPE widget -OPTION LOC_FOLDERS yes -END - - -PRJ_MMPFILES - -PRJ_TESTMMPFILES - -// End of File - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/profilemode_200286e7/hsps/00/manifest.dat --- a/idlehomescreen/data/vga_tch/profilemode_200286e7/hsps/00/manifest.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,41 +0,0 @@ - - - - - - - vga_tch - - widget - - - 0x2001f48a - - - 0x101fb657 - - - 0x200286e7 - - - - - Profilemode - - profilemode - 1.0 - - - - Change and edit active profile - - - widgetconfiguration.xml - - skin(270501603 9360):mif(icon.mif 16384 16385) - - - profilemode.o0000 - - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/profilemode_200286e7/hsps/00/profilemodeconfiguration.dtd --- a/idlehomescreen/data/vga_tch/profilemode_200286e7/hsps/00/profilemodeconfiguration.dtd Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,41 +0,0 @@ - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/profilemode_200286e7/hsps/00/widgetconfiguration.xml --- a/idlehomescreen/data/vga_tch/profilemode_200286e7/hsps/00/widgetconfiguration.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,5 +0,0 @@ - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/profilemode_200286e7/loc/profilemodeconfiguration.loc --- a/idlehomescreen/data/vga_tch/profilemode_200286e7/loc/profilemodeconfiguration.loc Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2006 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Localization strings for project Active Idle 3 (hsps) -* -*/ - - -// d: profilemode widget name -// l: listrow_wgtman_pane_t1 -// w: -// r: TB9.2 -#define qtn_profilemode_configuration_name "Profile" - -// d: profilemode widget description -// l: wgtman_list_pane_t1 -// w: -// r: TB9.2 -#define qtn_profilemode_configuration_desc "Quick access to time, date and change profilemode." \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/profilemode_200286e7/loc/profilemodewidget.loc --- a/idlehomescreen/data/vga_tch/profilemode_200286e7/loc/profilemodewidget.loc Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,23 +0,0 @@ -/* -* Copyright (c) 2005-2006 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Localization strings for project Active Idle 3 (xuikon) -* -*/ - - -// d: Edit active profilemode -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.1 -#define qtn_hs_profilemode_edit "Edit active profilemode" diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/profilemode_200286e7/rom/profilemodewidget.iby --- a/idlehomescreen/data/vga_tch/profilemode_200286e7/rom/profilemodewidget.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* profilemode widget HSPS-plugin IBY file. -* -*/ - -#ifndef __PROFILEMODEWIDGET_200286E7_IBY__ -#define __PROFILEMODEWIDGET_200286E7_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools -data=ZPRIVATE\200159c0\install\profilemode_200286e7\hsps\00\manifest.dat \private\200159c0\install\profilemode_200286e7\hsps\00\manifest.dat - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __PROFILEMODEWIDGET_200286E7_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/profilemode_200286e7/rom/profilemodewidget_customer.iby --- a/idlehomescreen/data/vga_tch/profilemode_200286e7/rom/profilemodewidget_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* profilemode widget HSPS-plugin language specific IBY file. -* -*/ - -#ifndef __PROFILEMODEWIDGET_200286E7_CUSTOMER_IBY__ -#define __PROFILEMODEWIDGET_200286E7_CUSTOMER_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools, language specific -data=ZPRIVATE\200159c0\install\profilemode_200286e7\xuikon\00\profilemode.o0000 \private\200159c0\install\profilemode_200286e7\xuikon\00\profilemode.o0000 -data=ZPRIVATE\200159c0\install\profilemode_200286e7\hsps\00\profilemodeconfiguration.dtd \private\200159c0\install\profilemode_200286e7\hsps\00\profilemodeconfiguration.dtd - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __PROFILEMODEWIDGET_200286E7_CUSTOMER_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/profilemode_200286e7/rom/profilemodewidget_resources.iby --- a/idlehomescreen/data/vga_tch/profilemode_200286e7/rom/profilemodewidget_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* profilemode widget HSPS-plugin language specific IBY file. -* -*/ - -#ifndef __PROFILEMODEWIDGET_200286E7_RESOURCES_IBY__ -#define __PROFILEMODEWIDGET_200286E7_RESOURCES_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -data=ZPRIVATE\200159c0\install\profilemode_200286e7\xuikon\00\profilemode.o0000 \private\200159c0\install\profilemode_200286e7\xuikon\00\profilemode.o0000 -data=ZPRIVATE\200159c0\install\profilemode_200286e7\hsps\00\icon.mif \private\200159c0\install\profilemode_200286e7\hsps\00\icon.mif -data=ZPRIVATE\200159c0\install\profilemode_200286e7\hsps\00\profilemodeconfiguration.dtd \private\200159c0\install\profilemode_200286e7\hsps\00\profilemodeconfiguration.dtd - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __PROFILEMODEWIDGET_200286E7_RESOURCES_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/profilemode_200286e7/rom/profilemodewidget_variant.iby --- a/idlehomescreen/data/vga_tch/profilemode_200286e7/rom/profilemodewidget_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* profilemode widget HSPS-plugin variant specific IBY file. -* -*/ - -#ifndef __PROFILEMODEWIDGET_200286E7_VARIANT_IBY__ -#define __PROFILEMODEWIDGET_200286E7_VARIANT_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by variation tools, variant specific -data=ZPRIVATE\200159c0\install\profilemode_200286e7\hsps\00\widgetconfiguration.xml \private\200159c0\install\profilemode_200286e7\hsps\00\widgetconfiguration.xml - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __PROFILEMODEWIDGET_200286E7_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/profilemode_200286e7/xuikon/00/profilemode.css --- a/idlehomescreen/data/vga_tch/profilemode_200286e7/xuikon/00/profilemode.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,176 +0,0 @@ -widget#profilewidget -{ - background-color: "SKIN(268458534 9916)"; - direction: ltr; - block-progression: tb; - nav-index: appearance; -} - -box#marginbox1 -{ - display: block; - width: auto; - height: 15px; -} - -box#profileiconbox -{ - padding-top: 8px; - padding-bottom: 3px; - height: 32px; - width: auto; -} - -image#profileicon -{ - margin-top: auto; - margin-bottom: auto; - margin-left: auto; - margin-right: auto; - width: 32px; - height: 32px; -} - -box#marginbox2 -{ - display: block; - width: auto; - height: 3px; -} - -box#profilenamebox -{ - height: 32px; - width: auto; -} - -text#profilename -{ - /* - padding-left: 9px; - padding-right: 9px; - */ - height: 32px; - text-align: center; - display: block; - visibility: visible; - width: auto; - font-family: EAknLogicalFontSecondaryFont; - /* font-size: 32px; */ - font-size: 30px; - color: "SKIN(268458534 13056 74)"; -} - -/* -box#profile_softindicator -{ - display: none; - padding-top: 2px; - padding-bottom: 2px; - padding-left: 2px; - padding-right: 2px; - direction: ltr; -} - -image#SatIdleModeIcon -{ - display: none; - width: 18px; - height: 20px; - position: static; - margin-top: auto; -} -*/ -/* Default system profiles */ -text.systemprofileitem -{ - display: block; -} - -/* Placeholders for profiles added by user */ -text.userprofileitem -{ - display: none; -} - -/****************** - SOFT INDICATOR WIDGET AREA -*******************/ -/* -newsticker.SIText -{ - text-align: center; - display: block; - visibility: visible; - width: auto; - font-family: EAknLogicalFontSecondaryFont; - font-size: 32px; - color: "SKIN(268458534 13056 74)"; - - white-space-collapse: collapse; - - _s60-scroll-behaviour: scroll-alternate; - - _s60-display-time: 2000; - _s60-scroll-loop: false; - _s60-start-delay: 0; - _s60-restart-after-update: true; -} -*/ - -newsticker#indicator -{ - padding-left: 9px; - padding-right: 9px; - text-align: center; - display: none; - visibility: visible; - width: auto; - height: 32px; - font-family: EAknLogicalFontSecondaryFont; - /* font-size: 32px; */ - font-size: 30px; - color: "SKIN(268458534 13056 74)"; - - white-space-collapse: collapse; - - _s60-scroll-behaviour: scroll-alternate; - - _s60-display-time: 2000; - _s60-scroll-loop: false; - _s60-start-delay: 0; - _s60-restart-after-update: true; -} - -box#NT_CUGMCN -{ - display: none; - text-align: center; - margin-left: auto; - margin-right: auto; - /* width: adaptive; */ - width: auto; - height: auto; - block-progression: rl; -} - -box#NT_SATVHZ -{ - text-align: center; - margin-left: auto; - margin-right: auto; - /* width: adaptive; */ - width: auto; - height: auto; - block-progression: rl; -} - -title#title_vhz -{ - display: none; -} - -title#title_sat -{ - display: none; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/profilemode_200286e7/xuikon/00/profilemode.dat --- a/idlehomescreen/data/vga_tch/profilemode_200286e7/xuikon/00/profilemode.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ - - - 2001CB4F - 101FB657 - 110012F5 - profilemode - profilemode - 1.0 - profilemode.xml - profilemode.css - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/profilemode_200286e7/xuikon/00/profilemode.xml --- a/idlehomescreen/data/vga_tch/profilemode_200286e7/xuikon/00/profilemode.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,115 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - <property class="DeviceStatus/CUGIndicator"/> - <property class="policy/emptyContent" name="title_cug" value="display: none;"/> - <property class="policy/Content" name="title_cug" value="display: block;"/> - <property class="policy/Visibility" name="indicator" value="if (title_cug,title_sat,title_vhz,title_mcn) display: block"/> - <property class="policy/Visibility" name="indicator" value="if !+(title_cug,title_sat,title_vhz,title_mcn) display: none"/> - <property class="policy/Visibility" name="marginbox1" value="if (title_cug,title_sat,title_vhz,title_mcn) display: none"/> - <property class="policy/Visibility" name="marginbox1" value="if !+(title_cug,title_sat,title_vhz,title_mcn) display: block"/> - <property class="policy/Visibility" name="marginbox2" value="if (title_cug,title_sat,title_vhz,title_mcn) display: none"/> - <property class="policy/Visibility" name="marginbox2" value="if !+(title_cug,title_sat,title_vhz,title_mcn) display: block"/> - - - - <property class="SAT/SatIdleModeText"/> - <property class="policy/emptyContent" name="title_sat" value="display: none;"/> - <property class="policy/Content" name="title_sat" value="display: block;"/> - <property class="policy/Visibility" name="indicator" value="if (title_cug,title_sat,title_vhz,title_mcn) display: block"/> - <property class="policy/Visibility" name="indicator" value="if !+(title_cug,title_sat,title_vhz,title_mcn) display: none"/> - <property class="policy/Visibility" name="marginbox1" value="if (title_cug,title_sat,title_vhz,title_mcn) display: none"/> - <property class="policy/Visibility" name="marginbox1" value="if !+(title_cug,title_sat,title_vhz,title_mcn) display: block"/> - <property class="policy/Visibility" name="marginbox2" value="if (title_cug,title_sat,title_vhz,title_mcn) display: none"/> - <property class="policy/Visibility" name="marginbox2" value="if !+(title_cug,title_sat,title_vhz,title_mcn) display: block"/> - - - - <property class="DeviceStatus/VHZText"/> - <property class="policy/emptyContent" name="title_vhz" value="display: none;"/> - <property class="policy/Content" name="title_vhz" value="display: block;"/> - <property class="policy/Visibility" name="indicator" value="if (title_cug,title_sat,title_vhz,title_mcn) display: block"/> - <property class="policy/Visibility" name="indicator" value="if !+(title_cug,title_sat,title_vhz,title_mcn) display: none"/> - <property class="policy/Visibility" name="marginbox1" value="if (title_cug,title_sat,title_vhz,title_mcn) display: none"/> - <property class="policy/Visibility" name="marginbox1" value="if !+(title_cug,title_sat,title_vhz,title_mcn) display: block"/> - <property class="policy/Visibility" name="marginbox2" value="if (title_cug,title_sat,title_vhz,title_mcn) display: none"/> - <property class="policy/Visibility" name="marginbox2" value="if !+(title_cug,title_sat,title_vhz,title_mcn) display: block"/> - - - - <property class="DeviceStatus/MCNIndicator"/> - <property class="policy/emptyContent" name="title_mcn" value="display: none;"/> - <property class="policy/Content" name="title_mcn" value="display: block;"/> - <property class="policy/Visibility" name="indicator" value="if (title_cug,title_sat,title_vhz,title_mcn) display: block"/> - <property class="policy/Visibility" name="indicator" value="if !+(title_cug,title_sat,title_vhz,title_mcn) display: none"/> - <property class="policy/Visibility" name="marginbox1" value="if (title_cug,title_sat,title_vhz,title_mcn) display: none"/> - <property class="policy/Visibility" name="marginbox1" value="if !+(title_cug,title_sat,title_vhz,title_mcn) display: block"/> - <property class="policy/Visibility" name="marginbox2" value="if (title_cug,title_sat,title_vhz,title_mcn) display: none"/> - <property class="policy/Visibility" name="marginbox2" value="if !+(title_cug,title_sat,title_vhz,title_mcn) display: block"/> - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/profilemode_200286e7/xuikon/00/profilemodewidget.dtd --- a/idlehomescreen/data/vga_tch/profilemode_200286e7/xuikon/00/profilemodewidget.dtd Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/profilemode_200286e7/xuikon/37/profilemode.css --- a/idlehomescreen/data/vga_tch/profilemode_200286e7/xuikon/37/profilemode.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,176 +0,0 @@ -widget#profilewidget -{ - background-color: "SKIN(268458534 9916)"; - direction: rtl; - block-progression: tb; - nav-index: appearance; -} - -box#marginbox1 -{ - display: block; - width: auto; - height: 15px; -} - -box#profileiconbox -{ - padding-top: 8px; - padding-bottom: 3px; - height: 32px; - width: auto; -} - -image#profileicon -{ - margin-top: auto; - margin-bottom: auto; - margin-left: auto; - margin-right: auto; - width: 32px; - height: 32px; -} - -box#marginbox2 -{ - display: block; - width: auto; - height: 3px; -} - -box#profilenamebox -{ - height: 32px; - width: auto; -} - -text#profilename -{ - /* - padding-left: 9px; - padding-right: 9px; - */ - height: 32px; - text-align: center; - display: block; - visibility: visible; - width: auto; - font-family: EAknLogicalFontSecondaryFont; - /* font-size: 32px; */ - font-size: 30px; - color: "SKIN(268458534 13056 74)"; -} - -/* -box#profile_softindicator -{ - display: none; - padding-top: 2px; - padding-bottom: 2px; - padding-left: 2px; - padding-right: 2px; - direction: ltr; -} - -image#SatIdleModeIcon -{ - display: none; - width: 18px; - height: 20px; - position: static; - margin-top: auto; -} -*/ -/* Default system profiles */ -text.systemprofileitem -{ - display: block; -} - -/* Placeholders for profiles added by user */ -text.userprofileitem -{ - display: none; -} - -/****************** - SOFT INDICATOR WIDGET AREA -*******************/ -/* -newsticker.SIText -{ - text-align: center; - display: block; - visibility: visible; - width: auto; - font-family: EAknLogicalFontSecondaryFont; - font-size: 32px; - color: "SKIN(268458534 13056 74)"; - - white-space-collapse: collapse; - - _s60-scroll-behaviour: scroll-alternate; - - _s60-display-time: 2000; - _s60-scroll-loop: false; - _s60-start-delay: 0; - _s60-restart-after-update: true; -} -*/ - -newsticker#indicator -{ - padding-left: 9px; - padding-right: 9px; - text-align: center; - display: none; - visibility: visible; - width: auto; - height: 32px; - font-family: EAknLogicalFontSecondaryFont; - /* font-size: 32px; */ - font-size: 30px; - color: "SKIN(268458534 13056 74)"; - - white-space-collapse: collapse; - - _s60-scroll-behaviour: scroll-alternate; - - _s60-display-time: 2000; - _s60-scroll-loop: false; - _s60-start-delay: 0; - _s60-restart-after-update: true; -} - -box#NT_CUGMCN -{ - display: none; - text-align: center; - margin-left: auto; - margin-right: auto; - /* width: adaptive; */ - width: auto; - height: auto; - block-progression: rl; -} - -box#NT_SATVHZ -{ - text-align: center; - margin-left: auto; - margin-right: auto; - /* width: adaptive; */ - width: auto; - height: auto; - block-progression: rl; -} - -title#title_vhz -{ - display: none; -} - -title#title_sat -{ - display: none; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/profilemode_200286e7/xuikon/50/profilemode.css --- a/idlehomescreen/data/vga_tch/profilemode_200286e7/xuikon/50/profilemode.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,176 +0,0 @@ -widget#profilewidget -{ - background-color: "SKIN(268458534 9916)"; - direction: rtl; - block-progression: tb; - nav-index: appearance; -} - -box#marginbox1 -{ - display: block; - width: auto; - height: 15px; -} - -box#profileiconbox -{ - padding-top: 8px; - padding-bottom: 3px; - height: 32px; - width: auto; -} - -image#profileicon -{ - margin-top: auto; - margin-bottom: auto; - margin-left: auto; - margin-right: auto; - width: 32px; - height: 32px; -} - -box#marginbox2 -{ - display: block; - width: auto; - height: 3px; -} - -box#profilenamebox -{ - height: 32px; - width: auto; -} - -text#profilename -{ - /* - padding-left: 9px; - padding-right: 9px; - */ - height: 32px; - text-align: center; - display: block; - visibility: visible; - width: auto; - font-family: EAknLogicalFontSecondaryFont; - /* font-size: 32px; */ - font-size: 30px; - color: "SKIN(268458534 13056 74)"; -} - -/* -box#profile_softindicator -{ - display: none; - padding-top: 2px; - padding-bottom: 2px; - padding-left: 2px; - padding-right: 2px; - direction: ltr; -} - -image#SatIdleModeIcon -{ - display: none; - width: 18px; - height: 20px; - position: static; - margin-top: auto; -} -*/ -/* Default system profiles */ -text.systemprofileitem -{ - display: block; -} - -/* Placeholders for profiles added by user */ -text.userprofileitem -{ - display: none; -} - -/****************** - SOFT INDICATOR WIDGET AREA -*******************/ -/* -newsticker.SIText -{ - text-align: center; - display: block; - visibility: visible; - width: auto; - font-family: EAknLogicalFontSecondaryFont; - font-size: 32px; - color: "SKIN(268458534 13056 74)"; - - white-space-collapse: collapse; - - _s60-scroll-behaviour: scroll-alternate; - - _s60-display-time: 2000; - _s60-scroll-loop: false; - _s60-start-delay: 0; - _s60-restart-after-update: true; -} -*/ - -newsticker#indicator -{ - padding-left: 9px; - padding-right: 9px; - text-align: center; - display: none; - visibility: visible; - width: auto; - height: 32px; - font-family: EAknLogicalFontSecondaryFont; - /* font-size: 32px; */ - font-size: 30px; - color: "SKIN(268458534 13056 74)"; - - white-space-collapse: collapse; - - _s60-scroll-behaviour: scroll-alternate; - - _s60-display-time: 2000; - _s60-scroll-loop: false; - _s60-start-delay: 0; - _s60-restart-after-update: true; -} - -box#NT_CUGMCN -{ - display: none; - text-align: center; - margin-left: auto; - margin-right: auto; - /* width: adaptive; */ - width: auto; - height: auto; - block-progression: rl; -} - -box#NT_SATVHZ -{ - text-align: center; - margin-left: auto; - margin-right: auto; - /* width: adaptive; */ - width: auto; - height: auto; - block-progression: rl; -} - -title#title_vhz -{ - display: none; -} - -title#title_sat -{ - display: none; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/profilemode_200286e7/xuikon/57/profilemode.css --- a/idlehomescreen/data/vga_tch/profilemode_200286e7/xuikon/57/profilemode.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,176 +0,0 @@ -widget#profilewidget -{ - background-color: "SKIN(268458534 9916)"; - direction: rtl; - block-progression: tb; - nav-index: appearance; -} - -box#marginbox1 -{ - display: block; - width: auto; - height: 15px; -} - -box#profileiconbox -{ - padding-top: 8px; - padding-bottom: 3px; - height: 32px; - width: auto; -} - -image#profileicon -{ - margin-top: auto; - margin-bottom: auto; - margin-left: auto; - margin-right: auto; - width: 32px; - height: 32px; -} - -box#marginbox2 -{ - display: block; - width: auto; - height: 3px; -} - -box#profilenamebox -{ - height: 32px; - width: auto; -} - -text#profilename -{ - /* - padding-left: 9px; - padding-right: 9px; - */ - height: 32px; - text-align: center; - display: block; - visibility: visible; - width: auto; - font-family: EAknLogicalFontSecondaryFont; - /* font-size: 32px; */ - font-size: 30px; - color: "SKIN(268458534 13056 74)"; -} - -/* -box#profile_softindicator -{ - display: none; - padding-top: 2px; - padding-bottom: 2px; - padding-left: 2px; - padding-right: 2px; - direction: ltr; -} - -image#SatIdleModeIcon -{ - display: none; - width: 18px; - height: 20px; - position: static; - margin-top: auto; -} -*/ -/* Default system profiles */ -text.systemprofileitem -{ - display: block; -} - -/* Placeholders for profiles added by user */ -text.userprofileitem -{ - display: none; -} - -/****************** - SOFT INDICATOR WIDGET AREA -*******************/ -/* -newsticker.SIText -{ - text-align: center; - display: block; - visibility: visible; - width: auto; - font-family: EAknLogicalFontSecondaryFont; - font-size: 32px; - color: "SKIN(268458534 13056 74)"; - - white-space-collapse: collapse; - - _s60-scroll-behaviour: scroll-alternate; - - _s60-display-time: 2000; - _s60-scroll-loop: false; - _s60-start-delay: 0; - _s60-restart-after-update: true; -} -*/ - -newsticker#indicator -{ - padding-left: 9px; - padding-right: 9px; - text-align: center; - display: none; - visibility: visible; - width: auto; - height: 32px; - font-family: EAknLogicalFontSecondaryFont; - /* font-size: 32px; */ - font-size: 30px; - color: "SKIN(268458534 13056 74)"; - - white-space-collapse: collapse; - - _s60-scroll-behaviour: scroll-alternate; - - _s60-display-time: 2000; - _s60-scroll-loop: false; - _s60-start-delay: 0; - _s60-restart-after-update: true; -} - -box#NT_CUGMCN -{ - display: none; - text-align: center; - margin-left: auto; - margin-right: auto; - /* width: adaptive; */ - width: auto; - height: auto; - block-progression: rl; -} - -box#NT_SATVHZ -{ - text-align: center; - margin-left: auto; - margin-right: auto; - /* width: adaptive; */ - width: auto; - height: auto; - block-progression: rl; -} - -title#title_vhz -{ - display: none; -} - -title#title_sat -{ - display: none; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/profilemode_200286e7/xuikon/94/profilemode.css --- a/idlehomescreen/data/vga_tch/profilemode_200286e7/xuikon/94/profilemode.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,176 +0,0 @@ -widget#profilewidget -{ - background-color: "SKIN(268458534 9916)"; - direction: rtl; - block-progression: tb; - nav-index: appearance; -} - -box#marginbox1 -{ - display: block; - width: auto; - height: 15px; -} - -box#profileiconbox -{ - padding-top: 8px; - padding-bottom: 3px; - height: 32px; - width: auto; -} - -image#profileicon -{ - margin-top: auto; - margin-bottom: auto; - margin-left: auto; - margin-right: auto; - width: 32px; - height: 32px; -} - -box#marginbox2 -{ - display: block; - width: auto; - height: 3px; -} - -box#profilenamebox -{ - height: 32px; - width: auto; -} - -text#profilename -{ - /* - padding-left: 9px; - padding-right: 9px; - */ - height: 32px; - text-align: center; - display: block; - visibility: visible; - width: auto; - font-family: EAknLogicalFontSecondaryFont; - /* font-size: 32px; */ - font-size: 30px; - color: "SKIN(268458534 13056 74)"; -} - -/* -box#profile_softindicator -{ - display: none; - padding-top: 2px; - padding-bottom: 2px; - padding-left: 2px; - padding-right: 2px; - direction: ltr; -} - -image#SatIdleModeIcon -{ - display: none; - width: 18px; - height: 20px; - position: static; - margin-top: auto; -} -*/ -/* Default system profiles */ -text.systemprofileitem -{ - display: block; -} - -/* Placeholders for profiles added by user */ -text.userprofileitem -{ - display: none; -} - -/****************** - SOFT INDICATOR WIDGET AREA -*******************/ -/* -newsticker.SIText -{ - text-align: center; - display: block; - visibility: visible; - width: auto; - font-family: EAknLogicalFontSecondaryFont; - font-size: 32px; - color: "SKIN(268458534 13056 74)"; - - white-space-collapse: collapse; - - _s60-scroll-behaviour: scroll-alternate; - - _s60-display-time: 2000; - _s60-scroll-loop: false; - _s60-start-delay: 0; - _s60-restart-after-update: true; -} -*/ - -newsticker#indicator -{ - padding-left: 9px; - padding-right: 9px; - text-align: center; - display: none; - visibility: visible; - width: auto; - height: 32px; - font-family: EAknLogicalFontSecondaryFont; - /* font-size: 32px; */ - font-size: 30px; - color: "SKIN(268458534 13056 74)"; - - white-space-collapse: collapse; - - _s60-scroll-behaviour: scroll-alternate; - - _s60-display-time: 2000; - _s60-scroll-loop: false; - _s60-start-delay: 0; - _s60-restart-after-update: true; -} - -box#NT_CUGMCN -{ - display: none; - text-align: center; - margin-left: auto; - margin-right: auto; - /* width: adaptive; */ - width: auto; - height: auto; - block-progression: rl; -} - -box#NT_SATVHZ -{ - text-align: center; - margin-left: auto; - margin-right: auto; - /* width: adaptive; */ - width: auto; - height: auto; - block-progression: rl; -} - -title#title_vhz -{ - display: none; -} - -title#title_sat -{ - display: none; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/root_2001f48f/conf/root2001f48f.confml Binary file idlehomescreen/data/vga_tch/root_2001f48f/conf/root2001f48f.confml has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/root_2001f48f/conf/root2001f48f.gcfml --- a/idlehomescreen/data/vga_tch/root_2001f48f/conf/root2001f48f.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,44 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/root_2001f48f/group/bld.inf --- a/idlehomescreen/data/vga_tch/root_2001f48f/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/root_2001f48f/group/bld.inf Wed Oct 13 14:18:30 2010 +0300 @@ -26,16 +26,13 @@ // Support for productization and Carbide.Ui customization //******************************************************** ../hsps/00/manifest.dat /epoc32/data/z/resource/homescreen/root_2001f48f/hsps/manifest.dat -//../hsps/00/rootconfiguration.xml /epoc32/data/z/resource/homescreen/root_2001f48f/hsps/rootconfiguration.xml +../hsps/00/rootconfiguration.xml /epoc32/data/z/resource/homescreen/root_2001f48f/hsps/rootconfiguration.xml +//../hsps/00/rootconfiguration.dtd /epoc32/data/z/resource/homescreen/root_2001f48f/hsps/rootconfiguration.dtd ../xuikon/00/root.dat /epoc32/data/z/resource/homescreen/root_2001f48f/xuikon/root_2001f48f.dat ../xuikon/00/root.css /epoc32/data/z/resource/homescreen/root_2001f48f/xuikon/root.css ../xuikon/00/root.xml /epoc32/data/z/resource/homescreen/root_2001f48f/xuikon/root.xml -//Confml and cfgml files for the customization -// starting use confml it is need to remove root_configuration.xml direct exporting (root_2001f482_variant.iby) -//*********************************** -../conf/root2001f48f.confml APP_LAYER_CONFML(root2001f48f.confml) -../conf/root2001f48f.gcfml APP_LAYER_GCFML(root2001f48f.gcfml) + // Support for S60 localization //***************************** @@ -46,9 +43,9 @@ // Support for S60 builds //*********************** -//../rom/root_resources.iby LANGUAGE_APP_LAYER_IBY_EXPORT_PATH(root_2001f48f_resources.iby) -//../rom/root_customer.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(root_2001f48f_customer.iby) -//../rom/root_variant.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(root_2001f48f_variant.iby) +../rom/root_resources.iby LANGUAGE_APP_LAYER_IBY_EXPORT_PATH(root_2001f48f_resources.iby) +../rom/root_customer.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(root_2001f48f_customer.iby) +../rom/root_variant.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(root_2001f48f_variant.iby) ../rom/root.iby CORE_APP_LAYER_IBY_EXPORT_PATH(root_2001f48f.iby) diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/root_2001f48f/hsps/00/manifest.dat --- a/idlehomescreen/data/vga_tch/root_2001f48f/hsps/00/manifest.dat Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/root_2001f48f/hsps/00/manifest.dat Wed Oct 13 14:18:30 2010 +0300 @@ -23,7 +23,10 @@ rootconfiguration.xml - + + + + root.o0000 diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/root_2001f48f/hsps/00/rootconfiguration.dtd --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/idlehomescreen/data/vga_tch/root_2001f48f/hsps/00/rootconfiguration.dtd Wed Oct 13 14:18:30 2010 +0300 @@ -0,0 +1,25 @@ + + + + + + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/root_2001f48f/hsps/00/rootconfiguration.xml --- a/idlehomescreen/data/vga_tch/root_2001f48f/hsps/00/rootconfiguration.xml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/root_2001f48f/hsps/00/rootconfiguration.xml Wed Oct 13 14:18:30 2010 +0300 @@ -1,17 +1,16 @@ - + - + - - - + + + + + + - - - - - - + + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/root_2001f48f/rom/root.iby --- a/idlehomescreen/data/vga_tch/root_2001f48f/rom/root.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/root_2001f48f/rom/root.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,12 +19,12 @@ #ifndef __ROOT_2001F48F_IBY__ #define __ROOT_2001F48F_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools data=ZPRIVATE\200159c0\install\root_2001f48f\xuikon\00\root.o0000 \private\200159c0\install\root_2001f48f\xuikon\00\root.o0000 data=ZPRIVATE\200159c0\install\root_2001f48f\hsps\00\manifest.dat \private\200159c0\install\root_2001f48f\hsps\00\manifest.dat -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __ROOT_2001F48F_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/root_2001f48f/rom/root_customer.iby --- a/idlehomescreen/data/vga_tch/root_2001f48f/rom/root_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/root_2001f48f/rom/root_customer.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,11 +19,11 @@ #ifndef __ROOT_2001F48F_CUSTOMER_IBY__ #define __ROOT_2001F48F_CUSTOMER_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools, language specific //data=ZPRIVATE\200159c0\install\root_2001f48f\hsps\00\rootconfiguration.dtd \private\200159c0\install\root_2001f48f\hsps\00\rootconfiguration.dtd -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __ROOT_2001F48F_CUSTOMER_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/root_2001f48f/rom/root_resources.iby --- a/idlehomescreen/data/vga_tch/root_2001f48f/rom/root_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/root_2001f48f/rom/root_resources.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,11 +19,11 @@ #ifndef __ROOT_2001F48F_RESOURCES_IBY__ #define __ROOT_2001F48F_RESOURCES_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools, language specific //data=ZPRIVATE\200159c0\install\root_2001f48f\hsps\00\rootconfiguration.dtd \private\200159c0\install\root_2001f48f\hsps\00\rootconfiguration.dtd -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __ROOT_2001F48F_RESOURCES_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/root_2001f48f/rom/root_variant.iby --- a/idlehomescreen/data/vga_tch/root_2001f48f/rom/root_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/root_2001f48f/rom/root_variant.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,11 +19,11 @@ #ifndef __ROOT_2001F48F_VARIANT_IBY__ #define __ROOT_2001F48F_VARIANT_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by variation tools, variant specific data=ZPRIVATE\200159c0\install\root_2001f48f\hsps\00\rootconfiguration.xml \private\200159c0\install\root_2001f48f\hsps\00\rootconfiguration.xml -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __ROOT_2001F48F_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/root_2001f48f/xuikon/00/root.xml --- a/idlehomescreen/data/vga_tch/root_2001f48f/xuikon/00/root.xml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/root_2001f48f/xuikon/00/root.xml Wed Oct 13 14:18:30 2010 +0300 @@ -1,4 +1,5 @@ + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/single_row_icon_widget_2001fdc0/rom/single_row_icon_widget.iby --- a/idlehomescreen/data/vga_tch/single_row_icon_widget_2001fdc0/rom/single_row_icon_widget.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/single_row_icon_widget_2001fdc0/rom/single_row_icon_widget.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,11 +19,10 @@ #ifndef __SINGLE_ROW_WIDGET_2001FDC0_IBY__ #define __SINGLE_ROW_WIDGET_2001FDC0_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools data=ZPRIVATE\200159c0\install\single_row_icon_widget_2001fdc0\hsps\00\manifest.dat \private\200159c0\install\single_row_icon_widget_2001fdc0\hsps\00\manifest.dat -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __SINGLE_ROW_WIDGET_2001FDC0_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/single_row_icon_widget_2001fdc0/rom/single_row_icon_widget_customer.iby --- a/idlehomescreen/data/vga_tch/single_row_icon_widget_2001fdc0/rom/single_row_icon_widget_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/single_row_icon_widget_2001fdc0/rom/single_row_icon_widget_customer.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,11 +19,11 @@ #ifndef __SINGLE_ROW_WIDGET_2001FDC0_CUSTOMER_IBY__ #define __SINGLE_ROW_WIDGET_2001FDC0_CUSTOMER_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools, language specific data=ZPRIVATE\200159c0\install\single_row_icon_widget_2001fdc0\xuikon\00\single_row_icon_widget.o0000 \private\200159c0\install\single_row_icon_widget_2001fdc0\xuikon\00\single_row_icon_widget.o0000 -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __SINGLE_ROW_WIDGET_2001FDC0_CUSTOMER_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/single_row_icon_widget_2001fdc0/rom/single_row_icon_widget_resources.iby --- a/idlehomescreen/data/vga_tch/single_row_icon_widget_2001fdc0/rom/single_row_icon_widget_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/single_row_icon_widget_2001fdc0/rom/single_row_icon_widget_resources.iby Wed Oct 13 14:18:30 2010 +0300 @@ -18,7 +18,7 @@ #ifndef __SINGLE_ROW_WIDGET_2001FDC0_RESOURCES_IBY__ #define __SINGLE_ROW_WIDGET_2001FDC0_RESOURCES_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools, language specific #if defined (__LOCALES_37_IBY__) @@ -34,6 +34,6 @@ data=ZPRIVATE\200159c0\install\single_row_icon_widget_2001fdc0\xuikon\94\single_row_icon_widget.o0094 \private\200159c0\install\single_row_icon_widget_2001fdc0\xuikon\94\single_row_icon_widget.o0094 #endif -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __SINGLE_ROW_WIDGET_2001FDC0_RESOURCES_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/single_row_icon_widget_2001fdc0/rom/single_row_icon_widget_variant.iby --- a/idlehomescreen/data/vga_tch/single_row_icon_widget_2001fdc0/rom/single_row_icon_widget_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/single_row_icon_widget_2001fdc0/rom/single_row_icon_widget_variant.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,11 +19,11 @@ #ifndef __SINGLE_ROW_WIDGET_2001FDC0_VARIANT_IBY__ #define __SINGLE_ROW_WIDGET_2001FDC0_VARIANT_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by variation tools, variant specific data=ZPRIVATE\200159c0\install\single_row_icon_widget_2001fdc0\hsps\00\widgetconfiguration.xml \private\200159c0\install\single_row_icon_widget_2001fdc0\hsps\00\widgetconfiguration.xml -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __SINGLE_ROW_WIDGET_2001FDC0_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/single_row_widget_2001fdc1/rom/single_row_widget.iby --- a/idlehomescreen/data/vga_tch/single_row_widget_2001fdc1/rom/single_row_widget.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/single_row_widget_2001fdc1/rom/single_row_widget.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,11 +19,11 @@ #ifndef __SINGLE_ROW_WIDGET_2001FDC1_IBY__ #define __SINGLE_ROW_WIDGET_2001FDC1_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools data=ZPRIVATE\200159c0\install\single_row_widget_2001fdc1\hsps\00\manifest.dat \private\200159c0\install\single_row_widget_2001fdc1\hsps\00\manifest.dat -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __SINGLE_ROW_WIDGET_2001FDC1_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/single_row_widget_2001fdc1/rom/single_row_widget_customer.iby --- a/idlehomescreen/data/vga_tch/single_row_widget_2001fdc1/rom/single_row_widget_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/single_row_widget_2001fdc1/rom/single_row_widget_customer.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,11 +19,11 @@ #ifndef __SINGLE_ROW_WIDGET_2001FDC1_CUSTOMER_IBY__ #define __SINGLE_ROW_WIDGET_2001FDC1_CUSTOMER_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools, language specific data=ZPRIVATE\200159c0\install\single_row_widget_2001fdc1\xuikon\00\single_row_widget.o0000 \private\200159c0\install\single_row_widget_2001fdc1\xuikon\00\single_row_widget.o0000 -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __SINGLE_ROW_WIDGET_2001FDC1_CUSTOMER_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/single_row_widget_2001fdc1/rom/single_row_widget_resources.iby --- a/idlehomescreen/data/vga_tch/single_row_widget_2001fdc1/rom/single_row_widget_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/single_row_widget_2001fdc1/rom/single_row_widget_resources.iby Wed Oct 13 14:18:30 2010 +0300 @@ -18,7 +18,7 @@ #ifndef __SINGLE_ROW_WIDGET_2001FDC1_RESOURCES_IBY__ #define __SINGLE_ROW_WIDGET_2001FDC1_RESOURCES_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools, language specific #if defined (__LOCALES_37_IBY__) @@ -34,6 +34,6 @@ data=ZPRIVATE\200159c0\install\single_row_widget_2001fdc1\xuikon\94\single_row_widget.o0094 \private\200159c0\install\single_row_widget_2001fdc1\xuikon\94\single_row_widget.o0094 #endif -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __SINGLE_ROW_WIDGET_2001FDC1_RESOURCES_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/single_row_widget_2001fdc1/rom/single_row_widget_variant.iby --- a/idlehomescreen/data/vga_tch/single_row_widget_2001fdc1/rom/single_row_widget_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/single_row_widget_2001fdc1/rom/single_row_widget_variant.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,11 +19,11 @@ #ifndef __SINGLE_ROW_WIDGET_2001FDC1_VARIANT_IBY__ #define __SINGLE_ROW_WIDGET_2001FDC1_VARIANT_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by variation tools, variant specific data=ZPRIVATE\200159c0\install\single_row_widget_2001fdc1\hsps\00\widgetconfiguration.xml \private\200159c0\install\single_row_widget_2001fdc1\hsps\00\widgetconfiguration.xml -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __SINGLE_ROW_WIDGET_2001FDC1_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/templateview_200286ec/group/bld.inf --- a/idlehomescreen/data/vga_tch/templateview_200286ec/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,77 +0,0 @@ -/* -* Copyright (c) 2002-2008 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: The information required for building -* -*/ - - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS -// Support for productization and Carbide.Ui customization -//******************************************************** -../hsps/00/manifest.dat /epoc32/data/z/resource/homescreen/tempateview_200286ec/hsps/manifest.dat -../hsps/00/viewconfiguration.xml /epoc32/data/z/resource/homescreen/tempateview_200286ec/hsps/viewconfiguration.xml -//../hsps/00/viewconfiguration.dtd /epoc32/data/z/resource/homescreen/tempateview_200286ec/hsps/viewconfiguration.dtd - -../xuikon/00/view.dat /epoc32/data/z/resource/homescreen/tempateview_200286ec/xuikon/tempateview_200286ec.dat -../xuikon/00/view.xml /epoc32/data/z/resource/homescreen/tempateview_200286ec/xuikon/view.xml -../xuikon/00/view.dtd /epoc32/data/z/resource/homescreen/tempateview_200286ec/xuikon/view.dtd -../xuikon/00/view.css /epoc32/data/z/resource/homescreen/tempateview_200286ec/xuikon/view.css - -// Arabic languages -//***************** -../xuikon/37/view.css /epoc32/data/z/resource/homescreen/tempateview_200286ec/xuikon/37/view.css -../xuikon/50/view.css /epoc32/data/z/resource/homescreen/tempateview_200286ec/xuikon/50/view.css -../xuikon/57/view.css /epoc32/data/z/resource/homescreen/tempateview_200286ec/xuikon/57/view.css -../xuikon/94/view.css /epoc32/data/z/resource/homescreen/tempateview_200286ec/xuikon/94/view.css - - -// Support for S60 localization -//***************************** -//#ifndef __VIEWCONFIGURATION_LOC__ -//#define __VIEWCONFIGURATION_LOC__ -//../loc/viewconfiguration.loc APP_LAYER_LOC_EXPORT_PATH(viewconfiguration.loc) -//#endif // __VIEWCONFIGURATION_LOC__ - -#ifndef __TEMPLATEVIEW_LOC__ -#define __TEMPLATEVIEW_LOC__ -../loc/templateview.loc APP_LAYER_LOC_EXPORT_PATH(templateview.loc) -#endif // __TEMPLATEVIEW_LOC__ - -// Support for S60 builds -//*********************** -../rom/view_resources.iby LANGUAGE_APP_LAYER_IBY_EXPORT_PATH(tempateview_200286ec_resources.iby) -../rom/view_customer.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(tempateview_200286ec_customer.iby) -../rom/view_variant.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(tempateview_200286ec_variant.iby) -../rom/view.iby CORE_APP_LAYER_IBY_EXPORT_PATH(tempateview_200286ec.iby) - - -// Dtd-localization -//***************** -PRJ_EXTENSIONS -START EXTENSION tools/dtd -OPTION SWITCH_LOC_FILE_NAME tempateview_200286ec -OPTION DTD_TYPE widget -END - - -PRJ_MMPFILES - -PRJ_TESTMMPFILES - -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/templateview_200286ec/hsps/00/manifest.dat --- a/idlehomescreen/data/vga_tch/templateview_200286ec/hsps/00/manifest.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,33 +0,0 @@ - - - - vga_tch - - view - - - 0x2001f48a - - - 0x101fb657 - - - 0x200286ec - - - tempateview - ai3_nokia - 1.0 - - - viewconfiguration.xml - - - - - - - view.o0000 - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/templateview_200286ec/hsps/00/viewconfiguration.dtd --- a/idlehomescreen/data/vga_tch/templateview_200286ec/hsps/00/viewconfiguration.dtd Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,27 +0,0 @@ - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/templateview_200286ec/hsps/00/viewconfiguration.xml --- a/idlehomescreen/data/vga_tch/templateview_200286ec/hsps/00/viewconfiguration.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,23 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/templateview_200286ec/loc/templateview.loc --- a/idlehomescreen/data/vga_tch/templateview_200286ec/loc/templateview.loc Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,322 +0,0 @@ -/* -* Copyright (c) 2005-2006 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Localization strings for project Active Idle 3 -* -*/ - -// d: Help -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_options_help "Help" - -// d: Open -// l: control_pane_t1/opt7 -// w: -// r: TB9.2 -#define qtn_msk_open "Open" - -// d: Done -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_done "Done" - -// d: Open -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_options_open "Open" - -// d: Back -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_back "Back" - -// d: Empty string -// l: control_pane_t1/opt7 -// w: -// r: TB9.2 -#define shortcut_emptycaption " " - -// d: Add page -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_add_page "Add page" - -// d: Select -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_options_select_widget "Select" - -// d: Add content -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_add_widget "Add content" - -// d: Access the widget catalog -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_widget_catalog "Widget catalog" - -// d: Search -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_search "Search" - -// d: Options -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_options "Options" - -// d: Refresh -// l: list_single_pane_t1_cp2/opt3 -// w: -// r: TB9.2 -#define qtn_hs_refresh_widget "Refresh" - -// d: Focused widget -// l: list_single_popup_submenu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_refresh_one_widget "One" - -// d: All widgets -// l: list_single_popup_submenu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_refresh_all_widgets "All" - -// d: Remove content -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_remove_widget "Remove content" - -// d: Hide the content -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_hide_widgets "Hide the content" - -// d: Edit contents -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_edit_content "Edit content" - -// d: Change Wallpaper -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_change_wallpaper "Change Wallpaper" - -// d: Change Shortcut Settings -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_change_shortcut_settings "Change Shortcut Settings" - -// d: Widget settings -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_widget_settings "Widget settings" - -// d: Show widgets -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_show_widgets "Show the content" - -// d: Change Home screen page -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_change_page "Change Home screen page" - -// d: Change -// l: control_pane_t1/opt7 -// w: -// r: TB9.2 -#define qtn_msk_change "Change" - -// d: Show all profiles in Profiles widget -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_show_profiles "Show all profiles" - -// d: Right selection key -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_set_right_idle_softkey "Right selection key" - -// d: Select -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_select "Select" - -// d: Cancel -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_cancel "Cancel" - -// d: Options menu item which switches home to online. Web widgets get updates from network. -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_online "Switch Home to online" - -// d: Options menu item which switches home to offline. Web widgets are not updated -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_offline "Switch Home to offline" - -// d: String which is shown in long tap menu of Home screen if tapped widget has settings -// l: list_single_touch_menu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_longtap_settings "Settings" - -// d: String which is shown in long tap menu of Home screen if tapped some widget which is removable -// l: list_single_touch_menu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_longtap_remove_element "Remove" - -// d: String which is shown in long tap menu of Home screen if tapped empty space in home screen -// l: list_single_touch_menu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_longtap_add "Add content" - -// d: String which is shown in long tap menu of Home screen -// l: list_single_touch_menu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_change_longtap_wallpaper "Change wallpaper" - -// d: User can download new HS widgets. String is visible in add content list query -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_download_new_widgets "Download" - -// d: Changes focused widget -// l: list_single_touch_menu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_edit_replace "Replace" - -// d: deletes current home screen page -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_page_options_delete "Delete page" - -// d: creates new home screen page -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_page_options_new "New page" - -// d: view title in editing mode -// l: title_pane_t2 -// w: -// r: TB9.2 -#define qtn_hs_title_editing_view "Editing view" - -// d: Call -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_call "Call" - -// d: Added new option menu item to Edit mode for opening the widget catalog, -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_edit_widget_catalog "Widget Catalog" - -// d: Deletes the current Home screen page and focus goes to the next available Home screen page in Edit mode -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_page_edit_options_delete "Delete page" - -// d: Done -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_done "Done" - -// d: Search -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_search "Search" - -// d: Options -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_options "Options" - -// d: Back -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_back "Back" - -// d: Select -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_select "Select" - -// d: Cancel -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_cancel "Cancel" - -// d: Call -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_call "Call" - -// d: Lock keypad -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_lock_keypad "Lock keypad" - -// d: Menu -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_apps_menu_skey "Menu" diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/templateview_200286ec/loc/viewconfiguration.loc --- a/idlehomescreen/data/vga_tch/templateview_200286ec/loc/viewconfiguration.loc Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,27 +0,0 @@ -/* -* Copyright (c) 2005-2006 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Localization strings for tempateview plugin configuration (HSPS) -* -*/ - - - -// d: AI3 View -// l: ai_gene_pane_1_t1 -// w: -// r: TB9.2 -//#define qtn_view_configuration_name "AI3 View" - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/templateview_200286ec/rom/view.iby --- a/idlehomescreen/data/vga_tch/templateview_200286ec/rom/view.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: View widget HSPS-plugin IBY file. -* -*/ - - -#ifndef __AI3VIEW_200286ec_IBY__ -#define __AI3VIEW_200286ec_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools -data=ZPRIVATE\200159c0\install\tempateview_200286ec\hsps\00\manifest.dat \private\200159c0\install\tempateview_200286ec\hsps\00\manifest.dat - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __AI3VIEW_200286ec_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/templateview_200286ec/rom/view_customer.iby --- a/idlehomescreen/data/vga_tch/templateview_200286ec/rom/view_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: View widget HSPS-plugin language specific IBY file. -* -*/ - - -#ifndef __AI3VIEW_200286ec_CUSTOMER_IBY__ -#define __AI3VIEW_200286ec_CUSTOMER_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools, language specific -data=ZPRIVATE\200159c0\install\tempateview_200286ec\xuikon\00\view.o0000 \private\200159c0\install\tempateview_200286ec\xuikon\00\view.o0000 -//data=ZPRIVATE\200159c0\install\tempateview_200286ec\hsps\00\viewconfiguration.dtd \private\200159c0\install\tempateview_200286ec\hsps\00\viewconfiguration.dtd - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __AI3VIEW_200286ec_CUSTOMER_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/templateview_200286ec/rom/view_resources.iby --- a/idlehomescreen/data/vga_tch/templateview_200286ec/rom/view_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: View widget HSPS-plugin language specific IBY file. -* -*/ - - -#ifndef __AI3VIEW_200286ec_RESOURCES_IBY__ -#define __AI3VIEW_200286ec_RESOURCES_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools, language specific -data=ZPRIVATE\200159c0\install\tempateview_200286ec\xuikon\00\view.o0000 \private\200159c0\install\tempateview_200286ec\xuikon\00\view.o0000 -//data=ZPRIVATE\200159c0\install\tempateview_200286ec\hsps\00\viewconfiguration.dtd \private\200159c0\install\tempateview_200286ec\hsps\00\viewconfiguration.dtd - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __AI3VIEW_200286ec_RESOURCES_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/templateview_200286ec/rom/view_variant.iby --- a/idlehomescreen/data/vga_tch/templateview_200286ec/rom/view_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: View widget HSPS-plugin variant specific IBY file. -* -*/ - - -#ifndef __AI3VIEW_200286ec_VARIANT_IBY__ -#define __AI3VIEW_200286ec_VARIANT_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by variation tools, variant specific -data=ZPRIVATE\200159c0\install\tempateview_200286ec\hsps\00\viewconfiguration.xml \private\200159c0\install\tempateview_200286ec\hsps\00\viewconfiguration.xml - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __AI3VIEW_200286ec_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/templateview_200286ec/xuikon/00/View.xml --- a/idlehomescreen/data/vga_tch/templateview_200286ec/xuikon/00/View.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,283 +0,0 @@ - - - - - - - - - > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/templateview_200286ec/xuikon/00/view.css --- a/idlehomescreen/data/vga_tch/templateview_200286ec/xuikon/00/view.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -view -{ - direction: ltr; - block-progression: tb; - background-image: wallpaper; - swipe: true; - - _s60-status-pane-layout: widescreen-flat-3softkeys; -} - -box#plugins_container -{ - direction: ltr; - block-progression: tb; -} - -plugin.miniplugins -{ - height: 115px; - width: 176px; - - margin-top: 9px; - margin-left: 9px; - - _s60-longtap: true; - - nav-index: appearance; -} - -plugin.plugins -{ - height: 115px; - width: 436px; - - margin-top: 9px; - margin-left: 10px; - - _s60-longtap: true; - - nav-index: appearance; -} - -trigger#hs_popup_open_hold:edit -{ - display: none; -} - -trigger#hs_popup_open_up -{ - display: none; -} - -trigger#hs_popup_open_up:edit -{ - display: block; -} - -softkey#rsk -{ - _s60-longtap: true; - _s60-aspect-ratio: preserve; -} - -softkey#msk_ltr -{ - display: block; -} - -softkey#msk_rtl -{ - display: none; -} - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/templateview_200286ec/xuikon/00/view.dat --- a/idlehomescreen/data/vga_tch/templateview_200286ec/xuikon/00/view.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,13 +0,0 @@ - - - E029CF57 - 101FB657 - 11001234 - Nokia - view - 1.0 - view.xml - view.css - view.dtd - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/templateview_200286ec/xuikon/00/view.dtd --- a/idlehomescreen/data/vga_tch/templateview_200286ec/xuikon/00/view.dtd Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,514 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/templateview_200286ec/xuikon/37/view.css --- a/idlehomescreen/data/vga_tch/templateview_200286ec/xuikon/37/view.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,74 +0,0 @@ -view -{ - direction: rtl; - block-progression: tb; - background-image: wallpaper; - swipe: true; - - _s60-status-pane-layout: widescreen-flat-3softkeys; -} - -box#plugins_container -{ - direction: rtl; - block-progression: tb; -} - -plugin.miniplugins -{ - height: 115px; - width: 176px; - - margin-top: 9px; - margin-right: 9px; - - _s60-longtap: true; - - nav-index: appearance; -} - -plugin.plugins -{ - height: 115px; - width: 436px; - - margin-top: 9px; - margin-right: 10px; - - _s60-longtap: true; - - nav-index: appearance; -} - -trigger#hs_popup_open_hold:edit -{ - display: none; -} - -trigger#hs_popup_open_up -{ - display: none; -} - -trigger#hs_popup_open_up:edit -{ - display: block; -} - -softkey#rsk -{ - _s60-longtap: true; - _s60-aspect-ratio: preserve; -} - -softkey#msk_ltr -{ - display: none; -} - -softkey#msk_rtl -{ - display: block; -} - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/templateview_200286ec/xuikon/50/view.css --- a/idlehomescreen/data/vga_tch/templateview_200286ec/xuikon/50/view.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -view -{ - direction: rtl; - block-progression: tb; - background-image: wallpaper; - swipe: true; - - _s60-status-pane-layout: widescreen-flat-3softkeys; -} - -box#plugins_container -{ - direction: rtl; - block-progression: tb; -} - -plugin.miniplugins -{ - height: 115px; - width: 176px; - - margin-top: 9px; - margin-right: 9px; - - _s60-longtap: true; - - nav-index: appearance; -} - -plugin.plugins -{ - height: 115px; - width: 436px; - - margin-top: 9px; - margin-right: 10px; - - _s60-longtap: true; - - nav-index: appearance; -} - -trigger#hs_popup_open_hold:edit -{ - display: none; -} - -trigger#hs_popup_open_up -{ - display: none; -} - -trigger#hs_popup_open_up:edit -{ - display: block; -} - -softkey#rsk -{ - _s60-longtap: true; - _s60-aspect-ratio: preserve; -} - -softkey#msk_ltr -{ - display: none; -} - -softkey#msk_rtl -{ - display: block; -} - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/templateview_200286ec/xuikon/57/view.css --- a/idlehomescreen/data/vga_tch/templateview_200286ec/xuikon/57/view.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -view -{ - direction: rtl; - block-progression: tb; - background-image: wallpaper; - swipe: true; - - _s60-status-pane-layout: widescreen-flat-3softkeys; -} - -box#plugins_container -{ - direction: rtl; - block-progression: tb; -} - -plugin.miniplugins -{ - height: 115px; - width: 176px; - - margin-top: 9px; - margin-right: 9px; - - _s60-longtap: true; - - nav-index: appearance; -} - -plugin.plugins -{ - height: 115px; - width: 436px; - - margin-top: 9px; - margin-right: 10px; - - _s60-longtap: true; - - nav-index: appearance; -} - -trigger#hs_popup_open_hold:edit -{ - display: none; -} - -trigger#hs_popup_open_up -{ - display: none; -} - -trigger#hs_popup_open_up:edit -{ - display: block; -} - -softkey#rsk -{ - _s60-longtap: true; - _s60-aspect-ratio: preserve; -} - -softkey#msk_ltr -{ - display: none; -} - -softkey#msk_rtl -{ - display: block; -} - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/templateview_200286ec/xuikon/94/view.css --- a/idlehomescreen/data/vga_tch/templateview_200286ec/xuikon/94/view.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,74 +0,0 @@ -view -{ - direction: rtl; - block-progression: tb; - background-image: wallpaper; - swipe: true; - - _s60-status-pane-layout: widescreen-flat-3softkeys; -} - -box#plugins_container -{ - direction: rtl; - block-progression: tb; -} - -plugin.miniplugins -{ - height: 115px; - width: 176px; - - margin-top: 9px; - margin-right: 9px; - - _s60-longtap: true; - - nav-index: appearance; -} - -plugin.plugins -{ - height: 115px; - width: 436px; - - margin-top: 9px; - margin-right: 10px; - - _s60-longtap: true; - - nav-index: appearance; -} - -trigger#hs_popup_open_hold:edit -{ - display: none; -} - -trigger#hs_popup_open_up -{ - display: none; -} - -trigger#hs_popup_open_up:edit -{ - display: block; -} - -softkey#rsk -{ - _s60-longtap: true; - _s60-aspect-ratio: preserve; -} - -softkey#msk_ltr -{ - display: none; -} - -softkey#msk_rtl -{ - display: block; -} - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threerows_200315c4/group/bld.inf --- a/idlehomescreen/data/vga_tch/threerows_200315c4/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,66 +0,0 @@ -/* -* Copyright (c) 2002-2008 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* The information required for building -* -*/ - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS -// Support for productization and Carbide.Ui customization -//******************************************************** -../hsps/00/manifest.dat /epoc32/data/Z/resource/homescreen/threerows_200315c4/hsps/manifest.dat -../hsps/00/widgetconfiguration.xml /epoc32/data/Z/resource/homescreen/threerows_200315c4/hsps/widgetconfiguration.xml -../xuikon/00/threerows.dat /epoc32/data/Z/resource/homescreen/threerows_200315c4/xuikon/threerows_200315c4.dat -../xuikon/00/threerows.css /epoc32/data/Z/resource/homescreen/threerows_200315c4/xuikon/threerows.css -../xuikon/00/threerows.xml /epoc32/data/Z/resource/homescreen/threerows_200315c4/xuikon/threerows.xml - -// Arabic languages -//***************** -../xuikon/37/threerows.css /epoc32/data/Z/resource/homescreen/threerows_200315c4/xuikon/37/threerows.css -../xuikon/50/threerows.css /epoc32/data/Z/resource/homescreen/threerows_200315c4/xuikon/50/threerows.css -../xuikon/57/threerows.css /epoc32/data/Z/resource/homescreen/threerows_200315c4/xuikon/57/threerows.css -../xuikon/94/threerows.css /epoc32/data/Z/resource/homescreen/threerows_200315c4/xuikon/94/threerows.css - - -// Support for S60 builds -//*********************** -../rom/threerows_resources.iby LANGUAGE_APP_LAYER_IBY_EXPORT_PATH(threerows_200315c4_resources.iby) -../rom/threerows_customer.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(threerows_200315c4_customer.iby) -../rom/threerows_variant.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(threerows_200315c4_variant.iby) -../rom/threerows.iby CORE_APP_LAYER_IBY_EXPORT_PATH(threerows_200315c4.iby) - -// Dtd-localization -//***************** -PRJ_EXTENSIONS -START EXTENSION tools/dtd -OPTION SWITCH_LOC_FILE_NAME threerows_200315c4 -OPTION DTD_TYPE widget -OPTION LOC_FOLDERS yes -END - - -PRJ_MMPFILES - -PRJ_TESTMMPFILES - -// End of File - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threerows_200315c4/hsps/00/manifest.dat --- a/idlehomescreen/data/vga_tch/threerows_200315c4/hsps/00/manifest.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,63 +0,0 @@ - - - - - - - vga_tch - - - - template - - - - - - 0x2001f48a - - - - - - 0x101fb657 - - - - - - 0x200315c4 - - - - - - threerows - - thrs - - 1.0 - - - - - - widgetconfiguration.xml - - - - - - - - - - - - threerows.o0000 - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threerows_200315c4/hsps/00/widgetconfiguration.xml --- a/idlehomescreen/data/vga_tch/threerows_200315c4/hsps/00/widgetconfiguration.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,50 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threerows_200315c4/rom/threerows.iby --- a/idlehomescreen/data/vga_tch/threerows_200315c4/rom/threerows.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* threerows widget HSPS-plugin IBY file. -* -*/ - -#ifndef __THREEROWS_200315C4_IBY__ -#define __THREEROWS_200315C4_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools -data=ZPRIVATE\200159c0\install\threerows_200315c4\hsps\00\manifest.dat \private\200159c0\install\threerows_200315c4\hsps\00\manifest.dat - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __THREEROWS_200315C4_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threerows_200315c4/rom/threerows_customer.iby --- a/idlehomescreen/data/vga_tch/threerows_200315c4/rom/threerows_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* threerows widget HSPS-plugin language specific IBY file. -* -*/ - -#ifndef __THREEROWS_200315C4_CUSTOMER_IBY__ -#define __THREEROWS_200315C4_CUSTOMER_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools, language specific -data=ZPRIVATE\200159c0\install\threerows_200315c4\xuikon\00\threerows.o0000 \private\200159c0\install\threerows_200315c4\xuikon\00\threerows.o0000 - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __THREEROWS_200315C4_CUSTOMER_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threerows_200315c4/rom/threerows_resources.iby --- a/idlehomescreen/data/vga_tch/threerows_200315c4/rom/threerows_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,40 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* threerows widget HSPS-plugin language specific IBY file. -* -*/ - -#ifndef __THREEROWS_200315C4_RESOURCES_IBY__ -#define __THREEROWS_200315C4_RESOURCES_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools, language specific -#if defined (__LOCALES_37_IBY__) -data=ZPRIVATE\200159c0\install\threerows_200315c4\xuikon\37\threerows.o0037 \private\200159c0\install\threerows_200315c4\xuikon\37\threerows.o0037 -#endif -#if defined (__LOCALES_50_IBY__) -data=ZPRIVATE\200159c0\install\threerows_200315c4\xuikon\50\threerows.o0050 \private\200159c0\install\threerows_200315c4\xuikon\50\threerows.o0050 -#endif -#if defined (__LOCALES_57_IBY__) -data=ZPRIVATE\200159c0\install\threerows_200315c4\xuikon\57\threerows.o0057 \private\200159c0\install\threerows_200315c4\xuikon\57\threerows.o0057 -#endif -#if defined (__LOCALES_94_IBY__) -data=ZPRIVATE\200159c0\install\threerows_200315c4\xuikon\94\threerows.o0094 \private\200159c0\install\threerows_200315c4\xuikon\94\threerows.o0094 -#endif - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __THREEROWS_200315C4_RESOURCES_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threerows_200315c4/rom/threerows_variant.iby --- a/idlehomescreen/data/vga_tch/threerows_200315c4/rom/threerows_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* threerows widget HSPS-plugin variant specific IBY file. -* -*/ - -#ifndef __THREEROWS_200315C4_VARIANT_IBY__ -#define __THREEROWS_200315C4_VARIANT_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by variation tools, variant specific -data=ZPRIVATE\200159c0\install\threerows_200315c4\hsps\00\widgetconfiguration.xml \private\200159c0\install\threerows_200315c4\hsps\00\widgetconfiguration.xml - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __SHORTCUT_200315C4_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threerows_200315c4/xuikon/00/threerows.css --- a/idlehomescreen/data/vga_tch/threerows_200315c4/xuikon/00/threerows.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,42 +0,0 @@ -widget#threerows_template -{ - block-progression:rl; -} - -image#image_container -{ - height: 95px; - width: 95px; - margin-top:5px; - margin-bottom:5px; - margin-left:5px; - margin-right:4px; - padding-top:5px; - padding-bottom:5px; - padding-left:5px; - padding-right:5px; - nav-index:appearance; - _s60-aspect-ratio:preserve; -} - -box#text_container -{ - direction: ltr; - block-progression:tb; - margin-left:3px; - margin-right:5px; -} - -text.text_box -{ - padding-right:5px; - padding-left:5px; - padding-top:2px; - padding-bottom:2px; - font-family: EAknLogicalFontSecondaryFont; - font-size: 3.5u; - height:35px; - color:"SKIN(268458534 13056 74)"; - nav-index:appearance; - _s60-text-valign: top; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threerows_200315c4/xuikon/00/threerows.dat --- a/idlehomescreen/data/vga_tch/threerows_200315c4/xuikon/00/threerows.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ - - - 2001CB4F - 101FB657 - 110012F8 - threerows - threerows - 1.0 - threerows.xml - threerows.css - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threerows_200315c4/xuikon/00/threerows.xml --- a/idlehomescreen/data/vga_tch/threerows_200315c4/xuikon/00/threerows.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,84 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threerows_200315c4/xuikon/37/threerows.css --- a/idlehomescreen/data/vga_tch/threerows_200315c4/xuikon/37/threerows.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,45 +0,0 @@ -widget#threerows_template -{ - direction: rtl; - block-progression:rl; -} - -image#image_container -{ - height: 95px; - width: 95px; - margin-top:5px; - margin-bottom:5px; - margin-left:5px; - margin-right:4px; - padding-top:5px; - padding-bottom:5px; - padding-left:5px; - padding-right:5px; - nav-index:appearance; - _s60-aspect-ratio:preserve; -} - -box#text_container -{ - direction: ltr; - block-progression:tb; - margin-left:3px; - margin-right:5px; -} - -text.text_box -{ - padding-right:5px; - padding-left:5px; - padding-top:2px; - padding-bottom:2px; - direction: ltr; - text-align: right; - font-family: EAknLogicalFontSecondaryFont; - font-size: 3.5u; - height:35px; - color:"SKIN(268458534 13056 74)"; - nav-index:appearance; - _s60-text-valign: top; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threerows_200315c4/xuikon/50/threerows.css --- a/idlehomescreen/data/vga_tch/threerows_200315c4/xuikon/50/threerows.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,45 +0,0 @@ -widget#threerows_template -{ - direction: rtl; - block-progression:rl; -} - -image#image_container -{ - height: 95px; - width: 95px; - margin-top:5px; - margin-bottom:5px; - margin-left:5px; - margin-right:4px; - padding-top:5px; - padding-bottom:5px; - padding-left:5px; - padding-right:5px; - nav-index:appearance; - _s60-aspect-ratio:preserve; -} - -box#text_container -{ - direction: ltr; - block-progression:tb; - margin-left:3px; - margin-right:5px; -} - -text.text_box -{ - padding-right:5px; - padding-left:5px; - padding-top:2px; - padding-bottom:2px; - direction: ltr; - text-align: right; - font-family: EAknLogicalFontSecondaryFont; - font-size: 3.5u; - height:35px; - color:"SKIN(268458534 13056 74)"; - nav-index:appearance; - _s60-text-valign: top; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threerows_200315c4/xuikon/57/threerows.css --- a/idlehomescreen/data/vga_tch/threerows_200315c4/xuikon/57/threerows.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,45 +0,0 @@ -widget#threerows_template -{ - direction: rtl; - block-progression:rl; -} - -image#image_container -{ - height: 95px; - width: 95px; - margin-top:5px; - margin-bottom:5px; - margin-left:5px; - margin-right:4px; - padding-top:5px; - padding-bottom:5px; - padding-left:5px; - padding-right:5px; - nav-index:appearance; - _s60-aspect-ratio:preserve; -} - -box#text_container -{ - direction: ltr; - block-progression:tb; - margin-left:3px; - margin-right:5px; -} - -text.text_box -{ - padding-right:5px; - padding-left:5px; - padding-top:2px; - padding-bottom:2px; - direction: ltr; - text-align: right; - font-family: EAknLogicalFontSecondaryFont; - font-size: 3.5u; - height:35px; - color:"SKIN(268458534 13056 74)"; - nav-index:appearance; - _s60-text-valign: top; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threerows_200315c4/xuikon/94/threerows.css --- a/idlehomescreen/data/vga_tch/threerows_200315c4/xuikon/94/threerows.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,45 +0,0 @@ -widget#threerows_template -{ - direction: rtl; - block-progression:rl; -} - -image#image_container -{ - height: 95px; - width: 95px; - margin-top:5px; - margin-bottom:5px; - margin-left:5px; - margin-right:4px; - padding-top:5px; - padding-bottom:5px; - padding-left:5px; - padding-right:5px; - nav-index:appearance; - _s60-aspect-ratio:preserve; -} - -box#text_container -{ - direction: ltr; - block-progression:tb; - margin-left:3px; - margin-right:5px; -} - -text.text_box -{ - padding-right:5px; - padding-left:5px; - padding-top:2px; - padding-bottom:2px; - direction: ltr; - text-align: right; - font-family: EAknLogicalFontSecondaryFont; - font-size: 3.5u; - height:35px; - color:"SKIN(268458534 13056 74)"; - nav-index:appearance; - _s60-text-valign: top; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threetextrows_200315c5/group/bld.inf --- a/idlehomescreen/data/vga_tch/threetextrows_200315c5/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,68 +0,0 @@ -/* -* Copyright (c) 2002-2008 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* The information required for building -* -*/ - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS -// Support for productization and Carbide.Ui customization -//******************************************************** -../hsps/00/manifest.dat /epoc32/data/Z/resource/homescreen/threetextrows_200315c5/hsps/manifest.dat -../hsps/00/widgetconfiguration.xml /epoc32/data/Z/resource/homescreen/threetextrows_200315c5/hsps/widgetconfiguration.xml -../xuikon/00/threetextrows.dat /epoc32/data/Z/resource/homescreen/threetextrows_200315c5/xuikon/threetextrows_200315c5.dat -../xuikon/00/threetextrows.css /epoc32/data/Z/resource/homescreen/threetextrows_200315c5/xuikon/threetextrows.css -../xuikon/00/threetextrows.xml /epoc32/data/Z/resource/homescreen/threetextrows_200315c5/xuikon/threetextrows.xml - -// Arabic languages -//***************** -../xuikon/37/threetextrows.css /epoc32/data/Z/resource/homescreen/threetextrows_200315c5/xuikon/37/threetextrows.css -../xuikon/50/threetextrows.css /epoc32/data/Z/resource/homescreen/threetextrows_200315c5/xuikon/50/threetextrows.css -../xuikon/57/threetextrows.css /epoc32/data/Z/resource/homescreen/threetextrows_200315c5/xuikon/57/threetextrows.css -../xuikon/94/threetextrows.css /epoc32/data/Z/resource/homescreen/threetextrows_200315c5/xuikon/94/threetextrows.css - - -// Support for S60 builds -//*********************** -../rom/threetextrows_resources.iby LANGUAGE_APP_LAYER_IBY_EXPORT_PATH(threetextrows_200315c5_resources.iby) -../rom/threetextrows_customer.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(threetextrows_200315c5_customer.iby) -../rom/threetextrows_variant.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(threetextrows_200315c5_variant.iby) -../rom/threetextrows.iby CORE_APP_LAYER_IBY_EXPORT_PATH(threetextrows_200315c5.iby) - -// Dtd-localization -//***************** -PRJ_EXTENSIONS -START EXTENSION tools/dtd -OPTION SWITCH_LOC_FILE_NAME threetextrows_200315c5 -OPTION DTD_TYPE widget -OPTION LOC_FOLDERS yes -END - - -PRJ_MMPFILES - -PRJ_TESTMMPFILES - -//#endif - -// End of File - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threetextrows_200315c5/hsps/00/manifest.dat --- a/idlehomescreen/data/vga_tch/threetextrows_200315c5/hsps/00/manifest.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,65 +0,0 @@ - - - - - - - vga_tch - - - - template - - - - - - 0x2001f48a - - - - - - 0x101fb657 - - - - - - 0x200315c5 - - - - - - threetextrows - - thtxtrs - - 1.0 - - - - - - widgetconfiguration.xml - - - - - - - - - - - - - - threetextrows.o0000 - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threetextrows_200315c5/hsps/00/widgetconfiguration.xml --- a/idlehomescreen/data/vga_tch/threetextrows_200315c5/hsps/00/widgetconfiguration.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,41 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threetextrows_200315c5/rom/threetextrows.iby --- a/idlehomescreen/data/vga_tch/threetextrows_200315c5/rom/threetextrows.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* threetextrows widget HSPS-plugin IBY file. -* -*/ - -#ifndef __THREETEXTROWS_200315C5_IBY__ -#define __THREETEXTROWS_200315C5_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools -data=ZPRIVATE\200159c0\install\threetextrows_200315c5\hsps\00\manifest.dat \private\200159c0\install\threetextrows_200315c5\hsps\00\manifest.dat - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __THREETEXTROWS_200315C5_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threetextrows_200315c5/rom/threetextrows_customer.iby --- a/idlehomescreen/data/vga_tch/threetextrows_200315c5/rom/threetextrows_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* threetextrows widget HSPS-plugin language specific IBY file. -* -*/ - -#ifndef __THREETEXTROWS_200315C5_CUSTOMER_IBY__ -#define __THREETEXTROWS_200315C5_CUSTOMER_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools, language specific -data=ZPRIVATE\200159c0\install\threetextrows_200315c5\xuikon\00\threetextrows.o0000 \private\200159c0\install\threetextrows_200315c5\xuikon\00\threetextrows.o0000 - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __THREETEXTROWS_200315C5_CUSTOMER_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threetextrows_200315c5/rom/threetextrows_resources.iby --- a/idlehomescreen/data/vga_tch/threetextrows_200315c5/rom/threetextrows_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,40 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* threetextrows widget HSPS-plugin language specific IBY file. -* -*/ - -#ifndef __THREETEXTROWS_200315C5_RESOURCES_IBY__ -#define __THREETEXTROWS_200315C5_RESOURCES_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools, language specific -#if defined (__LOCALES_37_IBY__) -data=ZPRIVATE\200159c0\install\threetextrows_200315c5\xuikon\37\threetextrows.o0037 \private\200159c0\install\threetextrows_200315c5\xuikon\37\threetextrows.o0037 -#endif -#if defined (__LOCALES_50_IBY__) -data=ZPRIVATE\200159c0\install\threetextrows_200315c5\xuikon\50\threetextrows.o0050 \private\200159c0\install\threetextrows_200315c5\xuikon\50\threetextrows.o0050 -#endif -#if defined (__LOCALES_57_IBY__) -data=ZPRIVATE\200159c0\install\threetextrows_200315c5\xuikon\57\threetextrows.o0057 \private\200159c0\install\threetextrows_200315c5\xuikon\57\threetextrows.o0057 -#endif -#if defined (__LOCALES_94_IBY__) -data=ZPRIVATE\200159c0\install\threetextrows_200315c5\xuikon\94\threetextrows.o0094 \private\200159c0\install\threetextrows_200315c5\xuikon\94\threetextrows.o0094 -#endif - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __THREETEXTROWS_200315C5_RESOURCES_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threetextrows_200315c5/rom/threetextrows_variant.iby --- a/idlehomescreen/data/vga_tch/threetextrows_200315c5/rom/threetextrows_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* threetextrows widget HSPS-plugin variant specific IBY file. -* -*/ - -#ifndef __THREETEXTROWS_200315C5_VARIANT_IBY__ -#define __THREETEXTROWS_200315C5_VARIANT_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by variation tools, variant specific -data=ZPRIVATE\200159c0\install\threetextrows_200315c5\hsps\00\widgetconfiguration.xml \private\200159c0\install\threetextrows_200315c5\hsps\00\widgetconfiguration.xml - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __THREETEXTROWS_200315C5_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threetextrows_200315c5/xuikon/00/threetextrows.css --- a/idlehomescreen/data/vga_tch/threetextrows_200315c5/xuikon/00/threetextrows.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,11 +0,0 @@ -text.text_box -{ - padding-left:11px; - padding-right:11px; - text-align:left; - font-family: EAknLogicalFontSecondaryFont; - font-size: 30px; - color: "SKIN(268458534 13056 74)"; - nav-index:appearance; - _s60-text-valign: top; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threetextrows_200315c5/xuikon/00/threetextrows.dat --- a/idlehomescreen/data/vga_tch/threetextrows_200315c5/xuikon/00/threetextrows.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ - - - 2001CB4F - 101FB657 - 110012F9 - threetextrows - threetextrows - 1.0 - threetextrows.xml - threetextrows.css - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threetextrows_200315c5/xuikon/00/threetextrows.xml --- a/idlehomescreen/data/vga_tch/threetextrows_200315c5/xuikon/00/threetextrows.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,72 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threetextrows_200315c5/xuikon/37/threetextrows.css --- a/idlehomescreen/data/vga_tch/threetextrows_200315c5/xuikon/37/threetextrows.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ -text.text_box -{ - padding-left:11px; - padding-right:11px; - direction: ltr; - text-align: right; - font-family: EAknLogicalFontSecondaryFont; - font-size: 30px; - color: "SKIN(268458534 13056 74)"; - nav-index:appearance; - _s60-text-valign: top; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threetextrows_200315c5/xuikon/50/threetextrows.css --- a/idlehomescreen/data/vga_tch/threetextrows_200315c5/xuikon/50/threetextrows.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ -text.text_box -{ - padding-left:11px; - padding-right:11px; - direction: ltr; - text-align: right; - font-family: EAknLogicalFontSecondaryFont; - font-size: 30px; - color: "SKIN(268458534 13056 74)"; - nav-index:appearance; - _s60-text-valign: top; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threetextrows_200315c5/xuikon/57/threetextrows.css --- a/idlehomescreen/data/vga_tch/threetextrows_200315c5/xuikon/57/threetextrows.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ -text.text_box -{ - padding-left:11px; - padding-right:11px; - direction: ltr; - text-align: right; - font-family: EAknLogicalFontSecondaryFont; - font-size: 30px; - color: "SKIN(268458534 13056 74)"; - nav-index:appearance; - _s60-text-valign: top; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/threetextrows_200315c5/xuikon/94/threetextrows.css --- a/idlehomescreen/data/vga_tch/threetextrows_200315c5/xuikon/94/threetextrows.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ -text.text_box -{ - padding-left:11px; - padding-right:11px; - direction: ltr; - text-align: right; - font-family: EAknLogicalFontSecondaryFont; - font-size: 30px; - color: "SKIN(268458534 13056 74)"; - nav-index:appearance; - _s60-text-valign: top; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/triple_row_icon_widget_2001fdbe/rom/triple_row_icon_widget.iby --- a/idlehomescreen/data/vga_tch/triple_row_icon_widget_2001fdbe/rom/triple_row_icon_widget.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/triple_row_icon_widget_2001fdbe/rom/triple_row_icon_widget.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,11 +19,11 @@ #ifndef __TRIPLE_ROW_ICON_WIDGET_2001FDBE_IBY__ #define __TRIPLE_ROW_ICON_WIDGET_2001FDBE_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools data=ZPRIVATE\200159c0\install\triple_row_icon_widget_2001fdbe\hsps\00\manifest.dat \private\200159c0\install\triple_row_icon_widget_2001fdbe\hsps\00\manifest.dat - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 + +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __TRIPLE_ROW_ICON_WIDGET_2001FDBE_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/triple_row_icon_widget_2001fdbe/rom/triple_row_icon_widget_customer.iby --- a/idlehomescreen/data/vga_tch/triple_row_icon_widget_2001fdbe/rom/triple_row_icon_widget_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/triple_row_icon_widget_2001fdbe/rom/triple_row_icon_widget_customer.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,11 +19,11 @@ #ifndef __TRIPLE_ROW_ICON_WIDGET_2001FDBE_CUSTOMER_IBY__ #define __TRIPLE_ROW_ICON_WIDGET_2001FDBE_CUSTOMER_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools, language specific data=ZPRIVATE\200159c0\install\triple_row_icon_widget_2001fdbe\xuikon\00\triple_row_icon_widget.o0000 \private\200159c0\install\triple_row_icon_widget_2001fdbe\xuikon\00\triple_row_icon_widget.o0000 -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __TRIPLE_ROW_ICON_WIDGET_2001FDBE_CUSTOMER_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/triple_row_icon_widget_2001fdbe/rom/triple_row_icon_widget_resources.iby --- a/idlehomescreen/data/vga_tch/triple_row_icon_widget_2001fdbe/rom/triple_row_icon_widget_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/triple_row_icon_widget_2001fdbe/rom/triple_row_icon_widget_resources.iby Wed Oct 13 14:18:30 2010 +0300 @@ -18,7 +18,7 @@ #ifndef __TRIPLE_ROW_ICON_WIDGET_2001FDBE_RESOURCES_IBY__ #define __TRIPLE_ROW_ICON_WIDGET_2001FDBE_RESOURCES_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools, language specific #if defined (__LOCALES_37_IBY__) @@ -34,6 +34,6 @@ data=ZPRIVATE\200159c0\install\triple_row_icon_widget_2001fdbe\xuikon\94\triple_row_icon_widget.o0094 \private\200159c0\install\triple_row_icon_widget_2001fdbe\xuikon\94\triple_row_icon_widget.o0094 #endif -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __TRIPLE_ROW_ICON_WIDGET_2001FDBE_RESOURCES_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/triple_row_icon_widget_2001fdbe/rom/triple_row_icon_widget_variant.iby --- a/idlehomescreen/data/vga_tch/triple_row_icon_widget_2001fdbe/rom/triple_row_icon_widget_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/triple_row_icon_widget_2001fdbe/rom/triple_row_icon_widget_variant.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,11 +19,11 @@ #ifndef __TRIPLE_ROW_ICON_WIDGET_2001FDBE_VARIANT_IBY__ #define __TRIPLE_ROW_ICON_WIDGET_2001FDBE_VARIANT_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by variation tools, variant specific data=ZPRIVATE\200159c0\install\triple_row_icon_widget_2001fdbe\hsps\00\widgetconfiguration.xml \private\200159c0\install\triple_row_icon_widget_2001fdbe\hsps\00\widgetconfiguration.xml -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __TRIPLE_ROW_ICON_WIDGET_2001FDBE_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/triple_row_widget_2001fdbf/rom/triple_row_widget.iby --- a/idlehomescreen/data/vga_tch/triple_row_widget_2001fdbf/rom/triple_row_widget.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/triple_row_widget_2001fdbf/rom/triple_row_widget.iby Wed Oct 13 14:18:30 2010 +0300 @@ -18,11 +18,11 @@ #ifndef __TRIPLE_ROW_WIDGET_2001FDBF_IBY__ #define __TRIPLE_ROW_WIDGET_2001FDBF_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools data=ZPRIVATE\200159c0\install\triple_row_widget_2001fdbf\hsps\00\manifest.dat \private\200159c0\install\triple_row_widget_2001fdbf\hsps\00\manifest.dat -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __TRIPLE_ROW_WIDGET_2001FDBF_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/triple_row_widget_2001fdbf/rom/triple_row_widget_customer.iby --- a/idlehomescreen/data/vga_tch/triple_row_widget_2001fdbf/rom/triple_row_widget_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/triple_row_widget_2001fdbf/rom/triple_row_widget_customer.iby Wed Oct 13 14:18:30 2010 +0300 @@ -18,11 +18,11 @@ #ifndef __TRIPLE_ROW_WIDGET_2001FDBF_CUSTOMER_IBY__ #define __TRIPLE_ROW_WIDGET_2001FDBF_CUSTOMER_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools, language specific -data=ZPRIVATE\200159c0\install\triple_row_widget_2001fdbf\xuikon\00\triple_row_widget.o0000 \private\200159c0\install\triple_row_widget_2001fdbf\xuikon\00\triple_row_widget.o0000 +data=ZPRIVATE\200159c0\install\triple_row_widget_2001fdbf\xuikon\00\triple_row_widget_2001fdbf.o0000 \private\200159c0\install\triple_row_widget_2001fdbf\xuikon\00\triple_row_widget.o0000 -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __TRIPLE_ROW_WIDGET_2001FDBF_CUSTOMER_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/triple_row_widget_2001fdbf/rom/triple_row_widget_resources.iby --- a/idlehomescreen/data/vga_tch/triple_row_widget_2001fdbf/rom/triple_row_widget_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/triple_row_widget_2001fdbf/rom/triple_row_widget_resources.iby Wed Oct 13 14:18:30 2010 +0300 @@ -18,7 +18,7 @@ #ifndef __TRIPLE_ROW_WIDGET_2001FDBF_RESOURCES_IBY__ #define __TRIPLE_ROW_WIDGET_2001FDBF_RESOURCES_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools, language specific #if defined (__LOCALES_37_IBY__) @@ -34,6 +34,6 @@ data=ZPRIVATE\200159c0\install\triple_row_widget_2001fdbf\xuikon\94\triple_row_widget.o0094 \private\200159c0\install\triple_row_widget_2001fdbf\xuikon\94\triple_row_widget.o0094 #endif -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __TRIPLE_ROW_WIDGET_2001FDBF_RESOURCES_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/triple_row_widget_2001fdbf/rom/triple_row_widget_variant.iby --- a/idlehomescreen/data/vga_tch/triple_row_widget_2001fdbf/rom/triple_row_widget_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/triple_row_widget_2001fdbf/rom/triple_row_widget_variant.iby Wed Oct 13 14:18:30 2010 +0300 @@ -18,11 +18,11 @@ #ifndef __TRIPLE_ROW_WIDGET_2001FDBF_VARIANT_IBY__ #define __TRIPLE_ROW_WIDGET_2001FDBF_VARIANT_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by variation tools, variant specific data=ZPRIVATE\200159c0\install\triple_row_widget_2001fdbf\hsps\00\widgetconfiguration.xml \private\200159c0\install\triple_row_widget_2001fdbf\hsps\00\widgetconfiguration.xml -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __TRIPLE_ROW_WIDGET_2001FDBF_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/tworows_200315c3/group/bld.inf --- a/idlehomescreen/data/vga_tch/tworows_200315c3/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,66 +0,0 @@ -/* -* Copyright (c) 2002-2008 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* The information required for building -* -*/ - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS -// Support for productization and Carbide.Ui customization -//******************************************************** -../hsps/00/manifest.dat /epoc32/data/Z/resource/homescreen/tworows_200315c3/hsps/manifest.dat -../hsps/00/widgetconfiguration.xml /epoc32/data/Z/resource/homescreen/tworows_200315c3/hsps/widgetconfiguration.xml -../xuikon/00/tworows.dat /epoc32/data/Z/resource/homescreen/tworows_200315c3/xuikon/tworows_200315c3.dat -../xuikon/00/tworows.css /epoc32/data/Z/resource/homescreen/tworows_200315c3/xuikon/tworows.css -../xuikon/00/tworows.xml /epoc32/data/Z/resource/homescreen/tworows_200315c3/xuikon/tworows.xml - -// Arabic languages -//***************** -../xuikon/37/tworows.css /epoc32/data/Z/resource/homescreen/tworows_200315c3/xuikon/37/tworows.css -../xuikon/50/tworows.css /epoc32/data/Z/resource/homescreen/tworows_200315c3/xuikon/50/tworows.css -../xuikon/57/tworows.css /epoc32/data/Z/resource/homescreen/tworows_200315c3/xuikon/57/tworows.css -../xuikon/94/tworows.css /epoc32/data/Z/resource/homescreen/tworows_200315c3/xuikon/94/tworows.css - - -// Support for S60 builds -//*********************** -../rom/tworows_resources.iby LANGUAGE_APP_LAYER_IBY_EXPORT_PATH(tworows_200315c3_resources.iby) -../rom/tworows_customer.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(tworows_200315c3_customer.iby) -../rom/tworows_variant.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(tworows_200315c3_variant.iby) -../rom/tworows.iby CORE_APP_LAYER_IBY_EXPORT_PATH(tworows_200315c3.iby) - -// Dtd-localization -//***************** -PRJ_EXTENSIONS -START EXTENSION tools/dtd -OPTION SWITCH_LOC_FILE_NAME tworows_200315c3 -OPTION DTD_TYPE widget -OPTION LOC_FOLDERS yes -END - - -PRJ_MMPFILES - -PRJ_TESTMMPFILES - -// End of File - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/tworows_200315c3/hsps/00/manifest.dat --- a/idlehomescreen/data/vga_tch/tworows_200315c3/hsps/00/manifest.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,63 +0,0 @@ - - - - - - - vga_tch - - - - template - - - - - - 0x2001f48a - - - - - - 0x101fb657 - - - - - - 0x200315c3 - - - - - - tworows - - twrs - - 1.0 - - - - - - widgetconfiguration.xml - - - - - - - - - - - - tworows.o0000 - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/tworows_200315c3/hsps/00/widgetconfiguration.xml --- a/idlehomescreen/data/vga_tch/tworows_200315c3/hsps/00/widgetconfiguration.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,41 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/tworows_200315c3/rom/tworows.iby --- a/idlehomescreen/data/vga_tch/tworows_200315c3/rom/tworows.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* tworows widget HSPS-plugin IBY file. -* -*/ - -#ifndef __TWOROWS_200315C3_IBY__ -#define __TWOROWS_200315C3_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools -data=ZPRIVATE\200159c0\install\tworows_200315c3\hsps\00\manifest.dat \private\200159c0\install\tworows_200315c3\hsps\00\manifest.dat - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __TWOROWS_200315C3_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/tworows_200315c3/rom/tworows_customer.iby --- a/idlehomescreen/data/vga_tch/tworows_200315c3/rom/tworows_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* tworows widget HSPS-plugin language specific IBY file. -* -*/ - -#ifndef __TWOROWS_200315C3_CUSTOMER_IBY__ -#define __TWOROWS_200315C3_CUSTOMER_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools, language specific -data=ZPRIVATE\200159c0\install\tworows_200315c3\xuikon\00\tworows.o0000 \private\200159c0\install\tworows_200315c3\xuikon\00\tworows.o0000 - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __TWOROWS_200315C3_CUSTOMER_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/tworows_200315c3/rom/tworows_resources.iby --- a/idlehomescreen/data/vga_tch/tworows_200315c3/rom/tworows_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,40 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* tworows widget HSPS-plugin language specific IBY file. -* -*/ - -#ifndef __TWOROWS_200315C3_RESOURCES_IBY__ -#define __TWOROWS_200315C3_RESOURCES_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools, language specific -#if defined (__LOCALES_37_IBY__) -data=ZPRIVATE\200159c0\install\tworows_200315c3\xuikon\37\tworows.o0037 \private\200159c0\install\tworows_200315c3\xuikon\37\tworows.o0037 -#endif -#if defined (__LOCALES_50_IBY__) -data=ZPRIVATE\200159c0\install\tworows_200315c3\xuikon\50\tworows.o0050 \private\200159c0\install\tworows_200315c3\xuikon\50\tworows.o0050 -#endif -#if defined (__LOCALES_57_IBY__) -data=ZPRIVATE\200159c0\install\tworows_200315c3\xuikon\57\tworows.o0057 \private\200159c0\install\tworows_200315c3\xuikon\57\tworows.o0057 -#endif -#if defined (__LOCALES_94_IBY__) -data=ZPRIVATE\200159c0\install\tworows_200315c3\xuikon\94\tworows.o0094 \private\200159c0\install\tworows_200315c3\xuikon\94\tworows.o0094 -#endif - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __TWOROWS_200315C3_RESOURCES_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/tworows_200315c3/rom/tworows_variant.iby --- a/idlehomescreen/data/vga_tch/tworows_200315c3/rom/tworows_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* tworows widget HSPS-plugin variant specific IBY file. -* -*/ - -#ifndef __TWOROWS_200315C3_VARIANT_IBY__ -#define __TWOROWS_200315C3_VARIANT_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by variation tools, variant specific -data=ZPRIVATE\200159c0\install\tworows_200315c3\hsps\00\widgetconfiguration.xml \private\200159c0\install\tworows_200315c3\hsps\00\widgetconfiguration.xml - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __TWOROWS_200315C3_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/tworows_200315c3/xuikon/00/tworows.css --- a/idlehomescreen/data/vga_tch/tworows_200315c3/xuikon/00/tworows.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,43 +0,0 @@ -widget#tworows_template -{ - block-progression:rl; -} - -image#image_container -{ - height: 95px; - width: 95px; - margin-top:5px; - margin-bottom:5px; - margin-left:5px; - margin-right:4px; - padding-top:5px; - padding-bottom:5px; - padding-left:5px; - padding-right:5px; - nav-index:appearance; - _s60-aspect-ratio:preserve; -} - -box#text_container -{ - direction: ltr; - block-progression:tb; - margin-left:3px; - margin-right:5px; - margin-top:14px; -} - -text.text_box -{ - padding-right:5px; - padding-left:5px; - padding-top:5px; - padding-bottom:5px; - font-family: EAknLogicalFontSecondaryFont; - font-size: 3.5u; - height:30px; - color:"SKIN(268458534 13056 74)"; - nav-index:appearance; - _s60-text-valign: top; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/tworows_200315c3/xuikon/00/tworows.dat --- a/idlehomescreen/data/vga_tch/tworows_200315c3/xuikon/00/tworows.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ - - - 2001CB4F - 101FB657 - 110012F7 - tworows - tworows - 1.0 - tworows.xml - tworows.css - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/tworows_200315c3/xuikon/00/tworows.xml --- a/idlehomescreen/data/vga_tch/tworows_200315c3/xuikon/00/tworows.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,72 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/tworows_200315c3/xuikon/37/tworows.css --- a/idlehomescreen/data/vga_tch/tworows_200315c3/xuikon/37/tworows.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,45 +0,0 @@ -widget#tworows_template -{ - direction: rtl; - block-progression:rl; -} - -image#image_container -{ - height: 70px; - width: 70px; - margin-top:3px; - margin-bottom:3px; - margin-left:3px; - margin-right:2px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; - nav-index:appearance; - _s60-aspect-ratio:preserve; -} - -box#text_container -{ - block-progression:tb; - margin-left:2px; - margin-right:3px; - margin-top:10px; -} - -text.text_box -{ - padding-right:3px; - padding-left:3px; - padding-top:3px; - padding-bottom:3px; - direction: ltr; - text-align: right; - font-family: EAknLogicalFontSecondaryFont; - font-size: 3.5u; - height:25px; - color:"SKIN(268458534 13056 74)"; - nav-index:appearance; - _s60-text-valign: top; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/tworows_200315c3/xuikon/50/tworows.css --- a/idlehomescreen/data/vga_tch/tworows_200315c3/xuikon/50/tworows.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,45 +0,0 @@ -widget#tworows_template -{ - direction: rtl; - block-progression:rl; -} - -image#image_container -{ - height: 70px; - width: 70px; - margin-top:3px; - margin-bottom:3px; - margin-left:3px; - margin-right:2px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; - nav-index:appearance; - _s60-aspect-ratio:preserve; -} - -box#text_container -{ - block-progression:tb; - margin-left:2px; - margin-right:3px; - margin-top:10px; -} - -text.text_box -{ - padding-right:3px; - padding-left:3px; - padding-top:3px; - padding-bottom:3px; - direction: ltr; - text-align: right; - font-family: EAknLogicalFontSecondaryFont; - font-size: 3.5u; - height:25px; - color:"SKIN(268458534 13056 74)"; - nav-index:appearance; - _s60-text-valign: top; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/tworows_200315c3/xuikon/57/tworows.css --- a/idlehomescreen/data/vga_tch/tworows_200315c3/xuikon/57/tworows.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,45 +0,0 @@ -widget#tworows_template -{ - direction: rtl; - block-progression:rl; -} - -image#image_container -{ - height: 70px; - width: 70px; - margin-top:3px; - margin-bottom:3px; - margin-left:3px; - margin-right:2px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; - nav-index:appearance; - _s60-aspect-ratio:preserve; -} - -box#text_container -{ - block-progression:tb; - margin-left:2px; - margin-right:3px; - margin-top:10px; -} - -text.text_box -{ - padding-right:3px; - padding-left:3px; - padding-top:3px; - padding-bottom:3px; - direction: ltr; - text-align: right; - font-family: EAknLogicalFontSecondaryFont; - font-size: 3.5u; - height:25px; - color:"SKIN(268458534 13056 74)"; - nav-index:appearance; - _s60-text-valign: top; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/tworows_200315c3/xuikon/94/tworows.css --- a/idlehomescreen/data/vga_tch/tworows_200315c3/xuikon/94/tworows.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,45 +0,0 @@ -widget#tworows_template -{ - direction: rtl; - block-progression:rl; -} - -image#image_container -{ - height: 70px; - width: 70px; - margin-top:3px; - margin-bottom:3px; - margin-left:3px; - margin-right:2px; - padding-top:3px; - padding-bottom:3px; - padding-left:3px; - padding-right:3px; - nav-index:appearance; - _s60-aspect-ratio:preserve; -} - -box#text_container -{ - block-progression:tb; - margin-left:2px; - margin-right:3px; - margin-top:10px; -} - -text.text_box -{ - padding-right:3px; - padding-left:3px; - padding-top:3px; - padding-bottom:3px; - direction: ltr; - text-align: right; - font-family: EAknLogicalFontSecondaryFont; - font-size: 3.5u; - height:25px; - color:"SKIN(268458534 13056 74)"; - nav-index:appearance; - _s60-text-valign: top; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view1_2001fdb9/conf/view2001fdb9.confml --- a/idlehomescreen/data/vga_tch/view1_2001fdb9/conf/view2001fdb9.confml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,491 +0,0 @@ - - - - - The Qhd touch is a supported display type of the xuikon homescreen - - - The Vga touch is a supported display type of the xuikon homescreen - - - Maximum widget amount in Homescreen 1 page. Customizable - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Path of the Wallpaper resource. Customizable. - - - Not customizable! - - - Not customizable! - - - Widgets in the Homescreen 1 - - Widget name - - - Bundle identifier for the (C)WRT widgets. None for the native widgets - - - Templeate identifier for the (C)WRT widgets. None for the native widgets - - - Locking status for the widget 1 in Homescreen 1 page - - - Customize enabler for desktop/shortcut widget - - - Customize 1st item in desktop widget - - - Type of the item: Application, bookmark, or shortcut(param specific item) - - - Uid for the application, Menu content Uid for the bookmarks and shortcuts. - - - url for the bookmark based shortcut. for example http://www.google.com - - - Params for shortcut. For example: messaging:msg - - - Customize 2nd item in desktop widget - - - Type of the item: Application, bookmark, or shortcut(param specific item) - - - Uid for the application, Menu content Uid for the bookmarks and shortcuts - - - url for the bookmark based shortcut. for example http://www.google.com - - - Params for shortcut. messaging:msg - - - Customize 3rd item in desktop widget - - - Type of the item: Application, bookmark, or shortcut(param specific item) - - - Uid for the application,Menu content Uid for the bookmarks and shortcuts. - - - url for the bookmark based shortcut. for example http://www.google.com - - - Params for shortcut. messaging:msg - - - Customize 4th item in desktop widget - - - Type of the item: Application, bookmark, or shortcut(param specific item) - - - Uid for the application, Menu content ids for the bookmarks and shortcuts - - - url for the bookmark based shortcut. for example http://www.google.com - - - Params for shortcut. messaging:msg - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - - - - true - true - 6 - true - hs_vga_tch_view - use_empty_widget - wallpaper - path - - - 0x200286e6 - 0 - 0 - permanent - 0 - - - - - - - - - - - - - - - - - - - - - first - Shortcut1 - second - Shortcut2 - third - Shortcut3 - fourth - Shortcut4 - type - uid - view - param - - - 0x200286e7 - 0 - 0 - permanent - 0 - 0 - - - - - - - - - - - - - - - - - - - - first - Shortcut1 - second - Shortcut2 - third - Shortcut3 - fourth - Shortcut4 - type - uid - view - param - - - 0x200255b6 - 0 - 0 - permanent - 0 - 0 - - - - - - - - - - - - - - - - - - - - first - Shortcut1 - second - Shortcut2 - third - Shortcut3 - fourth - Shortcut4 - type - uid - view - param - - - 0x20018EEE - 0 - 0 - none - 1 - 1 - application - 0x101F4CCE - - - 1 - shortcut - 0x99999999 - - messaging:msg - 1 - application - 0x10008D39 - - - 1 - application - 0x10005901 - - - first - Shortcut1 - second - Shortcut2 - third - Shortcut3 - fourth - Shortcut4 - type - uid - view - param - - - 0x2001f47f - 0 - 0 - none - 0 - 0 - - - - - - - - - - - - - - - - - - - - first - Shortcut1 - second - Shortcut2 - third - Shortcut3 - fourth - Shortcut4 - type - uid - view - param - - - 0x2001f47f - 0 - 0 - none - 0 - 0 - - - - - - - - - - - - - - - - - - - - first - Shortcut1 - second - Shortcut2 - third - Shortcut3 - fourth - Shortcut4 - type - uid - view - param - - - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view1_2001fdb9/conf/view2001fdb9.gcfml --- a/idlehomescreen/data/vga_tch/view1_2001fdb9/conf/view2001fdb9.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,161 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view1_2001fdb9/conf/view2001fdb9manifest.confml Binary file idlehomescreen/data/vga_tch/view1_2001fdb9/conf/view2001fdb9manifest.confml has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view1_2001fdb9/conf/view2001fdb9manifest.gcfml --- a/idlehomescreen/data/vga_tch/view1_2001fdb9/conf/view2001fdb9manifest.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,63 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view1_2001fdb9/conf/view2001fdb9xuikon.confml Binary file idlehomescreen/data/vga_tch/view1_2001fdb9/conf/view2001fdb9xuikon.confml has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view1_2001fdb9/conf/view2001fdb9xuikon.gcfml --- a/idlehomescreen/data/vga_tch/view1_2001fdb9/conf/view2001fdb9xuikon.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - - - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view1_2001fdb9/group/bld.inf --- a/idlehomescreen/data/vga_tch/view1_2001fdb9/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/view1_2001fdb9/group/bld.inf Wed Oct 13 14:18:30 2010 +0300 @@ -24,8 +24,8 @@ PRJ_EXPORTS // Support for productization and Carbide.Ui customization //******************************************************** -//../hsps/00/manifest.dat /epoc32/data/z/resource/homescreen/view1_2001fdb9/hsps/manifest.dat -//../hsps/00/viewconfiguration.xml /epoc32/data/z/resource/homescreen/view1_2001fdb9/hsps/viewconfiguration.xml +../hsps/00/manifest.dat /epoc32/data/z/resource/homescreen/view1_2001fdb9/hsps/manifest.dat +../hsps/00/viewconfiguration.xml /epoc32/data/z/resource/homescreen/view1_2001fdb9/hsps/viewconfiguration.xml //../hsps/00/viewconfiguration.dtd /epoc32/data/z/resource/homescreen/view1_2001fdb9/hsps/viewconfiguration.dtd ../xuikon/00/view.dat /epoc32/data/z/resource/homescreen/view1_2001fdb9/xuikon/view1_2001fdb9.dat @@ -41,15 +41,6 @@ ../xuikon/94/view.css /epoc32/data/z/resource/homescreen/view1_2001fdb9/xuikon/94/view.css -//Confml and cfgml files for the customization -// starting use confml it is need to remove root_configuration.xml direct exporting (view_200286e4_variant.iby) -//*********************************** -../conf/view2001fdb9.confml APP_LAYER_CONFML(view2001fdb9.confml) -../conf/view2001fdb9.gcfml APP_LAYER_GCFML(view2001fdb9.gcfml) -../conf/view2001fdb9manifest.confml APP_LAYER_CONFML(view2001fdb9manifest.confml) -../conf/view2001fdb9manifest.gcfml APP_LAYER_GCFML(view2001fdb9manifest.gcfml) -../conf/view2001fdb9xuikon.confml APP_LAYER_CONFML(view2001fdb9xuikon.confml) -../conf/view2001fdb9xuikon.gcfml APP_LAYER_GCFML(view2001fdb9xuikon.gcfml) // Support for S60 localization //***************************** //#ifndef __VIEWCONFIGURATION_LOC__ @@ -66,8 +57,8 @@ //*********************** ../rom/view_resources.iby LANGUAGE_APP_LAYER_IBY_EXPORT_PATH(view1_2001fdb9_resources.iby) ../rom/view_customer.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(view1_2001fdb9_customer.iby) -//../rom/view_variant.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(view1_2001fdb9_variant.iby) -//../rom/view.iby CORE_APP_LAYER_IBY_EXPORT_PATH(view1_2001fdb9.iby) +../rom/view_variant.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(view1_2001fdb9_variant.iby) +../rom/view.iby CORE_APP_LAYER_IBY_EXPORT_PATH(view1_2001fdb9.iby) // Dtd-localization diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view1_2001fdb9/hsps/00/viewconfiguration.xml --- a/idlehomescreen/data/vga_tch/view1_2001fdb9/hsps/00/viewconfiguration.xml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/view1_2001fdb9/hsps/00/viewconfiguration.xml Wed Oct 13 14:18:30 2010 +0300 @@ -1,55 +1,13 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view1_2001fdb9/loc/view.loc --- a/idlehomescreen/data/vga_tch/view1_2001fdb9/loc/view.loc Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/view1_2001fdb9/loc/view.loc Wed Oct 13 14:18:30 2010 +0300 @@ -308,15 +308,3 @@ // w: // r: TB9.2 #define qtn_hs_text_softkey_call "Call" - -// d: Lock keypad -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_lock_keypad "Lock keypad" - -// d: Menu -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_apps_menu_skey "Menu" diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view1_2001fdb9/rom/view.iby --- a/idlehomescreen/data/vga_tch/view1_2001fdb9/rom/view.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/view1_2001fdb9/rom/view.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,11 +19,11 @@ #ifndef __AI3VIEW_2001FDB9_IBY__ #define __AI3VIEW_2001FDB9_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools data=ZPRIVATE\200159c0\install\view1_2001fdb9\hsps\00\manifest.dat \private\200159c0\install\view1_2001fdb9\hsps\00\manifest.dat -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __AI3VIEW_2001FDB9_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view1_2001fdb9/rom/view_customer.iby --- a/idlehomescreen/data/vga_tch/view1_2001fdb9/rom/view_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/view1_2001fdb9/rom/view_customer.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,12 +19,12 @@ #ifndef __AI3VIEW_2001FDB9_CUSTOMER_IBY__ #define __AI3VIEW_2001FDB9_CUSTOMER_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools, language specific data=ZPRIVATE\200159c0\install\view1_2001fdb9\xuikon\00\view.o0000 \private\200159c0\install\view1_2001fdb9\xuikon\00\view.o0000 //data=ZPRIVATE\200159c0\install\view1_2001fdb9\hsps\00\viewconfiguration.dtd \private\200159c0\install\view1_2001fdb9\hsps\00\viewconfiguration.dtd -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __AI3VIEW_2001FDB9_CUSTOMER_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view1_2001fdb9/rom/view_resources.iby --- a/idlehomescreen/data/vga_tch/view1_2001fdb9/rom/view_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/view1_2001fdb9/rom/view_resources.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,12 +19,12 @@ #ifndef __AI3VIEW_2001FDB9_RESOURCES_IBY__ #define __AI3VIEW_2001FDB9_RESOURCES_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools, language specific data=ZPRIVATE\200159c0\install\view1_2001fdb9\xuikon\00\view.o0000 \private\200159c0\install\view1_2001fdb9\xuikon\00\view.o0000 //data=ZPRIVATE\200159c0\install\view1_2001fdb9\hsps\00\viewconfiguration.dtd \private\200159c0\install\view1_2001fdb9\hsps\00\viewconfiguration.dtd -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __AI3VIEW_2001FDB9_RESOURCES_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view1_2001fdb9/rom/view_variant.iby --- a/idlehomescreen/data/vga_tch/view1_2001fdb9/rom/view_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/view1_2001fdb9/rom/view_variant.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,11 +19,11 @@ #ifndef __AI3VIEW_2001FDB9_VARIANT_IBY__ #define __AI3VIEW_2001FDB9_VARIANT_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by variation tools, variant specific data=ZPRIVATE\200159c0\install\view1_2001fdb9\hsps\00\viewconfiguration.xml \private\200159c0\install\view1_2001fdb9\hsps\00\viewconfiguration.xml -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __AI3VIEW_2001FDB9_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/00/view.css --- a/idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/00/view.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/00/view.css Wed Oct 13 14:18:30 2010 +0300 @@ -1,73 +1,337 @@ -view +view#homescreen +{ + position: static; + display: block; + + block-progression: tb; + direction: ltr; + + width: auto; + height: auto; + + background-image: wallpaper; + + _s60-status-pane-layout: widescreen-flat-3softkeys; +} + +box#main_container +{ + position: static; + display: block; + + width: auto; + height: auto; + + margin-top: 5px; + + /* These will be set by screendevicechange triggers: */ + /* landscape + ************ + margin-left: 5px; + margin-right: 5px;*/ + + /* portrait + *********** + margin-left: 17px; + margin-right: 17px;*/ +} + +box.sub_container { - direction: ltr; + position: absolute; + display: block; + + /* These will be set by screendevicechange triggers: */ + /* landscape + ************ + width: 184px; + height: 106px;*/ + + /* portrait + *********** + width: 223px; + height: 132px;*/ +} + +box#clock_container +{ + /* This box belongs to class="sub_container" */ + top: 0px; + left: 0px; +} + +clock#clock +{ + position: static; + display: block; + + margin-top: 3px; + margin-bottom: 3px; + margin-left: 3px; + margin-right: 3px; + + nav-index: appearance; + + background-color: "SKIN(268458534 9906)"; + color: "SKIN(268458534 13056 19)"; + + /* Face is format is fetched from locale */ + _s60-format: locale; + + /* These will be set by screendevicechange triggers: */ + /* landscape + ************ + _s60-ampm-font-size: 3.0u; + _s60-digital-font-size: 56px; + _s60-date-font-size: 3.0u;*/ + + /* portrait + *********** + _s60-ampm-font-size: 3.5u; + _s60-digital-font-size: 56px; + _s60-date-font-size: 3.5u;*/ +} + +clock#clock:focus +{ + focus-background: "SKIN(268458534 5120 9)"; +} + +box#profile_switcher_container +{ block-progression: tb; - background-image: wallpaper; - swipe: true; + direction: ltr; + + /* These will be set by screendevicechange triggers: */ + /* landscape + ************ + top: 106px; + left: 0px;*/ + + /* portrait + *********** + top: 0px; + left: 223px;*/ +} + +box#profile +{ + position: static; + display: block; + + width: auto; + height: auto; + + margin-top: 3px; + margin-bottom: 6px; + margin-left: 3px; + margin-right: 3px; + + background-color: "SKIN(268458534 9906)"; + + nav-index: appearance; +} + +box#profile:focus +{ + focus-background: "SKIN(268458534 5120 9)"; +} + +/********************** + * MCN, CUG & Profile * + **********************/ +box#mcn_cug_profile_container +{ + width: auto; + height: auto; + + +} + +/************* + * SAT & VHZ * + *************/ +box#sat_vhz_container +{ + display: none; + width: auto; + height: auto; + block-progression: rl; +} + +image#sat_icon +{ + display: none; + visibility: hidden; + width: 18px; + height: 20px; + position: static; + margin-top: auto; +} - _s60-status-pane-layout: widescreen-flat-3softkeys; +title#sat +{ + display: none; +} +title#vhz +{ + display: none; +} + + +newsticker.statusindicator +{ + width: auto; + height: auto; + + text-align: center; + font-family: EAknLogicalFontSecondaryFont; + font-size: 3.5u; + color: "SKIN(268458534 13056 19)"; + + white-space-collapse: collapse; + + _s60-scroll-behaviour: alternate; + _s60-display-time: 2000; + _s60-scroll-loop: false; + _s60-start-delay: 0; + _s60-restart-after-update: true; +} + +box#switcher +{ + width: auto; + height: auto; + + block-progression: lr; + + margin-top: 6px; + margin-bottom: 3px; + margin-left: 3px; + margin-right: 3px; + + background-color: "SKIN(268458534 9906)"; + + nav-index: appearance; +} + +box#switcher:focus +{ + focus-background: "SKIN(268458534 5120 9)"; +} + +image#switcher_icon +{ + margin-top: auto; + margin-bottom: auto; + + margin-left: 5px; + height: 4u; + width: 4u; + + path: "SKIN(270501603 8585 19)"; +} + +text#switcher_text +{ + width: auto; + height: auto; + + text-align: left; + + font-size: 3.5u; + font-family: EAknLogicalFontSecondaryFont; + + color:"SKIN(268458534 13056 19)"; } box#plugins_container { + position: absolute; + display: block; + + /* These will be set by screendevicechange triggers: */ + /* landscape + ************ + top: 0px; + left: 184px;*/ + + /* portrait + *********** + top: 129px; + left: 0px;*/ + + block-progression: tb; direction: ltr; - block-progression: tb; + + width: 440px; + height: auto; + + padding-left: 3px; + padding-right: 3px; } -plugin.miniplugins +/*********** + * Plugins * + ***********/ +plugin { - height: 115px; - width: 176px; - - margin-top: 9px; - margin-left: 9px; - - _s60-longtap: true; - - nav-index: appearance; + position: static; + + width: auto; + height: adaptive; + + margin-bottom: 6px; + + background-color: "SKIN(268458534 9906)"; + + nav-index: appearance; } -plugin.plugins +plugin:focus { - height: 115px; - width: 436px; + focus-background: "SKIN(268458534 5120 9)"; +} - margin-top: 9px; - margin-left: 10px; - - _s60-longtap: true; - - nav-index: appearance; +plugin:edit +{ + background-color: "SKIN(270501603 8582)"; } -trigger#hs_popup_open_hold:edit +/************ + * Profiles * + ************/ +/* Default system profiles */ +text.systemprofileitem +{ + display: block; +} + +/* Placeholders for profiles added by user */ +text.userprofileitem { display: none; } -trigger#hs_popup_open_up -{ - display: none; -} - -trigger#hs_popup_open_up:edit +/************ + * Softkeys * + ************/ +softkey.normal_mode_sk { display: block; } -softkey#rsk -{ - _s60-longtap: true; - _s60-aspect-ratio: preserve; -} - -softkey#msk_ltr -{ - display: block; -} - -softkey#msk_rtl +softkey.normal_mode_sk:edit { display: none; } +softkey.edit_mode_sk +{ + display: none; +} + +softkey.edit_mode_sk:edit +{ + display: block; +} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/00/view.dtd --- a/idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/00/view.dtd Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/00/view.dtd Wed Oct 13 14:18:30 2010 +0300 @@ -494,21 +494,3 @@ qtn_hs_text_softkey_call.parents "" --> - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/00/view.xml --- a/idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/00/view.xml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/00/view.xml Wed Oct 13 14:18:30 2010 +0300 @@ -1,159 +1,751 @@ - + - - - > - - - - - - - + + - - - - - - - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - + - - + + + + + + + + + - - + + + + + + + + + + + + + + + + + + + + + + - - - - + - - - - - - - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <property id="MCNIndicator" class="DeviceStatus/MCNIndicator" /> + + + <property id="CUGIndicator" class="DeviceStatus/CUGIndicator" /> + + + <property id="ActiveProfileIndicator" class="Profile/ActiveProfileNameAndIconChar" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <property id="VHZText" class="DeviceStatus/VHZText" /> + <property class="policy/emptyContent" name="vhz" value="display: none" /> + <property class="policy/Content" name="vhz" value="display: block" /> + <property class="policy/Visibility" name="sat_vhz_container" value="if (vhz,sat,sat_icon) display: block" /> + <property class="policy/Visibility" name="sat_vhz_container" value="if !+(vhz,sat,sat_icon) display: none" /> + + + <property id="Sat_SatIdleModeText" class="SAT/SatIdleModeText" /> + <property class="policy/emptyContent" name="sat" value="display: none" /> + <property class="policy/Content" name="sat" value="display: block" /> + <property class="policy/Visibility" name="sat_vhz_container" value="if (vhz,sat,sat_icon) display: block" /> + <property class="policy/Visibility" name="sat_vhz_container" value="if !+(vhz,sat,sat_icon) display: none" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - + + + + qtn_hs_profile_edit - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + &shortcut_emptycaption; + &qtn_hs_text_softkey_back; + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -161,129 +753,181 @@ - - - - - + + + + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - + - + + + + --> + + + + + - - - - - - - - - - + + - + - - - - - - - - - + - + - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + + + + + + + + + - - - - - - - - - - - - - - - - - + + - + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/37/view.css --- a/idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/37/view.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/37/view.css Wed Oct 13 14:18:30 2010 +0300 @@ -1,74 +1,543 @@ -view -{ +view { + display: block; + position: static; + width: 100%; + height: 100%; direction: rtl; block-progression: tb; background-image: wallpaper; - swipe: true; + nav-index: appearance; + _s60-focus-visibility: true; + _s60-status-pane-layout: widescreen-flat-3softkeys; + +} + +trigger.western{ + display: none; +} + + +/** Softkeys **/ +softkey.normal_mode_sk +{ + display: block; +} + +softkey.normal_mode_sk:edit +{ + display: none; +} - _s60-status-pane-layout: widescreen-flat-3softkeys; +softkey.edit_mode_sk +{ + display: none; +} + +softkey.edit_mode_sk:edit +{ + display: block; +} + +/** General **/ + +plugin.widget_full_width{ + /* every plug-in decides its own height */ + height: adaptive; + background-color: "SKIN(268458534 9906)"; + background-size: 100%; + width: 100%; +/* padding-left: 1.7u; + padding-right: 1.7u;*/ + margin-bottom: 0.55u; + nav-index: auto; +} + +plugin.widget_full_width:focus { + focus-background:"SKIN(268458534 9896)"; } -box#plugins_container +plugin:edit { + background-color:"SKIN(270501603 8582)"; +} + +text{ + text-align: center; + font-family: tahoma; + font-size: 3.0u; + /*color:"SKIN(268458534 13056 19)";*/ + color: white; +} + +/************ +Page switcher +************* + +text#switchertext{ + position: static; + text-align: right; + margin-left: 6.0u; +} + +image#switcherimage{ + position: absolute; + top: 1.4u; + left: 2.5u; + height: 3.5u; + width: 3.0u; + _s60-aspect-ratio: preserve; +} +*/ + + +/****************** +container areas +******************/ +box#mainbox{ + width: 100%; + height: 100%; +} + +box.profile_date { - direction: rtl; - block-progression: tb; + background-color: "SKIN(268458534 9916)"; + nav-index: appearance; + height: auto; +} + +box.profile_date:focus +{ + background-color: "SKIN(268458534 5120 9)"; } -plugin.miniplugins -{ - height: 115px; - width: 176px; + +/********************************************* +Clock Profiles - portrait specific containers +**********************************************/ + +box#clock_profiles_portrait{ + display: block; + visibility: visible; + direction: rtl; + block-progression: rl; + padding-left: 1.7u; + padding-right: 1.7u; + margin-bottom: 0.55u; + height:13.86u; + visualisationaware:true; +} + +box#profiles_pages_portrait{ + block-progression: tb; + direction: rtl; + height: adaptive; +} - margin-top: 9px; - margin-right: 9px; - - _s60-longtap: true; +box#clock_container_portrait{ + display: block; + visibility: visible; + position: static; + nav-index: appearance; + block-progression: tb; + background-color: "SKIN(268458534 9906)"; + + margin-left: 0.7u; + visualisationaware:true; + _s60-initial-focus: 1; +} +box#clock_container_portrait:focus{ + background-color: "SKIN(268458534 5120 9)"; +} + +clock#clock_portrait{ + display: block; + visibility: visible; + position: static; + width: auto; + /*height: 70%;*/ + height: auto; + direction: rtl; + block-progression: tb; + background: none; nav-index: appearance; + _s60-format: locale; + _s60-ampm-font-size: 16px; + _s60-digital-font-size: 56px; + color: white; } -plugin.plugins +box#date_container_portrait { - height: 115px; - width: 436px; + width: auto; + direction: rtl; + block-progression: rl; + height: 4.05u; + margin-bottom: 0.55u; + padding-top: 3px; + visualisationaware:true; +} - margin-top: 9px; - margin-right: 10px; - - _s60-longtap: true; +box#date_content_portrait +{ + width: adaptive; + height: adaptive; +} - nav-index: appearance; +text#datetext2_portrait +{ + text-align: center; + width: auto; + height: auto; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + color: white; } -trigger#hs_popup_open_hold:edit +box#profile_softindicator_portrait +{ + width: auto; + direction: rtl; + block-progression: tb; + background-color: "SKIN(268458534 9906)"; + nav-index: appearance; + height: 9.0u; + visualisationaware:true; +} + +box#NT_CUGMCN_portrait +{ + text-align: center; + width: adaptive; + height: auto; + block-progression: rl; +} + + +box#NT_SATVHZ_portrait +{ + display: none; + text-align: center; + width: adaptive; + height: auto; + block-progression: rl; +} + +title#title_vhz_portrait +{ + display: none; +} + +title#title_sat_portrait { display: none; } -trigger#hs_popup_open_up +/********************************************* +Clock Profiles - landscape specific containers +**********************************************/ + +box#clock_profiles_landscape{ + display: block; + visibility: visible; + direction: rtl; + block-progression: tb; + width: 30%; + height: 100%; + padding-left: 5px; + padding-top: 5px; + visualisationaware:true; +} + +box#profiles_pages_landscape{ + block-progression: tb; + direction: rtl; + height: adaptive; +} + +box#clock_container_landscape{ + + display: block; + visibility: visible; + position: static; + nav-index: appearance; + block-progression: tb; + background-color: "SKIN(268458534 9906)"; + height: 10.74u; + width: auto; + margin-bottom: 0.55u; + visualisationaware:true; + _s60-initial-focus: 2; +} + +box#clock_container_landscape:focus{ + background-color: "SKIN(268458534 5120 9)"; +} + +box#date_container_landscape { - display: none; + width: auto; + direction: rtl; + block-progression: rl; + height: 6.7u; + margin-bottom: 0.55u; + visualisationaware:true; +} + +box#profile_softindicator_landscape +{ + width: auto; + direction: rtl; + block-progression: tb; + background-color: "SKIN(268458534 9906)"; + nav-index: appearance; + height: 6.7u; + margin-bottom: 0.55u; + visualisationaware:true; +} + +clock#clock_landscape{ + display: block; + visibility: visible; + position: static; + width: 100%; + height: auto; + direction: rtl; + block-progression: tb; + background: none; + nav-index: appearance; + _s60-format: locale; + _s60-ampm-font-size: 16px; + _s60-digital-font-size: 56px; + color: white; } -trigger#hs_popup_open_up:edit +clock:focus{ + background-color: "SKIN(268458534 5120 9)"; +} +/* Date in the clock widget */ +text#datetext{ + nav-index: appearance; + text-align: center; + padding-top: 0.5u; + padding-bottom: 0.5u; + width: 100%; + height: 24%; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + color: white; +} +/* Date in the clock widget */ +text#datetext:focus{ + background-color: "SKIN(268458534 5120 9)"; +} + +/* Date in separate widget above profiles */ + +box#date_content_landscape +{ + width: inherit; + height: inherit; +} + +text#datetext2_landscape +{ + text-align: center; + width: auto; + height: auto; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + color: white; +} + +box#profile_softindicator:focus +{ + focus-background:"SKIN(268458534 5120 9)"; +} + +image#profileicon { + display: block; + visibility: hidden; + width: 18px; + height: 20px; + position: static; + margin-top: auto; + z-index: 2; +} + +image#SatIdleModeIcon +{ + display: block; + visibility: hidden; + width: 18px; + height: 20px; + position: static; + margin-top: auto; +} + +text#profiletext +{ + text-align: center; + margin-left: 2px; + margin-right: 2px; + width: adaptive; + height: adaptive; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + color:"SKIN(268458534 13056 19)"; +} + +/* Profiles dialog */ +listquerydialog#profiledialog +{ + /* Avkon dialog is not layout capable */ + display: none; +} + +/* Default system profiles */ +text.systemprofileitem { display: block; } -softkey#rsk +/* Placeholders for profiles added by user */ +text.userprofileitem { - _s60-longtap: true; - _s60-aspect-ratio: preserve; + display: none; +} + +/****************** + SOFT INDICATOR WIDGET AREA +*******************/ + +newsticker.SIText { + text-align: center; + display: block; + visibility: visible; + width: auto; + margin-left: 2px; + margin-right: 2px; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + white-space-collapse: collapse; + _s60-scroll-behaviour: alternate; + /*_s60-scroll-behaviour: scroll;*/ + _s60-display-time: 2000; + _s60-scroll-loop: false; + _s60-start-delay: 0; + _s60-restart-after-update: true; + color: white; + /*color:"SKIN(268458534 13056 19)";*/ } -softkey#msk_ltr +box#NT_CUGMCN_landscape +{ + text-align: center; + margin-left: auto; + margin-right: auto; + width: adaptive; + height: auto; + block-progression: rl; +} + +box#NT_SATVHZ_landscape +{ + display: none; + text-align: center; + margin-left: auto; + margin-right: auto; + width: adaptive; + height: auto; + block-progression: rl; +} + +title#title_vhz_landscape +{ + display: none; +} + +title#title_sat_landscape +{ + display: none; +} + +image#SatIdleModeIcon_portrait +{ + display: none; +} + +image#SatIdleModeIcon_landscape { display: none; } -softkey#msk_rtl +/************ +Page switcher +************* +box#switcher{ + display: block; + visibility: visible; + block-progression: rl; + direction: ltr; + height: 4.5u; + background-color: "SKIN(268458534 9906)"; + background-size: 100%; + margin-top: 0.55u; +} + +box#switcher:focus { + background-color: "SKIN(268458534 5120 9)"; +} + +text#switchertext { - display: block; + text-align: center; + margin-left: auto; + margin-right: auto; + width: adaptive; + height: 3.5u; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + color:"SKIN(268458534 13056 19)"; + color: white; + padding-top: 0.5u; + padding-bottom: 0.5u; } +image#switcherimage +{ + position: static; + height: 3.5u; + width: 3.5u; + margin-top: 0.5u; + margin-left: 2u; +} +*/ +menuitem#webonlineitem +{ + display: block; +} + +menuitem#webonlineitem:edit +{ + display: none; +} + +menuitem#webofflineitem +{ + display: block; +} + +menuitem#webofflineitem:edit +{ + display: none; +} + +box#main_plugins{ + block-progression: tb; + display: block; + visibility: visible; + padding-left: 1.7u; + padding-right: 1.7u; +} + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/50/view.css --- a/idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/50/view.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/50/view.css Wed Oct 13 14:18:30 2010 +0300 @@ -1,73 +1,543 @@ -view -{ +view { + display: block; + position: static; + width: 100%; + height: 100%; direction: rtl; block-progression: tb; background-image: wallpaper; - swipe: true; + nav-index: appearance; + _s60-focus-visibility: true; + _s60-status-pane-layout: widescreen-flat-3softkeys; + +} + +trigger.western{ + display: none; +} + + +/** Softkeys **/ +softkey.normal_mode_sk +{ + display: block; +} + +softkey.normal_mode_sk:edit +{ + display: none; +} - _s60-status-pane-layout: widescreen-flat-3softkeys; +softkey.edit_mode_sk +{ + display: none; +} + +softkey.edit_mode_sk:edit +{ + display: block; +} + +/** General **/ + +plugin.widget_full_width{ + /* every plug-in decides its own height */ + height: adaptive; + background-color: "SKIN(268458534 9906)"; + background-size: 100%; + width: 100%; +/* padding-left: 1.7u; + padding-right: 1.7u;*/ + margin-bottom: 0.55u; + nav-index: auto; +} + +plugin.widget_full_width:focus { + focus-background:"SKIN(268458534 9896)"; } -box#plugins_container +plugin:edit { + background-color:"SKIN(270501603 8582)"; +} + +text{ + text-align: center; + font-family: tahoma; + font-size: 3.0u; + /*color:"SKIN(268458534 13056 19)";*/ + color: white; +} + +/************ +Page switcher +************* + +text#switchertext{ + position: static; + text-align: right; + margin-left: 6.0u; +} + +image#switcherimage{ + position: absolute; + top: 1.4u; + left: 2.5u; + height: 3.5u; + width: 3.0u; + _s60-aspect-ratio: preserve; +} +*/ + + +/****************** +container areas +******************/ +box#mainbox{ + width: 100%; + height: 100%; +} + +box.profile_date { - direction: rtl; - block-progression: tb; + background-color: "SKIN(268458534 9916)"; + nav-index: appearance; + height: auto; +} + +box.profile_date:focus +{ + background-color: "SKIN(268458534 5120 9)"; } -plugin.miniplugins -{ - height: 115px; - width: 176px; + +/********************************************* +Clock Profiles - portrait specific containers +**********************************************/ + +box#clock_profiles_portrait{ + display: block; + visibility: visible; + direction: rtl; + block-progression: rl; + padding-left: 1.7u; + padding-right: 1.7u; + margin-bottom: 0.55u; + height:13.86u; + visualisationaware:true; +} + +box#profiles_pages_portrait{ + block-progression: tb; + direction: rtl; + height: adaptive; +} - margin-top: 9px; - margin-right: 9px; - - _s60-longtap: true; +box#clock_container_portrait{ + display: block; + visibility: visible; + position: static; + nav-index: appearance; + block-progression: tb; + background-color: "SKIN(268458534 9906)"; + + margin-left: 0.7u; + visualisationaware:true; + _s60-initial-focus: 1; +} +box#clock_container_portrait:focus{ + background-color: "SKIN(268458534 5120 9)"; +} + +clock#clock_portrait{ + display: block; + visibility: visible; + position: static; + width: auto; + /*height: 70%;*/ + height: auto; + direction: rtl; + block-progression: tb; + background: none; nav-index: appearance; + _s60-format: locale; + _s60-ampm-font-size: 16px; + _s60-digital-font-size: 56px; + color: white; } -plugin.plugins +box#date_container_portrait { - height: 115px; - width: 436px; + width: auto; + direction: rtl; + block-progression: rl; + height: 4.05u; + margin-bottom: 0.55u; + padding-top: 3px; + visualisationaware:true; +} - margin-top: 9px; - margin-right: 10px; - - _s60-longtap: true; +box#date_content_portrait +{ + width: adaptive; + height: adaptive; +} - nav-index: appearance; +text#datetext2_portrait +{ + text-align: center; + width: auto; + height: auto; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + color: white; } -trigger#hs_popup_open_hold:edit +box#profile_softindicator_portrait +{ + width: auto; + direction: rtl; + block-progression: tb; + background-color: "SKIN(268458534 9906)"; + nav-index: appearance; + height: 9.0u; + visualisationaware:true; +} + +box#NT_CUGMCN_portrait +{ + text-align: center; + width: adaptive; + height: auto; + block-progression: rl; +} + + +box#NT_SATVHZ_portrait +{ + display: none; + text-align: center; + width: adaptive; + height: auto; + block-progression: rl; +} + +title#title_vhz_portrait +{ + display: none; +} + +title#title_sat_portrait { display: none; } -trigger#hs_popup_open_up +/********************************************* +Clock Profiles - landscape specific containers +**********************************************/ + +box#clock_profiles_landscape{ + display: block; + visibility: visible; + direction: rtl; + block-progression: tb; + width: 30%; + height: 100%; + padding-left: 5px; + padding-top: 5px; + visualisationaware:true; +} + +box#profiles_pages_landscape{ + block-progression: tb; + direction: rtl; + height: adaptive; +} + +box#clock_container_landscape{ + + display: block; + visibility: visible; + position: static; + nav-index: appearance; + block-progression: tb; + background-color: "SKIN(268458534 9906)"; + height: 10.74u; + width: auto; + margin-bottom: 0.55u; + visualisationaware:true; + _s60-initial-focus: 2; +} + +box#clock_container_landscape:focus{ + background-color: "SKIN(268458534 5120 9)"; +} + +box#date_container_landscape { - display: none; + width: auto; + direction: rtl; + block-progression: rl; + height: 6.7u; + margin-bottom: 0.55u; + visualisationaware:true; +} + +box#profile_softindicator_landscape +{ + width: auto; + direction: rtl; + block-progression: tb; + background-color: "SKIN(268458534 9906)"; + nav-index: appearance; + height: 6.7u; + margin-bottom: 0.55u; + visualisationaware:true; +} + +clock#clock_landscape{ + display: block; + visibility: visible; + position: static; + width: 100%; + height: auto; + direction: rtl; + block-progression: tb; + background: none; + nav-index: appearance; + _s60-format: locale; + _s60-ampm-font-size: 16px; + _s60-digital-font-size: 56px; + color: white; } -trigger#hs_popup_open_up:edit +clock:focus{ + background-color: "SKIN(268458534 5120 9)"; +} +/* Date in the clock widget */ +text#datetext{ + nav-index: appearance; + text-align: center; + padding-top: 0.5u; + padding-bottom: 0.5u; + width: 100%; + height: 24%; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + color: white; +} +/* Date in the clock widget */ +text#datetext:focus{ + background-color: "SKIN(268458534 5120 9)"; +} + +/* Date in separate widget above profiles */ + +box#date_content_landscape +{ + width: inherit; + height: inherit; +} + +text#datetext2_landscape +{ + text-align: center; + width: auto; + height: auto; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + color: white; +} + +box#profile_softindicator:focus +{ + focus-background:"SKIN(268458534 5120 9)"; +} + +image#profileicon { + display: block; + visibility: hidden; + width: 18px; + height: 20px; + position: static; + margin-top: auto; + z-index: 2; +} + +image#SatIdleModeIcon +{ + display: block; + visibility: hidden; + width: 18px; + height: 20px; + position: static; + margin-top: auto; +} + +text#profiletext +{ + text-align: center; + margin-left: 2px; + margin-right: 2px; + width: adaptive; + height: adaptive; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + color:"SKIN(268458534 13056 19)"; +} + +/* Profiles dialog */ +listquerydialog#profiledialog +{ + /* Avkon dialog is not layout capable */ + display: none; +} + +/* Default system profiles */ +text.systemprofileitem { display: block; } -softkey#rsk +/* Placeholders for profiles added by user */ +text.userprofileitem { - _s60-longtap: true; - _s60-aspect-ratio: preserve; + display: none; +} + +/****************** + SOFT INDICATOR WIDGET AREA +*******************/ + +newsticker.SIText { + text-align: center; + display: block; + visibility: visible; + width: auto; + margin-left: 2px; + margin-right: 2px; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + white-space-collapse: collapse; + _s60-scroll-behaviour: alternate; + /*_s60-scroll-behaviour: scroll;*/ + _s60-display-time: 2000; + _s60-scroll-loop: false; + _s60-start-delay: 0; + _s60-restart-after-update: true; + color: white; + /*color:"SKIN(268458534 13056 19)";*/ } -softkey#msk_ltr +box#NT_CUGMCN_landscape +{ + text-align: center; + margin-left: auto; + margin-right: auto; + width: adaptive; + height: auto; + block-progression: rl; +} + +box#NT_SATVHZ_landscape +{ + display: none; + text-align: center; + margin-left: auto; + margin-right: auto; + width: adaptive; + height: auto; + block-progression: rl; +} + +title#title_vhz_landscape +{ + display: none; +} + +title#title_sat_landscape +{ + display: none; +} + +image#SatIdleModeIcon_portrait +{ + display: none; +} + +image#SatIdleModeIcon_landscape { display: none; } -softkey#msk_rtl +/************ +Page switcher +************* +box#switcher{ + display: block; + visibility: visible; + block-progression: rl; + direction: ltr; + height: 4.5u; + background-color: "SKIN(268458534 9906)"; + background-size: 100%; + margin-top: 0.55u; +} + +box#switcher:focus { + background-color: "SKIN(268458534 5120 9)"; +} + +text#switchertext { - display: block; + text-align: center; + margin-left: auto; + margin-right: auto; + width: adaptive; + height: 3.5u; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + color:"SKIN(268458534 13056 19)"; + color: white; + padding-top: 0.5u; + padding-bottom: 0.5u; } +image#switcherimage +{ + position: static; + height: 3.5u; + width: 3.5u; + margin-top: 0.5u; + margin-left: 2u; +} +*/ + +menuitem#webonlineitem +{ + display: block; +} + +menuitem#webonlineitem:edit +{ + display: none; +} + +menuitem#webofflineitem +{ + display: block; +} + +menuitem#webofflineitem:edit +{ + display: none; +} + +box#main_plugins{ + block-progression: tb; + display: block; + visibility: visible; + padding-left: 1.7u; + padding-right: 1.7u; +} + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/57/view.css --- a/idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/57/view.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/57/view.css Wed Oct 13 14:18:30 2010 +0300 @@ -1,73 +1,543 @@ -view -{ +view { + display: block; + position: static; + width: 100%; + height: 100%; direction: rtl; block-progression: tb; background-image: wallpaper; - swipe: true; + nav-index: appearance; + _s60-focus-visibility: true; + _s60-status-pane-layout: widescreen-flat-3softkeys; + +} + +trigger.western{ + display: none; +} + + +/** Softkeys **/ +softkey.normal_mode_sk +{ + display: block; +} + +softkey.normal_mode_sk:edit +{ + display: none; +} - _s60-status-pane-layout: widescreen-flat-3softkeys; +softkey.edit_mode_sk +{ + display: none; +} + +softkey.edit_mode_sk:edit +{ + display: block; +} + +/** General **/ + +plugin.widget_full_width{ + /* every plug-in decides its own height */ + height: adaptive; + background-color: "SKIN(268458534 9906)"; + background-size: 100%; + width: 100%; +/* padding-left: 1.7u; + padding-right: 1.7u;*/ + margin-bottom: 0.55u; + nav-index: auto; +} + +plugin.widget_full_width:focus { + focus-background:"SKIN(268458534 9896)"; } -box#plugins_container +plugin:edit { + background-color:"SKIN(270501603 8582)"; +} + +text{ + text-align: center; + font-family: tahoma; + font-size: 3.0u; + /*color:"SKIN(268458534 13056 19)";*/ + color: white; +} + +/************ +Page switcher +************* + +text#switchertext{ + position: static; + text-align: right; + margin-left: 6.0u; +} + +image#switcherimage{ + position: absolute; + top: 1.4u; + left: 2.5u; + height: 3.5u; + width: 3.0u; + _s60-aspect-ratio: preserve; +} +*/ + + +/****************** +container areas +******************/ +box#mainbox{ + width: 100%; + height: 100%; +} + +box.profile_date { - direction: rtl; - block-progression: tb; + background-color: "SKIN(268458534 9916)"; + nav-index: appearance; + height: auto; +} + +box.profile_date:focus +{ + background-color: "SKIN(268458534 5120 9)"; } -plugin.miniplugins -{ - height: 115px; - width: 176px; + +/********************************************* +Clock Profiles - portrait specific containers +**********************************************/ + +box#clock_profiles_portrait{ + display: block; + visibility: visible; + direction: rtl; + block-progression: rl; + padding-left: 1.7u; + padding-right: 1.7u; + margin-bottom: 0.55u; + height:13.86u; + visualisationaware:true; +} + +box#profiles_pages_portrait{ + block-progression: tb; + direction: rtl; + height: adaptive; +} - margin-top: 9px; - margin-right: 9px; - - _s60-longtap: true; +box#clock_container_portrait{ + display: block; + visibility: visible; + position: static; + nav-index: appearance; + block-progression: tb; + background-color: "SKIN(268458534 9906)"; + + margin-left: 0.7u; + visualisationaware:true; + _s60-initial-focus: 1; +} +box#clock_container_portrait:focus{ + background-color: "SKIN(268458534 5120 9)"; +} + +clock#clock_portrait{ + display: block; + visibility: visible; + position: static; + width: auto; + /*height: 70%;*/ + height: auto; + direction: rtl; + block-progression: tb; + background: none; nav-index: appearance; + _s60-format: locale; + _s60-ampm-font-size: 16px; + _s60-digital-font-size: 56px; + color: white; } -plugin.plugins +box#date_container_portrait { - height: 115px; - width: 436px; + width: auto; + direction: rtl; + block-progression: rl; + height: 4.05u; + margin-bottom: 0.55u; + padding-top: 3px; + visualisationaware:true; +} - margin-top: 9px; - margin-right: 10px; - - _s60-longtap: true; +box#date_content_portrait +{ + width: adaptive; + height: adaptive; +} - nav-index: appearance; +text#datetext2_portrait +{ + text-align: center; + width: auto; + height: auto; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + color: white; } -trigger#hs_popup_open_hold:edit +box#profile_softindicator_portrait +{ + width: auto; + direction: rtl; + block-progression: tb; + background-color: "SKIN(268458534 9906)"; + nav-index: appearance; + height: 9.0u; + visualisationaware:true; +} + +box#NT_CUGMCN_portrait +{ + text-align: center; + width: adaptive; + height: auto; + block-progression: rl; +} + + +box#NT_SATVHZ_portrait +{ + display: none; + text-align: center; + width: adaptive; + height: auto; + block-progression: rl; +} + +title#title_vhz_portrait +{ + display: none; +} + +title#title_sat_portrait { display: none; } -trigger#hs_popup_open_up +/********************************************* +Clock Profiles - landscape specific containers +**********************************************/ + +box#clock_profiles_landscape{ + display: block; + visibility: visible; + direction: rtl; + block-progression: tb; + width: 30%; + height: 100%; + padding-left: 5px; + padding-top: 5px; + visualisationaware:true; +} + +box#profiles_pages_landscape{ + block-progression: tb; + direction: rtl; + height: adaptive; +} + +box#clock_container_landscape{ + + display: block; + visibility: visible; + position: static; + nav-index: appearance; + block-progression: tb; + background-color: "SKIN(268458534 9906)"; + height: 10.74u; + width: auto; + margin-bottom: 0.55u; + visualisationaware:true; + _s60-initial-focus: 2; +} + +box#clock_container_landscape:focus{ + background-color: "SKIN(268458534 5120 9)"; +} + +box#date_container_landscape { - display: none; + width: auto; + direction: rtl; + block-progression: rl; + height: 6.7u; + margin-bottom: 0.55u; + visualisationaware:true; +} + +box#profile_softindicator_landscape +{ + width: auto; + direction: rtl; + block-progression: tb; + background-color: "SKIN(268458534 9906)"; + nav-index: appearance; + height: 6.7u; + margin-bottom: 0.55u; + visualisationaware:true; +} + +clock#clock_landscape{ + display: block; + visibility: visible; + position: static; + width: 100%; + height: auto; + direction: rtl; + block-progression: tb; + background: none; + nav-index: appearance; + _s60-format: locale; + _s60-ampm-font-size: 16px; + _s60-digital-font-size: 56px; + color: white; } -trigger#hs_popup_open_up:edit +clock:focus{ + background-color: "SKIN(268458534 5120 9)"; +} +/* Date in the clock widget */ +text#datetext{ + nav-index: appearance; + text-align: center; + padding-top: 0.5u; + padding-bottom: 0.5u; + width: 100%; + height: 24%; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + color: white; +} +/* Date in the clock widget */ +text#datetext:focus{ + background-color: "SKIN(268458534 5120 9)"; +} + +/* Date in separate widget above profiles */ + +box#date_content_landscape +{ + width: inherit; + height: inherit; +} + +text#datetext2_landscape +{ + text-align: center; + width: auto; + height: auto; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + color: white; +} + +box#profile_softindicator:focus +{ + focus-background:"SKIN(268458534 5120 9)"; +} + +image#profileicon { + display: block; + visibility: hidden; + width: 18px; + height: 20px; + position: static; + margin-top: auto; + z-index: 2; +} + +image#SatIdleModeIcon +{ + display: block; + visibility: hidden; + width: 18px; + height: 20px; + position: static; + margin-top: auto; +} + +text#profiletext +{ + text-align: center; + margin-left: 2px; + margin-right: 2px; + width: adaptive; + height: adaptive; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + color:"SKIN(268458534 13056 19)"; +} + +/* Profiles dialog */ +listquerydialog#profiledialog +{ + /* Avkon dialog is not layout capable */ + display: none; +} + +/* Default system profiles */ +text.systemprofileitem { display: block; } -softkey#rsk +/* Placeholders for profiles added by user */ +text.userprofileitem { - _s60-longtap: true; - _s60-aspect-ratio: preserve; + display: none; +} + +/****************** + SOFT INDICATOR WIDGET AREA +*******************/ + +newsticker.SIText { + text-align: center; + display: block; + visibility: visible; + width: auto; + margin-left: 2px; + margin-right: 2px; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + white-space-collapse: collapse; + _s60-scroll-behaviour: alternate; + /*_s60-scroll-behaviour: scroll;*/ + _s60-display-time: 2000; + _s60-scroll-loop: false; + _s60-start-delay: 0; + _s60-restart-after-update: true; + color: white; + /*color:"SKIN(268458534 13056 19)";*/ } -softkey#msk_ltr +box#NT_CUGMCN_landscape +{ + text-align: center; + margin-left: auto; + margin-right: auto; + width: adaptive; + height: auto; + block-progression: rl; +} + +box#NT_SATVHZ_landscape +{ + display: none; + text-align: center; + margin-left: auto; + margin-right: auto; + width: adaptive; + height: auto; + block-progression: rl; +} + +title#title_vhz_landscape +{ + display: none; +} + +title#title_sat_landscape +{ + display: none; +} + +image#SatIdleModeIcon_portrait +{ + display: none; +} + +image#SatIdleModeIcon_landscape { display: none; } -softkey#msk_rtl +/************ +Page switcher +************* +box#switcher{ + display: block; + visibility: visible; + block-progression: rl; + direction: ltr; + height: 4.5u; + background-color: "SKIN(268458534 9906)"; + background-size: 100%; + margin-top: 0.55u; +} + +box#switcher:focus { + background-color: "SKIN(268458534 5120 9)"; +} + +text#switchertext { - display: block; + text-align: center; + margin-left: auto; + margin-right: auto; + width: adaptive; + height: 3.5u; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + color:"SKIN(268458534 13056 19)"; + color: white; + padding-top: 0.5u; + padding-bottom: 0.5u; } +image#switcherimage +{ + position: static; + height: 3.5u; + width: 3.5u; + margin-top: 0.5u; + margin-left: 2u; +} +*/ + +menuitem#webonlineitem +{ + display: block; +} + +menuitem#webonlineitem:edit +{ + display: none; +} + +menuitem#webofflineitem +{ + display: block; +} + +menuitem#webofflineitem:edit +{ + display: none; +} + +box#main_plugins{ + block-progression: tb; + display: block; + visibility: visible; + padding-left: 1.7u; + padding-right: 1.7u; +} + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/94/view.css --- a/idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/94/view.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/view1_2001fdb9/xuikon/94/view.css Wed Oct 13 14:18:30 2010 +0300 @@ -1,74 +1,543 @@ -view -{ +view { + display: block; + position: static; + width: 100%; + height: 100%; direction: rtl; block-progression: tb; background-image: wallpaper; - swipe: true; + nav-index: appearance; + _s60-focus-visibility: true; + _s60-status-pane-layout: widescreen-flat-3softkeys; + +} + +trigger.western{ + display: none; +} + + +/** Softkeys **/ +softkey.normal_mode_sk +{ + display: block; +} + +softkey.normal_mode_sk:edit +{ + display: none; +} - _s60-status-pane-layout: widescreen-flat-3softkeys; +softkey.edit_mode_sk +{ + display: none; +} + +softkey.edit_mode_sk:edit +{ + display: block; +} + +/** General **/ + +plugin.widget_full_width{ + /* every plug-in decides its own height */ + height: adaptive; + background-color: "SKIN(268458534 9906)"; + background-size: 100%; + width: 100%; +/* padding-left: 1.7u; + padding-right: 1.7u;*/ + margin-bottom: 0.55u; + nav-index: auto; +} + +plugin.widget_full_width:focus { + focus-background:"SKIN(268458534 9896)"; } -box#plugins_container +plugin:edit { + background-color:"SKIN(270501603 8582)"; +} + +text{ + text-align: center; + font-family: tahoma; + font-size: 3.0u; + /*color:"SKIN(268458534 13056 19)";*/ + color: white; +} + +/************ +Page switcher +************* + +text#switchertext{ + position: static; + text-align: right; + margin-left: 6.0u; +} + +image#switcherimage{ + position: absolute; + top: 1.4u; + left: 2.5u; + height: 3.5u; + width: 3.0u; + _s60-aspect-ratio: preserve; +} +*/ + + +/****************** +container areas +******************/ +box#mainbox{ + width: 100%; + height: 100%; +} + +box.profile_date { - direction: rtl; - block-progression: tb; + background-color: "SKIN(268458534 9916)"; + nav-index: appearance; + height: auto; +} + +box.profile_date:focus +{ + background-color: "SKIN(268458534 5120 9)"; } -plugin.miniplugins -{ - height: 115px; - width: 176px; + +/********************************************* +Clock Profiles - portrait specific containers +**********************************************/ + +box#clock_profiles_portrait{ + display: block; + visibility: visible; + direction: rtl; + block-progression: rl; + padding-left: 1.7u; + padding-right: 1.7u; + margin-bottom: 0.55u; + height:13.86u; + visualisationaware:true; +} + +box#profiles_pages_portrait{ + block-progression: tb; + direction: rtl; + height: adaptive; +} - margin-top: 9px; - margin-right: 9px; - - _s60-longtap: true; +box#clock_container_portrait{ + display: block; + visibility: visible; + position: static; + nav-index: appearance; + block-progression: tb; + background-color: "SKIN(268458534 9906)"; + + margin-left: 0.7u; + visualisationaware:true; + _s60-initial-focus: 1; +} +box#clock_container_portrait:focus{ + background-color: "SKIN(268458534 5120 9)"; +} + +clock#clock_portrait{ + display: block; + visibility: visible; + position: static; + width: auto; + /*height: 70%;*/ + height: auto; + direction: rtl; + block-progression: tb; + background: none; nav-index: appearance; + _s60-format: locale; + _s60-ampm-font-size: 16px; + _s60-digital-font-size: 56px; + color: white; } -plugin.plugins +box#date_container_portrait { - height: 115px; - width: 436px; + width: auto; + direction: rtl; + block-progression: rl; + height: 4.05u; + margin-bottom: 0.55u; + padding-top: 3px; + visualisationaware:true; +} - margin-top: 9px; - margin-right: 10px; - - _s60-longtap: true; +box#date_content_portrait +{ + width: adaptive; + height: adaptive; +} - nav-index: appearance; +text#datetext2_portrait +{ + text-align: center; + width: auto; + height: auto; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + color: white; } -trigger#hs_popup_open_hold:edit +box#profile_softindicator_portrait +{ + width: auto; + direction: rtl; + block-progression: tb; + background-color: "SKIN(268458534 9906)"; + nav-index: appearance; + height: 9.0u; + visualisationaware:true; +} + +box#NT_CUGMCN_portrait +{ + text-align: center; + width: adaptive; + height: auto; + block-progression: rl; +} + + +box#NT_SATVHZ_portrait +{ + display: none; + text-align: center; + width: adaptive; + height: auto; + block-progression: rl; +} + +title#title_vhz_portrait +{ + display: none; +} + +title#title_sat_portrait { display: none; } -trigger#hs_popup_open_up +/********************************************* +Clock Profiles - landscape specific containers +**********************************************/ + +box#clock_profiles_landscape{ + display: block; + visibility: visible; + direction: rtl; + block-progression: tb; + width: 30%; + height: 100%; + padding-left: 5px; + padding-top: 5px; + visualisationaware:true; +} + +box#profiles_pages_landscape{ + block-progression: tb; + direction: rtl; + height: adaptive; +} + +box#clock_container_landscape{ + + display: block; + visibility: visible; + position: static; + nav-index: appearance; + block-progression: tb; + background-color: "SKIN(268458534 9906)"; + height: 10.74u; + width: auto; + margin-bottom: 0.55u; + visualisationaware:true; + _s60-initial-focus: 2; +} + +box#clock_container_landscape:focus{ + background-color: "SKIN(268458534 5120 9)"; +} + +box#date_container_landscape { - display: none; + width: auto; + direction: rtl; + block-progression: rl; + height: 6.7u; + margin-bottom: 0.55u; + visualisationaware:true; +} + +box#profile_softindicator_landscape +{ + width: auto; + direction: rtl; + block-progression: tb; + background-color: "SKIN(268458534 9906)"; + nav-index: appearance; + height: 6.7u; + margin-bottom: 0.55u; + visualisationaware:true; +} + +clock#clock_landscape{ + display: block; + visibility: visible; + position: static; + width: 100%; + height: auto; + direction: rtl; + block-progression: tb; + background: none; + nav-index: appearance; + _s60-format: locale; + _s60-ampm-font-size: 16px; + _s60-digital-font-size: 56px; + color: white; } -trigger#hs_popup_open_up:edit +clock:focus{ + background-color: "SKIN(268458534 5120 9)"; +} +/* Date in the clock widget */ +text#datetext{ + nav-index: appearance; + text-align: center; + padding-top: 0.5u; + padding-bottom: 0.5u; + width: 100%; + height: 24%; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + color: white; +} +/* Date in the clock widget */ +text#datetext:focus{ + background-color: "SKIN(268458534 5120 9)"; +} + +/* Date in separate widget above profiles */ + +box#date_content_landscape +{ + width: inherit; + height: inherit; +} + +text#datetext2_landscape +{ + text-align: center; + width: auto; + height: auto; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + color: white; +} + +box#profile_softindicator:focus +{ + focus-background:"SKIN(268458534 5120 9)"; +} + +image#profileicon { + display: block; + visibility: hidden; + width: 18px; + height: 20px; + position: static; + margin-top: auto; + z-index: 2; +} + +image#SatIdleModeIcon +{ + display: block; + visibility: hidden; + width: 18px; + height: 20px; + position: static; + margin-top: auto; +} + +text#profiletext +{ + text-align: center; + margin-left: 2px; + margin-right: 2px; + width: adaptive; + height: adaptive; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + color:"SKIN(268458534 13056 19)"; +} + +/* Profiles dialog */ +listquerydialog#profiledialog +{ + /* Avkon dialog is not layout capable */ + display: none; +} + +/* Default system profiles */ +text.systemprofileitem { display: block; } -softkey#rsk +/* Placeholders for profiles added by user */ +text.userprofileitem { - _s60-longtap: true; - _s60-aspect-ratio: preserve; + display: none; +} + +/****************** + SOFT INDICATOR WIDGET AREA +*******************/ + +newsticker.SIText { + text-align: center; + display: block; + visibility: visible; + width: auto; + margin-left: 2px; + margin-right: 2px; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + white-space-collapse: collapse; + _s60-scroll-behaviour: alternate; + /*_s60-scroll-behaviour: scroll;*/ + _s60-display-time: 2000; + _s60-scroll-loop: false; + _s60-start-delay: 0; + _s60-restart-after-update: true; + color: white; + /*color:"SKIN(268458534 13056 19)";*/ } -softkey#msk_ltr +box#NT_CUGMCN_landscape +{ + text-align: center; + margin-left: auto; + margin-right: auto; + width: adaptive; + height: auto; + block-progression: rl; +} + +box#NT_SATVHZ_landscape +{ + display: none; + text-align: center; + margin-left: auto; + margin-right: auto; + width: adaptive; + height: auto; + block-progression: rl; +} + +title#title_vhz_landscape +{ + display: none; +} + +title#title_sat_landscape +{ + display: none; +} + +image#SatIdleModeIcon_portrait +{ + display: none; +} + +image#SatIdleModeIcon_landscape { display: none; } -softkey#msk_rtl +/************ +Page switcher +************* +box#switcher{ + display: block; + visibility: visible; + block-progression: rl; + direction: ltr; + height: 4.5u; + background-color: "SKIN(268458534 9906)"; + background-size: 100%; + margin-top: 0.55u; +} + +box#switcher:focus { + background-color: "SKIN(268458534 5120 9)"; +} + +text#switchertext { - display: block; + text-align: center; + margin-left: auto; + margin-right: auto; + width: adaptive; + height: 3.5u; + font-family: EAknLogicalFontPrimaryFont; + font-size: 3u; + color:"SKIN(268458534 13056 19)"; + color: white; + padding-top: 0.5u; + padding-bottom: 0.5u; } +image#switcherimage +{ + position: static; + height: 3.5u; + width: 3.5u; + margin-top: 0.5u; + margin-left: 2u; +} +*/ +menuitem#webonlineitem +{ + display: block; +} + +menuitem#webonlineitem:edit +{ + display: none; +} + +menuitem#webofflineitem +{ + display: block; +} + +menuitem#webofflineitem:edit +{ + display: none; +} + +box#main_plugins{ + block-progression: tb; + display: block; + visibility: visible; + padding-left: 1.7u; + padding-right: 1.7u; +} + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/conf/view200286ea.confml --- a/idlehomescreen/data/vga_tch/view2_200286ea/conf/view200286ea.confml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,491 +0,0 @@ - - - - - The Qhd touch is a supported display type of the xuikon homescreen - - - The Vga touch is a supported display type of the xuikon homescreen - - - Maximum widget amount in Homescreen 2 page. Customizable - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Path of the Wallpaper resource. Customizable. - - - Not customizable! - - - Not customizable! - - - Widgets in the Homescreen 2 - - Widget name - - - Bundle identifier for the (C)WRT widgets. None for the native widgets - - - Templeate identifier for the (C)WRT widgets. None for the native widgets - - - Locking status for the widget 1 in Homescreen 2 page - - - Customize enabler for desktop/shortcut widget - - - Customize 1st item in desktop widget - - - Type of the item: Application, bookmark, or shortcut(param specific item) - - - Uid for the application, Menu content Uid for the bookmarks and shortcuts. - - - url for the bookmark based shortcut. for example http://www.google.com - - - Params for shortcut. For example: messaging:msg - - - Customize 2nd item in desktop widget - - - Type of the item: Application, bookmark, or shortcut(param specific item) - - - Uid for the application, Menu content Uid for the bookmarks and shortcuts - - - url for the bookmark based shortcut. for example http://www.google.com - - - Params for shortcut. messaging:msg - - - Customize 3rd item in desktop widget - - - Type of the item: Application, bookmark, or shortcut(param specific item) - - - Uid for the application,Menu content Uid for the bookmarks and shortcuts. - - - url for the bookmark based shortcut. for example http://www.google.com - - - Params for shortcut. messaging:msg - - - Customize 4th item in desktop widget - - - Type of the item: Application, bookmark, or shortcut(param specific item) - - - Uid for the application, Menu content ids for the bookmarks and shortcuts - - - url for the bookmark based shortcut. for example http://www.google.com - - - Params for shortcut. messaging:msg - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - - - - true - true - 6 - true - hs_vga_tch_view - use_empty_widget - wallpaper - path - - - 0x200286e6 - 0 - 0 - permanent - 0 - 0 - - - - - - - - - - - - - - - - - - - - first - Shortcut1 - second - Shortcut2 - third - Shortcut3 - fourth - Shortcut4 - type - uid - view - param - - - 0x200286e7 - 0 - 0 - permanent - 0 - 0 - - - - - - - - - - - - - - - - - - - - first - Shortcut1 - second - Shortcut2 - third - Shortcut3 - fourth - Shortcut4 - type - uid - view - param - - - 0x200255b6 - 0 - 0 - permanent - 0 - 0 - - - - - - - - - - - - - - - - - - - - first - Shortcut1 - second - Shortcut2 - third - Shortcut3 - fourth - Shortcut4 - type - uid - view - param - - - 0x2001f47f - 0 - 0 - none - 0 - 0 - - - - - - - - - - - - - - - - - - - - first - Shortcut1 - second - Shortcut2 - third - Shortcut3 - fourth - Shortcut4 - type - uid - view - param - - - 0x2001f47f - 0 - 0 - none - 0 - 0 - - - - - - - - - - - - - - - - - - - - first - Shortcut1 - second - Shortcut2 - third - Shortcut3 - fourth - Shortcut4 - type - uid - view - param - - - 0x2001f47f - 0 - 0 - none - 0 - 0 - - - - - - - - - - - - - - - - - - - - first - Shortcut1 - second - Shortcut2 - third - Shortcut3 - fourth - Shortcut4 - type - uid - view - param - - - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/conf/view200286ea.gcfml --- a/idlehomescreen/data/vga_tch/view2_200286ea/conf/view200286ea.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,161 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/conf/view200286eamanifest.confml Binary file idlehomescreen/data/vga_tch/view2_200286ea/conf/view200286eamanifest.confml has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/conf/view200286eamanifest.gcfml --- a/idlehomescreen/data/vga_tch/view2_200286ea/conf/view200286eamanifest.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,63 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/conf/view200286eaxuikon.confml Binary file idlehomescreen/data/vga_tch/view2_200286ea/conf/view200286eaxuikon.confml has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/conf/view200286eaxuikon.gcfml --- a/idlehomescreen/data/vga_tch/view2_200286ea/conf/view200286eaxuikon.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - - - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/group/bld.inf --- a/idlehomescreen/data/vga_tch/view2_200286ea/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,86 +0,0 @@ -/* -* Copyright (c) 2002-2008 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: The information required for building -* -*/ - - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS -// Support for productization and Carbide.Ui customization -//******************************************************** -//../hsps/00/manifest.dat /epoc32/data/z/resource/homescreen/view2_200286ea/hsps/manifest.dat -//../hsps/00/viewconfiguration.xml /epoc32/data/z/resource/homescreen/view2_200286ea/hsps/viewconfiguration.xml -//../hsps/00/viewconfiguration.dtd /epoc32/data/z/resource/homescreen/view2_200286ea/hsps/viewconfiguration.dtd - -../xuikon/00/view.dat /epoc32/data/z/resource/homescreen/view2_200286ea/xuikon/view2_200286ea.dat -../xuikon/00/view.xml /epoc32/data/z/resource/homescreen/view2_200286ea/xuikon/view.xml -../xuikon/00/view.dtd /epoc32/data/z/resource/homescreen/view2_200286ea/xuikon/view.dtd -../xuikon/00/view.css /epoc32/data/z/resource/homescreen/view2_200286ea/xuikon/view.css - -// Arabic languages -//***************** -../xuikon/37/view.css /epoc32/data/z/resource/homescreen/view2_200286ea/xuikon/37/view.css -../xuikon/50/view.css /epoc32/data/z/resource/homescreen/view2_200286ea/xuikon/50/view.css -../xuikon/57/view.css /epoc32/data/z/resource/homescreen/view2_200286ea/xuikon/57/view.css -../xuikon/94/view.css /epoc32/data/z/resource/homescreen/view2_200286ea/xuikon/94/view.css - - -//Confml and cfgml files for the customization -// starting use confml it is need to remove root_configuration.xml direct exporting (view_200286e4_variant.iby) -//*********************************** -../conf/view200286ea.confml APP_LAYER_CONFML(view200286ea.confml) -../conf/view200286ea.gcfml APP_LAYER_GCFML(view200286ea.gcfml) -../conf/view200286eamanifest.confml APP_LAYER_CONFML(view200286eamanifest.confml) -../conf/view200286eamanifest.gcfml APP_LAYER_GCFML(view200286eamanifest.gcfml) -../conf/view200286eaxuikon.confml APP_LAYER_CONFML(view200286eaxuikon.confml) -../conf/view200286eaxuikon.gcfml APP_LAYER_GCFML(view200286eaxuikon.gcfml) -// Support for S60 localization -//***************************** -//#ifndef __VIEWCONFIGURATION_LOC__ -//#define __VIEWCONFIGURATION_LOC__ -//../loc/viewconfiguration.loc APP_LAYER_LOC_EXPORT_PATH(viewconfiguration.loc) -//#endif // __VIEWCONFIGURATION_LOC__ - -#ifndef __VIEW_LOC__ -#define __VIEW_LOC__ -../loc/view.loc APP_LAYER_LOC_EXPORT_PATH(view.loc) -#endif // __VIEW_LOC__ - -// Support for S60 builds -//*********************** -../rom/view_resources.iby LANGUAGE_APP_LAYER_IBY_EXPORT_PATH(view2_200286ea_resources.iby) -../rom/view_customer.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(view2_200286ea_customer.iby) -//../rom/view_variant.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(view2_200286ea_variant.iby) -//../rom/view.iby CORE_APP_LAYER_IBY_EXPORT_PATH(view2_200286ea.iby) - - -// Dtd-localization -//***************** -PRJ_EXTENSIONS -START EXTENSION tools/dtd -OPTION SWITCH_LOC_FILE_NAME view2_200286ea -OPTION DTD_TYPE widget -END - - -PRJ_MMPFILES - -PRJ_TESTMMPFILES - -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/hsps/00/manifest.dat --- a/idlehomescreen/data/vga_tch/view2_200286ea/hsps/00/manifest.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,33 +0,0 @@ - - - - vga_tch - - view - - - 0x2001f48a - - - 0x101fb657 - - - 0x200286ea - - - view2 - ai3_nokia - 1.0 - - - viewconfiguration.xml - - - - - - - view.o0000 - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/hsps/00/viewconfiguration.dtd --- a/idlehomescreen/data/vga_tch/view2_200286ea/hsps/00/viewconfiguration.dtd Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,27 +0,0 @@ - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/hsps/00/viewconfiguration.xml --- a/idlehomescreen/data/vga_tch/view2_200286ea/hsps/00/viewconfiguration.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,22 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/loc/view.loc --- a/idlehomescreen/data/vga_tch/view2_200286ea/loc/view.loc Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,322 +0,0 @@ -/* -* Copyright (c) 2005-2006 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Localization strings for project Active Idle 3 -* -*/ - -// d: Help -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_options_help "Help" - -// d: Open -// l: control_pane_t1/opt7 -// w: -// r: TB9.2 -#define qtn_msk_open "Open" - -// d: Done -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_done "Done" - -// d: Open -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_options_open "Open" - -// d: Back -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_back "Back" - -// d: Empty string -// l: control_pane_t1/opt7 -// w: -// r: TB9.2 -#define shortcut_emptycaption " " - -// d: Add page -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_add_page "Add page" - -// d: Select -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_options_select_widget "Select" - -// d: Add content -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_add_widget "Add content" - -// d: Access the widget catalog -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_widget_catalog "Widget catalog" - -// d: Search -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_search "Search" - -// d: Options -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_options "Options" - -// d: Refresh -// l: list_single_pane_t1_cp2/opt3 -// w: -// r: TB9.2 -#define qtn_hs_refresh_widget "Refresh" - -// d: Focused widget -// l: list_single_popup_submenu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_refresh_one_widget "One" - -// d: All widgets -// l: list_single_popup_submenu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_refresh_all_widgets "All" - -// d: Remove content -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_remove_widget "Remove content" - -// d: Hide the content -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_hide_widgets "Hide the content" - -// d: Edit contents -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_edit_content "Edit content" - -// d: Change Wallpaper -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_change_wallpaper "Change Wallpaper" - -// d: Change Shortcut Settings -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_change_shortcut_settings "Change Shortcut Settings" - -// d: Widget settings -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_widget_settings "Widget settings" - -// d: Show widgets -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_show_widgets "Show the content" - -// d: Change Home screen page -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_change_page "Change Home screen page" - -// d: Change -// l: control_pane_t1/opt7 -// w: -// r: TB9.2 -#define qtn_msk_change "Change" - -// d: Show all profiles in Profiles widget -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_show_profiles "Show all profiles" - -// d: Right selection key -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_set_right_idle_softkey "Right selection key" - -// d: Select -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_select "Select" - -// d: Cancel -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_cancel "Cancel" - -// d: Options menu item which switches home to online. Web widgets get updates from network. -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_online "Switch Home to online" - -// d: Options menu item which switches home to offline. Web widgets are not updated -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_offline "Switch Home to offline" - -// d: String which is shown in long tap menu of Home screen if tapped widget has settings -// l: list_single_touch_menu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_longtap_settings "Settings" - -// d: String which is shown in long tap menu of Home screen if tapped some widget which is removable -// l: list_single_touch_menu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_longtap_remove_element "Remove" - -// d: String which is shown in long tap menu of Home screen if tapped empty space in home screen -// l: list_single_touch_menu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_longtap_add "Add content" - -// d: String which is shown in long tap menu of Home screen -// l: list_single_touch_menu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_change_longtap_wallpaper "Change wallpaper" - -// d: User can download new HS widgets. String is visible in add content list query -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_download_new_widgets "Download" - -// d: Changes focused widget -// l: list_single_touch_menu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_edit_replace "Replace" - -// d: deletes current home screen page -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_page_options_delete "Delete page" - -// d: creates new home screen page -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_page_options_new "New page" - -// d: view title in editing mode -// l: title_pane_t2 -// w: -// r: TB9.2 -#define qtn_hs_title_editing_view "Editing view" - -// d: Call -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_call "Call" - -// d: Added new option menu item to Edit mode for opening the widget catalog, -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_edit_widget_catalog "Widget Catalog" - -// d: Deletes the current Home screen page and focus goes to the next available Home screen page in Edit mode -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_page_edit_options_delete "Delete page" - -// d: Done -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_done "Done" - -// d: Search -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_search "Search" - -// d: Options -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_options "Options" - -// d: Back -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_back "Back" - -// d: Select -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_select "Select" - -// d: Cancel -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_cancel "Cancel" - -// d: Call -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_call "Call" - -// d: Lock keypad -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_lock_keypad "Lock keypad" - -// d: Menu -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_apps_menu_skey "Menu" diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/loc/viewconfiguration.loc --- a/idlehomescreen/data/vga_tch/view2_200286ea/loc/viewconfiguration.loc Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,27 +0,0 @@ -/* -* Copyright (c) 2005-2006 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Localization strings for view2 plugin configuration (HSPS) -* -*/ - - - -// d: AI3 View -// l: ai_gene_pane_1_t1 -// w: -// r: TB9.2 -//#define qtn_view_configuration_name "AI3 View" - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/rom/view.iby --- a/idlehomescreen/data/vga_tch/view2_200286ea/rom/view.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: View widget HSPS-plugin IBY file. -* -*/ - - -#ifndef __AI3VIEW_200286EA_IBY__ -#define __AI3VIEW_200286EA_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools -data=ZPRIVATE\200159c0\install\view2_200286ea\hsps\00\manifest.dat \private\200159c0\install\view2_200286ea\hsps\00\manifest.dat - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __AI3VIEW_200286EA_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/rom/view_customer.iby --- a/idlehomescreen/data/vga_tch/view2_200286ea/rom/view_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: View widget HSPS-plugin language specific IBY file. -* -*/ - - -#ifndef __AI3VIEW_200286EA_CUSTOMER_IBY__ -#define __AI3VIEW_200286EA_CUSTOMER_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools, language specific -data=ZPRIVATE\200159c0\install\view2_200286ea\xuikon\00\view.o0000 \private\200159c0\install\view2_200286ea\xuikon\00\view.o0000 -//data=ZPRIVATE\200159c0\install\view2_200286ea\hsps\00\viewconfiguration.dtd \private\200159c0\install\view2_200286ea\hsps\00\viewconfiguration.dtd - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __AI3VIEW_200286EA_CUSTOMER_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/rom/view_resources.iby --- a/idlehomescreen/data/vga_tch/view2_200286ea/rom/view_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: View widget HSPS-plugin language specific IBY file. -* -*/ - - -#ifndef __AI3VIEW_200286EA_RESOURCES_IBY__ -#define __AI3VIEW_200286EA_RESOURCES_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools, language specific -data=ZPRIVATE\200159c0\install\view2_200286ea\xuikon\00\view.o0000 \private\200159c0\install\view2_200286ea\xuikon\00\view.o0000 -//data=ZPRIVATE\200159c0\install\view2_200286ea\hsps\00\viewconfiguration.dtd \private\200159c0\install\view2_200286ea\hsps\00\viewconfiguration.dtd - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __AI3VIEW_200286EA_RESOURCES_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/rom/view_variant.iby --- a/idlehomescreen/data/vga_tch/view2_200286ea/rom/view_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: View widget HSPS-plugin variant specific IBY file. -* -*/ - - -#ifndef __AI3VIEW_200286EA_VARIANT_IBY__ -#define __AI3VIEW_200286EA_VARIANT_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by variation tools, variant specific -data=ZPRIVATE\200159c0\install\view2_200286ea\hsps\00\viewconfiguration.xml \private\200159c0\install\view2_200286ea\hsps\00\viewconfiguration.xml - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __AI3VIEW_200286EA_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/xuikon/00/View.css --- a/idlehomescreen/data/vga_tch/view2_200286ea/xuikon/00/View.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -view -{ - direction: ltr; - block-progression: tb; - background-image: wallpaper; - swipe: true; - - _s60-status-pane-layout: widescreen-flat-3softkeys; -} - -box#plugins_container -{ - direction: ltr; - block-progression: tb; -} - -plugin.miniplugins -{ - height: 115px; - width: 176px; - - margin-top: 9px; - margin-left: 9px; - - _s60-longtap: true; - - nav-index: appearance; -} - -plugin.plugins -{ - height: 115px; - width: 436px; - - margin-top: 9px; - margin-left: 10px; - - _s60-longtap: true; - - nav-index: appearance; -} - -trigger#hs_popup_open_hold:edit -{ - display: none; -} - -trigger#hs_popup_open_up -{ - display: none; -} - -trigger#hs_popup_open_up:edit -{ - display: block; -} - -softkey#rsk -{ - _s60-longtap: true; - _s60-aspect-ratio: preserve; -} - -softkey#msk_ltr -{ - display: block; -} - -softkey#msk_rtl -{ - display: none; -} - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/xuikon/00/View.xml --- a/idlehomescreen/data/vga_tch/view2_200286ea/xuikon/00/View.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,289 +0,0 @@ - - - - - - - - - > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/xuikon/00/view.dat --- a/idlehomescreen/data/vga_tch/view2_200286ea/xuikon/00/view.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,13 +0,0 @@ - - - E029CF57 - 101FB657 - 11001234 - Nokia - view - 1.0 - view.xml - view.css - view.dtd - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/xuikon/00/view.dtd --- a/idlehomescreen/data/vga_tch/view2_200286ea/xuikon/00/view.dtd Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,514 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/xuikon/37/view.css --- a/idlehomescreen/data/vga_tch/view2_200286ea/xuikon/37/view.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,74 +0,0 @@ -view -{ - direction: rtl; - block-progression: tb; - background-image: wallpaper; - swipe: true; - - _s60-status-pane-layout: widescreen-flat-3softkeys; -} - -box#plugins_container -{ - direction: rtl; - block-progression: tb; -} - -plugin.miniplugins -{ - height: 115px; - width: 176px; - - margin-top: 9px; - margin-right: 9px; - - _s60-longtap: true; - - nav-index: appearance; -} - -plugin.plugins -{ - height: 115px; - width: 436px; - - margin-top: 9px; - margin-right: 10px; - - _s60-longtap: true; - - nav-index: appearance; -} - -trigger#hs_popup_open_hold:edit -{ - display: none; -} - -trigger#hs_popup_open_up -{ - display: none; -} - -trigger#hs_popup_open_up:edit -{ - display: block; -} - -softkey#rsk -{ - _s60-longtap: true; - _s60-aspect-ratio: preserve; -} - -softkey#msk_ltr -{ - display: none; -} - -softkey#msk_rtl -{ - display: block; -} - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/xuikon/50/view.css --- a/idlehomescreen/data/vga_tch/view2_200286ea/xuikon/50/view.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -view -{ - direction: rtl; - block-progression: tb; - background-image: wallpaper; - swipe: true; - - _s60-status-pane-layout: widescreen-flat-3softkeys; -} - -box#plugins_container -{ - direction: rtl; - block-progression: tb; -} - -plugin.miniplugins -{ - height: 115px; - width: 176px; - - margin-top: 9px; - margin-right: 9px; - - _s60-longtap: true; - - nav-index: appearance; -} - -plugin.plugins -{ - height: 115px; - width: 436px; - - margin-top: 9px; - margin-right: 10px; - - _s60-longtap: true; - - nav-index: appearance; -} - -trigger#hs_popup_open_hold:edit -{ - display: none; -} - -trigger#hs_popup_open_up -{ - display: none; -} - -trigger#hs_popup_open_up:edit -{ - display: block; -} - -softkey#rsk -{ - _s60-longtap: true; - _s60-aspect-ratio: preserve; -} - -softkey#msk_ltr -{ - display: none; -} - -softkey#msk_rtl -{ - display: block; -} - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/xuikon/57/view.css --- a/idlehomescreen/data/vga_tch/view2_200286ea/xuikon/57/view.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -view -{ - direction: rtl; - block-progression: tb; - background-image: wallpaper; - swipe: true; - - _s60-status-pane-layout: widescreen-flat-3softkeys; -} - -box#plugins_container -{ - direction: rtl; - block-progression: tb; -} - -plugin.miniplugins -{ - height: 115px; - width: 176px; - - margin-top: 9px; - margin-right: 9px; - - _s60-longtap: true; - - nav-index: appearance; -} - -plugin.plugins -{ - height: 115px; - width: 436px; - - margin-top: 9px; - margin-right: 10px; - - _s60-longtap: true; - - nav-index: appearance; -} - -trigger#hs_popup_open_hold:edit -{ - display: none; -} - -trigger#hs_popup_open_up -{ - display: none; -} - -trigger#hs_popup_open_up:edit -{ - display: block; -} - -softkey#rsk -{ - _s60-longtap: true; - _s60-aspect-ratio: preserve; -} - -softkey#msk_ltr -{ - display: none; -} - -softkey#msk_rtl -{ - display: block; -} - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view2_200286ea/xuikon/94/view.css --- a/idlehomescreen/data/vga_tch/view2_200286ea/xuikon/94/view.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -view -{ - direction: rtl; - block-progression: tb; - background-image: wallpaper; - swipe: true; - - _s60-status-pane-layout: widescreen-flat-3softkeys; -} - -box#plugins_container -{ - direction: rtl; - block-progression: tb; -} - -plugin.miniplugins -{ - height: 115px; - width: 176px; - - margin-top: 9px; - margin-right: 9px; - - _s60-longtap: true; - - nav-index: appearance; -} - -plugin.plugins -{ - height: 115px; - width: 436px; - - margin-top: 9px; - margin-right: 10px; - - _s60-longtap: true; - - nav-index: appearance; -} - -trigger#hs_popup_open_hold:edit -{ - display: none; -} - -trigger#hs_popup_open_up -{ - display: none; -} - -trigger#hs_popup_open_up:edit -{ - display: block; -} - -softkey#rsk -{ - _s60-longtap: true; - _s60-aspect-ratio: preserve; -} - -softkey#msk_ltr -{ - display: none; -} - -softkey#msk_rtl -{ - display: block; -} - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/conf/view200286eb.confml --- a/idlehomescreen/data/vga_tch/view3_200286eb/conf/view200286eb.confml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,491 +0,0 @@ - - - - - The Qhd touch is a supported display type of the xuikon homescreen - - - The Vga touch is a supported display type of the xuikon homescreen - - - Maximum widget amount in Homescreen 3 page. Customizable - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Path of the Wallpaper resource. Customizable. - - - Not customizable! - - - Not customizable! - - - Widgets in the Homescreen 3 - - Widget name - - - Bundle identifier for the (C)WRT widgets. None for the native widgets - - - Templeate identifier for the (C)WRT widgets. None for the native widgets - - - Locking status for the widget 1 in Homescreen 3 page - - - Customize enabler for desktop/shortcut widget - - - Customize 1st item in desktop widget - - - Type of the item: Application, bookmark, or shortcut(param specific item) - - - Uid for the application, Menu content Uid for the bookmarks and shortcuts. - - - url for the bookmark based shortcut. for example http://www.google.com - - - Params for shortcut. For example: messaging:msg - - - Customize 2nd item in desktop widget - - - Type of the item: Application, bookmark, or shortcut(param specific item) - - - Uid for the application, Menu content Uid for the bookmarks and shortcuts - - - url for the bookmark based shortcut. for example http://www.google.com - - - Params for shortcut. messaging:msg - - - Customize 3rd item in desktop widget - - - Type of the item: Application, bookmark, or shortcut(param specific item) - - - Uid for the application,Menu content Uid for the bookmarks and shortcuts. - - - url for the bookmark based shortcut. for example http://www.google.com - - - Params for shortcut. messaging:msg - - - Customize 4th item in desktop widget - - - Type of the item: Application, bookmark, or shortcut(param specific item) - - - Uid for the application, Menu content ids for the bookmarks and shortcuts - - - url for the bookmark based shortcut. for example http://www.google.com - - - Params for shortcut. messaging:msg - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - Not customizable! - - - - - - true - true - 6 - true - hs_vga_tch_view - use_empty_widget - wallpaper - path - - - 0x200286e6 - 0 - 0 - permanent - 0 - - - - - - - - - - - - - - - - - - - - - first - Shortcut1 - second - Shortcut2 - third - Shortcut3 - fourth - Shortcut4 - type - uid - view - param - - - 0x200286e7 - 0 - 0 - permanent - 0 - 0 - - - - - - - - - - - - - - - - - - - - first - Shortcut1 - second - Shortcut2 - third - Shortcut3 - fourth - Shortcut4 - type - uid - view - param - - - 0x200255b6 - 0 - 0 - permanent - 0 - 0 - - - - - - - - - - - - - - - - - - - - first - Shortcut1 - second - Shortcut2 - third - Shortcut3 - fourth - Shortcut4 - type - uid - view - param - - - 0x2001f47f - 0 - 0 - none - 0 - 0 - - - - - - - - - - - - - - - - - - - - first - Shortcut1 - second - Shortcut2 - third - Shortcut3 - fourth - Shortcut4 - type - uid - view - param - - - 0x2001f47f - 0 - 0 - none - 0 - 0 - - - - - - - - - - - - - - - - - - - - first - Shortcut1 - second - Shortcut2 - third - Shortcut3 - fourth - Shortcut4 - type - uid - view - param - - - 0x2001f47f - 0 - 0 - none - 0 - 0 - - - - - - - - - - - - - - - - - - - - first - Shortcut1 - second - Shortcut2 - third - Shortcut3 - fourth - Shortcut4 - type - uid - view - param - - - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/conf/view200286eb.gcfml --- a/idlehomescreen/data/vga_tch/view3_200286eb/conf/view200286eb.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,161 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/conf/view200286ebmanifest.confml Binary file idlehomescreen/data/vga_tch/view3_200286eb/conf/view200286ebmanifest.confml has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/conf/view200286ebmanifest.gcfml --- a/idlehomescreen/data/vga_tch/view3_200286eb/conf/view200286ebmanifest.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,63 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/conf/view200286ebxuikon.confml Binary file idlehomescreen/data/vga_tch/view3_200286eb/conf/view200286ebxuikon.confml has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/conf/view200286ebxuikon.gcfml --- a/idlehomescreen/data/vga_tch/view3_200286eb/conf/view200286ebxuikon.gcfml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - - - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/group/bld.inf --- a/idlehomescreen/data/vga_tch/view3_200286eb/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,85 +0,0 @@ -/* -* Copyright (c) 2002-2008 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: The information required for building -* -*/ - - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS -// Support for productization and Carbide.Ui customization -//******************************************************** -//../hsps/00/manifest.dat /epoc32/data/z/resource/homescreen/view3_200286eb/hsps/manifest.dat -//../hsps/00/viewconfiguration.xml /epoc32/data/z/resource/homescreen/view3_200286eb/hsps/viewconfiguration.xml -//../hsps/00/viewconfiguration.dtd /epoc32/data/z/resource/homescreen/view3_200286eb/hsps/viewconfiguration.dtd - -../xuikon/00/view.dat /epoc32/data/z/resource/homescreen/view3_200286eb/xuikon/view3_200286eb.dat -../xuikon/00/view.xml /epoc32/data/z/resource/homescreen/view3_200286eb/xuikon/view.xml -../xuikon/00/view.dtd /epoc32/data/z/resource/homescreen/view3_200286eb/xuikon/view.dtd -../xuikon/00/view.css /epoc32/data/z/resource/homescreen/view3_200286eb/xuikon/view.css - -// Arabic languages -//***************** -../xuikon/37/view.css /epoc32/data/z/resource/homescreen/view3_200286eb/xuikon/37/view.css -../xuikon/50/view.css /epoc32/data/z/resource/homescreen/view3_200286eb/xuikon/50/view.css -../xuikon/57/view.css /epoc32/data/z/resource/homescreen/view3_200286eb/xuikon/57/view.css -../xuikon/94/view.css /epoc32/data/z/resource/homescreen/view3_200286eb/xuikon/94/view.css - - -//Confml and cfgml files for the customization -//*********************************** -../conf/view200286eb.confml APP_LAYER_CONFML(view200286eb.confml) -../conf/view200286eb.gcfml APP_LAYER_GCFML(view200286eb.gcfml) -../conf/view200286ebmanifest.confml APP_LAYER_CONFML(view200286ebmanifest.confml) -../conf/view200286ebmanifest.gcfml APP_LAYER_GCFML(view200286ebmanifest.gcfml) -../conf/view200286ebxuikon.confml APP_LAYER_CONFML(view200286ebxuikon.confml) -../conf/view200286ebxuikon.gcfml APP_LAYER_GCFML(view200286ebxuikon.gcfml) -// Support for S60 localization -//***************************** -//#ifndef __VIEWCONFIGURATION_LOC__ -//#define __VIEWCONFIGURATION_LOC__ -//../loc/viewconfiguration.loc APP_LAYER_LOC_EXPORT_PATH(viewconfiguration.loc) -//#endif // __VIEWCONFIGURATION_LOC__ - -#ifndef __VIEW_LOC__ -#define __VIEW_LOC__ -../loc/view.loc APP_LAYER_LOC_EXPORT_PATH(view.loc) -#endif // __VIEW_LOC__ - -// Support for S60 builds -//*********************** -../rom/view_resources.iby LANGUAGE_APP_LAYER_IBY_EXPORT_PATH(view3_200286eb_resources.iby) -../rom/view_customer.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(view3_200286eb_customer.iby) -//../rom/view_variant.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(view3_200286eb_variant.iby) -//../rom/view.iby CORE_APP_LAYER_IBY_EXPORT_PATH(view3_200286eb.iby) - - -// Dtd-localization -//***************** -PRJ_EXTENSIONS -START EXTENSION tools/dtd -OPTION SWITCH_LOC_FILE_NAME view3_200286eb -OPTION DTD_TYPE widget -END - - -PRJ_MMPFILES - -PRJ_TESTMMPFILES - -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/hsps/00/manifest.dat --- a/idlehomescreen/data/vga_tch/view3_200286eb/hsps/00/manifest.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,33 +0,0 @@ - - - - vga_tch - - view - - - 0x2001f48a - - - 0x101fb657 - - - 0x200286eb - - - view3 - ai3_nokia - 1.0 - - - viewconfiguration.xml - - - - - - - view.o0000 - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/hsps/00/viewconfiguration.dtd --- a/idlehomescreen/data/vga_tch/view3_200286eb/hsps/00/viewconfiguration.dtd Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,27 +0,0 @@ - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/hsps/00/viewconfiguration.xml --- a/idlehomescreen/data/vga_tch/view3_200286eb/hsps/00/viewconfiguration.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,22 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/loc/view.loc --- a/idlehomescreen/data/vga_tch/view3_200286eb/loc/view.loc Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,322 +0,0 @@ -/* -* Copyright (c) 2005-2006 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Localization strings for project Active Idle 3 -* -*/ - -// d: Help -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_options_help "Help" - -// d: Open -// l: control_pane_t1/opt7 -// w: -// r: TB9.2 -#define qtn_msk_open "Open" - -// d: Done -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_done "Done" - -// d: Open -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_options_open "Open" - -// d: Back -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_back "Back" - -// d: Empty string -// l: control_pane_t1/opt7 -// w: -// r: TB9.2 -#define shortcut_emptycaption " " - -// d: Add page -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_add_page "Add page" - -// d: Select -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_options_select_widget "Select" - -// d: Add content -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_add_widget "Add content" - -// d: Access the widget catalog -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_widget_catalog "Widget catalog" - -// d: Search -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_search "Search" - -// d: Options -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_options "Options" - -// d: Refresh -// l: list_single_pane_t1_cp2/opt3 -// w: -// r: TB9.2 -#define qtn_hs_refresh_widget "Refresh" - -// d: Focused widget -// l: list_single_popup_submenu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_refresh_one_widget "One" - -// d: All widgets -// l: list_single_popup_submenu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_refresh_all_widgets "All" - -// d: Remove content -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_remove_widget "Remove content" - -// d: Hide the content -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_hide_widgets "Hide the content" - -// d: Edit contents -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_edit_content "Edit content" - -// d: Change Wallpaper -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_change_wallpaper "Change Wallpaper" - -// d: Change Shortcut Settings -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_change_shortcut_settings "Change Shortcut Settings" - -// d: Widget settings -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_widget_settings "Widget settings" - -// d: Show widgets -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_show_widgets "Show the content" - -// d: Change Home screen page -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_change_page "Change Home screen page" - -// d: Change -// l: control_pane_t1/opt7 -// w: -// r: TB9.2 -#define qtn_msk_change "Change" - -// d: Show all profiles in Profiles widget -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_show_profiles "Show all profiles" - -// d: Right selection key -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_set_right_idle_softkey "Right selection key" - -// d: Select -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_select "Select" - -// d: Cancel -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_cancel "Cancel" - -// d: Options menu item which switches home to online. Web widgets get updates from network. -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_online "Switch Home to online" - -// d: Options menu item which switches home to offline. Web widgets are not updated -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_offline "Switch Home to offline" - -// d: String which is shown in long tap menu of Home screen if tapped widget has settings -// l: list_single_touch_menu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_longtap_settings "Settings" - -// d: String which is shown in long tap menu of Home screen if tapped some widget which is removable -// l: list_single_touch_menu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_longtap_remove_element "Remove" - -// d: String which is shown in long tap menu of Home screen if tapped empty space in home screen -// l: list_single_touch_menu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_longtap_add "Add content" - -// d: String which is shown in long tap menu of Home screen -// l: list_single_touch_menu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_change_longtap_wallpaper "Change wallpaper" - -// d: User can download new HS widgets. String is visible in add content list query -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_download_new_widgets "Download" - -// d: Changes focused widget -// l: list_single_touch_menu_pane_t1 -// w: -// r: TB9.2 -#define qtn_hs_edit_replace "Replace" - -// d: deletes current home screen page -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_page_options_delete "Delete page" - -// d: creates new home screen page -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_page_options_new "New page" - -// d: view title in editing mode -// l: title_pane_t2 -// w: -// r: TB9.2 -#define qtn_hs_title_editing_view "Editing view" - -// d: Call -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define text_softkey_call "Call" - -// d: Added new option menu item to Edit mode for opening the widget catalog, -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_edit_widget_catalog "Widget Catalog" - -// d: Deletes the current Home screen page and focus goes to the next available Home screen page in Edit mode -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_page_edit_options_delete "Delete page" - -// d: Done -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_done "Done" - -// d: Search -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_search "Search" - -// d: Options -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_options "Options" - -// d: Back -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_back "Back" - -// d: Select -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_select "Select" - -// d: Cancel -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_cancel "Cancel" - -// d: Call -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_text_softkey_call "Call" - -// d: Lock keypad -// l: list_single_pane_t1_cp2 -// w: -// r: TB9.2 -#define qtn_hs_lock_keypad "Lock keypad" - -// d: Menu -// l: nhd_control_pane_t2/opt7 -// w: -// r: TB9.2 -#define qtn_hs_apps_menu_skey "Menu" diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/loc/viewconfiguration.loc --- a/idlehomescreen/data/vga_tch/view3_200286eb/loc/viewconfiguration.loc Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,27 +0,0 @@ -/* -* Copyright (c) 2005-2006 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Localization strings for view3 plugin configuration (HSPS) -* -*/ - - - -// d: AI3 View -// l: ai_gene_pane_1_t1 -// w: -// r: TB9.2 -//#define qtn_view_configuration_name "AI3 View" - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/rom/view.iby --- a/idlehomescreen/data/vga_tch/view3_200286eb/rom/view.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: View widget HSPS-plugin IBY file. -* -*/ - - -#ifndef __AI3VIEW_200286EB_IBY__ -#define __AI3VIEW_200286EB_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools -data=ZPRIVATE\200159c0\install\view3_200286eb\hsps\00\manifest.dat \private\200159c0\install\view3_200286eb\hsps\00\manifest.dat - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __AI3VIEW_200286EB_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/rom/view_customer.iby --- a/idlehomescreen/data/vga_tch/view3_200286eb/rom/view_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: View widget HSPS-plugin language specific IBY file. -* -*/ - - -#ifndef __AI3VIEW_200286EB_CUSTOMER_IBY__ -#define __AI3VIEW_200286EB_CUSTOMER_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools, language specific -data=ZPRIVATE\200159c0\install\view3_200286eb\xuikon\00\view.o0000 \private\200159c0\install\view3_200286eb\xuikon\00\view.o0000 -//data=ZPRIVATE\200159c0\install\view3_200286eb\hsps\00\viewconfiguration.dtd \private\200159c0\install\view3_200286eb\hsps\00\viewconfiguration.dtd - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __AI3VIEW_200286EB_CUSTOMER_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/rom/view_resources.iby --- a/idlehomescreen/data/vga_tch/view3_200286eb/rom/view_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: View widget HSPS-plugin language specific IBY file. -* -*/ - - -#ifndef __AI3VIEW_200286EB_RESOURCES_IBY__ -#define __AI3VIEW_200286EB_RESOURCES_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by DTD-localization tools, language specific -data=ZPRIVATE\200159c0\install\view3_200286eb\xuikon\00\view.o0000 \private\200159c0\install\view3_200286eb\xuikon\00\view.o0000 -//data=ZPRIVATE\200159c0\install\view3_200286eb\hsps\00\viewconfiguration.dtd \private\200159c0\install\view3_200286eb\hsps\00\viewconfiguration.dtd - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __AI3VIEW_200286EB_RESOURCES_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/rom/view_variant.iby --- a/idlehomescreen/data/vga_tch/view3_200286eb/rom/view_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005-2007 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: View widget HSPS-plugin variant specific IBY file. -* -*/ - - -#ifndef __AI3VIEW_200286EB_VARIANT_IBY__ -#define __AI3VIEW_200286EB_VARIANT_IBY__ - -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) - -// Enabled by variation tools, variant specific -data=ZPRIVATE\200159c0\install\view3_200286eb\hsps\00\viewconfiguration.xml \private\200159c0\install\view3_200286eb\hsps\00\viewconfiguration.xml - -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 - -#endif // __AI3VIEW_200286EB_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/xuikon/00/View.css --- a/idlehomescreen/data/vga_tch/view3_200286eb/xuikon/00/View.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -view -{ - direction: ltr; - block-progression: tb; - background-image: wallpaper; - swipe: true; - - _s60-status-pane-layout: widescreen-flat-3softkeys; -} - -box#plugins_container -{ - direction: ltr; - block-progression: tb; -} - -plugin.miniplugins -{ - height: 115px; - width: 176px; - - margin-top: 9px; - margin-left: 9px; - - _s60-longtap: true; - - nav-index: appearance; -} - -plugin.plugins -{ - height: 115px; - width: 436px; - - margin-top: 9px; - margin-left: 10px; - - _s60-longtap: true; - - nav-index: appearance; -} - -trigger#hs_popup_open_hold:edit -{ - display: none; -} - -trigger#hs_popup_open_up -{ - display: none; -} - -trigger#hs_popup_open_up:edit -{ - display: block; -} - -softkey#rsk -{ - _s60-longtap: true; - _s60-aspect-ratio: preserve; -} - -softkey#msk_ltr -{ - display: block; -} - -softkey#msk_rtl -{ - display: none; -} - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/xuikon/00/View.xml --- a/idlehomescreen/data/vga_tch/view3_200286eb/xuikon/00/View.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,289 +0,0 @@ - - - - - - - - - > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/xuikon/00/view.dat --- a/idlehomescreen/data/vga_tch/view3_200286eb/xuikon/00/view.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,13 +0,0 @@ - - - E029CF57 - 101FB657 - 11001234 - Nokia - view - 1.0 - view.xml - view.css - view.dtd - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/xuikon/00/view.dtd --- a/idlehomescreen/data/vga_tch/view3_200286eb/xuikon/00/view.dtd Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,514 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/xuikon/37/view.css --- a/idlehomescreen/data/vga_tch/view3_200286eb/xuikon/37/view.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -view -{ - direction: rtl; - block-progression: tb; - background-image: wallpaper; - swipe: true; - - _s60-status-pane-layout: widescreen-flat-3softkeys; -} - -box#plugins_container -{ - direction: rtl; - block-progression: tb; -} - -plugin.miniplugins -{ - height: 115px; - width: 176px; - - margin-top: 9px; - margin-right: 9px; - - _s60-longtap: true; - - nav-index: appearance; -} - -plugin.plugins -{ - height: 115px; - width: 436px; - - margin-top: 9px; - margin-right: 10px; - - _s60-longtap: true; - - nav-index: appearance; -} - -trigger#hs_popup_open_hold:edit -{ - display: none; -} - -trigger#hs_popup_open_up -{ - display: none; -} - -trigger#hs_popup_open_up:edit -{ - display: block; -} - -softkey#rsk -{ - _s60-longtap: true; - _s60-aspect-ratio: preserve; -} - -softkey#msk_ltr -{ - display: none; -} - -softkey#msk_rtl -{ - display: block; -} - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/xuikon/50/view.css --- a/idlehomescreen/data/vga_tch/view3_200286eb/xuikon/50/view.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -view -{ - direction: rtl; - block-progression: tb; - background-image: wallpaper; - swipe: true; - - _s60-status-pane-layout: widescreen-flat-3softkeys; -} - -box#plugins_container -{ - direction: rtl; - block-progression: tb; -} - -plugin.miniplugins -{ - height: 115px; - width: 176px; - - margin-top: 9px; - margin-right: 9px; - - _s60-longtap: true; - - nav-index: appearance; -} - -plugin.plugins -{ - height: 115px; - width: 436px; - - margin-top: 9px; - margin-right: 10px; - - _s60-longtap: true; - - nav-index: appearance; -} - -trigger#hs_popup_open_hold:edit -{ - display: none; -} - -trigger#hs_popup_open_up -{ - display: none; -} - -trigger#hs_popup_open_up:edit -{ - display: block; -} - -softkey#rsk -{ - _s60-longtap: true; - _s60-aspect-ratio: preserve; -} - -softkey#msk_ltr -{ - display: none; -} - -softkey#msk_rtl -{ - display: block; -} - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/xuikon/57/view.css --- a/idlehomescreen/data/vga_tch/view3_200286eb/xuikon/57/view.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -view -{ - direction: rtl; - block-progression: tb; - background-image: wallpaper; - swipe: true; - - _s60-status-pane-layout: widescreen-flat-3softkeys; -} - -box#plugins_container -{ - direction: rtl; - block-progression: tb; -} - -plugin.miniplugins -{ - height: 115px; - width: 176px; - - margin-top: 9px; - margin-right: 9px; - - _s60-longtap: true; - - nav-index: appearance; -} - -plugin.plugins -{ - height: 115px; - width: 436px; - - margin-top: 9px; - margin-right: 10px; - - _s60-longtap: true; - - nav-index: appearance; -} - -trigger#hs_popup_open_hold:edit -{ - display: none; -} - -trigger#hs_popup_open_up -{ - display: none; -} - -trigger#hs_popup_open_up:edit -{ - display: block; -} - -softkey#rsk -{ - _s60-longtap: true; - _s60-aspect-ratio: preserve; -} - -softkey#msk_ltr -{ - display: none; -} - -softkey#msk_rtl -{ - display: block; -} - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/view3_200286eb/xuikon/94/view.css --- a/idlehomescreen/data/vga_tch/view3_200286eb/xuikon/94/view.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -view -{ - direction: rtl; - block-progression: tb; - background-image: wallpaper; - swipe: true; - - _s60-status-pane-layout: widescreen-flat-3softkeys; -} - -box#plugins_container -{ - direction: rtl; - block-progression: tb; -} - -plugin.miniplugins -{ - height: 115px; - width: 176px; - - margin-top: 9px; - margin-right: 9px; - - _s60-longtap: true; - - nav-index: appearance; -} - -plugin.plugins -{ - height: 115px; - width: 436px; - - margin-top: 9px; - margin-right: 10px; - - _s60-longtap: true; - - nav-index: appearance; -} - -trigger#hs_popup_open_hold:edit -{ - display: none; -} - -trigger#hs_popup_open_up -{ - display: none; -} - -trigger#hs_popup_open_up:edit -{ - display: block; -} - -softkey#rsk -{ - _s60-longtap: true; - _s60-aspect-ratio: preserve; -} - -softkey#msk_ltr -{ - display: none; -} - -softkey#msk_rtl -{ - display: block; -} - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/wideimage_10009dff/group/bld.inf --- a/idlehomescreen/data/vga_tch/wideimage_10009dff/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/wideimage_10009dff/group/bld.inf Wed Oct 13 14:18:30 2010 +0300 @@ -11,11 +11,11 @@ * * Contributors: * -* Description: -* The information required for building +* Description: The information required for building * */ + #include PRJ_PLATFORMS @@ -24,26 +24,28 @@ PRJ_EXPORTS // Support for productization and Carbide.Ui customization //******************************************************** -../hsps/00/manifest.dat /epoc32/data/Z/resource/homescreen/wideimage_10009dff/hsps/manifest.dat -../hsps/00/widgetconfiguration.xml /epoc32/data/Z/resource/homescreen/wideimage_10009dff/hsps/widgetconfiguration.xml -../xuikon/00/wideimage.dat /epoc32/data/Z/resource/homescreen/wideimage_10009dff/xuikon/wideimage_10009dff.dat -../xuikon/00/wideimage.css /epoc32/data/Z/resource/homescreen/wideimage_10009dff/xuikon/wideimage.css -../xuikon/00/wideimage.xml /epoc32/data/Z/resource/homescreen/wideimage_10009dff/xuikon/wideimage.xml +../hsps/00/manifest.dat /epoc32/data/z/resource/homescreen/wideimage_10009dff/hsps/manifest.dat +../hsps/00/widgetconfiguration.xml /epoc32/data/z/resource/homescreen/wideimage_10009dff/hsps/widgetconfiguration.xml -// Arabic languages -//***************** -//../xuikon/37/wideimage.css /epoc32/data/Z/resource/homescreen/wideimage_10009dff/xuikon/37/wideimage.css -//../xuikon/50/wideimage.css /epoc32/data/Z/resource/homescreen/wideimage_10009dff/xuikon/50/wideimage.css -//../xuikon/57/wideimage.css /epoc32/data/Z/resource/homescreen/wideimage_10009dff/xuikon/57/wideimage.css -//../xuikon/94/wideimage.css /epoc32/data/Z/resource/homescreen/wideimage_10009dff/xuikon/94/wideimage.css +../xuikon/00/wideimage.dat /epoc32/data/z/resource/homescreen/wideimage_10009dff/xuikon/wideimage_10009dff.dat +../xuikon/00/wideimage.css /epoc32/data/z/resource/homescreen/wideimage_10009dff/xuikon/wideimage.css +../xuikon/00/wideimage.xml /epoc32/data/z/resource/homescreen/wideimage_10009dff/xuikon/wideimage.xml +../xuikon/00/wideimage.dtd /epoc32/data/z/resource/homescreen/wideimage_10009dff/xuikon/wideimage.dtd // Support for S60 builds //*********************** ../rom/wideimage_resources.iby LANGUAGE_APP_LAYER_IBY_EXPORT_PATH(wideimage_10009dff_resources.iby) ../rom/wideimage_customer.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(wideimage_10009dff_customer.iby) -../rom/wideimage_variant.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(wideimage_10009dff_variant.iby) +../rom/wideimage_variant.iby CUSTOMER_VARIANT_APP_LAYER_IBY_EXPORT_PATH(wideimage_10009dff_variant.iby) ../rom/wideimage.iby CORE_APP_LAYER_IBY_EXPORT_PATH(wideimage_10009dff.iby) +// Support for S60 localization +//***************************** +#ifndef __WIDEIMAGE_LOC__ +#define __WIDEIMAGE_LOC__ +../loc/wideimage.loc APP_LAYER_LOC_EXPORT_PATH(wideimage.loc) +#endif // __WIDEIMAGE_LOC__ + // Dtd-localization //***************** PRJ_EXTENSIONS @@ -59,3 +61,7 @@ PRJ_TESTMMPFILES // End of File + + + + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/wideimage_10009dff/hsps/00/widgetconfiguration.xml --- a/idlehomescreen/data/vga_tch/wideimage_10009dff/hsps/00/widgetconfiguration.xml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/wideimage_10009dff/hsps/00/widgetconfiguration.xml Wed Oct 13 14:18:30 2010 +0300 @@ -1,9 +1,24 @@ - - - + + + + + + + + + + + + + + + + + + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/wideimage_10009dff/loc/wideimage.loc --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/idlehomescreen/data/vga_tch/wideimage_10009dff/loc/wideimage.loc Wed Oct 13 14:18:30 2010 +0300 @@ -0,0 +1,22 @@ +/* +* Copyright (c) 2005-2006 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" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: Localization strings for WideImage widget (Xuikon) +* +*/ + +// d: Loading content +// l: ai_gene_pane_1_t1/opt4 +// w: +// r: TB9.2 +#define qtn_ai_loading_content "Loading content..." \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/wideimage_10009dff/rom/wideimage.iby --- a/idlehomescreen/data/vga_tch/wideimage_10009dff/rom/wideimage.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/wideimage_10009dff/rom/wideimage.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,11 +19,11 @@ #ifndef __WIDEIMAGE_10009DFF_IBY__ #define __WIDEIMAGE_10009DFF_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools data=ZPRIVATE\200159c0\install\wideimage_10009dff\hsps\00\manifest.dat \private\200159c0\install\wideimage_10009dff\hsps\00\manifest.dat -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __WIDEIMAGE_10009DFF_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/wideimage_10009dff/rom/wideimage_customer.iby --- a/idlehomescreen/data/vga_tch/wideimage_10009dff/rom/wideimage_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/wideimage_10009dff/rom/wideimage_customer.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,11 +19,11 @@ #ifndef __WIDEIMAGE_10009DFF_CUSTOMER_IBY__ #define __WIDEIMAGE_10009DFF_CUSTOMER_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools, language specific data=ZPRIVATE\200159c0\install\wideimage_10009dff\xuikon\00\wideimage.o0000 \private\200159c0\install\wideimage_10009dff\xuikon\00\wideimage.o0000 -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __WIDEIMAGE_10009DFF_CUSTOMER_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/wideimage_10009dff/rom/wideimage_resources.iby --- a/idlehomescreen/data/vga_tch/wideimage_10009dff/rom/wideimage_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/wideimage_10009dff/rom/wideimage_resources.iby Wed Oct 13 14:18:30 2010 +0300 @@ -18,11 +18,11 @@ #ifndef __WIDEIMAGE_10009DFF_RESOURCES_IBY__ #define __WIDEIMAGE_10009DFF_RESOURCES_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by DTD-localization tools, language specific -//data=ZPRIVATE\200159c0\install\wideimage_10009dff\xuikon\00\wideimage.o0000 \private\200159c0\install\wideimage_10009dff\xuikon\00\wideimage.o0000 +data=ZPRIVATE\200159c0\install\wideimage_10009dff\xuikon\00\wideimage.o0000 \private\200159c0\install\wideimage_10009dff\xuikon\00\wideimage.o0000 -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __WIDEIMAGE_10009DFF_RESOURCES_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/wideimage_10009dff/rom/wideimage_variant.iby --- a/idlehomescreen/data/vga_tch/wideimage_10009dff/rom/wideimage_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/wideimage_10009dff/rom/wideimage_variant.iby Wed Oct 13 14:18:30 2010 +0300 @@ -19,11 +19,11 @@ #ifndef __WIDEIMAGE_10009DFF_VARIANT_IBY__ #define __WIDEIMAGE_10009DFF_VARIANT_IBY__ -#if defined(FF_LAYOUT_480_640_TOUCH_VGA4) || defined(FF_LAYOUT_640_480_TOUCH_VGA4) +#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) // Enabled by variation tools, variant specific data=ZPRIVATE\200159c0\install\wideimage_10009dff\hsps\00\widgetconfiguration.xml \private\200159c0\install\wideimage_10009dff\hsps\00\widgetconfiguration.xml -#endif // FF_LAYOUT_480_640_TOUCH_VGA4 || FF_LAYOUT_640_480_TOUCH_VGA4 +#endif // (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) #endif // __WIDEIMAGE_10009DFF_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/wideimage_10009dff/xuikon/00/wideimage.css --- a/idlehomescreen/data/vga_tch/wideimage_10009dff/xuikon/00/wideimage.css Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/wideimage_10009dff/xuikon/00/wideimage.css Wed Oct 13 14:18:30 2010 +0300 @@ -1,53 +1,45 @@ -widget#wideimage_template +widget{ + width:auto; + height:60px; + } + +box#image_container:focus { + background-image: "SKIN(268458534 24576)"; + background-color: "SKIN(268458534 5120 9)"; +} + +box#image_container:hold { - nav-index: appearance; - block-progression:rl; - direction: ltr; + background-color: "SKIN(268458534 5120 9)"; } box#image_container { - /* Will be updated by content policy */ - display: none; -} -box#default_container -{ - /* Will be updated by content policy */ - display: block; -} - -image#w_default_image -{ - padding-top:9px; - padding-bottom:9px; - padding-left:9px; - padding-right:9px; - height: 105px; - width: 105px; + padding-top : 2px; + padding-bottom: 2px; + padding-left : 10px; + padding-right : 10px; + direction: ltr; + nav-index:appearance; } -text#w_default_text +image#wide_image { - padding-left:9px; - padding-right:9px; - height : 10u; - font-line-space: 15; - direction: ltr; - text-align:left; - text-overflow-mode: wrap; - font-family: EAknLogicalFontSecondaryFont; - font-size: 4u; - color: "SKIN(268458534 13056 74)"; + display: none; + width:auto; + height:auto; + /*_s60-aspect-ratio:preserve;*/ } -animation#loading +text#wide_text { - position: absolute; - top: 9px; - left: 401px; - right:9px; - width:30px; - height:30px; - /* Will be updated by dataplugin */ - display: none; + display: block; + width:auto; + height:auto; + padding-left: 5px; + font-family: EAknLogicalFontSecondaryFont; + font-size:18px; + color:white; } + + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/wideimage_10009dff/xuikon/00/wideimage.dat --- a/idlehomescreen/data/vga_tch/wideimage_10009dff/xuikon/00/wideimage.dat Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/wideimage_10009dff/xuikon/00/wideimage.dat Wed Oct 13 14:18:30 2010 +0300 @@ -8,4 +8,5 @@ 1.0 wideimage.xml wideimage.css + wideimage.dtd \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/wideimage_10009dff/xuikon/00/wideimage.dtd --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/idlehomescreen/data/vga_tch/wideimage_10009dff/xuikon/00/wideimage.dtd Wed Oct 13 14:18:30 2010 +0300 @@ -0,0 +1,36 @@ + + + + + + + + + + + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/data/vga_tch/wideimage_10009dff/xuikon/00/wideimage.xml --- a/idlehomescreen/data/vga_tch/wideimage_10009dff/xuikon/00/wideimage.xml Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/data/vga_tch/wideimage_10009dff/xuikon/00/wideimage.xml Wed Oct 13 14:18:30 2010 +0300 @@ -1,62 +1,43 @@ + - - - - + + - + + + - - - + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + &qtn_ai_loading_content; + diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/group/bld.inf --- a/idlehomescreen/examples/carouselwidgetexample/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,28 +0,0 @@ -/* - * Copyright (c) 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" - * which accompanies this distribution, and is available - * at the URL "http://www.eclipse.org/legal/epl-v10.html". - * - * Initial Contributors: - * Nokia Corporation - initial contribution. - * - * Contributors: - * - * Description: Carousel widget for Symbian Homescreen - * - */ - - -#include - -PRJ_PLATFORMS -ARMV5 WINSCW - -#include "../widget/group/bld.inf" -#include "../renderer/group/bld.inf" -#include "../publisher/group/bld.inf" - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/publisher/data/carouselplugin.rss --- a/idlehomescreen/examples/carouselwidgetexample/publisher/data/carouselplugin.rss Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,63 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Registry info - * -*/ - - -// INCLUDES -#include -#include -#include "carouselpluginuids.hrh" - - -// ----------------------------------------------------------------------------- -// -// registry_info -// Registry information required for identifying the ECOM component -// -// ----------------------------------------------------------------------------- -// - -RESOURCE REGISTRY_INFO registry_info -{ - resource_format_version = RESOURCE_FORMAT_VERSION_2; - - dll_uid = AI_UID_ECOM_DLL_CONTENTPUBLISHER_CAROUSELPLUGIN; - - // Declare array of interface info - interfaces = - { - INTERFACE_INFO - { - // UID of interface that is implemented - interface_uid = HS_UID_ECOM_INTERFACE_CONTENTPUBLISHER; - - implementations = - { - IMPLEMENTATION_INFO - { - implementation_uid = AI_UID_ECOM_IMPLEMENTATION_CONTENTPUBLISHER_CAROUSELPLUGIN; - version_no = 1; - display_name = "carpub"; - default_data = ""; - opaque_data = ""; - } - }; - } - }; -} - - -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/publisher/data/carouselpluginres.rss --- a/idlehomescreen/examples/carouselwidgetexample/publisher/data/carouselpluginres.rss Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,90 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Resource definitions for carousel plug-in settings -* -*/ - - -#include -#include -#include -#include -#include - -#include - - -NAME MCPL - -RESOURCE RSS_SIGNATURE { } - -RESOURCE TBUF { buf="CCPL"; } - -//---------------------------------------------------- -// EIK_APP_INFO -// Contains application information. -//---------------------------------------------------- -// -RESOURCE EIK_APP_INFO -{ -} - -//---------------------------------------------------- -// R_MCS_DISABLE_OPEN_ITEM -// Dialog text: Item cannot be run because of backup -// state -//---------------------------------------------------- -// -RESOURCE TBUF r_mcs_disable_open_item -{ - buf = qtn_mcs_disable_open_item; -} - -//---------------------------------------------------- -// R_MCS_DISABLE_OPEN_ITEM_MISSING -// Dialog text: Item cannot be opened because of it is -// missing -//---------------------------------------------------- -// -RESOURCE TBUF r_mcs_disable_open_item_missing -{ - buf = qtn_mcs_disable_open_item_missing; -} - - -//---------------------------------------------------- -// R_MCS_DISABLE_OPEN_ITEM_DLG -// Contains application information. -//---------------------------------------------------- -// -RESOURCE DIALOG r_mcs_disable_open_item_dlg -{ - flags = EAknWarningNoteFlags | EEikDialogFlagWait; - buttons = R_AVKON_SOFTKEYS_OK_EMPTY; - items = - { - DLG_LINE - { - type = EAknCtNote; - id = EGeneralNote; - control = AVKON_NOTE - { - layout = EGeneralLayout; - animation = R_QGN_NOTE_INFO_ANIM; - }; - } - }; -} - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/publisher/data/carouselpluginuids.hrh --- a/idlehomescreen/examples/carouselwidgetexample/publisher/data/carouselpluginuids.hrh Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,37 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: UIDs for the Active Idle subsystem components. -* -*/ - - -#ifndef CAROUSELPLUGINUIDS_HRH -#define CAROUSELPLUGINUIDS_HRH - -/** - * Ecom dll uid for MCS plug-in. - */ -#define AI_UID_ECOM_DLL_CONTENTPUBLISHER_CAROUSELPLUGIN 0xE001CB57 - -/** - * Ecom implementation uid for MCS plug-in. - */ -#define AI_UID_ECOM_IMPLEMENTATION_CONTENTPUBLISHER_CAROUSELPLUGIN 0xE001CB58 - -/** - * Ecom implementation uid for MCS settings plug-in. - */ -#define AI_UID_ECOM_IMPLEMENTATION_SETTINGS_MCSPLUGIN 0x20022FDD - -#endif //CAROUSELPLUGINUIDS_HRH diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/publisher/group/bld.inf --- a/idlehomescreen/examples/carouselwidgetexample/publisher/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,51 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: The build information file of carousel Plugin -* -*/ - - -#include - - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS -../loc/carouselplugin.loc MW_LAYER_LOC_EXPORT_PATH(carouselplugin.loc) - - -../rom/carouselplugin_resources.iby LANGUAGE_MW_LAYER_IBY_EXPORT_PATH(carouselplugin_resources.iby) -../rom/carouselplugin.iby CORE_MW_LAYER_IBY_EXPORT_PATH(carouselplugin.iby) - - - - -PRJ_EXTENSIONS - -START EXTENSION s60/mifconv -OPTION TARGETFILE carouselplugin.mif -OPTION HEADERFILE carouselplugin.mbg -OPTION SOURCES -c8,8 qgn_prop_ai_shortcut -c8,8 qgn_menu_url \ - -c8,8 qgn_menu_mce_sel_mes -c8,8 qgn_menu_mce_syncmail \ - -c8,8 qgn_menu_am -c8,8 qgn_prop_cp_conn_shortcut \ - -c8,8 qgn_prop_psln_ai_sub -c8,8 qgn_mcsplugin_log_out -END - - -PRJ_MMPFILES -carouselplugin.mmp - - -// End of File. diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/publisher/group/carouselplugin.mmp --- a/idlehomescreen/examples/carouselwidgetexample/publisher/group/carouselplugin.mmp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,83 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Project definition file for project ProfilePlugin -* -*/ - -#include -#include - -#include "../data/carouselpluginuids.hrh" - -TARGET carouselplugin.dll -TARGETTYPE PLUGIN -UID 0x10009D8D AI_UID_ECOM_DLL_CONTENTPUBLISHER_CAROUSELPLUGIN - -CAPABILITY CAP_ECOM_PLUGIN -VENDORID VID_DEFAULT - -SOURCEPATH ../src -SOURCE carouselplugin.cpp -SOURCE carouselpluginengine.cpp -SOURCE carouselplugindata.cpp -SOURCE carouselpluginwatcher.cpp - -USERINCLUDE ../inc -USERINCLUDE ../loc -USERINCLUDE ../data - -APP_LAYER_SYSTEMINCLUDE - -SOURCEPATH ../data -START RESOURCE carouselplugin.rss -HEADER -TARGETPATH ECOM_RESOURCE_DIR -END - -START RESOURCE carouselpluginres.rss -HEADER -TARGET carouselpluginres.rsc -TARGETPATH RESOURCE_FILES_DIR -LANGUAGE_IDS -END -LIBRARY euser.lib -LIBRARY mcsmenu.lib -LIBRARY mcsextendedmenu.lib -LIBRARY egul.lib -LIBRARY cone.lib -LIBRARY ecom.lib -LIBRARY aiutils.lib -LIBRARY aknskins.lib -LIBRARY aknicon.lib -LIBRARY mcsmenuutils.lib -LIBRARY hspluginsettings.lib -LIBRARY msgs.lib -LIBRARY apgrfx.lib -LIBRARY apparc.lib - - -LIBRARY bafl.lib -LIBRARY avkon.lib -LIBRARY eikcoctl.lib -LIBRARY eikcore.lib -LIBRARY efsrv.lib -LIBRARY fbscli.lib -LIBRARY gslauncher.lib -LIBRARY eikdlg.lib -LIBRARY commonengine.lib -LIBRARY favouritesengine.lib -LIBRARY viewcli.lib -LIBRARY gfxtrans.lib - -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/publisher/inc/carouselplugin.h --- a/idlehomescreen/examples/carouselwidgetexample/publisher/inc/carouselplugin.h Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,158 +0,0 @@ -/* -* Copyright (c) 2009-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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Plug-in main class -* -*/ - - -#ifndef CMCSPLUGIN_H -#define CMCSPLUGIN_H - -// System includes - -// User includes -#include -#include - -// Forward declarations -class MAiContentObserver; -class MAiContentItemIterator; -class CCarouselPluginEngine; -class CCarouselData; - - -/** - * @ingroup group_mcsplugin - * - * MCS Plug-in main class - * - * @since S60 5.2 - */ -NONSHARABLE_CLASS( CCarouselPlugin ) : public CHsContentPublisher - { -public: - // constructor and destructor - - static CCarouselPlugin* NewL(); - - ~CCarouselPlugin(); - -private: - // constructors - - /** - * C++ default constructor - */ - CCarouselPlugin(); - - /** - * 2nd phase constructor - */ - void ConstructL(); - -public: - // from CHsContentPublisher - - /** - * @see CHsContentPublisher - */ - void Start( TStartReason aReason ); - - /** - * @see CHsContentPublisher - */ - void Stop( TStopReason aReason ); - - /** - * @see CHsContentPublisher - */ - void Resume( TResumeReason aReason ); - - /** - * @see CHsContentPublisher - */ - void Suspend( TSuspendReason aReason ); - - /** - * @see CHsContentPublisher - */ - void SubscribeL( MAiContentObserver& aObserver ); - - /** - * @see CHsContentPublisher - */ - void ConfigureL( RAiSettingsItemArray& aSettings ); - - /** - * @see CHsContentPublisher - */ - TAny* GetProperty( TProperty aProperty ); - - /** - * @see CHsContentPublisher - */ - void HandleEvent( const TDesC& aEventName, const TDesC& aParam ); - -public: - // new functions - - /** - * Publishes data - */ - void PublishL(); - -private: - // new functions - - /** - * CompareItems - */ - static TInt CompareItems( const MAiPluginSettings& aFirst, - const MAiPluginSettings& aSecond ); - - /** - * Publishes content for one menu item - */ - void PublishLItemL( MAiContentObserver& aObserver, CCarouselData& aDataItem, TInt aIndex ); - - void PublishEditorItemsL(); - - /** - * Delete content model - */ - void DeleteContentModel(); - - /** - * Determines if dirty items exists - */ - TBool PublishRequired() const; - -private: - // data - - /** Iterator for plugin content, owned */ - MAiContentItemIterator* iContent; - /** Number of data in the content model */ - TInt iDataCount; - /** Dynamic content model, owned */ - TAiContentItem* iContentModel; - /** Plugin engine, owned */ - CCarouselPluginEngine* iEngine; - /** Array of content observers, not owned */ - RPointerArray iObservers; - }; - -#endif // CMCSPLUGIN_H - -// End of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/publisher/inc/carouselplugindata.h --- a/idlehomescreen/examples/carouselwidgetexample/publisher/inc/carouselplugindata.h Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,274 +0,0 @@ -/* -* Copyright (c) 2009 - 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Plug-in data class -* -*/ - - -#ifndef CMCSPLUGINDATA_H -#define CMCSPLUGINDATA_H - -// INCLUDE FILES -#include -#include -#include -#include -#include -#include - -class TMenuItem; -class CCarouselPluginEngine; - -/** - * @ingroup group_mcsplugin - * - * Stores the MCS Menu Items and keeps track whether - * item needs to be published or not. - * - * @since S60 v9.1 - */ -NONSHARABLE_CLASS( CCarouselData ) : public CBase - { -public: - CCarouselData(); - - ~CCarouselData(); - - /** - * SetMenuItem - * - * @param aMenuItem - */ - void SetMenuItem( TMenuItem& aMenuItem ); - - /** - * MenuItem - * - * @return TMenuItem - */ - TMenuItem& MenuItem(); - - /** - * Name of the item. - */ - TDesC& Name(); - - /** - * Set name of the item, - */ - void SetNameL( const TDesC& aName ); - - /** - * Value of the item. Used for bookmark url. - */ - TDesC& Value(); - - /* - * Set value of the item. - */ - void SetValueL( const TDesC& aValue ); - - /** - * SetDirty - * - * @param aDirty - * @return TBool - */ - void SetDirty( TBool aDirty ); - - /** - * IsDirty - * - * @return TBool - */ - TBool IsDirty() const; - -private: - /** - * iMenuItem - */ - TMenuItem iMenuItem; - - /** - * Item name, own - */ - HBufC* iName; - - /** - * Item value, own - */ - HBufC* iValue; - - /** - * iDirty - */ - TBool iDirty; - }; - -/** - * @ingroup group_mcsplugin - * - * Plug-in data class - * - * @since - */ -NONSHARABLE_CLASS( CCarouselPluginData ) : public CBase, - public HSPluginSettingsIf::MHomeScreenSettingsObserver - { - -public: - - /** - * Part of the two phased constuction - * - * @param aEngine - * @param aInstanceUid - * @return Pointer to the created CMCSPluginData object - */ - static CCarouselPluginData* NewL( CCarouselPluginEngine& aEngine, - const TDesC8& aInstanceUid ); - - /** - * Constructor - * - * @param aEngine - * @param aInstanceUid - * @return none - */ - CCarouselPluginData( CCarouselPluginEngine& aEngine, const TDesC8& aInstanceUid ); - - /** - * Destructor - * - * @param none - * @return none - */ - ~CCarouselPluginData(); - - /** - * DataItem - * - * @param aIndex - * @return TMCSData& - */ - CCarouselData& DataItemL( TInt aIndex ); - - /** - * Saves 'Undefined' menu item into settings when mailbox is deleted - * - * @param aIndex - * @param aMenuItem - */ - void SaveUndefinedItemL( const TInt& aIndex ); - - /** - * DataCount - * - * @return TInt - */ - TInt DataCount(){ return iData.Count();}; - - /** - * Gets the instance specific settings from HSPS and creates data items - */ - void UpdateDataL(); - - /** - * Removes data item from data list and saves new setting into HSPS - */ - void RemoveDataL( TInt aId ); - - // From MHomeScreenSettingsObserver - /** - * SettingsChangedL - * - * @param aEvent - * @param aPluginName - * @param aPluginUid - * @param aPluginId - */ - void SettingsChangedL( const TDesC8& aEvent, const TDesC8& aPluginName, - const TDesC8& aPluginUid, const TDesC8& aPluginId ); - -private: - - /** - * Part of the two phased construction - * - * @param void - * @return void - */ - void ConstructL(); - - /** - * GetMenuDataL - * @param aProperties - * @return TMenuItem - */ - CCarouselData* GetMenuDataL( - RPointerArray& aProperties ); - - /** - * Get bookmark data item - * @param aUid, used for bookmark uid - * @param aView, used for bookmark url - * @param aParam, used for bookmark name - * @param aData, is filled with appropriate values - */ - void GetBkmDataL( const TDesC8& aUid, const TDesC8& aView, const TDesC8& aParam, CCarouselData& aData ); - - /** - * Get folder data item - * @param aParam, is used for folder id (in MCS) - * @param aData, is filled with appropriate values - */ - void GetFolderData( const TDesC8& aParam, CCarouselData& aData ); - - /** - * Get mailbox data item - * @param aUid, uid of the mailbox in messaging application - * @param aParam, name of the mailbox - * @param aData, is filled with appropriate values - */ - void GetMailboxDataL( const TDesC8& aUid, const TDesC8& aParam, CCarouselData& aData ); - - /** - * Get MCS data item - * @param aProperties, Properties are used to filter correct item from MCS. - * @param aData, is filled with appropriate values - */ - void GetMCSDataL( - RPointerArray& aProperties, CCarouselData& aData ); - -private: // data - - // Menu items, which are defined in settings - // Own - RPointerArray iData; - - // Plugin settings. NOT OWNED! - HSPluginSettingsIf::CHomescreenSettings* iPluginSettings; - - // Reference to MCS plug-in engine - CCarouselPluginEngine& iEngine; - - // Reference to instance uid of HSPS widget - const TDesC8& iInstanceUid; - - // MCS resource handle, owned - RMenu iMenu; - - }; - -#endif // CMCSPLUGINDATA_H diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/publisher/inc/carouselpluginengine.h --- a/idlehomescreen/examples/carouselwidgetexample/publisher/inc/carouselpluginengine.h Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,250 +0,0 @@ -/* -* Copyright (c) 2009 - 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - - -#ifndef CMCSPLUGINENGINE_H -#define CMCSPLUGINENGINE_H - -// System includes -#include -#include -#include -#include -#include - -// User includes -#include "carouselpluginwatcher.h" - -// Forward declarations -class CGulIcon; -class CCarouselPluginData; -class CCarouselData; -class CCarouselPlugin; - - -/** - * @ingroup group_mcsplugin - * - * MCSPluginEngine class - * - * @since S60 5.2 - */ -NONSHARABLE_CLASS( CCarouselPluginEngine ) : public CBase, - public MCarouselPluginWatcherObserver, - public MMsvSessionObserver - { -public: - // constructor and destructor - - /** - * Part of the two phased constuction - * - * @param aPlugin - * @param aInstanceUid - * @return Pointer to the created CMCSPluginEngine object - */ - static CCarouselPluginEngine* NewL( CCarouselPlugin& aPlugin, - const TDesC8& aInstanceUid ); - - /** - * Destructor - * - * @param none - * @return none - */ - ~CCarouselPluginEngine(); - -private: - // constructors - - /** - * C++ default constructor - */ - CCarouselPluginEngine( CCarouselPlugin& aPlugin, const TDesC8& aInstanceUid ); - - /* - * 2nd phase constructor - */ - void ConstructL(); - -public: - // new functions - - /** - * Gets the menu data. - * - * @param aIndex - * @return TMCSData& - */ - CCarouselData& MenuDataL( const TInt& aIndex ); - - /** Gets the menu item count - * - * @return TInt - */ - TInt MenuItemCount(); - - /** - * Finds the menu item header for given filter. - * - * @param aFilter - * @return TMenuItem - */ - TMenuItem FindMenuItemL( CMenuFilter& aFilter ); - - /** - * Retrieves the menu item object from MCS. - * - * @param aMenuItem - * @return CMenuItem* - */ - CMenuItem* FetchMenuItemL( CCarouselData& aData); - - /** - * Returns icon for given menu item and given attribute - * - * @param aMenuItem - * @param aAttr - * @return CGulIcon* - */ - CGulIcon* ItemIconL( CMenuItem* aMenuItem, const TDesC& aAttr ); - - /** - * Returns text for given menu item and given attribute - * - * @param aMenuItem - * @param aAttr - */ - TPtrC ItemTextL( CMenuItem* aMenuItem, const TDesC& aAttr ); - - /** - * Launches menu item - * - * @param aIndex - */ - void LaunchItemL( const TInt& aIndex ); - - /** - * Set backup/restore state - * - * @param aBackupRestore ETrue if backup/restore is ongoing - * @return void - */ - void SetBackupRestore( TBool aBackupRestore ); - - /** - * ShowSettingsL - */ - void ShowSettingsL(); - -private: - // from MMCSPluginWatcherObserver - - /** - * @see MMCSPluginWatcherObserver - */ - void HandleNotifyL(); - -private: - // from MMsvSessionObserver - - /** - * @see MMsvSessionObserver - */ - void HandleSessionEventL( TMsvSessionEvent aEvent, TAny* aArg1, - TAny* aArg2, TAny* aArg3 ); - -private: - // new functions - - /** - * InitL - */ - void InitL(); - - /** - * Tells the settings container to start observing - * for changes in mailbox db and changes in MCS. - */ - void StartObservingL(); - - /** - * Tells the settings container to stop observing - * for changes in mailbox db. - */ - void StopObserving(); - - /** - * ConstructMenuItemForIconL - * - * @param aPath - * @param aMenuItem - * @return TBool - */ - TBool ConstructMenuItemForIconL( - const TDesC& aPath, CMenuItem& aMenuItem ); - - /** - * Creates bookmark specific MCS menu item. - */ - CMenuItem* CreateBkmItemL( CCarouselData& aData ); - - /** - * Creates mailbox specific MCS menu item. - */ - CMenuItem* CreateMailboxItemL( CCarouselData& aData ); - - void LaunchFolderItemL( CCarouselData& aData ); - - void LaunchBookmarkItemL( CCarouselData& aData ); - - void LaunchMailboxItemL( CCarouselData& aData ); - - void LaunchMCSItemL( CCarouselData& aData ); - -private: - // data - - /** Plugin data, owned */ - CCarouselPluginData* iPluginData; - /** MCS resource handle, owned */ - RMenu iMenu; - /** MCS change notifier handle, owned */ - RMenuNotifier iNotifier; - /** MCS asynchronous operation watcher, owned */ - CCarouselPluginWatcher* iWatcher; - /** MCS change notifier watcher, owned */ - CCarouselPluginWatcher* iNotifyWatcher; - /** MCS plugin, not owned */ - CCarouselPlugin& iPlugin; - /** Reference to plugin owned instanceUid */ - const TDesC8& iInstanceUid; - /** Flag Indicating that backup/restore is in progress */ - TBool iBackupRestore; - /** Offset of resource file */ - TInt iResourceOffset; - /** Message server session, owned */ - CMsvSession* iMsvSession; - /** "Undefined" menu item, owned */ - CMenuItem* iUndefinedItem; - /** "Undefined" menu item header */ - TMenuItem iUndefinedItemHeader; - }; - -#endif // CMCSPLUGINENGINE_H - -// End of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/publisher/inc/carouselpluginwatcher.h --- a/idlehomescreen/examples/carouselwidgetexample/publisher/inc/carouselpluginwatcher.h Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,152 +0,0 @@ -/* -* Copyright (c) 2009 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#ifndef __MCSPLUGINWATCHER_H -#define __MCSPLUGINWATCHER_H - -#include - -class CMenuOperation; -class CCarouselPluginEngine; - -/** - * @ingroup group_mcsplugin - * - * MCS Plugin Watcher Observer - * - * @since S60 9.1 - */ -class MCarouselPluginWatcherObserver - { - public: - /** - * HandleNotifyL - */ - virtual void HandleNotifyL() = 0; - }; - -/** - * @ingroup group_mcsplugin - * - * This class implements MCS menu action watcher for async calls. - * - * @since S60 9.1 - */ -class CCarouselPluginWatcher: public CActive - { - public: - - /** - * enum Type - */ - enum Type - { - EOperation, - ENotify - }; - - /** - * Two-phased constructor. - * - * @param aType - */ - static CCarouselPluginWatcher* NewL( const Type& aType ); - - /** - * Destructor. - */ - virtual ~CCarouselPluginWatcher(); - - /** - * Watch menu operation or notification. - * - * @param aOperation - */ - void Watch( CMenuOperation* aOperation = NULL ); - - /** - * WatchNotify - * - * @param aObserver - */ - void WatchNotify( MCarouselPluginWatcherObserver* aObserver ); - - /** - * StopAndWatch - * - * @param aOperation - * @param aWaitScheduler - */ - void StopAndWatch( CMenuOperation* aOperation, - CActiveSchedulerWait* aWaitScheduler ); - - /** - * GetStatus - */ - TInt GetStatus(); - - private: - - /** - * Default constructor. - * - * @param aType - */ - CCarouselPluginWatcher( const Type& aType ); - - /** - * ConstructL - */ - void ConstructL(); - - /** - * Inherited from CActive class - */ - void RunL(); - - /** - * Inherited from CActive class - */ - void DoCancel(); - - private: - - /** - * Menu operation - * Owned - */ - CMenuOperation* iOperation; - - /** - * Wait scheduler - * Not owned - */ - CActiveSchedulerWait* iWaitScheduler; - - /** - * Observer reference - * Not owned - */ - MCarouselPluginWatcherObserver* iObserver; - - /** - * iType - */ - Type iType; - }; - -#endif /*__MCSPLUGINWATCHER_H*/ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/publisher/loc/carouselplugin.loc --- a/idlehomescreen/examples/carouselwidgetexample/publisher/loc/carouselplugin.loc Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,34 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Localization strings for project carousel Plugin -* -*/ - -// d: A dialog which is shown to user when (s)he is trying to -// d: launch shortcut item during backup state. -// l: popup_note_window -// w: -// r: tb9.2 -// -#define qtn_mcs_disable_open_item "Application cannot be opened during backup" - -// d: A dialog which is shown to user when (s)he is trying to -// d: launch shortcut item which is missing from menu. -// l: popup_note_window -// w: -// r: tb9.2 -// -#define qtn_mcs_disable_open_item_missing "Shortcut cannot be opened because item is missing. Try to insert memory card which contains the item or reinstall the application." - -//End file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/publisher/rom/carouselplugin.iby --- a/idlehomescreen/examples/carouselwidgetexample/publisher/rom/carouselplugin.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,28 +0,0 @@ -/* -* Copyright (c) 2006 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: IBY file for carousel plug-in -* -*/ - - -#ifndef CAROUSELPLUGIN_IBY -#define CAROUSELPLUGIN_IBY -#include - -data=DATAZ_\BITMAP_DIR\carouselplugin.mif BITMAP_DIR\carouselplugin.mif - -ECOM_PLUGIN(carouselplugin.dll, carouselplugin.rsc) - -#endif // CAROUSELPLUGIN_IBY - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/publisher/rom/carouselplugin_resources.iby --- a/idlehomescreen/examples/carouselwidgetexample/publisher/rom/carouselplugin_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,26 +0,0 @@ -/* -* Copyright (c) 2005 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: IBY file for Profile plug-in -* -*/ - - -#ifndef CAROUSELPLUGIN_RESOURCES_IBY -#define CAROUSELPLUGIN_RESOURCES_IBY - -#include - -data=DATAZ_\RESOURCE_FILES_DIR\carouselpluginres.rsc RESOURCE_FILES_DIR\carouselpluginres.rsc - -#endif // CAROUSELPLUGIN_RESOURCES_IBY diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/publisher/src/carouselplugin.cpp --- a/idlehomescreen/examples/carouselwidgetexample/publisher/src/carouselplugin.cpp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,502 +0,0 @@ -/* -* Copyright (c) 2009 - 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: MCS plugin publisher -* -*/ - -// System includes -#include -#include -#include -#include - -// User includes -#include -#include -#include -#include -#include "carouselpluginuids.hrh" -#include "carouselplugin.h" -#include "carouselplugindata.h" -#include "carouselpluginengine.h" - -// Constants -const TUint KPluginNameSeprator = '/'; - -const TInt KImplUidMCSPlugin = AI_UID_ECOM_IMPLEMENTATION_CONTENTPUBLISHER_CAROUSELPLUGIN; - -_LIT( KEventNameLaunchByIndex, "LaunchByIndex" ); -_LIT( KEventNameShowSettings, "ShowSettings" ); -_LIT( KContentItemTypeText, "text" ); -_LIT( KContentItemTypeImage, "image" ); -_LIT( KContentItemTypeData, "data" ); - -const TImplementationProxy KImplementationTable[] = - { - IMPLEMENTATION_PROXY_ENTRY( KImplUidMCSPlugin, CCarouselPlugin::NewL ) - }; - -class CPublishItem : public CBase - { -public: - ~CPublishItem(); - CPublishItem(); - - CGulIcon* icon; - HBufC* text; - TBool last; - }; - -CPublishItem::CPublishItem() - { - - } - -CPublishItem::~CPublishItem() - { - delete text; - } - -// ======== LOCAL FUNCTIONS ======== - -// ======== MEMBER FUNCTIONS ======== -// ---------------------------------------------------------------------------- -// CMCSPlugin::NewL -// -// ---------------------------------------------------------------------------- -// -CCarouselPlugin* CCarouselPlugin::NewL() - { - CCarouselPlugin* self = new ( ELeave ) CCarouselPlugin; - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop( self ); - - return self; - } - -// ---------------------------------------------------------------------------- -// CMCSPlugin::CMCSPlugin -// -// ---------------------------------------------------------------------------- -// -CCarouselPlugin::CCarouselPlugin() - { - } - -// ---------------------------------------------------------------------------- -// CMCSPlugin::ConstructL -// -// ---------------------------------------------------------------------------- -// -void CCarouselPlugin::ConstructL() - { - } - -// ---------------------------------------------------------------------------- -// Destructor -// Deletes all data created to heap -// ---------------------------------------------------------------------------- -// -CCarouselPlugin::~CCarouselPlugin() - { - Release( iContent ); - - delete iEngine; - iObservers.Close(); - - DeleteContentModel(); - } - -// ---------------------------------------------------------------------------- -// CMCSPlugin::PublishL -// Publishes the all the items -// ---------------------------------------------------------------------------- -// -void CCarouselPlugin::PublishL() - { - TInt err( KErrNone ); - TInt observers( iObservers.Count() ); - TInt transactionId( reinterpret_cast( this ) ); - TInt menuItems ( iEngine->MenuItemCount() ); - - for ( TInt i = 0; i < observers; i++ ) - { - MAiContentObserver* observer( iObservers[ i ] ); - err = observer->StartTransaction( transactionId ); - - if ( err == KErrNotSupported ) - { - return; - } - - // Publish content to all items - for ( TInt j = 0; j < menuItems; j++ ) - { - // Index has to start from 1 ( j + 1 ) - PublishLItemL( *observer, iEngine->MenuDataL( j ), ( j + 1 ) ); - }// shortcut count - - if ( err == KErrNone ) - { - err = observer->Commit( transactionId ); - - if ( err == KErrNotSupported ) - { - return; - } - } - }//observers - - // Set all items not dirty. - for ( TInt j = 0; j < menuItems; j++ ) - { - iEngine->MenuDataL( j ).SetDirty( EFalse ); - } - } - -// ---------------------------------------------------------------------------- -// CMCSPlugin::PublishLItemL -// Publishes one item to given index -// ---------------------------------------------------------------------------- -// -void CCarouselPlugin::PublishLItemL( MAiContentObserver& aObserver, - CCarouselData& aData, TInt aIndex ) - { - if( !aData.IsDirty() ) - { - return; - } - - CMenuItem* item = iEngine->FetchMenuItemL( aData ); - CleanupStack::PushL( item ); - - if ( iContentModel[0].type == KAiContentTypeData ) - { - if(TPtrC16( ( const TText16* ) iContentModel[ 0 ].cid ) == _L("widget") ) - { - CGulIcon* icon( iEngine->ItemIconL( item, _L("icon"))); - icon->SetBitmapsOwnedExternally( ETrue ); - aObserver.Publish( *this, 0, TPckgC( icon ), aIndex - 1 ); - } - } - CleanupStack::PopAndDestroy( item ); - } - -// ---------------------------------------------------------------------------- -// PublishEditorItemsL -// -// ---------------------------------------------------------------------------- -// -void CCarouselPlugin::PublishEditorItemsL() - {/* - RArray items = iEngine->MenuItemsL(); - CleanupClosePushL( items ); - - TInt count( items.Count()); - for( TInt i = 0; i < count; i++ ) - { - CMenuItem* item( iEngine->FetchMenuItemL( items[i])); - CleanupStack::PushL( item ); - CGulIcon* icon( iEngine->ItemIconL( *item, _L("icon"))); - TPtrC name( iEngine->ItemTextL( *item, _L("long_name") )); - CPublishItem* pItem = new CPublishItem; - pItem->icon = icon; - pItem->text = name.AllocL(); - if( i < count - 1 ) - { - pItem->last = EFalse; - } - else - { - pItem->last = ETrue; - } - iObservers[0]->Publish( *this, 0, TPckgC( pItem), i ); - delete pItem; - CleanupStack::PopAndDestroy( item ); - } - CleanupStack::PopAndDestroy( &items ); - */ - } - -// ---------------------------------------------------------------------------- -// CMCSPlugin::Start -// -// ---------------------------------------------------------------------------- -// -void CCarouselPlugin::Start( TStartReason /*aReason*/ ) - { - - } - -// ---------------------------------------------------------------------------- -// CMCSPlugin::Stop -// -// ---------------------------------------------------------------------------- -// -void CCarouselPlugin::Stop( TStopReason /*aReason*/ ) - { - - } - -// ---------------------------------------------------------------------------- -// CMCSPlugin::Resume -// -// ---------------------------------------------------------------------------- -// -void CCarouselPlugin::Resume( TResumeReason aReason ) - { - if ( aReason == EForeground ) - { - iEngine->SetBackupRestore( EFalse ); - - if ( PublishRequired() ) - { - TRAP_IGNORE( PublishL() ); - } - } - } - -// ---------------------------------------------------------------------------- -// CMCSPlugin::Suspend -// -// ---------------------------------------------------------------------------- -// -void CCarouselPlugin::Suspend( TSuspendReason aReason ) - { - if ( aReason == EGeneralThemeChange ) - { - TInt dataCount( iEngine->MenuItemCount() ); - - for ( TInt i = 0; i < dataCount; i++ ) - { - TRAP_IGNORE( iEngine->MenuDataL( i ).SetDirty( ETrue ) ); - } - } - else if ( aReason == EBackupRestore ) - { - // Prevent item launching during backup / restore - iEngine->SetBackupRestore( ETrue ); - } - } - -// ---------------------------------------------------------------------------- -// CMCSPlugin::SubscribeL -// -// ---------------------------------------------------------------------------- -// -void CCarouselPlugin::SubscribeL( MAiContentObserver& aObserver ) - { - iObservers.AppendL( &aObserver ); - } - -// ---------------------------------------------------------------------------- -// CMCSPlugin::ConfigureL -// -// ---------------------------------------------------------------------------- -// -void CCarouselPlugin::ConfigureL( RAiSettingsItemArray& aSettings ) - { - iEngine = CCarouselPluginEngine::NewL( *this, PublisherInfo().Namespace() ); - - TLinearOrder sortMethod( CCarouselPlugin::CompareItems ); - RAiSettingsItemArray contentItemsArr; - - TInt count( aSettings.Count() ); - - for ( TInt i = 0; i < count; i++ ) - { - MAiPluginSettings* setting( aSettings[ i ] ); - - if( setting->AiPluginItemType() == EAiPluginContentItem ) - { - MAiPluginContentItem& contItem( setting->AiPluginContentItem() ); - TPtrC name( contItem.Name() ); - TPtrC type( contItem.Type() ); - - contentItemsArr.InsertInOrder( setting, sortMethod ); - } - } - - iDataCount = contentItemsArr.Count(); - - if ( iDataCount > 0 ) - { - // Create the dynamic content Model - DeleteContentModel(); - - iContentModel = new ( ELeave ) TAiContentItem[ iDataCount ]; - - for ( TInt i = 0; i < iDataCount; i++ ) - { - iContentModel[i].id = i; - - MAiPluginContentItem& contentItem( - contentItemsArr[ i ]->AiPluginContentItem() ); - - if( contentItem.Type() == KContentItemTypeText ) - { - // text - iContentModel[i].type = KAiContentTypeText; - } - if( contentItem.Type() == KContentItemTypeImage ) - { - // image - iContentModel[i].type = KAiContentTypeBitmap; - } - else if(contentItem.Type() == KContentItemTypeData ) - { - // data - iContentModel[i].type = KAiContentTypeData; - } - - TInt pos( contentItem.Name().Locate( KPluginNameSeprator ) ); - - HBufC* contentId = HBufC::NewL( contentItem.Name().Length() ); - CleanupStack::PushL( contentId ); - - TPtr ptr( contentId->Des() ); - ptr = contentItem.Name().Mid( pos + 1 ); - - TInt sizeOfContentId( ptr.Size() + sizeof( wchar_t ) ); - - iContentModel[i].cid = - static_cast( User::AllocL( sizeOfContentId ) ); - - Mem::Copy( ( TAny* )iContentModel[i].cid, - ptr.PtrZ(), sizeOfContentId ); - - CleanupStack::PopAndDestroy( contentId ); - } - - iContent = AiUtility::CreateContentItemArrayIteratorL( - iContentModel, iDataCount ); - } - - contentItemsArr.Reset(); - // We own the array so destroy it - aSettings.ResetAndDestroy(); - } - -// ---------------------------------------------------------------------------- -// CMCSPlugin::GetProperty -// -// ---------------------------------------------------------------------------- -// -TAny* CCarouselPlugin::GetProperty( TProperty aProperty ) - { - if( aProperty == EPublisherContent ) - { - return static_cast< MAiContentItemIterator* >( iContent ); - } - - return NULL; - } - -// ---------------------------------------------------------------------------- -// CMCSPlugin::HandleEvent -// -// ---------------------------------------------------------------------------- -// -void CCarouselPlugin::HandleEvent( const TDesC& aEventName, const TDesC& aParam ) - { - if( aEventName == KEventNameLaunchByIndex ) - { - TInt32 index; - AiUtility::ParseInt( index, aParam ); - - TRAP_IGNORE( iEngine->LaunchItemL( index - 1 ) ); - } - else if( aEventName == KEventNameShowSettings ) - { - TRAP_IGNORE( iEngine->ShowSettingsL() ); - } - else if( aEventName == _L("ShowEditor")) - { - TRAP_IGNORE( PublishEditorItemsL() ); - } - } - -// ---------------------------------------------------------------------------- -// CMCSPlugin::CompareItems -// -// ---------------------------------------------------------------------------- -// -TInt CCarouselPlugin::CompareItems( const MAiPluginSettings& aFirst, - const MAiPluginSettings& aSecond ) - { - MAiPluginSettings& first = const_cast(aFirst); - MAiPluginSettings& second = const_cast(aSecond); - return first.AiPluginContentItem().Name().CompareC(second.AiPluginContentItem().Name()); - } - -// ---------------------------------------------------------------------------- -// CMCSPlugin::DeleteContentModel -// -// ---------------------------------------------------------------------------- -// -void CCarouselPlugin::DeleteContentModel() - { - if( iContentModel ) - { - for ( TInt i = 0; i < iDataCount; i++ ) - { - if( iContentModel[i].cid ) - { - TAny* cell = static_cast( const_cast( iContentModel[i].cid ) ); - User::Free( cell ); // Originally allocated with User::Alloc, so delete - // with correlating method. - iContentModel[i].cid = NULL; - } - } - - delete iContentModel; - iContentModel = NULL; - } - } - -// ---------------------------------------------------------------------------- -// CMCSPlugin::PublishRequired -// -// ---------------------------------------------------------------------------- -// -TBool CCarouselPlugin::PublishRequired() const - { - TInt count( iEngine->MenuItemCount() ); - - TBool retval( EFalse ); - - for ( TInt i = 0; !retval && i < count; i++ ) - { - TRAP_IGNORE( retval = iEngine->MenuDataL( i ).IsDirty() ); - } - - - return retval; - } - -// ======== GLOBAL FUNCTIONS ======== -// ---------------------------------------------------------------------------- -// Constructs and returns an application object. -// ---------------------------------------------------------------------------- -// -EXPORT_C const TImplementationProxy* ImplementationGroupProxy( - TInt& aTableCount ) - { - aTableCount = sizeof( KImplementationTable ) / - sizeof( TImplementationProxy ); - return KImplementationTable; - } - -// End of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/publisher/src/carouselplugindata.cpp --- a/idlehomescreen/examples/carouselwidgetexample/publisher/src/carouselplugindata.cpp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,580 +0,0 @@ -/* -* Copyright (c) 2009 - 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ -#include -#include -#include -#include - -#include "carouselplugindata.h" -#include "carouselpluginengine.h" - -using namespace HSPluginSettingsIf; - -_LIT( KMenuAttrParam, "param" ); -_LIT( KMenuAttrLocked, "locked" ); -_LIT8( KProperNameType, "type" ); -_LIT8( KProperNameParam, "param" ); -_LIT8( KProperNameUid, "uid" ); -_LIT8( KProperNameView, "view" ); -_LIT8( KProperNameLocked, "locked" ); -_LIT8( KProperValueFolder, "folder" ); -_LIT8( KProperValueBookmark, "bookmark" ); -_LIT8( KProperValueAppl, "application" ); -_LIT8( KProperValueMailbox, "mailbox" ); -_LIT8( KMenuAttrUndefUid, "0x99999991" ); - -_LIT( KMyMenuData, "matrixmenudata" ); -_LIT( KMenuTypeMailbox, "menu:mailbox" ); - - -#define KMCSCmailMtmUidValue 0x2001F406 - -// ======== LOCAL FUNCTIONS ======== - -// ---------------------------------------------------------------------------- -// CleanupResetAndDestroy() -// ---------------------------------------------------------------------------- -// -template -static void CleanupResetAndDestroy( TAny* aObj ) - { - if( aObj ) - { - static_cast( aObj )->ResetAndDestroy(); - } - } - -// ---------------------------------------------------------------------------- -// CleanupResetAndDestroyPushL -// ---------------------------------------------------------------------------- -// -template -static void CleanupResetAndDestroyPushL(T& aArray) - { - CleanupStack::PushL( TCleanupItem( &CleanupResetAndDestroy, &aArray ) ); - } - -// ======== MEMBER FUNCTIONS ======== - -// --------------------------------------------------------------------------- -// Default constructor -// --------------------------------------------------------------------------- -// -CCarouselData::CCarouselData() - :iDirty( ETrue ) - { - } - -// --------------------------------------------------------------------------- -// Destructor -// --------------------------------------------------------------------------- -// -CCarouselData::~CCarouselData() - { - delete iName; - delete iValue; - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -void CCarouselData::SetMenuItem( TMenuItem& aMenuItem ) - { - iMenuItem = aMenuItem; - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -TMenuItem& CCarouselData::MenuItem() - { - return iMenuItem; - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -TDesC& CCarouselData::Name() - { - return *iName; - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -void CCarouselData::SetNameL( const TDesC& aName ) - { - delete iName; - iName = NULL; - iName = aName.AllocL(); - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -TDesC& CCarouselData::Value() - { - return *iValue; - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -void CCarouselData::SetValueL( const TDesC& aValue ) - { - delete iValue; - iValue = NULL; - iValue = aValue.AllocL(); - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -void CCarouselData::SetDirty( TBool aDirty ) - { - iDirty = aDirty; - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -TBool CCarouselData::IsDirty() const - { - return iDirty; - } - - -// --------------------------------------------------------------------------- -// Symbian 2nd phase constructor can leave -// --------------------------------------------------------------------------- -// -CCarouselPluginData* CCarouselPluginData::NewL( CCarouselPluginEngine& aEngine, const TDesC8& aInstanceUid ) - { - CCarouselPluginData* self = new (ELeave) CCarouselPluginData( aEngine, aInstanceUid ); - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop( self ); - - return self; - } - -// --------------------------------------------------------------------------- -// Default constructor -// --------------------------------------------------------------------------- -// -CCarouselPluginData::CCarouselPluginData( CCarouselPluginEngine& aEngine, const TDesC8& aInstanceUid ) - : iEngine( aEngine ), iInstanceUid( aInstanceUid ) - { - } - -// --------------------------------------------------------------------------- -// Symbian 2nd phase constructor can leave -// --------------------------------------------------------------------------- -// -void CCarouselPluginData::ConstructL() - { - iPluginSettings = CHomescreenSettings::Instance(); - if( iPluginSettings == NULL ) - { - User::Leave( KErrUnknown ); - } - iPluginSettings->AddObserverL( this ); - - iMenu.OpenL( KMyMenuData ); - - UpdateDataL(); - } - -// --------------------------------------------------------------------------- -// Destructor -// --------------------------------------------------------------------------- -// -CCarouselPluginData::~CCarouselPluginData() - { - if( iPluginSettings ) - { - iPluginSettings->RemoveObserver( this ); - } - iData.ResetAndDestroy(); - iMenu.Close(); - } - -// --------------------------------------------------------------------------- -// Gets the instance specific settings from HSPS and creates data items -// --------------------------------------------------------------------------- -// -void CCarouselPluginData::UpdateDataL() - { - RPointerArray settings; - CleanupResetAndDestroyPushL( settings ); - - User::LeaveIfError( iPluginSettings->GetSettingsL( iInstanceUid, settings ) ); - if ( settings.Count() <= 0 ) - { - User::Leave( KErrNotFound ); - } - - TBool wasEmpty = !iData.Count(); - - for ( TInt i = 0; i < settings.Count(); i++ ) - { - CItemMap* itemMap = settings[ i ]; - - // get properties - RPointerArray& properties - = itemMap->Properties(); - - CCarouselData* data = GetMenuDataL( properties ); - CleanupStack::PushL( data ); - if ( wasEmpty ) - { - // list of shortcut slot was empty - // we append the shortcut data slots one-by-one to the list - data->SetDirty( ETrue ); - iData.AppendL( data ); - CleanupStack::Pop( data ); - } - else - { - // check for updates in existing shortcut data slot - // if menuitem id has changed, replace the item and - // set as dirty - TInt id( iData[ i ]->MenuItem().Id() ); - - // id of all bookmarks is zero so name has to be check - // in case of bookmark has changed - if ( id >= 0 && ( data->MenuItem().Id() != id || - ( id == 0 && data->Name().CompareF( - iData[ i ]->Name() ) != 0 ) ) ) - { - data->SetDirty( ETrue ); - CCarouselData* oldData = iData[i]; - iData.Remove( i ); - delete oldData; - - iData.InsertL( data, i ); - CleanupStack::Pop( data ); - } - else - { - CleanupStack::PopAndDestroy( data ); - } - } - } - - // Leave if there isn't any data filled into array as there isn't - // anything shortcut to publish on homescreen. - if ( iData.Count() <= 0 ) - { - User::Leave( KErrNotFound ); - } - - // Cleanup. - CleanupStack::PopAndDestroy(); // settings - } - -// --------------------------------------------------------------------------- -// Removes obsolete data and saves 'Undefined' item to HSPS -// Used when active mailbox is deleted from system. -// --------------------------------------------------------------------------- -// -void CCarouselPluginData::RemoveDataL( TInt aId ) - { - TInt count = iData.Count(); - for( TInt i = 0; i < count; i++ ) - { - CCarouselData* data = iData[i]; - if( data->MenuItem().Type() == KMenuTypeMailbox && - data->MenuItem().Id() == aId ) - { - iData[i]->MenuItem().SetId( KErrNotFound ); - iData[i]->SetDirty( ETrue ); - SaveUndefinedItemL( i ); - } - } - } - -// --------------------------------------------------------------------------- -// Call back from Homescreen settings -// --------------------------------------------------------------------------- -// -void CCarouselPluginData::SettingsChangedL( const TDesC8& /*aEvent*/, const TDesC8& /*aPluginName*/, - const TDesC8& /*aPluginUid*/, const TDesC8& aPluginId ) - { - if( aPluginId.CompareF( iInstanceUid ) == 0 ) - { - UpdateDataL(); - } - } - -// --------------------------------------------------------------------------- -// Gets the menu item from engine using the setting properties as filter -// --------------------------------------------------------------------------- -// -CCarouselData* CCarouselPluginData::GetMenuDataL( - RPointerArray& aProperties ) - { - if ( aProperties.Count() <= 0 ) - { - User::Leave( KErrArgument ); - } - - TPtrC8 type; - TPtrC8 uid; - TPtrC8 view; - TPtrC8 param; - - // first we need to check the item type - for ( TInt i = 0; i < aProperties.Count(); i++ ) - { - if ( aProperties[i]->Name() == KProperNameType ) - { - type.Set( aProperties[i]->Value()); - } - else if( aProperties[i]->Name() == KProperNameUid) - { - uid.Set( aProperties[i]->Value()); - } - else if( aProperties[i]->Name() == KProperNameView) - { - view.Set( aProperties[i]->Value()); - } - else if( aProperties[i]->Name() == KProperNameParam ) - { - param.Set( aProperties[i]->Value()); - } - } - CCarouselData* data = new ( ELeave ) CCarouselData(); - CleanupStack::PushL( data ); - if( type == KProperValueBookmark ) - { - GetBkmDataL( uid, view, param, *data ); - } - else if( type == KProperValueFolder ) - { - GetFolderData( param, *data ); - } - else if( type == KProperValueMailbox ) - { - GetMailboxDataL( uid, param, *data ); - } - else - { - GetMCSDataL( aProperties, *data ); - } - CleanupStack::Pop( data ); - return data; - } - -// --------------------------------------------------------------------------- -// Creates bookmark data item. -// --------------------------------------------------------------------------- -// -void CCarouselPluginData::GetBkmDataL( const TDesC8& aUid, const TDesC8& aView, const TDesC8& aParam, CCarouselData& aData ) - { - TMenuItem item; - - if( aUid.Length() > 0 ) - { - CMenuFilter* filter = CMenuFilter::NewLC(); - HBufC* name( NULL ); - HBufC* value( NULL ); - name = AiUtility::CopyToBufferL( name, KProperNameUid ); - CleanupStack::PushL( name ); - value = AiUtility::CopyToBufferL( value, aUid ); - CleanupStack::PushL( value ); - filter->HaveAttributeL( *name, *value ); - CleanupStack::PopAndDestroy( value ); - CleanupStack::PopAndDestroy( name ); - item = iEngine.FindMenuItemL( *filter ); - CleanupStack::PopAndDestroy( filter ); - } - - item.SetType( KMenuTypeUrl ); - aData.SetMenuItem( item ); - - HBufC* view( NULL ); - view = AiUtility::CopyToBufferL( view, aView ); - CleanupStack::PushL( view ); - aData.SetValueL( *view ); - CleanupStack::PopAndDestroy( view ); - - HBufC* param( NULL ); - param = AiUtility::CopyToBufferL( param, aParam ); - CleanupStack::PushL( param ); - aData.SetNameL( *param ); - CleanupStack::PopAndDestroy( param ); - } - -// --------------------------------------------------------------------------- -// Creates folder data item. -// --------------------------------------------------------------------------- -// -void CCarouselPluginData::GetFolderData( const TDesC8& aParam, CCarouselData& aData ) - { - // In folder case, we have to extract id from - // param attribute and return item with this id - // convert id to integer - TInt id; - TLex8 lextmp( aParam); - lextmp.Val( id ); - - TMenuItem item; - item.SetType( KMenuTypeFolder ); - item.SetId( id ); - aData.SetMenuItem( item ); - } - -// --------------------------------------------------------------------------- -// Creates mailbox data item. -// --------------------------------------------------------------------------- -// -void CCarouselPluginData::GetMailboxDataL( const TDesC8& aUid, const TDesC8& aParam, CCarouselData& aData ) - { - TInt id( KErrNotFound ); - TLex8 lextmp( aUid); - lextmp.Val( id ); - - TMenuItem item; - item.SetType( KMenuTypeMailbox ); - item.SetId( id ); - aData.SetMenuItem( item ); - - HBufC* param( NULL ); - param = AiUtility::CopyToBufferL( param, aParam ); - CleanupStack::PushL( param ); - - aData.SetNameL( *param ); - - CleanupStack::PopAndDestroy( param ); - } - -// --------------------------------------------------------------------------- -// Gets data item from MCS -// --------------------------------------------------------------------------- -// -void CCarouselPluginData::GetMCSDataL( RPointerArray& aProperties, - CCarouselData& aData) - { - CMenuFilter* filter = CMenuFilter::NewLC(); - - // Exclude 'view' and 'param' attributes from search criteria by default - // Criterias will be added to filter if setting defines them - filter->DoNotHaveAttributeL( KMenuAttrView ); - filter->DoNotHaveAttributeL( KMenuAttrParam ); - - // then add all property/value pairs to the filter - for ( TInt i = 0; i < aProperties.Count(); i++ ) - { - // skip the type property - if( aProperties[i]->Name() == KProperNameType ) - { - continue; - } - - HBufC* name( NULL ); - HBufC* value( NULL ); - name = AiUtility::CopyToBufferL( name, aProperties[i]->Name() ); - CleanupStack::PushL( name ); - value = AiUtility::CopyToBufferL( value, aProperties[i]->Value() ); - CleanupStack::PushL( value ); - - if ( value->Length() != 0 ) - { - filter->HaveAttributeL( *name, *value ); - } - CleanupStack::PopAndDestroy( value ); - CleanupStack::PopAndDestroy( name ); - } - - // locked property excluded from search pattern - filter->DoNotHaveAttributeL( KMenuAttrLocked ); - - TMenuItem item = iEngine.FindMenuItemL( *filter ); - CleanupStack::PopAndDestroy( filter ); - aData.SetMenuItem( item ); - } - -// --------------------------------------------------------------------------- -// Returns menu item for given index -// --------------------------------------------------------------------------- -// -CCarouselData& CCarouselPluginData::DataItemL( TInt aIndex ) - { - if( aIndex < 0 || aIndex >= iData.Count()) - { - User::Leave( KErrArgument ); - } - return *iData[aIndex]; - } - -// --------------------------------------------------------------------------- -// Save the undefined item. -// --------------------------------------------------------------------------- -// -void CCarouselPluginData::SaveUndefinedItemL( const TInt& aIndex ) - { - RPointerArray settingItems; - CleanupResetAndDestroyPushL( settingItems ); - - iPluginSettings->GetSettingsL( iInstanceUid, settingItems ); - if ( aIndex >= 0 && aIndex < settingItems.Count() ) - { - CItemMap* itemMap = settingItems[ aIndex ]; - - // get properties - RPointerArray& properties - = itemMap->Properties(); - - for ( TInt i = 0; i < properties.Count(); i++ ) - { - if ( properties[ i ]->Name() == KProperNameType ) - { - properties[ i ]->SetValueL( KProperValueAppl ); - } - else if ( properties[ i ]->Name() == KProperNameUid ) - { - properties[ i ]->SetValueL( KMenuAttrUndefUid ); - } - else if ( properties[ i ]->Name() == KProperNameView ) - { - properties[ i ]->SetValueL( KNullDesC8 ); - } - else if ( properties[ i ]->Name() == KProperNameParam ) - { - properties[ i ]->SetValueL( KNullDesC8 ); - } - else if ( properties[ i ]->Name() == KProperNameLocked ) - { - properties[i]->SetValueL( KNullDesC8 ); - } - } - } - // ETrue tells that modified settings are stored also to plugin reference - iPluginSettings->SetSettingsL( iInstanceUid, settingItems, ETrue ); - CleanupStack::PopAndDestroy(); // settingItems - } - -// End of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/publisher/src/carouselpluginengine.cpp --- a/idlehomescreen/examples/carouselwidgetexample/publisher/src/carouselpluginengine.cpp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,841 +0,0 @@ -/* -* Copyright (c) 2009-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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: The engine class of MCS plugin. -* -*/ - -// System includes -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include // For CVwsSessionWrapper -#ifdef SYMBIAN_ENABLE_SPLIT_HEADERS -#include -#endif -#include - -// User includes -#include "carouselpluginengine.h" -#include "carouselplugin.h" -#include "carouselplugindata.h" -#include "carouselpluginuids.hrh" - -// Constants -_LIT( KMyMenuData, "matrixmenudata" ); -_LIT( KSkin, "skin" ); -_LIT( KMif, "mif" ); -_LIT( KResourceDrive, "Z:" ); -_LIT( KResourceFile, "mcspluginres.rsc" ); -_LIT( KResPath, "\\resource\\" ); -_LIT( KMMApplication, "mm://" ); -_LIT( KHideExit2, "&exit=hide" ); -_LIT( KSetFocusString, "!setfocus?applicationgroup_name=" ); -_LIT( KApplicationGroupName, "applicationgroup_name" ); -_LIT( KIcon, "icon" ); -_LIT( KMenuAttrUndefUid, "0x99999991" ); -_LIT( KMenuIconFile, "aimcsplugin.mif" ); -_LIT( KMenuBookmarkIconId, "16386" ); -_LIT( KMenuBookmarkMaskId, "16387" ); -_LIT( KMenuMailboxIconId, "16388" ); -_LIT( KMenuMailboxMaskId, "16389" ); -_LIT( KMenuTypeMailbox, "menu:mailbox" ); -_LIT( KPrefix, "0x" ); - -const TUid KHomescreenUid = { AI_UID3_AIFW_COMMON }; -const TUid KMMUid = { 0x101F4CD2 }; -const TUid KMCSCmailUidValue = { 0x2001E277 }; -const TUid KMCSCmailMailboxViewIdValue = { 0x2 }; -const TUid KBrowserUid = { 0x10008D39 }; - -// ======== LOCAL FUNCTIONS ======== -// ---------------------------------------------------------------------------- -// NextIdToken -// ---------------------------------------------------------------------------- -// -static TPtrC NextIdToken( TLex& aLexer ) - { - aLexer.SkipSpace(); - aLexer.Mark(); - - while( !aLexer.Eos() && !aLexer.Peek().IsSpace() && aLexer.Peek() != ')' ) - { - aLexer.Inc(); - } - - return aLexer.MarkedToken(); - } - -// ---------------------------------------------------------------------------- -// Shows note dailog, with the given resource. -// ---------------------------------------------------------------------------- -// -static void ShowNoteDlgL( TInt aResource ) - { - HBufC* temp = StringLoader::LoadLC( aResource ); - - CAknNoteDialog* dialog = new (ELeave) CAknNoteDialog( - CAknNoteDialog::EConfirmationTone, - CAknNoteDialog::ENoTimeout ); - CleanupStack::PushL( dialog ); - dialog->SetTextL( temp->Des() ); - dialog->ExecuteDlgLD( R_MCS_DISABLE_OPEN_ITEM_DLG ); - CleanupStack::Pop( dialog ); - CleanupStack::PopAndDestroy( temp ); - } - -// ---------------------------------------------------------------------------- -// Parses uid in Hexadecimal format from the given string. -// ---------------------------------------------------------------------------- -// -TUid ParseHexUidFromString(const TDesC& aUidString ) - { - TUid uid( KNullUid ); - const TInt pos( aUidString.FindF( KPrefix ) ); - - if ( pos != KErrNotFound ) - { - TLex lex( aUidString.Mid( pos + KPrefix().Length() ) ); - - // Hex parsing needs unsigned int - TUint32 value( 0 ); - const TInt parseResult( lex.Val( value, EHex ) ); - - if ( parseResult == KErrNone ) - { - TInt32 value32( value ); - uid.iUid = value32; - } - } - return uid; - } - -// ---------------------------------------------------------------------------- -// Start transition effect. User has launched the application with the given uid. -// ---------------------------------------------------------------------------- -// -void StartEffect( TUid aUid ) - { - //start a full screen effect - GfxTransEffect::BeginFullScreen( - AknTransEffect::EApplicationStart, - TRect(), - AknTransEffect::EParameterType, - AknTransEffect::GfxTransParam( aUid, - AknTransEffect::TParameter::EActivateExplicitContinue )); - } - -// ============================ MEMBER FUNCTIONS =============================== -// ---------------------------------------------------------------------------- -// CMCSPluginEngine::CMCSPluginEngine -// -// ---------------------------------------------------------------------------- -// -CCarouselPluginEngine::CCarouselPluginEngine( CCarouselPlugin& aPlugin, - const TDesC8& aInstanceUid ) - : iPlugin( aPlugin ), iInstanceUid( aInstanceUid ) - { - } - -// ---------------------------------------------------------------------------- -// CMCSPluginEngine::NewL -// -// ---------------------------------------------------------------------------- -// -CCarouselPluginEngine* CCarouselPluginEngine::NewL( CCarouselPlugin& aPlugin, - const TDesC8& aInstanceUid ) - { - CCarouselPluginEngine* self = - new( ELeave ) CCarouselPluginEngine( aPlugin, aInstanceUid ); - - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop( self ); - - return self; - } - -// ---------------------------------------------------------------------------- -// CMCSPluginEngine::ConstructL -// -// ---------------------------------------------------------------------------- -// -void CCarouselPluginEngine::ConstructL() - { - TFullName resourceFile( KResourceDrive ); - resourceFile.Append( KResPath ); - resourceFile.Append( KResourceFile ); - BaflUtils::NearestLanguageFile( - CCoeEnv::Static()->FsSession(), - resourceFile ); - iResourceOffset = - CCoeEnv::Static()->AddResourceFileL( resourceFile ); - InitL(); - StartObservingL(); - - // Get "Undefined" item - CMenuFilter* filter = CMenuFilter::NewL(); - CleanupStack::PushL( filter ); - filter->HaveAttributeL( KMenuAttrUid, KMenuAttrUndefUid ); - iUndefinedItemHeader = FindMenuItemL( *filter ); - CleanupStack::PopAndDestroy( filter ); - iUndefinedItem = CMenuItem::OpenL( iMenu, iUndefinedItemHeader ); - } - -// ---------------------------------------------------------------------------- -// CMCSPluginEngine::~CMCSPluginEngine -// -// ---------------------------------------------------------------------------- -// -CCarouselPluginEngine::~CCarouselPluginEngine() - { - StopObserving(); - - delete iPluginData; - - // Notifier close has to be before iMenu close - iNotifier.Close(); - iMenu.Close(); - delete iWatcher; - delete iNotifyWatcher; - - CCoeEnv::Static()->DeleteResourceFile( iResourceOffset ); - - delete iUndefinedItem; - } - -// --------------------------------------------------------------------------- -// CMCSPluginEngine::InitL -// -// --------------------------------------------------------------------------- -// -void CCarouselPluginEngine::InitL() - { - iMenu.OpenL( KMyMenuData ); - iPluginData = CCarouselPluginData::NewL( *this, iInstanceUid ); - iWatcher = CCarouselPluginWatcher::NewL( CCarouselPluginWatcher::EOperation ); - - TInt err( iNotifier.Open( iMenu ) ); - - if ( err == KErrNone ) - { - iNotifyWatcher = CCarouselPluginWatcher::NewL( CCarouselPluginWatcher::ENotify ); - - iNotifier.Notify( 0, - RMenuNotifier::EItemsAddedRemoved, - iNotifyWatcher->iStatus ); - iNotifyWatcher->WatchNotify( this ); - } - } - -// --------------------------------------------------------------------------- -// CMCSPluginEngine::StartObservingL -// -// --------------------------------------------------------------------------- -// -void CCarouselPluginEngine::StartObservingL() - { - // registering to mailbox db. changes observing - iMsvSession = CMsvSession::OpenAsObserverL( *this ); - } - -// --------------------------------------------------------------------------- -// CMCSPluginEngine::StopObserving -// -// --------------------------------------------------------------------------- -// -void CCarouselPluginEngine::StopObserving() - { - delete iMsvSession; - iMsvSession = NULL; - } - -// --------------------------------------------------------------------------- -// CMCSPluginEngine::MenuDataL -// -// --------------------------------------------------------------------------- -// -CCarouselData& CCarouselPluginEngine::MenuDataL( const TInt& aIndex ) - { - return iPluginData->DataItemL( aIndex ); - } - -// --------------------------------------------------------------------------- -// CMCSPluginEngine::MenuItemCount -// -// --------------------------------------------------------------------------- -// -TInt CCarouselPluginEngine::MenuItemCount() - { - return iPluginData->DataCount(); - } - -// --------------------------------------------------------------------------- -// CMCSPluginEngine::FindMenuItemL -// Returns the menu item header, which matches the given filter. -// --------------------------------------------------------------------------- -// -TMenuItem CCarouselPluginEngine::FindMenuItemL( CMenuFilter& aFilter ) - { - TMenuItem item; - const TInt root( iMenu.RootFolderL() ); - - RArray items; - CleanupClosePushL( items ); - - iMenu.GetItemsL( items, root, &aFilter, ETrue ); - - if ( items.Count() > 0 ) - { - item = items[0]; - } - - CleanupStack::PopAndDestroy( &items ); - - return item; - } - -// --------------------------------------------------------------------------- -// CMCSPluginEngine::FetchMenuItemL -// Returns the actual menu item for the given header. -// --------------------------------------------------------------------------- -// -CMenuItem* CCarouselPluginEngine::FetchMenuItemL( CCarouselData& aData ) - { - CMenuItem* item = NULL; - - TRAP_IGNORE( item = CMenuItem::OpenL( iMenu, aData.MenuItem().Id() ) ); - - if( item ) - { - return item; - } - - if( aData.MenuItem().Type() == KMenuTypeUrl ) - { - item = CreateBkmItemL( aData ); - } - else if( aData.MenuItem().Type() == KMenuTypeMailbox ) - { - item = CreateMailboxItemL( aData); - } - - return item; - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -CMenuItem* CCarouselPluginEngine::CreateBkmItemL( CCarouselData& aData ) - { - CMenuItem* item( NULL ); - if( aData.MenuItem().Id() != KErrNotFound ) - { - item = CMenuItem::CreateL( iMenu, KMenuTypeUrl, 0, 0 ); - CleanupStack::PushL( item ); - item->SetAttributeL( KMenuAttrLongName, aData.Name() ); - item->SetAttributeL( KMenuAttrIconFile, KMenuIconFile ); - item->SetAttributeL( KMenuAttrIconId, KMenuBookmarkIconId ); - item->SetAttributeL( KMenuAttrMaskId, KMenuBookmarkMaskId ); - CleanupStack::Pop( item ); - } - return item; - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -CMenuItem* CCarouselPluginEngine::CreateMailboxItemL( CCarouselData& aData ) - { - CMenuItem* item( NULL ); - if( aData.MenuItem().Id() != KErrNotFound ) - { - item = CMenuItem::CreateL( iMenu, KMenuTypeMailbox, 0, 0 ); - CleanupStack::PushL( item ); - item->SetAttributeL( KMenuAttrLongName, aData.Name() ); - item->SetAttributeL( KMenuAttrIconFile, KMenuIconFile ); - item->SetAttributeL( KMenuAttrIconId, KMenuMailboxIconId ); - item->SetAttributeL( KMenuAttrMaskId, KMenuMailboxMaskId ); - CleanupStack::Pop( item ); - } - return item; - } - -// --------------------------------------------------------------------------- -// CMCSPluginEngine::ItemIconL -// Returns MCS default icon if attribute is 'icon' else parses the -// skin definition from attribute and sets attributes to aMenuItem. -// --------------------------------------------------------------------------- -// -CGulIcon* CCarouselPluginEngine::ItemIconL( CMenuItem* aMenuItem, - const TDesC& aAttr ) - { - - CMenuItem* menuItem; - - // check if item exists in MCS - if ( aMenuItem ) - { - TUint32 flags = aMenuItem->Flags(); - TUint32 isHidden = flags & TMenuItem::EHidden; - TUint32 isMissing = flags & TMenuItem::EMissing; - - if ( iUndefinedItem && ( isHidden || isMissing ) ) - { - menuItem = iUndefinedItem; - } - else - { - menuItem = aMenuItem; - } - } - else - { - // item not found in MCS. Use Undefined Icon - menuItem = iUndefinedItem; - } - - CAknIcon* icon( NULL ); - CGulIcon* gIcon( NULL ); - TBool exists( ETrue ); - - if ( aAttr != KIcon ) - { - // Resolve secondary icon definition from attribute - TPtrC iconDef( menuItem->GetAttributeL( aAttr, exists ) ); - - if ( exists ) - { - exists = ConstructMenuItemForIconL( iconDef, *menuItem ); - } - } - - if ( exists ) - { - icon = MenuIconUtility::GetItemIconL( *menuItem ); - - if ( icon ) - { - CleanupStack::PushL( icon ); - - gIcon = CGulIcon::NewL( icon->Bitmap(), icon->Mask() ); - - // Detach and delete - icon->SetBitmap( NULL ); - icon->SetMask( NULL ); - - CleanupStack::PopAndDestroy( icon ); - } - } - - return gIcon; - } - -// --------------------------------------------------------------------------- -// CMCSPluginEngine::ItemTextL -// Returns text string for the given attribute -// --------------------------------------------------------------------------- -// -TPtrC CCarouselPluginEngine::ItemTextL( CMenuItem* aMenuItem, const TDesC& aAttr ) - { - - CMenuItem* menuItem; - - // check if item exists in MCS - if ( aMenuItem ) - { - TUint32 flags = aMenuItem->Flags(); - TUint32 isHidden = flags & TMenuItem::EHidden; - TUint32 isMissing = flags & TMenuItem::EMissing; - - // if item is hidden or missing (mmc card removed) - // use "Undefined" text instead - if ( iUndefinedItem && ( isHidden || isMissing ) ) - { - menuItem = iUndefinedItem; - } - else - { - menuItem = aMenuItem; - } - } - else - { - // item not found in MCS. Use "Undefined" text - menuItem = iUndefinedItem; - } - - TBool exists( KErrNotFound ); - - TPtrC name( menuItem->GetAttributeL( aAttr, exists ) ); - - if ( exists ) - { - return name; - } - - return KNullDesC(); - } - -// --------------------------------------------------------------------------- -// CMCSPluginEngine::LaunchItemL -// Calls the open command for the given menu item header -// --------------------------------------------------------------------------- -// -void CCarouselPluginEngine::LaunchItemL( const TInt& aIndex ) - { - if ( iBackupRestore ) - { - ShowNoteDlgL( R_MCS_DISABLE_OPEN_ITEM ); - return; - } - - CCarouselData& dataItem( iPluginData->DataItemL( aIndex ) ); - // run item based on its type - TPtrC type( dataItem.MenuItem().Type()); - - // run folder - if ( type == KMenuTypeFolder ) - { - LaunchFolderItemL( dataItem ); - } - else if( type == KMenuTypeUrl ) - { - LaunchBookmarkItemL( dataItem ); - } - else if( type == KMenuTypeMailbox ) - { - LaunchMailboxItemL( dataItem ); - } - else - { - LaunchMCSItemL( dataItem ); - } - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -void CCarouselPluginEngine::LaunchFolderItemL( CCarouselData& aData ) - { - CMenuItem* item = NULL; - TRAP_IGNORE( item = CMenuItem::OpenL( iMenu, aData.MenuItem().Id() ) ); - - // item does not exist at all in MCS - if ( item == NULL ) - { - ShowNoteDlgL( R_MCS_DISABLE_OPEN_ITEM_MISSING ); - return; - } - - CleanupStack::PushL( item ); - - StartEffect( KMMUid ); - - // message for MM application - HBufC8* message; - - // prepare message for launching folder - TBool hasApplicationGroupName( EFalse ); - - TPtrC applicationGroupName( item->GetAttributeL( - KApplicationGroupName, hasApplicationGroupName ) ); - - if ( !hasApplicationGroupName ) - { - return; - } - - message = HBufC8::NewLC( KMMApplication().Length() + - KSetFocusString().Length() + - applicationGroupName.Length() + - KHideExit2().Length() ); - - message->Des().Copy( KMMApplication ); - message->Des().Append( KSetFocusString ); - message->Des().Append( applicationGroupName ); - message->Des().Append( KHideExit2 ); - - // find MM application - TApaTaskList taskList( CCoeEnv::Static()->WsSession() ); - TApaTask task( taskList.FindApp( KMMUid ) ); - - if ( task.Exists() ) - { - // MM is already running in background - send APA Message - task.SendMessage( - TUid::Uid( KUidApaMessageSwitchOpenFileValue ), *message ); - } - else - { - // MM not running yet - use Command Line Tail - RApaLsSession appArcSession; - CleanupClosePushL( appArcSession ); - - User::LeaveIfError( appArcSession.Connect() ); - - TApaAppInfo appInfo; - TInt err( appArcSession.GetAppInfo( appInfo, KMMUid ) ); - - if ( err == KErrNone ) - { - CApaCommandLine* cmdLine = CApaCommandLine::NewLC(); - cmdLine->SetExecutableNameL( appInfo.iFullName ); - cmdLine->SetCommandL( EApaCommandRun ); - cmdLine->SetTailEndL( *message ); - appArcSession.StartApp( *cmdLine ); - CleanupStack::PopAndDestroy( cmdLine ); - } - CleanupStack::PopAndDestroy( &appArcSession ); - } - CleanupStack::PopAndDestroy( message ); - CleanupStack::PopAndDestroy( item ); - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -void CCarouselPluginEngine::LaunchBookmarkItemL( CCarouselData& aData ) - { - StartEffect( KBrowserUid ); - - CSchemeHandler* urlHandler = CSchemeHandler::NewL( aData.Value()); - CleanupStack::PushL( urlHandler ); - urlHandler->HandleUrlStandaloneL(); - CleanupStack::PopAndDestroy( urlHandler ); - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -void CCarouselPluginEngine::LaunchMailboxItemL( CCarouselData& aData ) - { - TInt id( aData.MenuItem().Id()); - if ( id == KErrNotFound ) - { - ShowNoteDlgL( R_MCS_DISABLE_OPEN_ITEM_MISSING ); - return; - } - - StartEffect( KMCSCmailUidValue ); - - TUid uId = TUid::Uid( id ); - const TVwsViewId viewId( KMCSCmailUidValue, KMCSCmailMailboxViewIdValue ); - CVwsSessionWrapper* vwsSession = CVwsSessionWrapper::NewL(); - vwsSession->CreateActivateViewEvent( viewId, uId, KNullDesC8() ); - delete vwsSession; - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -void CCarouselPluginEngine::LaunchMCSItemL( CCarouselData& aData ) - { - if( iWatcher->IsActive()) - { - return; - } - CMenuItem* item = NULL; - TRAP_IGNORE( item = CMenuItem::OpenL( iMenu, aData.MenuItem().Id() ) ); - - // item does not exist at all in MCS - if ( item == NULL ) - { - ShowNoteDlgL( R_MCS_DISABLE_OPEN_ITEM_MISSING ); - return; - } - - CleanupStack::PushL( item ); - - TBool attrExists = ETrue; - TPtrC uid = item->GetAttributeL( KMenuAttrUid, attrExists ); - - // trying to run hidden or missing application (e.g. unistalled app - // or app on MMC which was removed ) - // -> We display a note for a user that this is not possible - TUint32 isHidden = item->Flags() & TMenuItem::EHidden; - TUint32 isMissing = item->Flags() & TMenuItem::EMissing; - - if ( ( attrExists && uid == KMenuAttrUndefUid ) || isHidden || isMissing ) - { - CleanupStack::PopAndDestroy( item ); - ShowNoteDlgL( R_MCS_DISABLE_OPEN_ITEM_MISSING ); - return; - } - - if ( attrExists ) - { - StartEffect( ParseHexUidFromString( uid )); - } - - // run application/shortcut - CMenuOperation* operation( item->HandleCommandL( - KMenuCmdOpen, KNullDesC8, iWatcher->iStatus ) ); - iWatcher->Watch( operation ); - CleanupStack::PopAndDestroy( item ); - } - -// --------------------------------------------------------------------------- -// CMCSPluginEngine::HandleNotifyL -// Handle the change in Menu Content -// --------------------------------------------------------------------------- -// -void CCarouselPluginEngine::HandleNotifyL() - { - TInt count( iPluginData->DataCount() ); - - for ( TInt i = 0; i < count; i++ ) - { - CCarouselData& data( iPluginData->DataItemL( i ) ); - data.SetDirty( ETrue ); - } - - iPlugin.PublishL(); - - // Notification must be activated again - iNotifyWatcher->Cancel(); - iNotifier.Notify( 0, - RMenuNotifier::EItemsAddedRemoved, - iNotifyWatcher->iStatus ); - - iNotifyWatcher->WatchNotify( this ); - } - -// --------------------------------------------------------------------------- -// CMCSPluginEngine::HandleSessionEventL -// Handles an event from the message server. -// --------------------------------------------------------------------------- -// -void CCarouselPluginEngine::HandleSessionEventL( TMsvSessionEvent aEvent, - TAny* aArg1, TAny* /*aArg2*/, TAny* /*aArg3*/) - { - switch ( aEvent ) - { - case EMsvEntriesDeleted: - { - CMsvEntrySelection* sel = static_cast( aArg1 ); - TInt count( sel->Count()); - for( TInt i = 0; i < count; i++ ) - { - iPluginData->RemoveDataL( sel->At( i ) ); - } - } - break; - default: - break; - } - } - -// --------------------------------------------------------------------------- -// CMCSPluginEngine::SetBackupRestore -// -// --------------------------------------------------------------------------- -// -void CCarouselPluginEngine::SetBackupRestore( TBool aBackupRestore ) - { - iBackupRestore = aBackupRestore; - } - -// --------------------------------------------------------------------------- -// CMCSPluginEngine::ShowSettingsL -// Launch General Settings plugin -// --------------------------------------------------------------------------- -// -void CCarouselPluginEngine::ShowSettingsL() - { - TUid uid = {AI_UID_ECOM_IMPLEMENTATION_SETTINGS_MCSPLUGIN}; - - CGSLauncher* launcher = CGSLauncher::NewLC(); - launcher->LaunchGSViewL ( uid, KHomescreenUid, iInstanceUid ); - CleanupStack::PopAndDestroy( launcher ); - } - -// --------------------------------------------------------------------------- -// CMCSPluginEngine::ConstructMenuItemForIconL -// Syntax: skin(major minor):mif(filename bimapId maskId) -// --------------------------------------------------------------------------- -// -TBool CCarouselPluginEngine::ConstructMenuItemForIconL( const TDesC& aPath, - CMenuItem& aMenuItem ) - { - TInt pos( aPath.Locate( ':' ) ); - if ( pos == KErrNotFound ) - { - pos = aPath.Length(); - } - TPtrC skin( aPath.Left( pos ) ); - TInt sf( skin.FindF( KSkin ) ); - - if ( sf == KErrNotFound ) - { - return EFalse; - } - - TPtrC temp( skin.Mid( sf + KSkin().Length() ) ); - TLex input( temp ); - input.SkipSpace(); - - if ( !input.Eos() && input.Peek() == '(' ) - { - input.Inc(); - } - TPtrC majorId( NextIdToken( input ) ); - TPtrC minorId( NextIdToken( input ) ); - - aMenuItem.SetAttributeL( KMenuAttrIconSkinMajorId, majorId ); - aMenuItem.SetAttributeL( KMenuAttrIconSkinMinorId, minorId ); - - if ( aPath.Length() > pos && - ( aPath.Mid( pos + 1 ).FindF( KMif ) != KErrNotFound ) ) - { - TPtrC mif( aPath.Mid( pos + 1 ) ); - TInt mf( mif.FindF( KMif ) ); - - TLex input1( mif.Mid( mf + KMif().Length() ) ); - input1.SkipSpace(); - - if ( !input1.Eos() && input1.Peek() == '(' ) - { - input1.Inc(); - } - - TPtrC file( NextIdToken( input1 ) ); - TPtrC bitmapId( NextIdToken( input1 ) ); - TPtrC maskId( NextIdToken( input1 ) ); - - aMenuItem.SetAttributeL( KMenuAttrIconFile, file ); - aMenuItem.SetAttributeL( KMenuAttrIconId, bitmapId ); - aMenuItem.SetAttributeL( KMenuAttrMaskId, maskId ); - } - - return ETrue; - } - -// End of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/publisher/src/carouselpluginwatcher.cpp --- a/idlehomescreen/examples/carouselwidgetexample/publisher/src/carouselpluginwatcher.cpp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,124 +0,0 @@ -/* -* Copyright (c) 2009 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Menu item operation watcher. -* -*/ - -#include -#include "carouselpluginwatcher.h" -#include "carouselpluginengine.h" - -// --------------------------------------------------------------------------- -// two-phased constructor -// --------------------------------------------------------------------------- -CCarouselPluginWatcher* CCarouselPluginWatcher::NewL( const Type& aType ) - { - CCarouselPluginWatcher* self = new (ELeave) CCarouselPluginWatcher( aType ); - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop( self ); - return self; - } - -// --------------------------------------------------------------------------- -// default constructor -// --------------------------------------------------------------------------- -CCarouselPluginWatcher::CCarouselPluginWatcher( const Type& aType ) - : CActive( CActive::EPriorityStandard ), - iType( aType ) - { - CActiveScheduler::Add( this ); - } - -// --------------------------------------------------------------------------- -// destructor -// --------------------------------------------------------------------------- -CCarouselPluginWatcher::~CCarouselPluginWatcher() - { - Cancel(); - } - -// --------------------------------------------------------------------------- -// second phase constructor -// --------------------------------------------------------------------------- -void CCarouselPluginWatcher::ConstructL() - { - - } - -// --------------------------------------------------------------------------- -// Watch Async -// --------------------------------------------------------------------------- -void CCarouselPluginWatcher::Watch( CMenuOperation* aOperation) - { - __ASSERT_DEBUG( KRequestPending == iStatus.Int(), User::Invariant() ); - //__ASSERT_DEBUG( !iOperation, User::Invariant() ); - iOperation = aOperation; - SetActive(); - } - -// --------------------------------------------------------------------------- -// Watch Async -// --------------------------------------------------------------------------- -void CCarouselPluginWatcher::WatchNotify( MCarouselPluginWatcherObserver* aObserver ) - { - __ASSERT_DEBUG( KRequestPending == iStatus.Int(), User::Invariant() ); - //__ASSERT_DEBUG( !iOperation, User::Invariant() ); - iObserver = aObserver; - SetActive(); - } - -void CCarouselPluginWatcher::StopAndWatch( CMenuOperation* aOperation, - CActiveSchedulerWait* aWaitScheduler ) - { - __ASSERT_DEBUG( KRequestPending == iStatus.Int(), User::Invariant() ); - iWaitScheduler = aWaitScheduler; - iOperation = aOperation; - SetActive(); - } - -// --------------------------------------------------------------------------- -// Inherited from CActive class -// --------------------------------------------------------------------------- -void CCarouselPluginWatcher::RunL() - { - delete iOperation; - iOperation = NULL; - - if( iType == ENotify ) - { - iObserver->HandleNotifyL(); - } - if ( iWaitScheduler && iWaitScheduler->IsStarted() ) - { - Cancel(); - iWaitScheduler->AsyncStop(); - } - //CActiveScheduler::Stop(); - } - -// --------------------------------------------------------------------------- -// Inherited from CActive class -// --------------------------------------------------------------------------- -void CCarouselPluginWatcher::DoCancel() - { - delete iOperation; - iOperation = NULL; - } - -TInt CCarouselPluginWatcher::GetStatus() - { - return iStatus.Int(); - } - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/renderer/data/carouselwidget.rss --- a/idlehomescreen/examples/carouselwidgetexample/renderer/data/carouselwidget.rss Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,41 +0,0 @@ -/* - * Copyright (c) 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" - * which accompanies this distribution, and is available - * at the URL "http://www.eclipse.org/legal/epl-v10.html". - * - * Initial Contributors: - * Nokia Corporation - initial contribution. - * - * Contributors: - * - * Description: Carousel widget for Symbian Homescreen - * - */ - -#include - -RESOURCE REGISTRY_INFO theInfo -{ -dll_uid = 0xEabba432; -interfaces = - { - INTERFACE_INFO - { - interface_uid = 0x200286DF; - implementations = - { - IMPLEMENTATION_INFO - { - implementation_uid = 0xEabba433; - version_no = 1; - display_name = "CarouselWidget"; - default_data = "carousel"; - opaque_data = ""; - } - }; - } - }; -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/renderer/group/bld.inf --- a/idlehomescreen/examples/carouselwidgetexample/renderer/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -/* - * Copyright (c) 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" - * which accompanies this distribution, and is available - * at the URL "http://www.eclipse.org/legal/epl-v10.html". - * - * Initial Contributors: - * Nokia Corporation - initial contribution. - * - * Contributors: - * - * Description: Carousel widget for Symbian Homescreen - * - */ - - -#include - -PRJ_PLATFORMS -ARMV5 WINSCW - -PRJ_EXPORTS - -../rom/carouselwidget.iby CORE_MW_LAYER_IBY_EXPORT_PATH(carouselwidget.iby) - -PRJ_MMPFILES - -carouselwidget.mmp diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/renderer/group/carouselwidget.mmp --- a/idlehomescreen/examples/carouselwidgetexample/renderer/group/carouselwidget.mmp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,61 +0,0 @@ -/* - * Copyright (c) 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" - * which accompanies this distribution, and is available - * at the URL "http://www.eclipse.org/legal/epl-v10.html". - * - * Initial Contributors: - * Nokia Corporation - initial contribution. - * - * Contributors: - * - * Description: Carousel widget for Symbian Homescreen - * - */ - -#include -#include - -TARGET carouselwidget.dll -TARGETTYPE PLUGIN -UID 0x10009d8d 0xEabba432 - -CAPABILITY CAP_ECOM_PLUGIN - -EPOCALLOWDLLDATA - -SOURCEPATH ../src -SOURCE carouselwidget.cpp - -USERINCLUDE ../inc - -MW_LAYER_SYSTEMINCLUDE -APP_LAYER_SYSTEMINCLUDE - -SOURCEPATH ../data -START RESOURCE carouselwidget.rss -HEADER -TARGETPATH ECOM_RESOURCE_DIR -END - -LIBRARY extrenderingplugin.lib -LIBRARY euser.lib -LIBRARY eikcore.lib -LIBRARY cone.lib -LIBRARY xn3layoutengine.lib -LIBRARY xn3utils.lib -LIBRARY xn3domdocument.lib -LIBRARY avkon.lib -LIBRARY ws32.lib -LIBRARY fbscli.lib -LIBRARY bitgdi.lib -LIBRARY egul.lib -LIBRARY bafl.lib -LIBRARY eikcoctl.lib -LIBRARY eikctl.lib -LIBRARY gdi.lib -LIBRARY aknicon.lib -LIBRARY aknphysics.lib -LIBRARY AknSkins.lib diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/renderer/inc/carouselwidget.h --- a/idlehomescreen/examples/carouselwidgetexample/renderer/inc/carouselwidget.h Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,253 +0,0 @@ -/* - * Copyright (c) 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" - * which accompanies this distribution, and is available - * at the URL "http://www.eclipse.org/legal/epl-v10.html". - * - * Initial Contributors: - * Nokia Corporation - initial contribution. - * - * Contributors: - * - * Description: Carousel widget for Symbian Homescreen - * - */ - -#ifndef _CCAROUSELWIDGET_H -#define _CCAROUSELWIDGET_H - -// INCLUDES -#include -#include - -class MXnExtEventHandler; -class CCarouselItem; -class CAknPhysics; - -// Class declaration -NONSHARABLE_CLASS( CCarouselItem ) : public CBase - { -public: - - // Constructors - - /** - * C++ default constructor. - */ -CCarouselItem(/* CCarouselEditor& aEditor,*/ CFbsBitmap* aBitmap, CFbsBitmap* aMask); - - /** - * Destructor. - */ - ~CCarouselItem(); - - void SetTextL( const TDesC& aText ); - - CFbsBitmap* iBitmap; - CFbsBitmap* iMask; -private: - - HBufC* iText; - }; - -// CLASS DECLARATION - -/** -* -*/ -class CCarouselWidget : public CXnExtRenderingPluginAdapter, - public MAknPhysicsObserver - { - -public: // Constructors and destructor - - /** - * Two-phased constructor. - */ - static CCarouselWidget* NewL(); - - /** - * Destructor. - */ - virtual ~CCarouselWidget(); - -public: // from base classes - - /** - * From CCoeControl Handles key events. - * @since Series 60 3.1 - * @param aKeyEvent Key event. - * @param aType Event type. - * @return Key response - */ - TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, - TEventCode aType ); - - /** - * From CCoeControl - */ - void SetContainerWindowL( const CCoeControl &aContainer ); - - /** - * See CCoeControl documentation - */ - void HandlePointerEventL( const TPointerEvent& aPointerEvent ); - - /** - * From CCoeControl, CountComponentControls - * @return Number of component controls - */ - TInt CountComponentControls() const; - - /** - * From CCoeControl, ComponentControl - * @param aIndex index of component control - * @return pointer to the specified control - */ - CCoeControl* ComponentControl( TInt aIndex ) const; - - /** - * Skin change notification. - * See CXnControlAdapter documentation - * @since Series 60 3.1 - */ - void SkinChanged(); - - /** - * See CXnControlAdapter documentation - */ - void EnterPowerSaveModeL(); - - /** - * See CXnControlAdapter documentation - */ - void ExitPowerSaveModeL(); - - // From MAknPhysicsObserver - /** - * Physics emulation has moved the view. - */ - void ViewPositionChanged( const TPoint& aNewPosition, - TBool aDrawNow, TUint aFlags ); - - /** - * Called when emulation ended. - */ - void PhysicEmulationEnded(); - - /** - * Returns the observer view position. - * - * @return Physics observer view position. - */ - TPoint ViewPosition() const; - -protected: // from base classes - - /** - * From CCoeControl - * Called if focus changes - */ - void FocusChanged( TDrawNow aDrawNow ); - - /** - * From CCoeControl - * Called if position or size changes - */ - void SizeChanged(); - - /** - * Sets the external event handler interface. - * - * @since Series 60 5.2 - * @param aEventHandler Event handler interface. - */ - void SetEventHandler( MXnExtEventHandler* aEventHandler ); - - /** - * Routes the data stream for the external rendering plugin. - * - * @since Series 60 5.2 - * @param aData Data stream. - * @param aType Type of the stream. - * @param aIndex Index of the data. - */ - void SetDataL( const TDesC8& aData, const TDesC& aType, TInt aIndex ); - -private: // from base classes - - /** - * From CCoeControl, Draw - * See CCoeControl documentation - */ - void Draw( const TRect& aRect ) const; - -public: - - /** - * C++ default constructor. - */ - CCarouselWidget(); - - /** - * By default Symbian 2nd phase constructor is private. - */ - void ConstructL(); - - TRect ViewPort() {return iViewPort; }; - -private: - void InitPhysicEngineL(); - - TInt ItemIndex( TPoint& aPoint ); - - void LaunchItemL( TPoint& aPosition ); - -private: // Member data - /** - * Physics. - * Own. - */ - CAknPhysics* iPhysics; - - MXnExtEventHandler* iEventHandler; // not own - - /** - * Pointer down start time. - */ - TTime iStartTime; - - /** - * Start (pointer down) position. - */ - TPoint iStartPosition; - - /** - * Current pointer position. - */ - TPoint iStylusPosition; - - /** - * Current view position. - */ - TPoint iCurrentPosition; - - /** - * Adjusted view position - */ - TPoint iViewPosition; - - /** - * Visible area, i.e. area of the scollable control that is to be drawn. - */ - TRect iViewPort; - - RPointerArray iStripeItems; - - TBool iDrawHighlight; - }; - -#endif // _CCAROUSELWIDGET_H -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/renderer/rom/carouselwidget.iby --- a/idlehomescreen/examples/carouselwidgetexample/renderer/rom/carouselwidget.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,25 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* IBY file for Carousel Widget -* -*/ - -#ifndef CAROUSELWIDGET_IBY -#define CAROUSELWIDGET_IBY - -ECOM_PLUGIN(carouselwidget.dll, carouselwidget.rsc) - -#endif // CAROUSELWIDGET_IBY - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/renderer/src/carouselwidget.cpp --- a/idlehomescreen/examples/carouselwidgetexample/renderer/src/carouselwidget.cpp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,443 +0,0 @@ -/* - * Copyright (c) 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" - * which accompanies this distribution, and is available - * at the URL "http://www.eclipse.org/legal/epl-v10.html". - * - * Initial Contributors: - * Nokia Corporation - initial contribution. - * - * Contributors: - * - * Description: Carousel widget for Symbian Homescreen - * - */ - -#include -#include -#include -#include -#include -#include -#include "carouselwidget.h" - -const TSize KIconSize(70,70); -const TInt KItemPadding( 6 ); - -_LIT( KLaunchByIndex, "LaunchByIndex("); - -template< class PtrT > inline PtrT* UnpackPtr( - const TDesC8& aBuf ) - { - TAny* result( NULL ); - - if ( aBuf.Size() == sizeof( TAny* ) ) - { - // Effectively writes aBuf contents to result - TPckg< TAny* >( result ).Copy( aBuf ); - } - - return static_cast< PtrT* >( result ); - } -// ============================ MEMBER FUNCTIONS =============================== -CCarouselItem::CCarouselItem( CFbsBitmap* aBitmap, CFbsBitmap* aMask) - :iBitmap( aBitmap ), iMask( aMask ) - { - } - -CCarouselItem::~CCarouselItem() - { - delete iBitmap; - delete iMask; - delete iText; - } - -void CCarouselItem::SetTextL( const TDesC& aText ) - { - delete iText; - iText = NULL; - iText = aText.AllocL(); - } - -// ============================ MEMBER FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// Symbian static 1st phase constructor -// ----------------------------------------------------------------------------- -// -CCarouselWidget* CCarouselWidget::NewL() - { - CCarouselWidget* self = new( ELeave ) CCarouselWidget(); - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop( self ); - return self; - } - -// ----------------------------------------------------------------------------- -// C++ destructor -// ----------------------------------------------------------------------------- -// -CCarouselWidget::~CCarouselWidget() - { - delete iPhysics; - iStripeItems.ResetAndDestroy(); - //delete iCover; - } - -// ----------------------------------------------------------------------------- -// Symbian 2nd phase constructor can leave. -// ----------------------------------------------------------------------------- -// -void CCarouselWidget::ConstructL() - { - - } - -// ----------------------------------------------------------------------------- -// Handles key events. -// ----------------------------------------------------------------------------- -// -TKeyResponse CCarouselWidget::OfferKeyEventL( const TKeyEvent& /*aKeyEvent*/, - TEventCode /*aType*/ ) - { - return EKeyWasConsumed; - } - -// ----------------------------------------------------------------------------- -// Set window for this control -// ----------------------------------------------------------------------------- -// -void CCarouselWidget::SetContainerWindowL( const CCoeControl &aContainer ) - { - CCoeControl::SetContainerWindowL( aContainer ); - } - -// ----------------------------------------------------------------------------- -// (other items were commented in a header). -// ----------------------------------------------------------------------------- -// -void CCarouselWidget::HandlePointerEventL( const TPointerEvent& aPointerEvent ) - { - if( !iPhysics ) - { - return; - } - TPoint stylusPos( aPointerEvent.iPosition ); - switch( aPointerEvent.iType ) - { - case TPointerEvent::EButton1Down: - { - iPhysics->StopPhysics(); - iPhysics->ResetFriction(); - iStartPosition = stylusPos; - iStartTime.HomeTime(); - iStylusPosition = stylusPos; - iDrawHighlight = ETrue; - } - break; - - case TPointerEvent::EButton1Up: - { - iDrawHighlight = EFalse; - TInt distance = iStartPosition.iX - stylusPos.iX; - if( Abs(distance) <= iPhysics->DragThreshold() ) - { - LaunchItemL( stylusPos ); - } - else - { - TPoint drag( distance, 0 ); - iPhysics->StartPhysics( drag, iStartTime ); - } } - break; - case TPointerEvent::EDrag: - case TPointerEvent::EMove: - { - TPoint dragTh( iStartPosition - stylusPos ); - if( Abs(dragTh.iX) > iPhysics->DragThreshold() || - Abs(dragTh.iY) > iPhysics->DragThreshold()) - { - iDrawHighlight = EFalse; - } - TInt deltaX( iStylusPosition.iX - stylusPos.iX ); - iStylusPosition = stylusPos; - TPoint deltaPoint( deltaX, 0 ); - iPhysics->RegisterPanningPosition( deltaPoint ); - } - break; - default: - break; - } - - CCoeControl::HandlePointerEventL( aPointerEvent ); - } - -// ----------------------------------------------------------------------------- -// Returns the number of component controls -// ----------------------------------------------------------------------------- -// -TInt CCarouselWidget::CountComponentControls() const - { - return 0; - } - -// ----------------------------------------------------------------------------- -// Returns the specified control -// ----------------------------------------------------------------------------- -// -CCoeControl* CCarouselWidget::ComponentControl( TInt /*aIndex*/ ) const - { - return NULL; - } - -// ----------------------------------------------------------------------------- -// Skin change notification. -// ----------------------------------------------------------------------------- -// -void CCarouselWidget::SkinChanged() - { - } - -// ----------------------------------------------------------------------------- -// CCarouselWidget::EnterPowerSaveModeL -// -// ----------------------------------------------------------------------------- -// -void CCarouselWidget::EnterPowerSaveModeL() - { - } - -// ----------------------------------------------------------------------------- -// CCarouselWidget::ExitPowerSaveModeL -// -// ----------------------------------------------------------------------------- -// -void CCarouselWidget::ExitPowerSaveModeL() - { - } - -// ----------------------------------------------------------------------------- -// Called if focus changes -// ----------------------------------------------------------------------------- -// -void CCarouselWidget::FocusChanged( TDrawNow /*aDrawNow*/ ) - { - } - -// ----------------------------------------------------------------------------- -// Called if position or size changes -// ----------------------------------------------------------------------------- -// -void CCarouselWidget::SizeChanged() - { - iViewPort = Rect(); - TRAP_IGNORE( InitPhysicEngineL() ); - DrawNow(); - } - -// ----------------------------------------------------------------------------- -// Sets the external event handler interface. -// ----------------------------------------------------------------------------- -// -void CCarouselWidget::SetEventHandler( MXnExtEventHandler* aEventHandler ) - { - iEventHandler = aEventHandler; - } - -// ----------------------------------------------------------------------------- -// Data stream from the publisher -// ----------------------------------------------------------------------------- -// -void CCarouselWidget::SetDataL( const TDesC8& aData, const TDesC& aType, TInt aIndex ) - { - /// Unpack the data stream, works because publisher is in same process. - CGulIcon* icon( UnpackPtr( aData ) ); - CleanupStack::PushL( icon ); - AknIconUtils::SetSize( icon->Bitmap(), KIconSize); - - CCarouselItem* item = new ( ELeave ) CCarouselItem(/* *iEditor,*/ icon->Bitmap(), icon->Mask() ); - CleanupStack::PopAndDestroy( icon ); - - if( aType == _L("Appstripe/widget")) - { - if( iStripeItems.Count() <= aIndex ) - { - iStripeItems.AppendL( item ); - InitPhysicEngineL(); - } - else - { - CCarouselItem* citem = iStripeItems[ aIndex ]; - delete citem; - iStripeItems.Remove( aIndex ); - iStripeItems.Insert( item, aIndex ); - } - DrawNow(); - } - } - -// ----------------------------------------------------------------------------- -// Draws the carousel component -// ----------------------------------------------------------------------------- -// -void CCarouselWidget::Draw( const TRect& /*aRect*/ ) const - { - CWindowGc& gc( SystemGc() ); - gc.SetClippingRect( iViewPort ); - TRect bitmapRect( TPoint(0,0), KIconSize ); - TPoint point( iViewPort.iTl ); - point.iX -= iViewPosition.iX; - - TInt count = iStripeItems.Count(); - for( TInt i = 0; i < count; i++ ) - { - CFbsBitmap* bitmap = iStripeItems[i]->iBitmap; - CFbsBitmap* mask = iStripeItems[i]->iMask; - - TRect drawRect( point, KIconSize ); - if( iDrawHighlight && drawRect.Contains( iStylusPosition )) - { - TRect innerRect( drawRect ); - innerRect.Shrink( 5, 5 ); - - MAknsSkinInstance* skin( AknsUtils::SkinInstance() ); - AknsDrawUtils::DrawFrame( skin, gc, drawRect, innerRect, - KAknsIIDQsnFrHomePressed, KAknsIIDDefault ); - } - if( iViewPort.Contains( drawRect.iBr )|| - iViewPort.Contains( drawRect.iTl )) - { - gc.BitBltMasked( point, bitmap, bitmapRect, mask, EFalse); - } - point.iX += KIconSize.iWidth + KItemPadding; - } - } - -// --------------------------------------------------------------------------- -// ViewPositionChanged -// --------------------------------------------------------------------------- -// -void CCarouselWidget::ViewPositionChanged( - const TPoint& aNewPosition, TBool aDrawNow, TUint /*aFlags*/ ) - { - iCurrentPosition = aNewPosition; - iViewPosition.iX = aNewPosition.iX - iViewPort.Width()/2; - if( aDrawNow ) - { - DrawNow( iViewPort ); - } - } - -// --------------------------------------------------------------------------- -// PhysicEmulationEnded -// --------------------------------------------------------------------------- -// -void CCarouselWidget::PhysicEmulationEnded() - { - } - -// --------------------------------------------------------------------------- -// ViewPosition -// --------------------------------------------------------------------------- -// -TPoint CCarouselWidget::ViewPosition() const - { - return iCurrentPosition; - } - -// --------------------------------------------------------------------------- -// InitPhysicEngineL -// --------------------------------------------------------------------------- -// -void CCarouselWidget::InitPhysicEngineL() - { - // Init physic engine - if ( !iPhysics && CAknPhysics::FeatureEnabled() ) - { - iPhysics = CAknPhysics::NewL( *this, this ); - } - if( !iPhysics ) - { - return; - } - TSize viewPortSize = iViewPort.Size(); - TInt totalWidth( iStripeItems.Count() * (KIconSize.iWidth + KItemPadding )); - TSize totalSize( totalWidth, viewPortSize.iHeight ); - iPhysics->InitPhysicsL( totalSize, viewPortSize, ETrue ); - iCurrentPosition = TPoint( viewPortSize.iWidth / 2, viewPortSize.iHeight / 2 ); - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -TInt CCarouselWidget::ItemIndex( TPoint& aPoint ) - { - TPoint itemStartPoint( iViewPort.iTl ); - itemStartPoint.iX -= iViewPosition.iX; - - TRect dropRect( itemStartPoint, KIconSize ); - dropRect.Resize( KItemPadding, 0 ); - TInt index( 0 ); - do - { - if( dropRect.Contains( aPoint )) - { - return index; - } - dropRect.Move( KIconSize.iWidth+KItemPadding, 0); - index++; - } - while( index < iStripeItems.Count() ); - return KErrNotFound; - } - -// ----------------------------------------------------------------------------- -// Launches the item, which is in aPosition -// ----------------------------------------------------------------------------- -// -void CCarouselWidget::LaunchItemL( TPoint& aPosition ) - { - TInt index = ItemIndex( aPosition ); - // carousel plugin expects indexes to start from 1 - index++; - TInt len( KLaunchByIndex().Length()+3 ); - TBuf<17> event; - event.Append( KLaunchByIndex ); - event.AppendNum( index ); - event.Append( _L(")")); - iEventHandler->HandleEventL( event, _L8("Appstripe")); - } - -// ----------------------------------------------------------------------------- -// C++ default constructor -// ----------------------------------------------------------------------------- -// -CCarouselWidget::CCarouselWidget() - { - } - -// ============================ PUBLIC FUNCTIONS =============================== -const TImplementationProxy KImplementationTable[] = - { -#ifdef __EABI__ - IMPLEMENTATION_PROXY_ENTRY( 0xEabba433, CCarouselWidget::NewL ) -#else - { { 0xEabba433 }, CCarouselWidget::NewL } -#endif - }; - -// ----------------------------------------------------------------------------- -// Returns the list of implementations provided by the plugin -// ----------------------------------------------------------------------------- -// -EXPORT_C const TImplementationProxy* ImplementationGroupProxy( - TInt& aTableCount ) - { - aTableCount = sizeof( KImplementationTable ) / sizeof( TImplementationProxy ); - return KImplementationTable; - } - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/sis/carousel.pkg --- a/idlehomescreen/examples/carouselwidgetexample/sis/carousel.pkg Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,33 +0,0 @@ -; Installation file for carousel widget -; -; -; UID is the dll's UID -; -#{"Carousel Shortcut"},(0xE001CB57),1,0,0 - - -;Localised Vendor name -%{"HSExample"} - -;Unique Vendor name -:"HSExample" - -;Supports Series 60 v 5.0 -[0x1028315F], 1, 0, 0, {"S60ProductID"} - -;Publisher plug-in -"/epoc32/release/armv5/urel/carouselplugin.dll" -"c:/sys/bin/carouselplugin.dll" -"/epoc32/data/z/resource/plugins/carouselplugin.rsc" -"c:/resource/plugins/carouselplugin.rsc" - -;Renderer plug-in -"/epoc32/release/armv5/urel/carouselwidget.dll" -"c:/sys/bin/carouselwidget.dll" -"/epoc32/data/z/resource/plugins/carouselwidget.rsc" -"c:/resource/plugins/carouselwidget.rsc" - -;Widget declaration -"../widget/hsps/00/widgetconfiguration.xml" - "c:/private/200159c0/import/2001f48a/101fb657/1725ad3d/1.0/widgetconfiguration.xml" -"../widget/hsps/00/manifest.dat" - "c:/private/200159c0/import/2001f48a/101fb657/1725ad3d/1.0/manifest.dat" -"/epoc32/data/z/private/200159c0/install/appstripe/xuikon/00/appstripe.o0000" - "c:/private/200159c0/import/2001f48a/101fb657/1725ad3d/1.0/00/appstripe.o0000" -"../widget/xuikon/00/appstripe.dat" - "c:/private/200159c0/import/plugin_2001f48a_101fb657_1725ad3d_1.0.dat" - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/widget/group/bld.inf --- a/idlehomescreen/examples/carouselwidgetexample/widget/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,60 +0,0 @@ -/* -* Copyright (c) 2009 - 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Editor for carousel widget. -* -*/ - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS -// Support for productization and Carbide.Ui customization -//******************************************************** -../hsps/00/manifest.dat /epoc32/data/Z/resource/homescreen/appstripe/hsps/manifest.dat -../hsps/00/widgetconfiguration.xml /epoc32/data/Z/resource/homescreen/appstripe/hsps/widgetconfiguration.xml -../xuikon/00/appstripe.dat /epoc32/data/Z/resource/homescreen/appstripe/xuikon/appstripe.dat -../xuikon/00/appstripe.css /epoc32/data/Z/resource/homescreen/appstripe/xuikon/appstripe.css -../xuikon/00/appstripe.xml /epoc32/data/Z/resource/homescreen/appstripe/xuikon/appstripe.xml -//../xuikon/00/appstripe.dtd /epoc32/data/Z/resource/homescreen/appstripe/xuikon/appstripe.dtd - -// Support for S60 builds -//*********************** -// export iby files -../rom/appstripe_resources.iby LANGUAGE_MW_LAYER_IBY_EXPORT_PATH(appstripe_resources.iby) -../rom/appstripe_customer.iby CUSTOMER_MW_LAYER_IBY_EXPORT_PATH(appstripe_customer.iby) -../rom/appstripe_variant.iby CUSTOMER_MW_LAYER_IBY_EXPORT_PATH(appstripe_variant.iby) -../rom/appstripe.iby CORE_MW_LAYER_IBY_EXPORT_PATH(appstripe.iby) - - -// Dtd-localization -//***************** -PRJ_EXTENSIONS -START EXTENSION tools/dtd -OPTION SWITCH_LOC_FILE_NAME appstripe -OPTION DTD_TYPE widget -END - -PRJ_MMPFILES - -// build icons - -// build application - -PRJ_TESTMMPFILES - -//#endif - -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/widget/hsps/00/manifest.dat --- a/idlehomescreen/examples/carouselwidgetexample/widget/hsps/00/manifest.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ - - - - qhd_tch - - widget - - - 0x2001f48a - - - 0x101fb657 - - - 0x1725ad3d - - - App Stripe - appstripe - 1.0 - - - widgetconfiguration.xml - - - - appstripe.o0000 - - - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/widget/hsps/00/widgetconfiguration.xml --- a/idlehomescreen/examples/carouselwidgetexample/widget/hsps/00/widgetconfiguration.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,63 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/widget/rom/appstripe.iby --- a/idlehomescreen/examples/carouselwidgetexample/widget/rom/appstripe.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,25 +0,0 @@ -/* -* Copyright (c) 2009 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#ifndef __APPSTRIPE_IBY__ -#define __APPSTRIPE_IBY__ - -// Enabled by DTD-localization tools -data=ZPRIVATE\200159c0\install\appstripe\hsps\00\manifest.dat \private\200159c0\install\appstripe\hsps\00\manifest.dat -data=ZPRIVATE\200159c0\install\appstripe\xuikon\00\appstripe.o0000 \private\200159c0\install\appstripe\xuikon\00\appstripe.o0000 - -#endif // __APPSTRIPE_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/widget/rom/appstripe_customer.iby --- a/idlehomescreen/examples/carouselwidgetexample/widget/rom/appstripe_customer.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,21 +0,0 @@ -/* -* Copyright (c) 2009 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#ifndef __APPSTRIPE_CUSTOMER_IBY__ -#define __APPSTRIPE_CUSTOMER_IBY__ - -#endif // __APPSTRIPE_CUSTOMER_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/widget/rom/appstripe_resources.iby --- a/idlehomescreen/examples/carouselwidgetexample/widget/rom/appstripe_resources.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,23 +0,0 @@ -/* -* Copyright (c) 2009 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#ifndef __APPSTRIPE_RESOURCES_IBY__ -#define __APPSTRIPE_RESOURCES_IBY__ - -// Enabled by DTD-localization tools, language specific - -#endif // __APPSTRIPE_RESOURCES_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/widget/rom/appstripe_variant.iby --- a/idlehomescreen/examples/carouselwidgetexample/widget/rom/appstripe_variant.iby Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,24 +0,0 @@ -/* -* Copyright (c) 2009 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#ifndef __APPSTRIPE_VARIANT_IBY__ -#define __APPSTRIPE_VARIANT_IBY__ - -// Enabled by variation tools, variant specific -data=ZPRIVATE\200159c0\install\appstripe\hsps\00\widgetconfiguration.xml \private\200159c0\install\appstripe\hsps\00\widgetconfiguration.xml - -#endif // __APPSTRIPE_VARIANT_IBY__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/widget/xuikon/00/appstripe.css --- a/idlehomescreen/examples/carouselwidgetexample/widget/xuikon/00/appstripe.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,10 +0,0 @@ -widget -{ - width:auto; - height:auto; - padding-top: 5px; - padding-bottom: 5px; - padding-left: 3px; - background-color: none; -} - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/widget/xuikon/00/appstripe.dat --- a/idlehomescreen/examples/carouselwidgetexample/widget/xuikon/00/appstripe.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,11 +0,0 @@ - - - 2001CB4F - 101FB657 - 11001240 - AppStripeWidget - appstripe - 1.0 - appstripe.xml - appstripe.css - \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/widget/xuikon/00/appstripe.dtd diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/carouselwidgetexample/widget/xuikon/00/appstripe.xml --- a/idlehomescreen/examples/carouselwidgetexample/widget/xuikon/00/appstripe.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/data/hscontentcontrolexample.l01 --- a/idlehomescreen/examples/hscontentcontrolexample/data/hscontentcontrolexample.l01 Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,23 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Content Control example -* -*/ - -// localized strings for language: UK English (01) -#define STR_HsContentControlApplication_1 "" -#define STR_HsContentControlApplication_2 "" -#define STR_HsContentControlApplication_3 "" -#define STR_HsContentControlApplication_4 "HS Content Control" -#define STR_HsContentControlApplication_5 "HS Content Control" diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/data/hscontentcontrolexample.loc --- a/idlehomescreen/examples/hscontentcontrolexample/data/hscontentcontrolexample.loc Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,20 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Content Control example -* -*/ - -#ifdef LANGUAGE_01 -#include "hscontentcontrolexample.l01" -#endif diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/data/hscontentcontrolexample.rss --- a/idlehomescreen/examples/hscontentcontrolexample/data/hscontentcontrolexample.rss Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,107 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Content Control example -* -*/ - -NAME HSCO - -#include -#include -#include -#include -#include "hscontentcontrolexample.loc" - -RESOURCE RSS_SIGNATURE - { - } - -RESOURCE TBUF - { - buf = "HsContentControl"; - } - -RESOURCE EIK_APP_INFO r_application_hs_content_control_app_ui - { - cba = R_AVKON_SOFTKEYS_EXIT; - status_pane = r_application_status_pane; - menubar = r_application_options_menu; - } - -RESOURCE STATUS_PANE_APP_MODEL r_application_status_pane - { - panes = - { - SPANE_PANE - { - id = EEikStatusPaneUidNavi; - type = EAknCtNaviPane; - resource = r_navi_decorator; - } - - }; - } - -RESOURCE NAVI_DECORATOR r_navi_decorator - { - type = ENaviDecoratorControlTabGroup; - - control = TAB_GROUP - { - tab_width = EAknTabWidthWithOneTab; - - active = 0; - - tabs = - { - TAB - { - id = 0; - txt = "Active configuration"; - }, - TAB - { - id = 1; - txt = "Configurations"; - }, - TAB - { - id = 2; - txt = "Views"; - }, - TAB - { - id = 3; - txt = "Widgets"; - } - }; - - }; - } - - -RESOURCE MENU_BAR r_application_options_menu - { - } - -RESOURCE LOCALISABLE_APP_INFO r_localisable_app_info - { - short_caption = STR_HsContentControlApplication_5; - caption_and_icon = CAPTION_AND_ICON_INFO - { - caption = STR_HsContentControlApplication_4; - number_of_icons = 0; - }; - } - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/data/hscontentcontrolexample_reg.loc --- a/idlehomescreen/examples/hscontentcontrolexample/data/hscontentcontrolexample_reg.loc Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,28 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Content Control example -* -*/ - -// LOCALISATION STRINGS - -// Caption string for app. -#define qtn_caption_string "hscontentcontrolexample" - -// Short caption string for app. -#define qtn_short_caption_string "HW" - -#define qtn_loc_resource_file_1 "\\resource\\apps\\hscontentcontrolexample" - -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/data/hscontentcontrolexample_reg.rss --- a/idlehomescreen/examples/hscontentcontrolexample/data/hscontentcontrolexample_reg.rss Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,37 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Content Control example -* -*/ - -#include -#include -#include -#include -#include "hscontentcontrolexample_reg.loc" -#include - -UID2 KUidAppRegistrationResourceFile -UID3 0xE88D7143 - -RESOURCE APP_REGISTRATION_INFO - { - app_file="hscontentcontrolexample"; - localisable_resource_file = qtn_loc_resource_file_1; - localisable_resource_id = R_LOCALISABLE_APP_INFO; - - embeddability=KAppNotEmbeddable; - newfile=KAppDoesNotSupportNewFile; - } - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/gfx/list_icon.bmp Binary file idlehomescreen/examples/hscontentcontrolexample/gfx/list_icon.bmp has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/gfx/list_icon_mask.bmp Binary file idlehomescreen/examples/hscontentcontrolexample/gfx/list_icon_mask.bmp has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/gfx/mark_icon.bmp Binary file idlehomescreen/examples/hscontentcontrolexample/gfx/mark_icon.bmp has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/gfx/mark_icon_mask.bmp Binary file idlehomescreen/examples/hscontentcontrolexample/gfx/mark_icon_mask.bmp has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/gfx/qgn_menu_hscontentcontrolexample.svg --- a/idlehomescreen/examples/hscontentcontrolexample/gfx/qgn_menu_hscontentcontrolexample.svg Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,56 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/group/Icons_aif_scalable_dc.mk --- a/idlehomescreen/examples/hscontentcontrolexample/group/Icons_aif_scalable_dc.mk Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,83 +0,0 @@ -# -# Copyright (c) 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" -# which accompanies this distribution, and is available -# at the URL "http://www.eclipse.org/legal/epl-v10.html". -# -# Initial Contributors: -# Nokia Corporation - initial contribution. -# -# Contributors: -# -# Description: Content Control example -# -# - -ifeq (WINS,$(findstring WINS, $(PLATFORM))) -ZDIR=$(EPOCROOT)epoc32\release\$(PLATFORM)\$(CFG)\Z -else -ZDIR=$(EPOCROOT)epoc32\data\z -endif - - -# ---------------------------------------------------------------------------- -# TODO: Configure these -# ---------------------------------------------------------------------------- - -TARGETDIR=$(ZDIR)\resource\apps -ICONTARGETFILENAME=$(TARGETDIR)\hscontentcontrolexample_aif.mif -HEADERDIR=$(EPOCROOT)epoc32\include -HEADERFILENAME=$(HEADERDIR)\hscontentcontrolexample_aif.mbg - -ICONDIR=..\gfx - -do_nothing : - @rem do_nothing - -MAKMAKE : do_nothing - -BLD : do_nothing - -CLEAN : - @echo ...Deleting $(ICONTARGETFILENAME) - del /q /f $(ICONTARGETFILENAME) - -LIB : do_nothing - -CLEANLIB : do_nothing - -# ---------------------------------------------------------------------------- -# TODO: Configure these. -# -# NOTE 1: DO NOT DEFINE MASK FILE NAMES! They are included automatically by -# MifConv if the mask detph is defined. -# -# NOTE 2: Usually, source paths should not be included in the bitmap -# definitions. MifConv searches for the icons in all icon directories in a -# predefined order, which is currently \s60\icons, \s60\bitmaps2. -# The directory \s60\icons is included in the search only if the feature flag -# __SCALABLE_ICONS is defined. -# ---------------------------------------------------------------------------- -# NOTE: if you have JUSTINTIME enabled for your S60 3rd FP1 or newer SDK -# and this command crashes, consider adding "/X" to the command line. -# See -# ---------------------------------------------------------------------------- - -RESOURCE : $(ICONTARGETFILENAME) - -$(ICONTARGETFILENAME) : $(ICONDIR)\qgn_menu_hscontentcontrolexample.svg - mifconv $(ICONTARGETFILENAME) \ - /H$(HEADERFILENAME) \ - /c32,8 $(ICONDIR)\qgn_menu_hscontentcontrolexample.svg - -FREEZE : do_nothing - -SAVESPACE : do_nothing - -RELEASABLES : - @echo $(ICONTARGETFILENAME) - -FINAL : do_nothing - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/group/bld.inf --- a/idlehomescreen/examples/hscontentcontrolexample/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Content Control example -* -*/ - -PRJ_PLATFORMS -WINSCW ARMV5 GCCE - -PRJ_EXPORTS - -PRJ_MMPFILES - -gnumakefile icons_aif_scalable_dc.mk - -hscontentcontrolexample.mmp - - -// End of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/group/hscontentcontrolexample.mmp --- a/idlehomescreen/examples/hscontentcontrolexample/group/hscontentcontrolexample.mmp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,71 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Content Control example -* -*/ - -#include -#include -APP_LAYER_SYSTEMINCLUDE -TARGET hscontentcontrolexample.exe -UID 0x100039CE 0xE88D7143 -VENDORID 0 -TARGETTYPE exe -EPOCSTACKSIZE 0x5000 - -CAPABILITY WriteDeviceData ReadDeviceData - -SYSTEMINCLUDE /epoc32/include /epoc32/include/variant /epoc32/include/ecom -USERINCLUDE ../inc ../data - -SOURCEPATH ../data -START RESOURCE hscontentcontrolexample.rss -HEADER -TARGETPATH resource/apps -END //RESOURCE - -START RESOURCE hscontentcontrolexample_reg.rss -TARGETPATH /private/10003a3f/apps -END //RESOURCE - -LIBRARY euser.lib apparc.lib cone.lib eikcore.lib avkon.lib -LIBRARY commonengine.lib efsrv.lib estor.lib eikcoctl.lib eikdlg.lib -LIBRARY eikctl.lib bafl.lib fbscli.lib aknnotify.lib aknicon.lib -LIBRARY etext.lib gdi.lib egul.lib insock.lib -LIBRARY ecom.lib InetProtUtil.lib http.lib esock.lib aknhlist.lib -LIBRARY aknskins.lib -LIBRARY hsccapiclient.lib -LIBRARY hscontentinfo.lib - -LANG 01 - -START BITMAP hscontentcontrolexample.mbm -HEADER -TARGETPATH /resource/apps -SOURCEPATH ../gfx -SOURCE c12,1 list_icon.bmp list_icon_mask.bmp -END - -SOURCEPATH ../src - -#ifdef ENABLE_ABIV2_MODE -DEBUGGABLE_UDEBONLY -#endif - -SOURCE HsContentControlListBox.cpp -SOURCE HsContentControlApplication.cpp -SOURCE HsContentControlAppUi.cpp -SOURCE HsContentControlDocument.cpp - -// End of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/inc/HsContentControlAppUi.h --- a/idlehomescreen/examples/hscontentcontrolexample/inc/HsContentControlAppUi.h Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,72 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Content Control example -* -*/ - - -#ifndef HSCONTENTCONTROLAPPUI_H -#define HSCONTENTCONTROLAPPUI_H - -// [[[ begin generated region: do not modify [Generated Includes] -#include -#include -// ]]] end generated region [Generated Includes] - -// [[[ begin generated region: do not modify [Generated Forward Declarations] -class CHsContentControlListBox; -// ]]] end generated region [Generated Forward Declarations] - -/** - * @class CHsContentControlAppUi HsContentControlAppUi.h - * @brief The AppUi class handles application-wide aspects of the user interface, including - * container management and the default menu, control pane, and status pane. - */ -class CHsContentControlAppUi : public CAknAppUi - { -public: - // constructor and destructor - CHsContentControlAppUi(); - void ConstructL(); - virtual ~CHsContentControlAppUi(); - -public: - // from CEikAppUi - void HandleCommandL( TInt aCommand ); - void HandleResourceChangeL( TInt aType ); - -private: - void InitializeContainersL(); - // [[[ begin generated region: do not modify [Generated Methods] -public: - // ]]] end generated region [Generated Methods] - - // [[[ begin generated region: do not modify [Generated Instance Variables] -private: - CHsContentControlListBox* iHsContentControlListBox; - // ]]] end generated region [Generated Instance Variables] - - - // [[[ begin [Overridden Methods] -protected: - // ]]] end [Overridden Methods] - - - // [[[ begin [User Handlers] -protected: - // ]]] end [User Handlers] - - }; - -#endif // HSCONTENTCONTROLAPPUI_H diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/inc/HsContentControlApplication.h --- a/idlehomescreen/examples/hscontentcontrolexample/inc/HsContentControlApplication.h Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,45 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Content Control example -* -*/ - - -#ifndef HSCONTENTCONTROLAPPLICATION_H -#define HSCONTENTCONTROLAPPLICATION_H - -// [[[ begin generated region: do not modify [Generated Includes] -#include -// ]]] end generated region [Generated Includes] - -// [[[ begin generated region: do not modify [Generated Constants] -const TUid KUidHsContentControlApplication = { 0xE88D7143 }; -// ]]] end generated region [Generated Constants] - -/** - * - * @class CHsContentControlApplication HsContentControlApplication.h - * @brief A CAknApplication-derived class is required by the S60 application - * framework. It is subclassed to create the application's document - * object. - */ -class CHsContentControlApplication : public CAknApplication - { -private: - TUid AppDllUid() const; - CApaDocument* CreateDocumentL(); - - }; - -#endif // HSCONTENTCONTROLAPPLICATION_H diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/inc/HsContentControlDocument.h --- a/idlehomescreen/examples/hscontentcontrolexample/inc/HsContentControlDocument.h Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,46 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Content Control example -* -*/ - - -#ifndef HSCONTENTCONTROLDOCUMENT_H -#define HSCONTENTCONTROLDOCUMENT_H - -#include - -class CEikAppUi; - -/** -* @class CHsContentControlDocument HsContentControlDocument.h -* @brief A CAknDocument-derived class is required by the S60 application -* framework. It is responsible for creating the AppUi object. -*/ -class CHsContentControlDocument : public CAknDocument - { -public: - // constructor - static CHsContentControlDocument* NewL( CEikApplication& aApp ); - -private: - // constructors - CHsContentControlDocument( CEikApplication& aApp ); - void ConstructL(); - -public: - // from base class CEikDocument - CEikAppUi* CreateAppUiL(); - }; -#endif // HSCONTENTCONTROLDOCUMENT_H diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/inc/HsContentControlListBox.h --- a/idlehomescreen/examples/hscontentcontrolexample/inc/HsContentControlListBox.h Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,206 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Content Control example -* -*/ - - -#ifndef __HSCONTENTCONTROLLISTBOX_H__ -#define __HSCONTENTCONTROLLISTBOX_H__ - -// Includes -#include -#include -#include -#include - -// Forward declarations -class MEikCommandObserver; -class CAknSingleStyleTreeList; -class CAknsBasicBackgroundControlContext; -class CAknNavigationDecorator; -class CAknTabGroup; -class CAknStylusPopUpMenu; -class CHsCcApiClient; -class CHsContentInfoArray; - -/** - * Container class for HsContentControlListBox - * - * @class CHsContentControlListBox HsContentControlListBox.h - */ -class CHsContentControlListBox : public CCoeControl, - public MAknTreeListObserver, - public MAknTabObserver, - public MEikMenuObserver, - public MHsContentControl - { -public: - // constructors and destructor - - /** - * Two-phased constructor. - */ - static CHsContentControlListBox* NewL( - const TRect& aRect, - const CCoeControl* aParent, - MEikCommandObserver* aCommandObserver ); - - /** - * Two-phased constructor. - */ - static CHsContentControlListBox* NewLC( - const TRect& aRect, - const CCoeControl* aParent, - MEikCommandObserver* aCommandObserver ); - - /** - * Destructor - */ - ~CHsContentControlListBox(); - -public: - // from CCoeControl - - /** - * @see CCoeControl - */ - TInt CountComponentControls() const; - - /** - * @see CCoeControl - */ - CCoeControl* ComponentControl( TInt aIndex ) const; - - /** - * @see CCoeControl - */ - TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType ); - - /** - * @see CCoeControl - */ - void HandleResourceChange( TInt aType ); - - /** - * @see CCoeControl - */ - void SizeChanged(); - - /** - * @see CCoeControl - */ - TTypeUid::Ptr MopSupplyObject( TTypeUid aId ); - -private: - // from MAknTreeListObserver - - /** - * @see MAknTreeListObserver - */ - TInt HandleTreeListEvent( - CAknTreeList& aList, - TAknTreeItemID aItem, - TEvent aEvent ); - -private: - // From MEikMenuObserver - - /** - * @see MEikMenuObserver - */ - void ProcessCommandL( TInt aCommandId ); - - /** - * @see MEikMenuObserver - */ - void SetEmphasis( CCoeControl* aMenuControl, TBool aEmphasis ); - -private: - // from MAknTabObserver - - /** - * @see MAknTabObserver - */ - void TabChangedL( TInt aIndex ); - -private: - // from MHsContentControl - - /** - * @see MHsContentControl - */ - void NotifyWidgetListChanged(); - - /** - * @see MHsContentControl - */ - void NotifyViewListChanged(); - - /** - * @see MHsContentControl - */ - void NotifyAppListChanged(); - -private: - // new functions - - void InitializeControlsL(); - void LayoutControls(); - void PopulateListL(); - - static TInt PopulateList( TAny* aAny ); - -private: - // constructors - - /** - * C++ default constructor - */ - CHsContentControlListBox(); - - /** - * 2nd phase constructor - */ - void ConstructL( - const TRect& aRect, - const CCoeControl* aParent, - MEikCommandObserver* aCommandObserver ); - -private: - // data - - /** Homescreen content control client, owned */ - CHsCcApiClient* iHsCcApiClient; - /** Callback, owned */ - CAsyncCallBack* iCallback; - /** Popup menu, owned */ - CAknStylusPopUpMenu* iPopup; - /** List box, owned */ - CAknSingleStyleTreeList* iListBox; - /** Bg context, owned */ - CAknsBasicBackgroundControlContext* iBgContext; - /** Content info array, owned */ - CHsContentInfoArray* iArray; - /** Navigation decorator, owned */ - CAknNavigationDecorator* iDecorator; - /** Tab group, not owned */ - CAknTabGroup* iTabGroup; - /** Selected tree item */ - TAknTreeItemID iSelectedItem; - /** Active tab index */ - TInt iTabIndex; - }; - -#endif // __HSCONTENTCONTROLLISTBOX_H__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/root_qhd_tch/group/bld.inf --- a/idlehomescreen/examples/hscontentcontrolexample/root_qhd_tch/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,38 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Content Control example -* -*/ - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS -// Support for productization and Carbide.Ui customization -../hsps/00/manifest.dat /epoc32/data/Z/resource/homescreen/root2/hsps/manifest.dat -../hsps/00/widgetconfiguration.xml /epoc32/data/Z/resource/homescreen/root2/hsps/widgetconfiguration.xml -../xuikon/00/root2.dat /epoc32/data/Z/resource/homescreen/root2/xuikon/root2.dat -../xuikon/00/root2.css /epoc32/data/Z/resource/homescreen/root2/xuikon/root2.css -../xuikon/00/root2.xml /epoc32/data/Z/resource/homescreen/root2/xuikon/root2.xml -//../xuikon/00/root2.dtd /epoc32/data/Z/resource/homescreen/root2/xuikon/root2.dtd - - -PRJ_EXTENSIONS -START EXTENSION tools/dtd -OPTION SWITCH_LOC_FILE_NAME root2 -OPTION DTD_TYPE widget -END -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/root_qhd_tch/hsps/00/manifest.dat --- a/idlehomescreen/examples/hscontentcontrolexample/root_qhd_tch/hsps/00/manifest.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,19 +0,0 @@ - - - qhd_tch - application - - 0x102750F0 - 0x101fb657 - 0x20102020 - - HS Configuration - root2 - 1.0 - - widgetconfiguration.xml - - - root2.o0000 - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/root_qhd_tch/hsps/00/widgetconfiguration.xml --- a/idlehomescreen/examples/hscontentcontrolexample/root_qhd_tch/hsps/00/widgetconfiguration.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/root_qhd_tch/sis/hs_configuration_urel.pkg --- a/idlehomescreen/examples/hscontentcontrolexample/root_qhd_tch/sis/hs_configuration_urel.pkg Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,33 +0,0 @@ -; Installation file for recentcallswidget dll -; -; This is an auto-generated PKG file by Carbide. -; This file uses variables specific to Carbide builds that will not work -; on command-line builds. If you want to use this generated PKG file from the -; command-line tools you will need to modify the variables with the appropriate -; values: $(EPOCROOT), $(PLATFORM), $(TARGET) - -; -; UID is the dll's UID -; -#{"HS 6 pages configuration"},(0x20102020),1,0,0 - - -;Localised Vendor name -%{"Nokia"} - -;Unique Vendor name -:"Nokia" - -;Supports Series 60 v 5.0 -[0x1028315F], 0, 0, 0, {"S60ProductID"} - - -"../hsps/00/widgetconfiguration.xml" - "c:/private/200159C0/import/102750F0/101FB657/20102020/1.0/widgetconfiguration.xml" -"../hsps/00/manifest.dat" - "c:/private/200159C0/import/102750F0/101FB657/20102020/1.0/manifest.dat" - -"/epoc32/data/z/private/200159c0/install/root2/xuikon/00/root2.o0000" - "c:/private/200159C0/import/102750F0/101FB657/20102020/1.0/00/root2.o0000" - -"../xuikon/00/root2.dat" - "c:/private/200159C0/import/plugin_102750F0_101FB657_20102020_1.0.dat" - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/root_qhd_tch/xuikon/00/root2.css --- a/idlehomescreen/examples/hscontentcontrolexample/root_qhd_tch/xuikon/00/root2.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,3 +0,0 @@ -views -{ -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/root_qhd_tch/xuikon/00/root2.dat --- a/idlehomescreen/examples/hscontentcontrolexample/root_qhd_tch/xuikon/00/root2.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ - - - - 2001CB4F - 101FB657 - 11001241 - Anything - root2 - 1.0 - root2.xml - root2.css - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/root_qhd_tch/xuikon/00/root2.dtd diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/root_qhd_tch/xuikon/00/root2.xml --- a/idlehomescreen/examples/hscontentcontrolexample/root_qhd_tch/xuikon/00/root2.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,4 +0,0 @@ - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/root_vga_tch/group/bld.inf --- a/idlehomescreen/examples/hscontentcontrolexample/root_vga_tch/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,38 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Content Control example -* -*/ - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS -// Support for productization and Carbide.Ui customization -../hsps/00/manifest.dat /epoc32/data/Z/resource/homescreen/root2/hsps/manifest.dat -../hsps/00/widgetconfiguration.xml /epoc32/data/Z/resource/homescreen/root2/hsps/widgetconfiguration.xml -../xuikon/00/root2.dat /epoc32/data/Z/resource/homescreen/root2/xuikon/root2.dat -../xuikon/00/root2.css /epoc32/data/Z/resource/homescreen/root2/xuikon/root2.css -../xuikon/00/root2.xml /epoc32/data/Z/resource/homescreen/root2/xuikon/root2.xml -//../xuikon/00/root2.dtd /epoc32/data/Z/resource/homescreen/root2/xuikon/root2.dtd - - -PRJ_EXTENSIONS -START EXTENSION tools/dtd -OPTION SWITCH_LOC_FILE_NAME root2 -OPTION DTD_TYPE widget -END -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/root_vga_tch/hsps/00/manifest.dat --- a/idlehomescreen/examples/hscontentcontrolexample/root_vga_tch/hsps/00/manifest.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,19 +0,0 @@ - - - vga_tch - application - - 0x102750F0 - 0x101fb657 - 0x20102020 - - HS Configuration - root2 - 1.0 - - widgetconfiguration.xml - - - root2.o0000 - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/root_vga_tch/hsps/00/widgetconfiguration.xml --- a/idlehomescreen/examples/hscontentcontrolexample/root_vga_tch/hsps/00/widgetconfiguration.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/root_vga_tch/sis/hs_configuration_urel.pkg --- a/idlehomescreen/examples/hscontentcontrolexample/root_vga_tch/sis/hs_configuration_urel.pkg Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,33 +0,0 @@ -; Installation file for recentcallswidget dll -; -; This is an auto-generated PKG file by Carbide. -; This file uses variables specific to Carbide builds that will not work -; on command-line builds. If you want to use this generated PKG file from the -; command-line tools you will need to modify the variables with the appropriate -; values: $(EPOCROOT), $(PLATFORM), $(TARGET) - -; -; UID is the dll's UID -; -#{"HS 6 pages configuration"},(0x20102020),1,0,0 - - -;Localised Vendor name -%{"Nokia"} - -;Unique Vendor name -:"Nokia" - -;Supports Series 60 v 5.0 -[0x1028315F], 0, 0, 0, {"S60ProductID"} - - -"../hsps/00/widgetconfiguration.xml" - "c:/private/200159C0/import/102750F0/101FB657/20102020/1.0/widgetconfiguration.xml" -"../hsps/00/manifest.dat" - "c:/private/200159C0/import/102750F0/101FB657/20102020/1.0/manifest.dat" - -"/epoc32/data/z/private/200159c0/install/root2/xuikon/00/root2.o0000" - "c:/private/200159C0/import/102750F0/101FB657/20102020/1.0/00/root2.o0000" - -"../xuikon/00/root2.dat" - "c:/private/200159C0/import/plugin_102750F0_101FB657_20102020_1.0.dat" - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/root_vga_tch/xuikon/00/root2.css --- a/idlehomescreen/examples/hscontentcontrolexample/root_vga_tch/xuikon/00/root2.css Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,3 +0,0 @@ -views -{ -} diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/root_vga_tch/xuikon/00/root2.dat --- a/idlehomescreen/examples/hscontentcontrolexample/root_vga_tch/xuikon/00/root2.dat Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ - - - - 2001CB4F - 101FB657 - 11001241 - Anything - root2 - 1.0 - root2.xml - root2.css - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/root_vga_tch/xuikon/00/root2.dtd diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/root_vga_tch/xuikon/00/root2.xml --- a/idlehomescreen/examples/hscontentcontrolexample/root_vga_tch/xuikon/00/root2.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,4 +0,0 @@ - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/sis/hscontentcontrolexample_urel.pkg --- a/idlehomescreen/examples/hscontentcontrolexample/sis/hscontentcontrolexample_urel.pkg Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,36 +0,0 @@ -; hscontentcontrolexample.pkg -; This is an auto-generated PKG file by Carbide. -; This file uses variables specific to Carbide builds that will not work -; on command-line builds. If you want to use this generated PKG file from the -; command-line tools you will need to modify the variables with the appropriate -; values: $(EPOCROOT), $(PLATFORM), $(TARGET) -; Also, the resource file entries should be changed to match the language -; used in the build. For example, if building for LANGUAGE_01, change the file -; extensions .rsc to .r01. -; -;Language - standard language definitions -&EN - -; standard SIS file header -#{"HS ContentControl"},(0xE88D7143),1,0,0 - -;Localised Vendor name -%{"Vendor-EN"} - -;Unique Vendor name -:"Vendor" - -;Supports Series 60 v 3.0 -[0x101F7961], 0, 0, 0, {"Series60ProductID"} - -;Files to install -;You should change the source paths to match that of your environment -; -"\epoc32\release\armv5\urel\hscontentcontrolexample.exe" -"!:\sys\bin\hscontentcontrolexample.exe" -"\epoc32\data\z\resource\apps\hscontentcontrolexample.r01" -"!:\resource\apps\hscontentcontrolexample.r01" -"\epoc32\data\z\private\10003a3f\apps\hscontentcontrolexample_reg.r01" -"!:\private\10003a3f\import\apps\hscontentcontrolexample_reg.r01" -"\epoc32\data\z\resource\apps\hscontentcontrolexample_aif.mif" -"!:\resource\apps\hscontentcontrolexample_aif.mif" -"\epoc32\data\z\resource\apps\hscontentcontrolexample.mbm" -"!:\resource\apps\hscontentcontrolexample.mbm" -; Add any installation notes if applicable -;"hscontentcontrolexample.txt" -"!:\private\0xE88D7143\hscontentcontrolexample.txt" - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/src/HsContentControlAppUi.cpp --- a/idlehomescreen/examples/hscontentcontrolexample/src/HsContentControlAppUi.cpp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,125 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Content Control example -* -*/ - - -// [[[ begin generated region: do not modify [Generated System Includes] -#include -#include -// ]]] end generated region [Generated System Includes] - -// [[[ begin generated region: do not modify [Generated User Includes] -#include "HsContentControlAppUi.h" -#include "HsContentControlListBox.h" -// ]]] end generated region [Generated User Includes] - -// [[[ begin generated region: do not modify [Generated Constants] -// ]]] end generated region [Generated Constants] - -/** - * Construct the CHsContentControlAppUi instance - */ -CHsContentControlAppUi::CHsContentControlAppUi() - { - // [[[ begin generated region: do not modify [Generated Contents] - iHsContentControlListBox = NULL; - // ]]] end generated region [Generated Contents] - - } - -/** - * The appui's destructor removes the container from the control - * stack and destroys it. - */ -CHsContentControlAppUi::~CHsContentControlAppUi() - { - // [[[ begin generated region: do not modify [Generated Contents] - if ( iHsContentControlListBox != NULL ) - { - RemoveFromStack( iHsContentControlListBox ); - delete iHsContentControlListBox; - iHsContentControlListBox = NULL; - } - // ]]] end generated region [Generated Contents] - - } - -/** - * @brief Completes the second phase of Symbian object construction. - * Put initialization code that could leave here. - */ -void CHsContentControlAppUi::ConstructL() - { - // [[[ begin generated region: do not modify [Generated Contents] - - BaseConstructL( EAknEnableSkin | EAknEnableMSK | - EAknTouchCompatible | EAknSingleClickCompatible ); - - InitializeContainersL(); - // ]]] end generated region [Generated Contents] - - } - -// [[[ begin generated function: do not modify -void CHsContentControlAppUi::InitializeContainersL() - { - iHsContentControlListBox = CHsContentControlListBox::NewL( ClientRect(), NULL, this ); - iHsContentControlListBox->SetMopParent( this ); - AddToStackL( iHsContentControlListBox ); - - iHsContentControlListBox->DrawNow(); - } -// ]]] end generated function - -/** - * Handle a command for this appui (override) - * @param aCommand command id to be handled - */ -void CHsContentControlAppUi::HandleCommandL( TInt aCommand ) - { - // [[[ begin generated region: do not modify [Generated Code] - TBool commandHandled = EFalse; - switch ( aCommand ) - { // code to dispatch to the AppUi's menu and CBA commands is generated here - default: - break; - } - - - if ( !commandHandled ) - { - if ( aCommand == EAknSoftkeyExit || - aCommand == EAknSoftkeyBack || - aCommand == EEikCmdExit ) - { - Exit(); - } - } - // ]]] end generated region [Generated Code] - - } - -/** - * Override of the HandleResourceChangeL virtual function - */ -void CHsContentControlAppUi::HandleResourceChangeL( TInt aType ) - { - CAknAppUi::HandleResourceChangeL( aType ); - // [[[ begin generated region: do not modify [Generated Code] - // ]]] end generated region [Generated Code] - - } - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/src/HsContentControlApplication.cpp --- a/idlehomescreen/examples/hscontentcontrolexample/src/HsContentControlApplication.cpp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,88 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Content Control example -* -*/ - - -// [[[ begin generated region: do not modify [Generated System Includes] -// ]]] end generated region [Generated System Includes] - -// [[[ begin generated region: do not modify [Generated Includes] -#include "HsContentControlApplication.h" -#include "HsContentControlDocument.h" -#ifdef EKA2 -#include -#endif -// ]]] end generated region [Generated Includes] - -/** - * @brief Returns the application's UID (override from CApaApplication::AppDllUid()) - * @return UID for this application (KUidHsContentControlApplication) - */ -TUid CHsContentControlApplication::AppDllUid() const - { - return KUidHsContentControlApplication; - } - -/** - * @brief Creates the application's document (override from CApaApplication::CreateDocumentL()) - * @return Pointer to the created document object (CHsContentControlDocument) - */ -CApaDocument* CHsContentControlApplication::CreateDocumentL() - { - return CHsContentControlDocument::NewL( *this ); - } - -#ifdef EKA2 - -/** - * @brief Called by the application framework to construct the application object - * @return The application (CHsContentControlApplication) - */ -LOCAL_C CApaApplication* NewApplication() - { - return new CHsContentControlApplication; - } - -/** -* @brief This standard export is the entry point for all Series 60 applications -* @return error code - */ -GLDEF_C TInt E32Main() - { - return EikStart::RunApplication( NewApplication ); - } - -#else // Series 60 2.x main DLL program code - -/** -* @brief This standard export constructs the application object. -* @return The application (CHsContentControlApplication) -*/ -EXPORT_C CApaApplication* NewApplication() - { - return new CHsContentControlApplication; - } - -/** -* @brief This standard export is the entry point for all Series 60 applications -* @return error code -*/ -GLDEF_C TInt E32Dll(TDllReason /*reason*/) - { - return KErrNone; - } - -#endif // EKA2 diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/src/HsContentControlDocument.cpp --- a/idlehomescreen/examples/hscontentcontrolexample/src/HsContentControlDocument.cpp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,67 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Content Control example -* -*/ - - -// [[[ begin generated region: do not modify [Generated User Includes] -#include "HsContentControlDocument.h" -#include "HsContentControlAppUi.h" -// ]]] end generated region [Generated User Includes] - -/** - * @brief Constructs the document class for the application. - * @param anApplication the application instance - */ -CHsContentControlDocument::CHsContentControlDocument( CEikApplication& anApplication ) - : CAknDocument( anApplication ) - { - } - -/** - * @brief Completes the second phase of Symbian object construction. - * Put initialization code that could leave here. - */ -void CHsContentControlDocument::ConstructL() - { - } - -/** - * Symbian OS two-phase constructor. - * - * Creates an instance of CHsContentControlDocument, constructs it, and - * returns it. - * - * @param aApp the application instance - * @return the new CHsContentControlDocument - */ -CHsContentControlDocument* CHsContentControlDocument::NewL( CEikApplication& aApp ) - { - CHsContentControlDocument* self = new ( ELeave ) CHsContentControlDocument( aApp ); - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop( self ); - return self; - } - -/** - * @brief Creates the application UI object for this document. - * @return the new instance - */ -CEikAppUi* CHsContentControlDocument::CreateAppUiL() - { - return new ( ELeave ) CHsContentControlAppUi; - } - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/hscontentcontrolexample/src/HsContentControlListBox.cpp --- a/idlehomescreen/examples/hscontentcontrolexample/src/HsContentControlListBox.cpp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,598 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Content Control example -* -*/ - - -// Includes -#include -#include -#include -#include -#include -#include -#include - -#include -#include - -#include -#include -#include - -#include "HsContentControlListBox.h" - -// Constants -const TInt KFlags( CAknSingleStyleTreeList::EPersistent | - CAknSingleStyleTreeList::EExpanded ); - -_LIT( KActivate, "Activate" ); - -enum TTabs - { - ETabFirst = 0, - ETabActiveConfiguration = ETabFirst, - ETabConfigurations, - ETabViews, - ETabWidgets, - ETabLast = ETabWidgets - }; - -// ============================ LOCAL FUNCTIONS ================================ - -// ============================ MEMBER FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::CHsContentControlListBox -// -// ----------------------------------------------------------------------------- -// -CHsContentControlListBox::CHsContentControlListBox() - { - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::~CHsContentControlListBox -// -// ----------------------------------------------------------------------------- -// -CHsContentControlListBox::~CHsContentControlListBox() - { - delete iHsCcApiClient; - delete iCallback; - delete iPopup; - delete iListBox; - delete iBgContext; - delete iArray; - delete iDecorator; - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::NewL -// -// ----------------------------------------------------------------------------- -// -CHsContentControlListBox* CHsContentControlListBox::NewL( const TRect& aRect, - const CCoeControl* aParent, MEikCommandObserver* aCommandObserver ) - { - CHsContentControlListBox* self = - CHsContentControlListBox::NewLC( aRect, aParent, aCommandObserver ); - CleanupStack::Pop( self ); - - return self; - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::NewLC -// -// ----------------------------------------------------------------------------- -// -CHsContentControlListBox* CHsContentControlListBox::NewLC( const TRect& aRect, - const CCoeControl* aParent, MEikCommandObserver* aCommandObserver ) - { - CHsContentControlListBox* self = new ( ELeave ) CHsContentControlListBox(); - CleanupStack::PushL( self ); - - self->ConstructL( aRect, aParent, aCommandObserver ); - - return self; - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::ConstructL -// -// ----------------------------------------------------------------------------- -// -void CHsContentControlListBox::ConstructL( const TRect& aRect, - const CCoeControl* aParent, MEikCommandObserver* /*aCommandObserver*/ ) - { - iHsCcApiClient = CHsCcApiClient::NewL( this ); - - TCallBack cb( PopulateList, this ); - - iCallback = new ( ELeave ) CAsyncCallBack( cb, CActive::EPriorityStandard ); - - if ( !aParent ) - { - CreateWindowL(); - } - else - { - SetContainerWindowL( *aParent ); - } - - InitializeControlsL(); - - SetRect( aRect ); - - ActivateL(); - - PopulateListL(); - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::CountComponentControls -// -// ----------------------------------------------------------------------------- -// -TInt CHsContentControlListBox::CountComponentControls() const - { - return 1; - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::CHsContentControlListBox -// -// ----------------------------------------------------------------------------- -// -CCoeControl* CHsContentControlListBox::ComponentControl( TInt aIndex ) const - { - if ( aIndex == 0 ) - { - return iListBox; - } - - return NULL; - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::OfferKeyEventL -// -// ----------------------------------------------------------------------------- -// -TKeyResponse CHsContentControlListBox::OfferKeyEventL( - const TKeyEvent& aKeyEvent, TEventCode aType ) - { - if ( iListBox->OfferKeyEventL( aKeyEvent, aType ) == EKeyWasConsumed ) - { - return EKeyWasConsumed; - } - - return CCoeControl::OfferKeyEventL( aKeyEvent, aType ); - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::HandleResourceChange -// -// ----------------------------------------------------------------------------- -// -void CHsContentControlListBox::HandleResourceChange( TInt aType ) - { - CCoeControl::HandleResourceChange( aType ); - - SetRect( iAvkonAppUi->ClientRect() ); - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::SizeChanged -// -// ----------------------------------------------------------------------------- -// -void CHsContentControlListBox::SizeChanged() - { - CCoeControl::SizeChanged(); - - LayoutControls(); - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::MopSupplyObject -// -// ----------------------------------------------------------------------------- -// -TTypeUid::Ptr CHsContentControlListBox::MopSupplyObject( TTypeUid aId ) - { - if ( aId.iUid == MAknsControlContext::ETypeId && iBgContext ) - { - return MAknsControlContext::SupplyMopObject( aId, iBgContext ); - } - - return CCoeControl::MopSupplyObject( aId ); - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::HandleTreeListEvent -// -// ----------------------------------------------------------------------------- -// -TInt CHsContentControlListBox::HandleTreeListEvent( - CAknTreeList& /*aList*/, - TAknTreeItemID aItem, - TEvent aEvent ) - { - if ( aEvent == EItemSelected ) - { - if ( !iListBox->IsLeaf( aItem ) && !iListBox->IsMarked( aItem ) ) - { - return KErrNone; - } - - const TWsEvent& event( iCoeEnv->LastEvent() ); - - if ( event.Type() == EEventPointer ) - { - TInt x, y; - - TPointerEvent& pointer( *event.Pointer() ); - - x = pointer.iParentPosition.iX; - y = pointer.iParentPosition.iY; - - delete iPopup; - iPopup = NULL; - - iPopup = CAknStylusPopUpMenu::NewL( this, TPoint( x, y ) ); - - if ( iTabIndex == ETabConfigurations ) - { - iSelectedItem = aItem; - - iPopup->AddMenuItemL( KActivate, 1 ); - - iPopup->SetPosition( TPoint( x, y ), - CAknStylusPopUpMenu::EPositionTypeRightBottom ); - - iPopup->ShowMenu(); - } - } - } - - return KErrNone; - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::ProcessCommandL -// -// ----------------------------------------------------------------------------- -// -void CHsContentControlListBox::ProcessCommandL( TInt aCommandId ) - { - TAknTreeItemID item( iSelectedItem ); - - iSelectedItem = KAknTreeIIDNone; - - if ( item == KAknTreeIIDNone || aCommandId == KErrCancel ) - { - return; - } - - // Resolve selected item - if ( iTabIndex == ETabConfigurations ) - { - TAknTreeItemID id = iListBox->Child( KAknTreeIIDRoot, 0 ); - - TInt count( iListBox->ChildCount( id ) ); - - for ( TInt i = 0; i < count; i++ ) - { - if ( iListBox->Child( id, i ) == item ) - { - CHsContentInfo* info( iArray->Array()[i] ); - - TRAP_IGNORE( iHsCcApiClient->ActivateAppL( *info ) ); - - break; - } - } - } - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::SetEmphasis -// -// ----------------------------------------------------------------------------- -// -void CHsContentControlListBox::SetEmphasis( CCoeControl* /*aMenuControl*/, - TBool /*aEmphasis*/ ) - { - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::TabChangedL -// -// ----------------------------------------------------------------------------- -// -void CHsContentControlListBox::TabChangedL( TInt aIndex ) - { - if ( aIndex != iTabIndex ) - { - iTabIndex = aIndex; - - iDecorator->SetScrollButtonDimmed( - CAknNavigationDecorator::ERightButton, EFalse ); - - iDecorator->SetScrollButtonDimmed( - CAknNavigationDecorator::ELeftButton, EFalse ); - - if ( iTabIndex == ETabFirst ) - { - iDecorator->SetScrollButtonDimmed( - CAknNavigationDecorator::ELeftButton, ETrue ); - } - else if ( iTabIndex == ETabLast ) - { - iDecorator->SetScrollButtonDimmed( - CAknNavigationDecorator::ERightButton, ETrue ); - } - - iCallback->Cancel(); - iCallback->CallBack(); - } - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::NotifyWidgetListChanged -// -// ----------------------------------------------------------------------------- -// -void CHsContentControlListBox::NotifyWidgetListChanged() - { - iCallback->Cancel(); - iCallback->CallBack(); - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::NotifyViewListChanged -// -// ----------------------------------------------------------------------------- -// -void CHsContentControlListBox::NotifyViewListChanged() - { - iCallback->Cancel(); - iCallback->CallBack(); - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::NotifyAppListChanged -// -// ----------------------------------------------------------------------------- -// -void CHsContentControlListBox::NotifyAppListChanged() - { - iCallback->Cancel(); - iCallback->CallBack(); - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::InitializeControlsL -// -// ----------------------------------------------------------------------------- -// -void CHsContentControlListBox::InitializeControlsL() - { - iListBox = CAknSingleStyleTreeList::NewL( *this ); - iListBox->SetContainerWindowL( *this ); - iListBox->AddObserverL( this ); - iListBox->SetFocus( ETrue ); - - iBgContext = CAknsBasicBackgroundControlContext::NewL( - KAknsIIDQsnBgScreen, TRect(), ETrue ); - - CEikStatusPane* sp( iAvkonAppUi->StatusPane() ); - - TUid naviPaneUid( TUid::Uid( EEikStatusPaneUidNavi ) ); - - CAknNavigationControlContainer* naviPane = - static_cast< CAknNavigationControlContainer* >( sp->ControlL( naviPaneUid ) ); - - iDecorator = naviPane->ResourceDecorator(); - - iDecorator->MakeScrollButtonVisible( ETrue ); - - iDecorator->SetScrollButtonDimmed( - CAknNavigationDecorator::ELeftButton, ETrue ); - - iDecorator->SetScrollButtonDimmed( - CAknNavigationDecorator::ERightButton, EFalse ); - - iTabGroup = static_cast< CAknTabGroup* > ( iDecorator->DecoratedControl() ); - iTabGroup->SetObserver( this ); - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::LayoutControls -// -// ----------------------------------------------------------------------------- -// -void CHsContentControlListBox::LayoutControls() - { - iListBox->SetRect( Rect() ); - - TRect rect; - - AknLayoutUtils::LayoutMetricsRect( AknLayoutUtils::EScreen, rect ); - - iBgContext->SetRect( rect ); - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::PopulateListL -// -// ----------------------------------------------------------------------------- -// -void CHsContentControlListBox::PopulateListL() - { - if ( !iListBox->IsEmpty( KAknTreeIIDRoot ) ) - { - // Remove all - iListBox->RemoveItem( KAknTreeIIDRoot, EFalse ); - } - - delete iArray; - iArray = NULL; - - if ( iTabIndex == ETabActiveConfiguration ) - { - CHsContentInfo* activeApp = CHsContentInfo::NewL(); - CleanupStack::PushL( activeApp ); - - // Get active homescreen configuration - iHsCcApiClient->ActiveAppL( *activeApp ); - - _LIT( KActiveConfiguration, "Active configuration" ); - - TAknTreeItemID root = iListBox->AddNodeL( - KAknTreeIIDRoot, KActiveConfiguration, KFlags, EFalse ); - - CHsContentInfoArray* viewList = CHsContentInfoArray::NewL(); - CleanupStack::PushL( viewList ); - - // Get view list from the active configuration - iHsCcApiClient->ViewListL( *activeApp, *viewList ); - - _LIT( KView, "View " ); - - for ( TInt j = 0; j < viewList->Array().Count(); j++ ) - { - TBuf< 32 > viewname; - viewname = KView(); - viewname.AppendNum( j + 1 ); - - CHsContentInfo* view( viewList->Array()[j] ); - - TAknTreeItemID parent = iListBox->AddNodeL( - root, viewname, KFlags, EFalse ); - - CHsContentInfoArray* widgetList = CHsContentInfoArray::NewL(); - CleanupStack::PushL( widgetList ); - - // Get widget list from the view - iHsCcApiClient->WidgetListL( *view, *widgetList ); - - for ( TInt k = 0; k < widgetList->Array().Count(); k++ ) - { - CHsContentInfo* widget( widgetList->Array()[k] ); - - iListBox->AddLeafL( parent, widget->Name(), KFlags, EFalse ); - } - - CleanupStack::PopAndDestroy( widgetList ); - } - - CleanupStack::PopAndDestroy( viewList ); - - CleanupStack::PopAndDestroy( activeApp ); - } - else if ( iTabIndex == ETabConfigurations ) - { - _LIT( KConfigurations, "Configurations" ); - - TAknTreeItemID root = iListBox->AddNodeL( - KAknTreeIIDRoot, KConfigurations, KFlags, EFalse ); - - iArray = CHsContentInfoArray::NewL(); - - // Get all homescreen configurations - iHsCcApiClient->AppListL( *iArray ); - - _LIT( KConfiguration, "Configuration " ); - - for ( TInt i = 0; i < iArray->Array().Count(); i++ ) - { - TBuf< 32 > confname; - confname = KConfiguration(); - confname.AppendNum( i + 1 ); - - CHsContentInfo* app( iArray->Array()[i] ); - - iListBox->AddLeafL( root, confname, KFlags, EFalse ); - } - } - - else if ( iTabIndex == ETabViews ) - { - _LIT( KViews, "Views" ); - - TAknTreeItemID root = iListBox->AddNodeL( - KAknTreeIIDRoot, KViews, KFlags, EFalse ); - - iArray = CHsContentInfoArray::NewL(); - - // Get all homescreen views - iHsCcApiClient->ViewListL( *iArray ); - - _LIT( KView, "View " ); - - for ( TInt i = 0; i < iArray->Array().Count(); i++ ) - { - TBuf< 32 > viewname; - viewname = KView(); - viewname.AppendNum( i + 1 ); - - CHsContentInfo* view( iArray->Array()[i] ); - - iListBox->AddLeafL( root, viewname, KFlags, EFalse ); - } - } - - else if ( iTabIndex == ETabWidgets ) - { - _LIT( KWidgets, "Widgets" ); - - TAknTreeItemID root = iListBox->AddNodeL( - KAknTreeIIDRoot, KWidgets, KFlags, EFalse ); - - iArray = CHsContentInfoArray::NewL(); - - // Get all homescreen widgets - iHsCcApiClient->WidgetListL( *iArray ); - - for ( TInt i = 0; i < iArray->Array().Count(); i++ ) - { - CHsContentInfo* widget( iArray->Array()[i] ); - - iListBox->AddLeafL( root, widget->Name(), KFlags, EFalse ); - } - } - - DrawNow(); - } - -// ----------------------------------------------------------------------------- -// CHsContentControlListBox::PopulateList -// -// ----------------------------------------------------------------------------- -// -/*static*/ TInt CHsContentControlListBox::PopulateList( TAny* aAny ) - { - CHsContentControlListBox* self = - static_cast< CHsContentControlListBox* >( aAny ); - - TRAP_IGNORE( self->PopulateListL() ); - - return KErrNone; - } - -// End of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/data/MCSExample.rls --- a/idlehomescreen/examples/mcsexample/data/MCSExample.rls Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,45 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -// LOCALISATION STRINGS - -// Caption string for app. -#define qtn_caption_string "MCSExample" - -// First item in "Options" menu pane -#define qtn_command1 "Message" - -// Second item in "Options" menu pane -#define qtn_command2 "List all items" - -#define qtn_help "Help" - -#define qtn_about "About" - -// Third item in "Options" menu pane -#define qtn_exit "Exit" - -// When user requests ECommand1 event, text below is shown. -#define qtn_command1_text "MCS example application." - -#define qtn_loc_resource_file_1 "\\resource\\apps\\MCSExample_0xEB753B18" - -#define qtn_about_dialog_title "About" - -#define qtn_about_dialog_text "MCSExample Version 1.0.0\n\nAuthor: Jaakko Haukipuro\n\nSupport: \n\n(c) " - -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/data/MCSExample.rss --- a/idlehomescreen/examples/mcsexample/data/MCSExample.rss Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,310 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -// RESOURCE IDENTIFIER -NAME MCSE // 4 letter ID - - -// INCLUDES -#include -#include -#include -#include -#include "MCSExample.hrh" -#include "MCSExample.rls" - -// RESOURCE DEFINITIONS -// ----------------------------------------------------------------------------- -// -// Define the resource file signature -// This resource should be empty. -// -// ----------------------------------------------------------------------------- -// -RESOURCE RSS_SIGNATURE - { - } - -// ----------------------------------------------------------------------------- -// -// Default Document Name -// -// ----------------------------------------------------------------------------- -// -RESOURCE TBUF r_default_document_name - { - buf="MCSE"; - } - -// ----------------------------------------------------------------------------- -// -// Define default menu and CBA key. -// -// ----------------------------------------------------------------------------- -// -RESOURCE EIK_APP_INFO - { - menubar = r_menubar; - cba = R_AVKON_SOFTKEYS_OPTIONS_EXIT; - } - - -// ----------------------------------------------------------------------------- -// -// r_menubar -// Main menubar -// -// ----------------------------------------------------------------------------- -// -RESOURCE MENU_BAR r_menubar - { - titles = - { - MENU_TITLE { menu_pane = r_menu; } - }; - } - - -// ----------------------------------------------------------------------------- -// -// r_menu -// Menu for "Options" -// -// ----------------------------------------------------------------------------- -// -RESOURCE MENU_PANE r_menu - { - items = - { - // added the new Options menu command here - MENU_ITEM - { - command = ECommand1; - txt = qtn_command1; - }, - MENU_ITEM - { - command = ECommand2; - txt = qtn_command2; - }, - MENU_ITEM - { - command = EHelp; - txt = qtn_help; - }, - MENU_ITEM - { - command = EAbout; - txt = qtn_about; - }, - MENU_ITEM - { - command = EAknSoftkeyExit; - txt = qtn_exit; - } - }; - } - -// ----------------------------------------------------------------------------- -// -// About dialog resource. -// -// ----------------------------------------------------------------------------- -// -RESOURCE DIALOG r_about_query_dialog - { - flags = EEikDialogFlagNoBorder | EEikDialogFlagNoShadow; - buttons = R_AVKON_SOFTKEYS_OK_EMPTY; - items= - { - DLG_LINE - { - type = EAknCtPopupHeadingPane; - id = EAknMessageQueryHeaderId; - itemflags = EEikDlgItemNonFocusing; - control = AVKON_HEADING - { - }; - }, - DLG_LINE - { - type = EAknCtMessageQuery; - id = EAknMessageQueryContentId; - control = AVKON_MESSAGE_QUERY - { - }; - } - }; - } - -RESOURCE DIALOG r_icon_query_dialog - { - flags = EGeneralQueryFlags; - buttons = R_AVKON_SOFTKEYS_OK_CANCEL; - form = r_icon_form; - } - -RESOURCE FORM r_icon_form - { - flags = EEikFormUseDoubleSpacedFormat|EEikFormEditModeOnly; - items = - { - DLG_LINE - { - type = EEikCtEdwin; - prompt = "Major skin ID"; - id = EMyFirstLine; - control = EDWIN - { - flags = EEikEdwinNoHorizScrolling | EEikEdwinResizable; - width = 30; - maxlength = 30; - // added to limit expanding in forms. - // If you want full screen use 6 here - max_view_height_in_lines = 1; - // if you have the line above, you must have this. - // It's calculable from LAF - base_line_delta = 21; - }; - }, - DLG_LINE - { - type = EEikCtEdwin; - prompt = "Minor skin ID"; - id = EMySecondLine; - control = EDWIN - { - flags = EEikEdwinNoHorizScrolling | EEikEdwinResizable; - width = 30; - maxlength = 30; - // added to limit expanding in forms. - // If you want full screen use 6 here - max_view_height_in_lines = 1; - // if you have the line above, you must have this. - // It's calculable from LAF - base_line_delta = 21; - }; - }, - DLG_LINE - { - type = EEikCtEdwin; - prompt = "MIF/MBM file name"; - id = EMyThirdLine; - control = EDWIN - { - flags = EEikEdwinNoHorizScrolling | EEikEdwinResizable; - width = 30; - maxlength = 30; - // added to limit expanding in forms. - // If you want full screen use 6 here - max_view_height_in_lines = 1; - // if you have the line above, you must have this. - // It's calculable from LAF - base_line_delta = 21; - }; - }, - DLG_LINE - { - type = EEikCtEdwin; - prompt = "MIF/MBM bitmap ID"; - id = EMyFourthLine; - control = EDWIN - { - flags = EEikEdwinNoHorizScrolling | EEikEdwinResizable; - width = 30; - maxlength = 30; - // added to limit expanding in forms. - // If you want full screen use 6 here - max_view_height_in_lines = 1; - // if you have the line above, you must have this. - // It's calculable from LAF - base_line_delta = 21; - }; - }, - DLG_LINE - { - type = EEikCtEdwin; - prompt = "MIF/MBM mask ID"; - id = EMyFifthLine; - control = EDWIN - { - flags = EEikEdwinNoHorizScrolling | EEikEdwinResizable; - width = 30; - maxlength = 30; - // added to limit expanding in forms. - // If you want full screen use 6 here - max_view_height_in_lines = 1; - // if you have the line above, you must have this. - // It's calculable from LAF - base_line_delta = 21; - }; - }, - DLG_LINE - { - type = EEikCtEdwin; - prompt = "Presenceicon"; - id = EMySixthLine; - control = EDWIN - { - flags = EEikEdwinNoHorizScrolling | EEikEdwinResizable; - width = 30; - maxlength = 30; - // added to limit expanding in forms. - // If you want full screen use 6 here - max_view_height_in_lines = 1; - // if you have the line above, you must have this. - // It's calculable from LAF - base_line_delta = 21; - }; - } - }; - } - - - -// ----------------------------------------------------------------------------- -// -// Resources for messages. -// -// ----------------------------------------------------------------------------- -// -RESOURCE TBUF32 r_caption_string { buf=qtn_caption_string; } -RESOURCE TBUF32 r_about_dialog_title { buf=qtn_about_dialog_title; } -RESOURCE TBUF r_about_dialog_text { buf=qtn_about_dialog_text; } -RESOURCE TBUF r_command1_text { buf=qtn_command1_text; } - - -// ---------------------------------------------------------------------------- -// -// r_localisable_app_info -// -// ---------------------------------------------------------------------------- -// -RESOURCE LOCALISABLE_APP_INFO r_localisable_app_info - { - short_caption = qtn_caption_string; - caption_and_icon = - CAPTION_AND_ICON_INFO - { - caption = qtn_caption_string; - - number_of_icons = 1; - icon_file = "\\resource\\apps\\MCSExample_0xEB753B18.mif"; - }; - } - -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/data/MCSExample_reg.rss --- a/idlehomescreen/examples/mcsexample/data/MCSExample_reg.rss Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,35 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#include "MCSExample.hrh" -#include "MCSExample.rls" -#include -#include - -UID2 KUidAppRegistrationResourceFile -UID3 _UID3 - -RESOURCE APP_REGISTRATION_INFO - { - app_file="MCSExample_0xEB753B18"; - localisable_resource_file = qtn_loc_resource_file_1; - localisable_resource_id = R_LOCALISABLE_APP_INFO; - - embeddability=KAppNotEmbeddable; - newfile=KAppDoesNotSupportNewFile; - } - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/gfx/qgn_menu_MCSExample.svg --- a/idlehomescreen/examples/mcsexample/gfx/qgn_menu_MCSExample.svg Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,56 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/group/Icons_scalable_dc.mk --- a/idlehomescreen/examples/mcsexample/group/Icons_scalable_dc.mk Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,64 +0,0 @@ -# -# Copyright (c) 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" -# which accompanies this distribution, and is available -# at the URL "http://www.eclipse.org/legal/epl-v10.html". -# -# Initial Contributors: -# Nokia Corporation - initial contribution. -# -# Contributors: -# -# Description: -# - - -ifeq (WINS,$(findstring WINS, $(PLATFORM))) -ZDIR=$(EPOCROOT)epoc32\release\$(PLATFORM)\$(CFG)\Z -else -ZDIR=$(EPOCROOT)epoc32\data\z -endif - -TARGETDIR=$(ZDIR)\resource\apps -ICONTARGETFILENAME=$(TARGETDIR)\MCSExample_0xEB753B18.mif - -ICONDIR=..\gfx - -do_nothing : - @rem do_nothing - -MAKMAKE : do_nothing - -BLD : do_nothing - -CLEAN : - @echo ...Deleting $(ICONTARGETFILENAME) - del /q /f $(ICONTARGETFILENAME) - -LIB : do_nothing - -CLEANLIB : do_nothing - -# ---------------------------------------------------------------------------- -# NOTE: if you have JUSTINTIME enabled for your S60 3rd FP1 or newer SDK -# and this command crashes, consider adding "/X" to the command line. -# See -# ---------------------------------------------------------------------------- - -RESOURCE : $(ICONTARGETFILENAME) - -$(ICONTARGETFILENAME) : $(ICONDIR)\qgn_menu_MCSExample.svg - mifconv $(ICONTARGETFILENAME) \ - /c32 $(ICONDIR)\qgn_menu_MCSExample.svg - -FREEZE : do_nothing - -SAVESPACE : do_nothing - -RELEASABLES : - @echo $(ICONTARGETFILENAME) - -FINAL : do_nothing - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/group/MCSExample.mmp --- a/idlehomescreen/examples/mcsexample/group/MCSExample.mmp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,81 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#include -#include -APP_LAYER_SYSTEMINCLUDE - - -TARGET MCSExample_0xEB753B18.exe -TARGETTYPE exe -UID 0x100039CE 0xEB753B18 - -SOURCEPATH ..\src -SOURCE MCSExample.cpp -SOURCE MCSExampleApplication.cpp -SOURCE MCSExampleAppView.cpp -SOURCE MCSExampleAppUi.cpp -SOURCE MCSExampleDocument.cpp -SOURCE mcspluginwatcher.cpp - -SOURCEPATH ..\data - -START RESOURCE MCSExample.rss -HEADER -TARGET MCSExample_0xEB753B18 -TARGETPATH resource\apps -END //RESOURCE - -START RESOURCE MCSExample_reg.rss -TARGET MCSExample_0xEB753B18_reg -TARGETPATH \private\10003a3f\apps -END //RESOURCE - - - -USERINCLUDE ..\inc - -SYSTEMINCLUDE \epoc32\include - -LIBRARY euser.lib -LIBRARY apparc.lib -LIBRARY cone.lib -LIBRARY eikcore.lib -LIBRARY eikcoctl.lib -LIBRARY eikctl.lib -LIBRARY avkon.lib -LIBRARY aknicon.lib -LIBRARY bafl.lib -LIBRARY commonengine.lib -LIBRARY aknnotify.lib -LIBRARY fbscli.lib -LIBRARY egul.lib -LIBRARY mcsmenu.lib -LIBRARY mcsextendedmenu.lib -LIBRARY eikdlg.lib - - -LANG SC - -VENDORID 0 -SECUREID 0xEB753B18 -CAPABILITY ReadUserData ReadDeviceData WriteDeviceData - -#ifdef ENABLE_ABIV2_MODE - DEBUGGABLE_UDEBONLY -#endif -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/group/bld.inf --- a/idlehomescreen/examples/mcsexample/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,27 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - - -PRJ_PLATFORMS -WINSCW ARMV5 GCCE - -PRJ_MMPFILES - -gnumakefile icons_scalable_dc.mk - -MCSExample.mmp - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/inc/MCSExample.hrh --- a/idlehomescreen/examples/mcsexample/inc/MCSExample.hrh Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,42 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#ifndef __MCSEXAMPLE_HRH__ -#define __MCSEXAMPLE_HRH__ - -#define _UID3 0xEB753B18 - -// MCSExample enumerate command codes -enum TMCSExampleIds - { - ECommand1 = 0x6001, // start value must not be 0 - ECommand2, - EHelp, - EAbout - }; - -enum TMyControlIds - { - EMyFirstLine = 100, - EMySecondLine, - EMyThirdLine, - EMyFourthLine, - EMyFifthLine, - EMySixthLine - }; - -#endif // __MCSEXAMPLE_HRH__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/inc/MCSExample.pan --- a/idlehomescreen/examples/mcsexample/inc/MCSExample.pan Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,34 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#ifndef __MCSEXAMPLE_PAN__ -#define __MCSEXAMPLE_PAN__ - -/** MCSExample application panic codes */ -enum TMCSExamplePanics - { - EMCSExampleUi = 1 - // add further panics here - }; - -inline void Panic(TMCSExamplePanics aReason) - { - _LIT(applicationName, "MCSExample"); - User::Panic(applicationName, aReason); - } - -#endif // __MCSEXAMPLE_PAN__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/inc/MCSExampleAppUi.h --- a/idlehomescreen/examples/mcsexample/inc/MCSExampleAppUi.h Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,93 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#ifndef __MCSEXAMPLEAPPUI_h__ -#define __MCSEXAMPLEAPPUI_h__ - -// INCLUDES -#include - -// FORWARD DECLARATIONS -class CMCSExampleAppView; - -// CLASS DECLARATION -/** - * CMCSExampleAppUi application UI class. - * Interacts with the user through the UI and request message processing - * from the handler class - */ -class CMCSExampleAppUi : public CAknAppUi - { -public: - // Constructors and destructor - - /** - * ConstructL. - * 2nd phase constructor. - */ - void ConstructL(); - - /** - * CMCSExampleAppUi. - * C++ default constructor. This needs to be public due to - * the way the framework constructs the AppUi - */ - CMCSExampleAppUi(); - - /** - * ~CMCSExampleAppUi. - * Virtual Destructor. - */ - virtual ~CMCSExampleAppUi(); - -private: - // Functions from base classes - - /** - * From CEikAppUi, HandleCommandL. - * Takes care of command handling. - * @param aCommand Command to be handled. - */ - void HandleCommandL(TInt aCommand); - - /** - * HandleStatusPaneSizeChange. - * Called by the framework when the application status pane - * size is changed. - */ - void HandleStatusPaneSizeChange(); - - /** - * From CCoeAppUi, HelpContextL. - * Provides help context for the application. - * size is changed. - */ - CArrayFix* HelpContextL() const; - -private: - // Data - - /** - * The application view - * Owned by CMCSExampleAppUi - */ - CMCSExampleAppView* iAppView; - - }; - -#endif // __MCSEXAMPLEAPPUI_h__ -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/inc/MCSExampleAppView.h --- a/idlehomescreen/examples/mcsexample/inc/MCSExampleAppView.h Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,163 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#ifndef __MCSEXAMPLEAPPVIEW_h__ -#define __MCSEXAMPLEAPPVIEW_h__ - -// INCLUDES -#include -#include -#include -#include -#include // MEikListBoxObserver -#include - -class CMCSExampleWatcher; - -struct TMyData - { -public: // data - TBuf<256> majorID; - TBuf<256> minorID; - TBuf<256> iconFile; - TBuf<256> iconID; - TBuf<256> maskID; - TBuf<256> statusIcon; - TBool updated; - }; - -class CMyForm : public CAknForm - { -public: // construction - CMyForm( TMyData& aData ); - virtual ~CMyForm(); -public: // from CAknForm - //void DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane ); - //void ProcessCommandL( TInt aCommandId ); - TBool SaveFormDataL(); - void DoNotSaveFormDataL(); - //void AddItemL() ; - void PreLayoutDynInitL(); - //MEikDialogPageObserver::TFormControlTypes - // ConvertCustomControlTypeToBaseControlType( TInt aControlType ) const; -protected: - TBool OkToExitL( TInt aButtonId ); - -private: - void LoadFormDataL(); -private: // data - TMyData& iData; - }; - - - -// CLASS DECLARATION -class CMCSExampleAppView : public CCoeControl, public MEikListBoxObserver - { -public: - // New methods - - /** - * NewL. - * Two-phased constructor. - * Create a CMCSExampleAppView object, which will draw itself to aRect. - * @param aRect The rectangle this view will be drawn to. - * @return a pointer to the created instance of CMCSExampleAppView. - */ - static CMCSExampleAppView* NewL(const TRect& aRect); - - /** - * NewLC. - * Two-phased constructor. - * Create a CMCSExampleAppView object, which will draw itself - * to aRect. - * @param aRect Rectangle this view will be drawn to. - * @return A pointer to the created instance of CMCSExampleAppView. - */ - static CMCSExampleAppView* NewLC(const TRect& aRect); - - /** - * ~CMCSExampleAppView - * Virtual Destructor. - */ - virtual ~CMCSExampleAppView(); - - void ListAllItemsL(); - -public: - // Functions from base classes - - /** - * From CCoeControl, Draw - * Draw this CMCSExampleAppView to the screen. - * @param aRect the rectangle of this view that needs updating - */ - void Draw(const TRect& aRect) const; - - /** - * From CoeControl, SizeChanged. - * Called by framework when the view size is changed. - */ - virtual void SizeChanged(); - - /** - * From CoeControl, HandlePointerEventL. - * Called by framework when a pointer touch event occurs. - * Note: although this method is compatible with earlier SDKs, - * it will not be called in SDKs without Touch support. - * @param aPointerEvent the information about this event - */ - virtual void HandlePointerEventL(const TPointerEvent& aPointerEvent); - - CCoeControl* ComponentControl( TInt aIndex) const; - - TInt CountComponentControls() const; - - void HandleListBoxEventL( CEikListBox* aListBox, TListBoxEvent aEventType ); - -private: - // Constructors - - /** - * ConstructL - * 2nd phase constructor. - * Perform the second phase construction of a - * CMCSExampleAppView object. - * @param aRect The rectangle this view will be drawn to. - */ - void ConstructL(const TRect& aRect); - - /** - * CMCSExampleAppView. - * C++ default constructor. - */ - CMCSExampleAppView(); - - CDesCArray* GetArrayL(CArrayPtr* aIcons); - void MakeListBoxL(void); - void UpdateScrollBar(CEikListBox* aListBox); - void ShowFormL( TInt aItemIndex); - - RMenu iMCSMenu; - CAknSingleLargeStyleListBox* iListBox; - RArray iItemArray; - /** MCS asynchronous operation watcher, owned */ - CMCSExampleWatcher* iWatcher; - }; - -#endif // __MCSEXAMPLEAPPVIEW_h__ -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/inc/MCSExampleApplication.h --- a/idlehomescreen/examples/mcsexample/inc/MCSExampleApplication.h Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,64 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#ifndef __MCSEXAMPLEAPPLICATION_H__ -#define __MCSEXAMPLEAPPLICATION_H__ - -// INCLUDES -#include -#include "MCSExample.hrh" - -// UID for the application; -// this should correspond to the uid defined in the mmp file -const TUid KUidMCSExampleApp = - { - _UID3 - }; - -// CLASS DECLARATION - -/** - * CMCSExampleApplication application class. - * Provides factory to create concrete document object. - * An instance of CMCSExampleApplication is the application part of the - * AVKON application framework for the MCSExample example application. - */ -class CMCSExampleApplication : public CAknApplication - { -public: - // Functions from base classes - - /** - * From CApaApplication, AppDllUid. - * @return Application's UID (KUidMCSExampleApp). - */ - TUid AppDllUid() const; - -protected: - // Functions from base classes - - /** - * From CApaApplication, CreateDocumentL. - * Creates CMCSExampleDocument document object. The returned - * pointer in not owned by the CMCSExampleApplication object. - * @return A pointer to the created document object. - */ - CApaDocument* CreateDocumentL(); - }; - -#endif // __MCSEXAMPLEAPPLICATION_H__ -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/inc/MCSExampleDocument.h --- a/idlehomescreen/examples/mcsexample/inc/MCSExampleDocument.h Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,99 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#ifndef __MCSEXAMPLEDOCUMENT_h__ -#define __MCSEXAMPLEDOCUMENT_h__ - -// INCLUDES -#include - -// FORWARD DECLARATIONS -class CMCSExampleAppUi; -class CEikApplication; - -// CLASS DECLARATION - -/** - * CMCSExampleDocument application class. - * An instance of class CMCSExampleDocument is the Document part of the - * AVKON application framework for the MCSExample example application. - */ -class CMCSExampleDocument : public CAknDocument - { -public: - // Constructors and destructor - - /** - * NewL. - * Two-phased constructor. - * Construct a CMCSExampleDocument for the AVKON application aApp - * using two phase construction, and return a pointer - * to the created object. - * @param aApp Application creating this document. - * @return A pointer to the created instance of CMCSExampleDocument. - */ - static CMCSExampleDocument* NewL(CEikApplication& aApp); - - /** - * NewLC. - * Two-phased constructor. - * Construct a CMCSExampleDocument for the AVKON application aApp - * using two phase construction, and return a pointer - * to the created object. - * @param aApp Application creating this document. - * @return A pointer to the created instance of CMCSExampleDocument. - */ - static CMCSExampleDocument* NewLC(CEikApplication& aApp); - - /** - * ~CMCSExampleDocument - * Virtual Destructor. - */ - virtual ~CMCSExampleDocument(); - -public: - // Functions from base classes - - /** - * CreateAppUiL - * From CEikDocument, CreateAppUiL. - * Create a CMCSExampleAppUi object and return a pointer to it. - * The object returned is owned by the Uikon framework. - * @return Pointer to created instance of AppUi. - */ - CEikAppUi* CreateAppUiL(); - -private: - // Constructors - - /** - * ConstructL - * 2nd phase constructor. - */ - void ConstructL(); - - /** - * CMCSExampleDocument. - * C++ default constructor. - * @param aApp Application creating this document. - */ - CMCSExampleDocument(CEikApplication& aApp); - - }; - -#endif // __MCSEXAMPLEDOCUMENT_h__ -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/inc/mcspluginwatcher.h --- a/idlehomescreen/examples/mcsexample/inc/mcspluginwatcher.h Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,97 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#ifndef __MCSPLUGINWATCHER_H -#define __MCSPLUGINWATCHER_H - -#include - -class CMenuOperation; -class CMCSPluginEngine; -class CMCSExampleAppView; - - -/** - * - * This class implements MCS menu action watcher for async calls. - * - */ -class CMCSExampleWatcher: public CActive - { - public: - - - /** - * Two-phased constructor. - * - * @param aType - */ - static CMCSExampleWatcher* NewL( ); - - /** - * Destructor. - */ - virtual ~CMCSExampleWatcher(); - - /** - * Watch menu operation or notification. - * - * @param aOperation - */ - void Watch( CMenuOperation* aOperation, CMCSExampleAppView* aObserver ); - - - /** - * GetStatus - */ - TInt GetStatus(); - - private: - - /** - * Default constructor. - * - * @param aType - */ - CMCSExampleWatcher(); - - /** - * ConstructL - */ - void ConstructL(); - - /** - * Inherited from CActive class - */ - void RunL(); - - /** - * Inherited from CActive class - */ - void DoCancel(); - - private: - - /** - * Menu operation - * Owned - */ - CMenuOperation* iOperation; - CMCSExampleAppView* iObserver; - }; - -#endif /*__MCSPLUGINWATCHER_H*/ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/sis/MCSExample_S60_3_X_v_1_0_0.pkg --- a/idlehomescreen/examples/mcsexample/sis/MCSExample_S60_3_X_v_1_0_0.pkg Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,37 +0,0 @@ -; Installation file for MCSExample application -; -; This is an auto-generated PKG file by Carbide. -; This file uses variables specific to Carbide builds that will not work -; on command-line builds. If you want to use this generated PKG file from the -; command-line tools you will need to modify the variables with the appropriate -; values: $(EPOCROOT), $(PLATFORM), $(TARGET) -; -;Language - standard language definitions -&EN - -; standard SIS file header -#{"MCSExample"},(0xEB753B18),1,0,0 - -;Localised Vendor name -%{"Vendor-EN"} - -;Unique Vendor name -:"Vendor" - -;Supports Series 60 v 3.0 -[0x101F7961], 0, 0, 0, {"Series60ProductID"} - -;Files to install -;You should change the source paths to match that of your environment -; -"$(EPOCROOT)Epoc32\release\$(PLATFORM)\$(TARGET)\MCSExample_0xEB753B18.exe" -"!:\sys\bin\MCSExample_0xEB753B18.exe" -"$(EPOCROOT)Epoc32\data\z\resource\apps\MCSExample_0xEB753B18.rsc" -"!:\resource\apps\MCSExample_0xEB753B18.rsc" -"$(EPOCROOT)Epoc32\data\z\private\10003a3f\apps\MCSExample_0xEB753B18_reg.rsc" -"!:\private\10003a3f\import\apps\MCSExample_0xEB753B18_reg.rsc" -"$(EPOCROOT)Epoc32\data\z\resource\apps\MCSExample_0xEB753B18.mif" -"!:\resource\apps\MCSExample_0xEB753B18.mif" -;"..\help\MCSExample_0xEB753B18.hlp" -"!:\resource\help\MCSExample_0xEB753B18.hlp" - -; Add any installation notes if applicable -;"MCSExample.txt" -"!:\private\EB753B18\MCSExample.txt" - -;required for application to be covered by backup/restore facility -"..\sis\backup_registration.xml" -"!:\private\EB753B18\backup_registration.xml" diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/sis/backup_registration.xml --- a/idlehomescreen/examples/mcsexample/sis/backup_registration.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,5 +0,0 @@ - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/src/MCSExample.cpp --- a/idlehomescreen/examples/mcsexample/src/MCSExample.cpp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,31 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -// INCLUDE FILES -#include -#include "MCSExampleApplication.h" - -LOCAL_C CApaApplication* NewApplication() - { - return new CMCSExampleApplication; - } - -GLDEF_C TInt E32Main() - { - return EikStart::RunApplication(NewApplication); - } - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/src/MCSExampleAppUi.cpp --- a/idlehomescreen/examples/mcsexample/src/MCSExampleAppUi.cpp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,169 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -// INCLUDE FILES -#include -#include -#include -#include - -#include -#include "MCSExample.hrh" -#include "MCSExample.pan" -#include "MCSExampleApplication.h" -#include "MCSExampleAppUi.h" -#include "MCSExampleAppView.h" - - -// ============================ MEMBER FUNCTIONS =============================== - - -// ----------------------------------------------------------------------------- -// CMCSExampleAppUi::ConstructL() -// Symbian 2nd phase constructor can leave. -// ----------------------------------------------------------------------------- -// -void CMCSExampleAppUi::ConstructL() - { - // Initialise app UI with standard value. - BaseConstructL(CAknAppUi::EAknEnableSkin|CAknAppUi::EAknSingleClickCompatible); - - // Create view object - iAppView = CMCSExampleAppView::NewL(ClientRect()); - } -// ----------------------------------------------------------------------------- -// CMCSExampleAppUi::CMCSExampleAppUi() -// C++ default constructor can NOT contain any code, that might leave. -// ----------------------------------------------------------------------------- -// -CMCSExampleAppUi::CMCSExampleAppUi() - { - // No implementation required - } - -// ----------------------------------------------------------------------------- -// CMCSExampleAppUi::~CMCSExampleAppUi() -// Destructor. -// ----------------------------------------------------------------------------- -// -CMCSExampleAppUi::~CMCSExampleAppUi() - { - if (iAppView) - { - delete iAppView; - iAppView = NULL; - } - - } - -// ----------------------------------------------------------------------------- -// CMCSExampleAppUi::HandleCommandL() -// Takes care of command handling. -// ----------------------------------------------------------------------------- -// -void CMCSExampleAppUi::HandleCommandL(TInt aCommand) - { - switch (aCommand) - { - case EEikCmdExit: - case EAknSoftkeyExit: - Exit(); - break; - - case ECommand1: - { - - // Load a string from the resource file and display it - HBufC* textResource = StringLoader::LoadLC(R_COMMAND1_TEXT); - CAknInformationNote* informationNote; - - informationNote = new (ELeave) CAknInformationNote; - - // Show the information Note with - // textResource loaded with StringLoader. - informationNote->ExecuteLD(*textResource); - - // Pop HBuf from CleanUpStack and Destroy it. - CleanupStack::PopAndDestroy(textResource); - } - break; - case ECommand2: - { - iAppView->ListAllItemsL(); - } - break; - case EHelp: - { - - } - break; - case EAbout: - { - - CAknMessageQueryDialog* dlg = - new (ELeave) CAknMessageQueryDialog(); - dlg->PrepareLC(R_ABOUT_QUERY_DIALOG); - HBufC* title = iEikonEnv->AllocReadResourceLC( - R_ABOUT_DIALOG_TITLE); - dlg->QueryHeading()->SetTextL(*title); - CleanupStack::PopAndDestroy(); //title - HBufC* msg = iEikonEnv->AllocReadResourceLC(R_ABOUT_DIALOG_TEXT); - dlg->SetMessageTextL(*msg); - CleanupStack::PopAndDestroy(); //msg - dlg->RunLD(); - } - break; - default: - Panic( EMCSExampleUi); - break; - } - } -// ----------------------------------------------------------------------------- -// Called by the framework when the application status pane -// size is changed. Passes the new client rectangle to the -// AppView -// ----------------------------------------------------------------------------- -// -void CMCSExampleAppUi::HandleStatusPaneSizeChange() - { - iAppView->SetRect(ClientRect()); - } - -CArrayFix* CMCSExampleAppUi::HelpContextL() const - { -#warning "Please see comment about help and UID3..." - // Note: Help will not work if the application uid3 is not in the - // protected range. The default uid3 range for projects created - // from this template (0xE0000000 - 0xEFFFFFFF) are not in the protected range so that they - // can be self signed and installed on the device during testing. - // Once you get your official uid3 from Symbian Ltd. and find/replace - // all occurrences of uid3 in your project, the context help will - // work. Alternatively, a patch now exists for the versions of - // HTML help compiler in SDKs and can be found here along with an FAQ: - // http://www3.symbian.com/faq.nsf/AllByDate/E9DF3257FD565A658025733900805EA2?OpenDocument -#ifdef _HELP_AVAILABLE_ - CArrayFixFlat* array = new(ELeave)CArrayFixFlat(1); - CleanupStack::PushL(array); - array->AppendL(TCoeHelpContext(KUidMCSExampleApp, KGeneral_Information)); - CleanupStack::Pop(array); - return array; -#else - return NULL; -#endif - } - -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/src/MCSExampleAppView.cpp --- a/idlehomescreen/examples/mcsexample/src/MCSExampleAppView.cpp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,462 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -// INCLUDE FILES -#include -#include -#include -#include -#include -#include -#include - -#include -#include - -#include -#include "MCSExampleAppView.h" -#include "mcspluginwatcher.h" -#include "MCSExample.hrh" - -_LIT( KMenuData, "matrixmenudata" ); - -CMyForm::CMyForm( TMyData& aData ) : iData( aData ) - { - } - -CMyForm::~CMyForm() - { - } - -void CMyForm::PreLayoutDynInitL() - { - CAknForm::PreLayoutDynInitL(); - LoadFormDataL(); - } - -void CMyForm::LoadFormDataL() - { - CEikEdwin* textEd1 = - (CEikEdwin*)Control( EMyFirstLine ); - textEd1->SetTextL( &iData.majorID ); - - CEikEdwin* textEd2 = - (CEikEdwin*)Control( EMySecondLine ); - textEd2->SetTextL( &iData.minorID ); - - CEikEdwin* textEd3 = - (CEikEdwin*)Control( EMyThirdLine ); - textEd3->SetTextL( &iData.iconFile ); - - CEikEdwin* textEd4 = - (CEikEdwin*)Control( EMyFourthLine ); - textEd4->SetTextL( &iData.iconID ); - - CEikEdwin* textEd5 = - (CEikEdwin*)Control( EMyFifthLine ); - textEd5->SetTextL( &iData.maskID ); - - CEikEdwin* textEd6 = - (CEikEdwin*)Control( EMySixthLine ); - textEd6->SetTextL( &iData.statusIcon ); - } - -TBool CMyForm::SaveFormDataL() - { - CEikEdwin* textEd1 = - (CEikEdwin*)Control( EMyFirstLine ); - textEd1->GetText( iData.majorID ); - - CEikEdwin* textEd2 = - (CEikEdwin*)Control( EMySecondLine ); - textEd2->GetText( iData.minorID ); - - CEikEdwin* textEd3 = - (CEikEdwin*)Control( EMyThirdLine ); - textEd3->GetText( iData.iconFile ); - - CEikEdwin* textEd4 = - (CEikEdwin*)Control( EMyFourthLine ); - textEd4->GetText( iData.iconID ); - - CEikEdwin* textEd5 = - (CEikEdwin*)Control( EMyFifthLine ); - textEd5->GetText( iData.maskID ); - - CEikEdwin* textEd6 = - (CEikEdwin*)Control( EMySixthLine ); - textEd6->GetText( iData.statusIcon ); - return ETrue; - } - -void CMyForm::DoNotSaveFormDataL() - { - LoadFormDataL(); - } - -TBool CMyForm::OkToExitL( TInt aButtonId ) - { - if ( aButtonId == EAknSoftkeyOk) - { - SaveFormDataL(); - iData.updated = ETrue; - } - else if( aButtonId == EAknSoftkeyCancel ) - { - iData.updated = EFalse; - } - return ETrue; - } - -CGulIcon* ConvertToGulIconLC( CAknIcon* aIcon ) - { - CGulIcon* icon = CGulIcon::NewL( aIcon->Bitmap(), aIcon->Mask() ); - CleanupStack::PushL( icon ); - // Detach bitmap and mask - aIcon->SetBitmap( NULL ); - aIcon->SetMask( NULL ); - return icon; - } - - -// ============================ MEMBER FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// CMCSExampleAppView::NewL() -// Two-phased constructor. -// ----------------------------------------------------------------------------- -// -CMCSExampleAppView* CMCSExampleAppView::NewL(const TRect& aRect) - { - CMCSExampleAppView* self = CMCSExampleAppView::NewLC(aRect); - CleanupStack::Pop(self); - return self; - } - -// ----------------------------------------------------------------------------- -// CMCSExampleAppView::NewLC() -// Two-phased constructor. -// ----------------------------------------------------------------------------- -// -CMCSExampleAppView* CMCSExampleAppView::NewLC(const TRect& aRect) - { - CMCSExampleAppView* self = new (ELeave) CMCSExampleAppView; - CleanupStack::PushL(self); - self->ConstructL(aRect); - return self; - } - -// ----------------------------------------------------------------------------- -// CMCSExampleAppView::ConstructL() -// Symbian 2nd phase constructor can leave. -// ----------------------------------------------------------------------------- -// -void CMCSExampleAppView::ConstructL(const TRect& aRect) - { - // Create a window for this application view - CreateWindowL(); - - // Set the windows size - SetRect(aRect); - - // Activate the window, which makes it ready to be drawn - ActivateL(); - - iMCSMenu.OpenL( KMenuData ); - iWatcher = CMCSExampleWatcher::NewL(); - } - -// ----------------------------------------------------------------------------- -// CMCSExampleAppView::CMCSExampleAppView() -// C++ default constructor can NOT contain any code, that might leave. -// ----------------------------------------------------------------------------- -// -CMCSExampleAppView::CMCSExampleAppView() - { - // No implementation required - } - -// ----------------------------------------------------------------------------- -// CMCSExampleAppView::~CMCSExampleAppView() -// Destructor. -// ----------------------------------------------------------------------------- -// -CMCSExampleAppView::~CMCSExampleAppView() - { - iMCSMenu.Close(); - delete iListBox; - iItemArray.Close(); - delete iWatcher; - } - -// ----------------------------------------------------------------------------- -// -// ----------------------------------------------------------------------------- -// -void CMCSExampleAppView::ListAllItemsL() - { - - - CArrayPtr* icons =new( ELeave ) CAknIconArray(1); - CleanupStack::PushL(icons); - - iListBox->Model()->SetItemTextArray(GetArrayL(icons)); - iListBox->Model()->SetOwnershipType(ELbmOwnsItemArray); - // - // Inform the listbox of item additions. - // This should be done if you want your items displayed correctly - iListBox ->HandleItemAdditionL(); - - CleanupStack::Pop(icons); - CArrayPtr* oldArray = iListBox->ItemDrawer()->ColumnData()->IconArray(); - delete oldArray; - iListBox->ItemDrawer()->ColumnData()->SetIconArray(icons); - } - -// ----------------------------------------------------------------------------- -// -// ----------------------------------------------------------------------------- -// -void CMCSExampleAppView::MakeListBoxL() - { - TInt MySetIndex(0); - - if(iListBox) - { - MySetIndex = iListBox->CurrentItemIndex(); - } - - delete iListBox; - iListBox = NULL; - - iListBox = new( ELeave ) CAknSingleLargeStyleListBox(); - iListBox->ConstructL(this,EAknListBoxSelectionList); - iListBox->SetListBoxObserver( this ); - - iListBox->CreateScrollBarFrameL( ETrue ); - iListBox->ScrollBarFrame()->SetScrollBarVisibilityL( - CEikScrollBarFrame::EOff, CEikScrollBarFrame::EAuto); - - iListBox->SetRect(Rect()); - - iListBox->View()->SetListEmptyTextL(_L("No data")); - - iListBox->ActivateL(); - - TInt ItemsCount = iListBox->Model()->ItemTextArray()->MdcaCount(); - - if(ItemsCount > MySetIndex && MySetIndex >= 0) - iListBox->SetCurrentItemIndex(MySetIndex); - else if(ItemsCount > 0) - iListBox->SetCurrentItemIndex(0); - - UpdateScrollBar(iListBox); - iListBox->DrawNow(); - } - -// ----------------------------------------------------------------------------- -// -// ----------------------------------------------------------------------------- -// -CDesCArray* CMCSExampleAppView::GetArrayL(CArrayPtr* aIcons) -{ - TBuf<256> listString; - CDesCArrayFlat* myArray = new(ELeave)CDesCArrayFlat(1); - CleanupStack::PushL(myArray); - - const TInt rootId = iMCSMenu. RootFolderL(); - iItemArray.Reset(); - //CleanupClosePushL( itemArray ); - // Get all the items from MCS - iMCSMenu.GetItemsL( iItemArray, rootId, NULL, ETrue ); - - for( TInt i = 0; i < iItemArray.Count(); i++ ) - { - // Open the actual item - CMenuItem* menuItem = CMenuItem::OpenL( iMCSMenu, iItemArray[i] ); - CleanupStack::PushL( menuItem ); - - // Get the name of the item - TBool attrExists( EFalse ); - TPtrC attr = menuItem->GetAttributeL(_L("short_name" ), attrExists ); - - //Create listbox string - listString.Delete(0, 256); - listString.AppendNum( i ); - listString.Append( _L("\t")); - listString.Append( attr ); - myArray->AppendL( listString ); - - //Fetch the item icon from MCS - CAknIcon* icon = MenuIconUtility::GetItemIconL( *menuItem ); - CleanupStack::PushL( icon ); - if ( icon ) - { - CGulIcon* gIcon = ConvertToGulIconLC( icon ); - aIcons->AppendL( gIcon ); - CleanupStack::Pop( gIcon ); - } - CleanupStack::PopAndDestroy( icon ); - CleanupStack::PopAndDestroy( menuItem ); - } - CleanupStack::Pop(myArray); - return myArray; -} - -// ----------------------------------------------------------------------------- -// -// ----------------------------------------------------------------------------- -// -void CMCSExampleAppView::UpdateScrollBar(CEikListBox* aListBox) - { - if (aListBox) - { - TInt pos(aListBox->View()->CurrentItemIndex()); - if (aListBox->ScrollBarFrame()) - { - aListBox->ScrollBarFrame()->MoveVertThumbTo(pos); - } - } - } - -// ----------------------------------------------------------------------------- -// CMCSExampleAppView::Draw() -// Draws the display. -// ----------------------------------------------------------------------------- -// -void CMCSExampleAppView::Draw(const TRect& /*aRect*/) const - { - // Get the standard graphics context - CWindowGc& gc = SystemGc(); - - // Gets the control's extent - TRect drawRect(Rect()); - - // Clears the screen - gc.Clear(drawRect); - - } - -// ----------------------------------------------------------------------------- -// CMCSExampleAppView::SizeChanged() -// Called by framework when the view size is changed. -// ----------------------------------------------------------------------------- -// -void CMCSExampleAppView::SizeChanged() - { - TRAP_IGNORE( MakeListBoxL() ); - DrawNow(); - } - -// ----------------------------------------------------------------------------- -// CMCSExampleAppView::HandlePointerEventL() -// Called by framework to handle pointer touch events. -// Note: although this method is compatible with earlier SDKs, -// it will not be called in SDKs without Touch support. -// ----------------------------------------------------------------------------- -// -void CMCSExampleAppView::HandlePointerEventL( - const TPointerEvent& aPointerEvent) - { - - // Call base class HandlePointerEventL() - CCoeControl::HandlePointerEventL(aPointerEvent); - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -void CMCSExampleAppView::HandleListBoxEventL( CEikListBox* /*aListBox*/, TListBoxEvent aEventType ) - { - if( iListBox && aEventType == EEventItemSingleClicked ) - { - TInt index = iListBox->CurrentItemIndex(); - if( index < iItemArray.Count()) - { - ShowFormL( index ); - } - } - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -void CMCSExampleAppView::ShowFormL( TInt aItemIndex) - { - CMenuItem* menuItem = CMenuItem::OpenL( iMCSMenu, iItemArray[aItemIndex] ); - CleanupStack::PushL( menuItem ); - TBool attrExists( EFalse ); - TPtrC attr = menuItem->GetAttributeL(_L("short_name" ), attrExists ); - // Initialize form data. - TBool exists( EFalse );; - TMyData myData; - myData.majorID = menuItem->GetAttributeL( KMenuAttrIconSkinMajorId, exists ); - myData.minorID = menuItem->GetAttributeL( KMenuAttrIconSkinMinorId, exists ); - myData.iconFile = menuItem->GetAttributeL( KMenuAttrIconFile, exists ); - myData.iconID = menuItem->GetAttributeL( KMenuAttrIconId, exists ); - myData.maskID = menuItem->GetAttributeL( KMenuAttrMaskId, exists ); - // e.g. skin(0x101F86E3 0x1ee2) - myData.statusIcon = menuItem->GetAttributeL( _L("presenceicon"), exists ); - myData.updated = EFalse; - - // Launch the dialog to view/edit data - CAknForm* dlg = new ( ELeave ) CMyForm( myData ); - CleanupStack::PushL( dlg ); - dlg->ConstructL( 0 ); // default menu items only - CleanupStack::Pop( dlg ); - dlg->ExecuteLD( R_ICON_QUERY_DIALOG ); - // myData now contains the edited values. - - if( myData.updated ) - { - // Changes the main icon, if all values are empty then application icon is used. - // Piority 0 - menuItem->SetAttributeL(KMenuAttrIconSkinMajorId, myData.majorID ); - menuItem->SetAttributeL(KMenuAttrIconSkinMinorId, myData.minorID ); - // Pririty 1 - menuItem->SetAttributeL(KMenuAttrIconFile, myData.iconFile ); - menuItem->SetAttributeL(KMenuAttrIconId, myData.iconID ); - menuItem->SetAttributeL(KMenuAttrMaskId, myData.maskID ); - //Changes the presence icon - menuItem->SetAttributeL( _L("presenceicon"), myData.statusIcon ); - - CMenuOperation* operation = menuItem->SaveL( iWatcher->iStatus ); - // Deletes the operation after its completion - iWatcher->Watch( operation, this ); - } - CleanupStack::PopAndDestroy( menuItem ); - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -CCoeControl* CMCSExampleAppView::ComponentControl( TInt /*aIndex*/) const -{ - return iListBox; -} - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -TInt CMCSExampleAppView::CountComponentControls() const -{ - if(iListBox) - return 1; - else - return 0; -} -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/src/MCSExampleApplication.cpp --- a/idlehomescreen/examples/mcsexample/src/MCSExampleApplication.cpp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,47 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -// INCLUDE FILES -#include "MCSExample.hrh" -#include "MCSExampleDocument.h" -#include "MCSExampleApplication.h" - -// ============================ MEMBER FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// CMCSExampleApplication::CreateDocumentL() -// Creates CApaDocument object -// ----------------------------------------------------------------------------- -// -CApaDocument* CMCSExampleApplication::CreateDocumentL() - { - // Create an MCSExample document, and return a pointer to it - return CMCSExampleDocument::NewL(*this); - } - -// ----------------------------------------------------------------------------- -// CMCSExampleApplication::AppDllUid() -// Returns application UID -// ----------------------------------------------------------------------------- -// -TUid CMCSExampleApplication::AppDllUid() const - { - // Return the UID for the MCSExample application - return KUidMCSExampleApp; - } - -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/src/MCSExampleDocument.cpp --- a/idlehomescreen/examples/mcsexample/src/MCSExampleDocument.cpp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,93 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -// INCLUDE FILES -#include "MCSExampleAppUi.h" -#include "MCSExampleDocument.h" - -// ============================ MEMBER FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// CMCSExampleDocument::NewL() -// Two-phased constructor. -// ----------------------------------------------------------------------------- -// -CMCSExampleDocument* CMCSExampleDocument::NewL(CEikApplication& aApp) - { - CMCSExampleDocument* self = NewLC(aApp); - CleanupStack::Pop(self); - return self; - } - -// ----------------------------------------------------------------------------- -// CMCSExampleDocument::NewLC() -// Two-phased constructor. -// ----------------------------------------------------------------------------- -// -CMCSExampleDocument* CMCSExampleDocument::NewLC(CEikApplication& aApp) - { - CMCSExampleDocument* self = new (ELeave) CMCSExampleDocument(aApp); - - CleanupStack::PushL(self); - self->ConstructL(); - return self; - } - -// ----------------------------------------------------------------------------- -// CMCSExampleDocument::ConstructL() -// Symbian 2nd phase constructor can leave. -// ----------------------------------------------------------------------------- -// -void CMCSExampleDocument::ConstructL() - { - // No implementation required - } - -// ----------------------------------------------------------------------------- -// CMCSExampleDocument::CMCSExampleDocument() -// C++ default constructor can NOT contain any code, that might leave. -// ----------------------------------------------------------------------------- -// -CMCSExampleDocument::CMCSExampleDocument(CEikApplication& aApp) : - CAknDocument(aApp) - { - // No implementation required - } - -// --------------------------------------------------------------------------- -// CMCSExampleDocument::~CMCSExampleDocument() -// Destructor. -// --------------------------------------------------------------------------- -// -CMCSExampleDocument::~CMCSExampleDocument() - { - // No implementation required - } - -// --------------------------------------------------------------------------- -// CMCSExampleDocument::CreateAppUiL() -// Constructs CreateAppUi. -// --------------------------------------------------------------------------- -// -CEikAppUi* CMCSExampleDocument::CreateAppUiL() - { - // Create the application user interface, and return a pointer to it; - // the framework takes ownership of this object - return new (ELeave) CMCSExampleAppUi; - } - -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/examples/mcsexample/src/mcspluginwatcher.cpp --- a/idlehomescreen/examples/mcsexample/src/mcspluginwatcher.cpp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,94 +0,0 @@ -/* -* Copyright (c) 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Menu item operation watcher. -* -*/ - -#include -#include "mcspluginwatcher.h" -#include "MCSExampleAppView.h" - -// --------------------------------------------------------------------------- -// two-phased constructor -// --------------------------------------------------------------------------- -CMCSExampleWatcher* CMCSExampleWatcher::NewL( ) - { - CMCSExampleWatcher* self = new (ELeave) CMCSExampleWatcher( ); - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop( self ); - return self; - } - -// --------------------------------------------------------------------------- -// default constructor -// --------------------------------------------------------------------------- -CMCSExampleWatcher::CMCSExampleWatcher( ) - : CActive( CActive::EPriorityStandard ) - { - CActiveScheduler::Add( this ); - } - -// --------------------------------------------------------------------------- -// destructor -// --------------------------------------------------------------------------- -CMCSExampleWatcher::~CMCSExampleWatcher() - { - Cancel(); - } - -// --------------------------------------------------------------------------- -// second phase constructor -// --------------------------------------------------------------------------- -void CMCSExampleWatcher::ConstructL() - { - - } - -// --------------------------------------------------------------------------- -// Watch Async -// --------------------------------------------------------------------------- -void CMCSExampleWatcher::Watch( CMenuOperation* aOperation, CMCSExampleAppView* aObserver ) - { - iObserver = aObserver; - __ASSERT_DEBUG( KRequestPending == iStatus.Int(), User::Invariant() ); - //__ASSERT_DEBUG( !iOperation, User::Invariant() ); - iOperation = aOperation; - SetActive(); - } - -// --------------------------------------------------------------------------- -// Inherited from CActive class -// --------------------------------------------------------------------------- -void CMCSExampleWatcher::RunL() - { - iObserver->ListAllItemsL(); - delete iOperation; - iOperation = NULL; - } - -// --------------------------------------------------------------------------- -// Inherited from CActive class -// --------------------------------------------------------------------------- -void CMCSExampleWatcher::DoCancel() - { - delete iOperation; - iOperation = NULL; - } - -TInt CMCSExampleWatcher::GetStatus() - { - return iStatus.Int(); - } - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/inc/xnappuiadapter.h --- a/idlehomescreen/inc/xnappuiadapter.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/inc/xnappuiadapter.h Wed Oct 13 14:18:30 2010 +0300 @@ -40,7 +40,6 @@ class CXnEffectManager; class MHsContentControl; class CXnItemActivator; -class CXnViewSwitcher; // Class declaration /** @@ -318,13 +317,6 @@ */ void ShowFocus(); - /** - * View switcher helper. - * - * @since S60 5.0 - */ - CXnViewSwitcher* ViewSwitcher(); - private: // Data @@ -349,12 +341,6 @@ * Own. */ TXnUiEngineAppIf* iUiEngineAppIf; - - /** - * View switcher scrolls view when finger follow is used. - * Own. - */ - CXnViewSwitcher* iViewSwitcher; }; #endif diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/inc/xncontroladapter.h --- a/idlehomescreen/inc/xncontroladapter.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/inc/xncontroladapter.h Wed Oct 13 14:18:30 2010 +0300 @@ -352,13 +352,6 @@ */ IMPORT_C void DrawContentImage() const; - /* - * Checks if widget is Gesture destination node. - * - * @return ETrue if widget is Gesture destination. - */ - TBool IsWidgetGestureDest(); - protected: /** * From CCoeControl. @@ -437,6 +430,11 @@ * Get child adapter list i.e which are not window owning controls */ RPointerArray< CXnControlAdapter >& ChildAdapters(); + + /** + * Determines wheter control refuses focus loss + */ + virtual TBool RefusesFocusLoss() const { return EFalse; }; /** * Routes the data stream for the external rendering plugin. diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/inc/xnnodeimpl.h --- a/idlehomescreen/inc/xnnodeimpl.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/inc/xnnodeimpl.h Wed Oct 13 14:18:30 2010 +0300 @@ -893,6 +893,10 @@ /** * Find next node located aDirection from aNode. */ + CXnNode* FindNextNodeL( + RPointerArray< CXnNode >& aArray, + CXnNode& aNode, + TInt aDirection ); /** * Gets namespace of node diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/inc/xnnodepluginif.h --- a/idlehomescreen/inc/xnnodepluginif.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/inc/xnnodepluginif.h Wed Oct 13 14:18:30 2010 +0300 @@ -183,15 +183,7 @@ * @return ETrue if node is focused. */ IMPORT_C TBool IsFocusedState(); - - /** - * Is the node in edit state - * - * @since Series 60 3.1 - * @return ETrue if node is in edit state. - */ - IMPORT_C TBool IsEditState(); - + /** * Get node type * diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/inc/xnproperty.h --- a/idlehomescreen/inc/xnproperty.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/inc/xnproperty.h Wed Oct 13 14:18:30 2010 +0300 @@ -166,23 +166,16 @@ } namespace clock { - _LIT8( KS60Format, "_s60-format" ); + _LIT8(KS60Format, "_s60-format"); namespace format { - _LIT8( KDigital, "digital" ); - _LIT8( KAnalog, "analog" ); + _LIT8(KDigital, "digital"); + _LIT8(KAnalog, "analog"); } - _LIT8( KS60AmPmFontSize, "_s60-ampm-font-size" ); - _LIT8( KS60DigitalFontSize, "_s60-digital-font-size" ); + + _LIT8(KS60AmPmFontSize, "_s60-ampm-font-size" ); + _LIT8(KS60DigitalFontSize, "_s60-digital-font-size"); _LIT8( KS60DateFontSize, "_s60-date-font-size" ); - _LIT8( KS60FontSize, "_s60-font-size" ); - _LIT8( KFace, "face" ); - _LIT8( KFace12, "face12" ); - _LIT8( KFace24, "face24" ); - _LIT8( KDate, "date" ); - _LIT8( KDay, "day" ); - _LIT8( KAmpm, "ampm" ); - _LIT8( KFaceAdjustmentValue, "face-adjustment-value" ); } namespace volumecontrol { diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/inc/xntexteditor.h --- a/idlehomescreen/inc/xntexteditor.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/inc/xntexteditor.h Wed Oct 13 14:18:30 2010 +0300 @@ -43,16 +43,26 @@ public: // New functions /** - * Sets the new text to the underlying CEikEdwin + * Sets the new text to the underlying CEikEdvin * @param aText The new content */ virtual void SetTextL(const TDesC& aText) = 0; /** - * Returns the text contained in the underlying CEikEdwin + * Returns the text contained in the underlying CEikEdvin * @return HBufC* The text */ virtual const HBufC* Text() = 0; + + /** + * Handles editor events + * + * @since S60 5.2 + * @param aReason, editor event + */ + virtual void HandleEditorEvent( TInt aReason ) = 0; + + private: }; } @@ -65,6 +75,18 @@ { public: +/** + * Editor events + */ + enum TEditorEvent + { + KActivateTextEditor, + KDeactivateTextEditor, + KRemoveSplitInputFromStack, + KKeepSplitInputInStack + }; +public: + /** * 2 phase construction. */ @@ -78,17 +100,25 @@ public: // New functions /** - * Sets the new content to the underlying CEikEdwin + * Sets the new content to the underlying CEikEdvin * @param aText The new content */ void SetTextL(const TDesC& aText); /** - * Returns the text contained in the underlying CEikEdwin + * Returns the text contained in the underlying CEikEdvin * @return HBufC* The text */ const HBufC* Text(); + /** + * Handles editor events + * + * @since S60 5.2 + * @param aReason, editor event + */ + void HandleEditorEvent( TInt aReason ); + public: // from CCoeControl /** diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/inc/xnuiengine.h --- a/idlehomescreen/inc/xnuiengine.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/inc/xnuiengine.h Wed Oct 13 14:18:30 2010 +0300 @@ -444,7 +444,7 @@ * @param aNode Editor Node * @param TBool True if partial input is open */ - void EnablePartialTouchInput( CXnNode* aNode, TBool aEnable ); + void EnablePartialTouchInput( CXnNode& aNode, TBool aEnable ); /** * Is partial input active diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/inc/xnuienginepluginif.h --- a/idlehomescreen/inc/xnuienginepluginif.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/inc/xnuienginepluginif.h Wed Oct 13 14:18:30 2010 +0300 @@ -256,15 +256,24 @@ * @since Series 60 5.0 */ IMPORT_C void DisableRenderUiLC(); - + + /** + * Enables partial touch input + * + * @since Series 60 5.2 + * @param aNode Editor Node + * @param TBool True if partial input is open + */ + IMPORT_C void EnablePartialTouchInput( CXnNodePluginIf& aNode, TBool aEnable ); + /** * Checks if text editor is focused or partioal touch input open. * - * @since S60 5.2 + * @since Series 60 5.2 * @return TBool True if partial input is open or editor focused */ IMPORT_C TBool IsTextEditorActive(); - + private: // Data diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/inc/xnviewmanager.h --- a/idlehomescreen/inc/xnviewmanager.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/inc/xnviewmanager.h Wed Oct 13 14:18:30 2010 +0300 @@ -62,8 +62,6 @@ // new functions virtual void NotifyViewActivatedL( const CXnViewData& aViewData ) = 0; - virtual void NotifyViewLoadedL( const CXnViewData& aViewData ) = 0; - virtual void NotifyViewDeactivatedL( const CXnViewData& aViewData ) = 0; virtual void NotifyConfigureWidgetL( @@ -74,9 +72,9 @@ virtual void NotifyWidgetRemovalL( const CXnPluginData& aPluginData ) = 0; - virtual void NotifyViewAdditionL( const CXnViewData& aViewData ) = 0; + virtual void NotifyViewAdditionL( const CXnPluginData& aPluginData ) = 0; - virtual void NotifyViewRemovalL( const CXnViewData& aViewData ) = 0; + virtual void NotifyViewRemovalL( const CXnPluginData& aPluginData ) = 0; virtual void NotifyAllViewsLoadedL() = 0; @@ -175,12 +173,10 @@ const CHsContentInfo& aContentInfo, CXnPluginData& aPluginData ); - void ActivateNextViewL(); + void ActivateNextViewL( TInt aEffectId = 0 ); - void ActivatePreviousViewL(); + void ActivatePreviousViewL( TInt aEffectId = 0 ); - void ActivateViewL( CXnViewData& aViewData, TUid aEffect, TBool aUpdateBg = ETrue ); - TInt AddViewL( const CHsContentInfo& aInfo ); void AddViewL( TInt aEffectId = 0 ); @@ -217,9 +213,7 @@ void HandleErrorNotes( const TInt aError ) const; void PublishersReadyL( CXnViewData& aViewData, TInt aResult ); - - void NotifyViewLoadedL( const CXnViewData& aViewData ); - + void NotifyAllViewsLoadedL(); private: @@ -247,11 +241,10 @@ CXnViewData* ViewData( CXnNode& aNode ) const; -public: CXnViewData& PreviousViewData() const; + CXnViewData& NextViewData() const; - -private: + void UpdateCachesL(); void ReportWidgetAmountL( const CXnViewData& aViewData ); diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/inc/xnviewswitcher.h --- a/idlehomescreen/inc/xnviewswitcher.h Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,283 +0,0 @@ -/* -* Copyright (c) 2002-2006 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: View switcher. -* -*/ - -#ifndef _XNVIEWSWITCHER_H -#define _XNVIEWSWITCHER_H - -// System includes -#include -#include - -// User includes -#include "xnviewmanager.h" - -class CXnViewControlAdapter; - -using namespace AknTouchGestureFw; - -// Class declaration - -/** - * This class handles view swithing when "finger follow" feature is used. - * The windows of current, next and previous views are moved along with the finger. - * Final view switch animation has been handled here as well. - * -* @ingroup group_xnlayoutengine -* @lib xn3layoutengine.lib -* @since S60 5.2 -*/ -NONSHARABLE_CLASS( CXnViewSwitcher ) : public CBase - { - - /** - * Important information of a view to be dragged. - */ - struct TViewInformation - { - CXnControlAdapter* iAdapter; - CXnViewData* iViewData; - TBool iReadyToDraw; - TBool iBgDrawn; - }; - - /** - * States for the view swithcing using "finger follow". - */ - enum TViewSwitchState - { - KViewSwitchIdle, - KViewSwitchBegin, - KViewSwitchDragOngoing, - KViewSwitchScroll - }; - -public: - // Constructors and destructor - - /** - * 2 phase construction. - */ - static CXnViewSwitcher* NewL(); - - /** - * Destructor. - */ - ~CXnViewSwitcher(); - - /** - * Is finger follow feature activated - */ - TBool FingerFollowSupported() const; - - /** - * Try to handle and consume pointer event - */ - TBool ProcessPointerEventL( const TPointerEvent& aPointerEvent ); - - /** - * Check if flick or some gesture occured during drag - */ - void TouchGesture( TAknTouchGestureFwType& aTouchGesture ); - - /** - * Updates the client rect - */ - void SizeChanged( TRect aRect ); - - /** - * Stop view switch - */ - void StopViewSwitchL(); - -private: // constructors - - /** - * C++ default constructor - */ - CXnViewSwitcher(); - - /** - * 2nd phase constructor - */ - void ConstructL(); - - /** - * View scroll timer callback - */ - static TInt TimerCallback( TAny *aPtr ); - - /** - * Gets value of finger follow support from AI repository - */ - TBool IsFingerFollowSupportedL() const; - - /** - * Adjusts current view position. Used in final animation. - */ - void Scroll(); - - /** - * Moves windows according to the current view position. - */ - void DoScroll(); - - /** - * Start view dragging by setting up view control adapters - */ - TBool SetupViewsL(); - - /** - * Layouts and renders the given view out of sight. - */ - void PrepareViewL( CXnViewSwitcher::TViewInformation& aView ); - - /** - * Removes focused node and sends the up event in order to prevent activate triggers and long tapping. - */ - void StartViewDraggingL(); - - /** - * Stop view dragging and start view scroll - */ - void StartViewScrolling(); - - /** - * View scrolling ended. - */ - void ViewSwitchEndedL(); - - /** - * Get view data - */ - CXnViewData* ViewData( CXnViewData& aCurrentViewData, TInt aView ); - - /** - * Clear view information of current, next and previous views. - */ - void ClearViews(); - - /** - * Sets whether next, current or previous view is to be activeted. - * Updated also background if needed. - */ - void UpdateViewToBeActivated( TInt aOffset ); - - /** - * Changes background image and runs NGA effect. - */ - void ChangeBackground( CXnViewData& aCurrent, CXnViewData& aNext ); - -private: // data - - /** - * AppUi - */ - CXnAppUiAdapter& iAppUi; - - /** - * Client rect set by UI Engine - */ - TRect iRect; - - /** - * Whether the feature is supported or not. ETrue when finger follow is supported - */ - TBool iFingerFollowSupported; - - /** - * Timer for animating view switch. - * Own. - */ - CPeriodic* iTimer; - - /** - * Important information of the current view. - */ - TViewInformation iCurrentView; - - /** - * Important information of the view coming from the right side. - */ - TViewInformation iNextView; - - /** - * Important information of the view coming from the left side. - */ - TViewInformation iPreviousView; - - /** - * Flick gesture type. - */ - //TAknTouchGestureFwType iTouchGesture; - - /** - * The state of view switch. - */ - TViewSwitchState iViewSwitchState; - - /** - * Scroll speed in pixels. - */ - TInt iScrollSpeed; - - /** - * Total scroll distance from the beginning in mode KViewSwitchDragOngoing. - * Remaining distance to be scrolled in mode KViewSwitchScroll. - */ - TInt iScrollDistance; - - /** - * Measures the scroll distance in current direction. I.e. if direction changes, - * this is set to 0. - */ - TInt iScrollDirectionDistance; - - /** - * Position of the current view in the beginning. - */ - TPoint iViewStartPosition; - - /** - * Position in the beginning. - */ - TPoint iStartPosition; - - /** - * Current view position from the beginning. - */ - TPoint iViewPosition; - - /** - * View to be activated. - */ - TInt iActivateView; - - /** - * Tick amount to be used when calculating drag speed. - */ - TInt iTickAmount; - - /** - * Scroll direction. - */ - TInt iDirection; - - }; - -#endif // _XNVIEWSWITCHER_H - -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/nativeuicontroller/group/ainatiui.mmp --- a/idlehomescreen/nativeuicontroller/group/ainatiui.mmp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/nativeuicontroller/group/ainatiui.mmp Wed Oct 13 14:18:30 2010 +0300 @@ -20,7 +20,7 @@ #include #include -TARGET ai3natiui.dll +TARGET Ai3NatiUi.dll TARGETTYPE PLUGIN UID 0x10009D8D AI_UID_ECOM_DLL_UICONTROLLER_NATIVE VENDORID VID_DEFAULT @@ -45,12 +45,12 @@ START RESOURCE ai3natiui.rss -TARGET ai3natiui.rsc +TARGET Ai3NatiUi.rsc END START RESOURCE ai3nativeui.rss HEADER -TARGET ainativeui.rsc +TARGET AiNativeUi.rsc TARGETPATH APP_RESOURCE_DIR LANGUAGE_IDS END diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/nativeuicontroller/src/aidialogrenderer.cpp --- a/idlehomescreen/nativeuicontroller/src/aidialogrenderer.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/nativeuicontroller/src/aidialogrenderer.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -25,7 +25,7 @@ #include #include #include -#include +#include #include "aidialogrenderer.h" #include "ainativeuiplugins.h" #ifdef __COVER_DISPLAY @@ -48,7 +48,7 @@ #include // for CPsetSAObserver #include // for GSM-specific error messages -#include // for resource IDs +#include // for resource IDs #include // for KCRUidCoreApplicationUIs, TCoreAppUIsNetworkConnectionAllowed #include diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/nativeuicontroller/src/ainotifierrenderer.cpp --- a/idlehomescreen/nativeuicontroller/src/ainotifierrenderer.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/nativeuicontroller/src/ainotifierrenderer.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -22,7 +22,7 @@ #include #include #include -#include +#include #include "ainotifierrenderer.h" #include "ainativeuiplugins.h" diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/nativeuicontroller/src/aisoftkeyrenderer.cpp --- a/idlehomescreen/nativeuicontroller/src/aisoftkeyrenderer.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/nativeuicontroller/src/aisoftkeyrenderer.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -33,7 +33,7 @@ #include #include -#include +#include #include "ainativeui.hrh" #include "aisoftkeyrenderer.h" diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/nativeuicontroller/src/aistatuspanel.cpp --- a/idlehomescreen/nativeuicontroller/src/aistatuspanel.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/nativeuicontroller/src/aistatuspanel.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -355,8 +355,6 @@ void CAiStatusPanel::SetNaviPaneTextL( const TDesC& aText ) { - __PRINT(__DBG_FORMAT("XAI: CAiStatusPanel::SetNaviPaneTextL aText = %S"), - &aText ); delete iNaviPaneText; iNaviPaneText = NULL; if ( !AknStatuspaneUtils::FlatLayoutActive() ) @@ -370,9 +368,6 @@ void CAiStatusPanel::SetTitlePaneTextL( const TDesC& aText ) { - __PRINT(__DBG_FORMAT("XAI: CAiStatusPanel::SetTitlePaneTextL aText = %S"), - &aText ); - HBufC* temp = aText.AllocL(); delete iTitlePaneText; iTitlePaneText = temp; @@ -400,22 +395,18 @@ void CAiStatusPanel::StopTitlePaneScrollingL() { - __PRINTS("XAI: CAiStatusPanel::StopTitlePaneScrollingL"); // stop scrolling if( iTextInTitlePane && iTitlePane->Text() ) { - __PRINTS("XAI: stop scrolling"); iTitlePane->SetTextL( *iTitlePane->Text(), EFalse ); } } void CAiStatusPanel::ScrollTitlePaneTextL() { - __PRINTS("XAI: CAiStatusPanel::ScrollTitlePaneTextL"); // start scrolling if ( iTextInTitlePane && iTitlePane->Text() ) { - __PRINTS("XAI: start scrolling"); iTitlePane->SetTextL( *iTitlePane->Text(), ETrue ); } } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/nativeuicontroller/src/aistatuspanetouchui.cpp --- a/idlehomescreen/nativeuicontroller/src/aistatuspanetouchui.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/nativeuicontroller/src/aistatuspanetouchui.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -30,7 +30,7 @@ #include #include #include -#include +#include // User includes #include "aistrcnv.h" @@ -334,9 +334,8 @@ iProfileNamePointerArray.Remove( aIndex - 1); } - HBufC* name = aText.AllocLC(); - iProfileNamePointerArray.InsertL( name, aIndex - 1 ); - CleanupStack::Pop( name ); + HBufC* name = aText.AllocL(); + iProfileNamePointerArray.Insert( name, aIndex - 1 ); break; } default: diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/nativeuicontroller/src/aistyluspopupmenucontent.cpp --- a/idlehomescreen/nativeuicontroller/src/aistyluspopupmenucontent.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/nativeuicontroller/src/aistyluspopupmenucontent.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -108,15 +108,14 @@ flags = KAknButtonTextLeft | KAknButtonSizeFitText | KAknButtonNoFrame; CAknButton* item = CAknButton::NewL( NULL, NULL, NULL, NULL, aItem, KNullDesC, flags, 0 ); - CleanupStack::PushL( item ); + item->SetTextFont( AknLayoutUtils::FontFromId( AknLayoutScalable_Avkon:: list_single_popup_submenu_pane_t1( 0 ).LayoutLine().FontId() ) ); item->SetBackground( Background() ); item->SetObserver( &aObserver ); - iItems.AppendL( item ); - CleanupStatck::Pop( item ); - iCommands.AppendL( aCommandId ); + iItems.Append( item ); + iCommands.Append( aCommandId ); SizeChanged(); } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/nativeuicontroller/src/aititlepanerenderer.cpp --- a/idlehomescreen/nativeuicontroller/src/aititlepanerenderer.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/nativeuicontroller/src/aititlepanerenderer.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -17,7 +17,7 @@ // System includes #include -#include +#include #include // User includes @@ -105,7 +105,6 @@ } default: { - __PRINTS( "XAI: Rendering title pane > different content - leave"); User::Leave( KErrNotFound ); break; } @@ -113,7 +112,6 @@ } else { - __PRINTS( "XAI: Rendering title pane > Uid mismatch - leave"); User::Leave( KErrNotFound ); } } @@ -152,13 +150,12 @@ // We're publishing bitmap -> set text as invalid iStatusPanel.SetTitlePaneTextL( KNullDesC ); iStatusPanel.RenderTitlePaneL(); - __PRINTS("XAI: Rendering title pane - done"); + __PRINTS("XAI: Rendering title pane - done"); } break; } default: { - __PRINTS( "XAI: Rendering title pane > different content - leave"); User::Leave( KErrNotFound ); break; } @@ -166,7 +163,6 @@ } else { - __PRINTS( "XAI: Rendering title pane > Uid mismatch - leave"); User::Leave( KErrNotFound ); } } @@ -179,8 +175,6 @@ void CAiTitlePaneRenderer::DoPublishL( CHsContentPublisher& aPlugin, TInt aContent, TInt aResource, TInt /*aIndex*/ ) { - __PRINT(__DBG_FORMAT("XAI: CAiTitlePaneRenderer::DoPublishL - aContent %d"), aContent ); - const THsPublisherInfo& info( aPlugin.PublisherInfo() ); if( info.Uid() == KDeviceStatusPluginUid ) @@ -196,12 +190,10 @@ iStatusPanel.RenderTitlePaneL(); CleanupStack::PopAndDestroy(text); //text - __PRINTS("XAI: Rendering title pane - done"); break; } default: { - __PRINTS( "XAI: Rendering title pane > different content - leave"); User::Leave( KErrNotFound ); break; } @@ -209,7 +201,6 @@ } else { - __PRINTS( "XAI: Rendering title pane > Uid mismatch - leave"); User::Leave( KErrNotFound ); } } @@ -222,7 +213,7 @@ void CAiTitlePaneRenderer::DoCleanL( CHsContentPublisher& aPlugin, TInt aContent ) { - __PRINT(__DBG_FORMAT("XAI: Clean title pane - aContent %d"), aContent ); + __PRINT(__DBG_FORMAT("XAI: Clean title pane - %d"), aContent ); const THsPublisherInfo& info( aPlugin.PublisherInfo() ); @@ -242,15 +233,13 @@ default: { - __PRINTS( "XAI: clean > different content - leave"); - User::Leave( KErrNotFound ); + User::Leave( KErrNotFound ); break; } }; } else { - __PRINTS( "XAI: clean > Uid mismatch - leave"); User::Leave( KErrNotFound ); } } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/nativeuicontroller/src/aitoolbarrenderer.cpp --- a/idlehomescreen/nativeuicontroller/src/aitoolbarrenderer.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/nativeuicontroller/src/aitoolbarrenderer.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -36,7 +36,7 @@ #include "ainativeuiplugins.h" -#include +#include #include "debug.h" using namespace AiNativeUiController; @@ -337,10 +337,8 @@ if ( index >= iButtons.Count() ) { button = CAiToolbarButton::NewL(); - CleanupStack::PushL( button ); button->SetShortcutId( aShortcutId ); - iButtons.AppendL( button ); - CleanupStatck::Pop( button ); + iButtons.Append( button ); } // Use the old button diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/nativeuicontroller/src/appui.cpp --- a/idlehomescreen/nativeuicontroller/src/appui.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/nativeuicontroller/src/appui.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -44,7 +44,7 @@ #include "application.h" #include "nativeuicontroller.h" #include "aifweventhandler.h" -#include +#include #include "aicontentmodel.h" #include "aiuiidleintegration.h" diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/nativeuicontroller/src/nativeuicontroller.cpp --- a/idlehomescreen/nativeuicontroller/src/nativeuicontroller.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/nativeuicontroller/src/nativeuicontroller.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -447,7 +447,7 @@ THsPublisherInfo deviceStatus( KDeviceStatusPluginUid, KDeviceStatusPluginName, KNativeUiNamespace ); - iPlugins.AppendL( deviceStatus ); + iPlugins.Append( deviceStatus ); TAiFwPublisherInfo devstatInfo( deviceStatus, TAiFwCallback(), EAiFwSystemStartup ); @@ -457,7 +457,7 @@ THsPublisherInfo profile( KProfilePluginUid, KProfilePluginName, KNativeUiNamespace ); - iPlugins.AppendL( profile ); + iPlugins.Append( profile ); TAiFwPublisherInfo profileInfo( profile, TAiFwCallback(), EAiFwSystemStartup ); diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/conf/widgetmanager.confml Binary file idlehomescreen/widgetmanager/conf/widgetmanager.confml has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/conf/widgetmanager_20026F53.crml Binary file idlehomescreen/widgetmanager/conf/widgetmanager_20026F53.crml has changed diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/data/widgetmanagerview.rss --- a/idlehomescreen/widgetmanager/data/widgetmanagerview.rss Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/data/widgetmanagerview.rss Wed Oct 13 14:18:30 2010 +0300 @@ -41,7 +41,7 @@ RESOURCE AVKON_VIEW r_wm_main_container_view { - cba = r_wm_softkeys_options_back__store; + cba = R_AVKON_SOFTKEYS_OPTIONS_BACK; menubar = r_wm_main_container_options_menu; toolbar = 0; } @@ -51,28 +51,6 @@ txt = qtn_wm_title_text; } -RESOURCE CBA r_wm_softkeys_options_back__store - { - flags = EEikButtonGroupAddToStack | EEikCbaFlagAppMskIcon; - buttons = - { - CBA_BUTTON {id=EAknSoftkeyOptions; txt = text_softkey_option;}, - CBA_BUTTON {id=EAknSoftkeyBack; txt = text_softkey_back; }, - AVKON_CBA_BUTTON{id=EWmStoreCommand; longpressid=0; txt= ""; } - }; - } - -RESOURCE CBA r_wm_softkeys_options_cancel__store - { - flags = EEikButtonGroupAddToStack | EEikCbaFlagAppMskIcon; - buttons = - { - CBA_BUTTON {id=EAknSoftkeyOptions; txt = text_softkey_option;}, - CBA_BUTTON {id=EAknSoftkeyCancel; txt = text_softkey_cancel; }, - AVKON_CBA_BUTTON{id=EWmStoreCommand; longpressid=0; txt= ""; } - }; - } - // ---------------------------------------------------- // MENU // ---------------------------------------------------- @@ -94,6 +72,12 @@ { MENU_ITEM { + command = EWmMainContainerViewOpenPortalMenuItemCommand; + txt = qtn_options_wm_open; + flags = EEikMenuItemAction; + }, + MENU_ITEM + { command = EWmMainContainerViewAddMenuItemCommand; txt = qtn_options_wm_add; flags = EEikMenuItemAction; @@ -140,21 +124,25 @@ } // ---------------------------------------------------- -// Ovi store related +// OVI STORE BUTTON // ---------------------------------------------------- -RESOURCE TBUF r_qtn_wm_ovi_store_title + +RESOURCE AVKON_BUTTON r_wm_portal_button { - buf = qtn_wm_ovi_store_title; + flags = 0; + states = + { + AVKON_BUTTON_STATE + { + flags = 0; + txt = qtn_wm_ovi_store_title; + } + }; } -RESOURCE TBUF r_qtn_wm_ovi_store_desc +RESOURCE TBUF r_qtn_wm_go_to_ovi_store { - buf = qtn_wm_ovi_store_desc; - } - -RESOURCE TBUF r_qtn_wm_storelist_title - { - buf = qtn_wm_storelist_title; + buf = qtn_wm_ovi_store_title; } // ---------------------------------------------------- diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/gfx/qgn_menu_shopping.svg --- a/idlehomescreen/widgetmanager/gfx/qgn_menu_shopping.svg Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/group/widgetmanager.mmp --- a/idlehomescreen/widgetmanager/group/widgetmanager.mmp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/group/widgetmanager.mmp Wed Oct 13 14:18:30 2010 +0300 @@ -48,7 +48,7 @@ SOURCE wmpersistentwidgetorder.cpp SOURCE wmeffectmanager.cpp SOURCE wmdetailsdlg.cpp -SOURCE wmstore.cpp +SOURCE wmportalbutton.cpp SOURCE wmwidgetloaderao.cpp SOURCE wmconfiguration.cpp SOURCE wminstaller.cpp diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/group/wmicons.txt --- a/idlehomescreen/widgetmanager/group/wmicons.txt Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/group/wmicons.txt Wed Oct 13 14:18:30 2010 +0300 @@ -1,3 +1,2 @@ -c32,8 qgn_menu_hswidget -c32,8 qgn_menu_ovistore.svg --c32,8 qgn_menu_shopping.svg \ No newline at end of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/inc/widgetmanager.hrh --- a/idlehomescreen/widgetmanager/inc/widgetmanager.hrh Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/inc/widgetmanager.hrh Wed Oct 13 14:18:30 2010 +0300 @@ -32,9 +32,9 @@ EWmMainContainerViewSortAlphaMenuItemCommand, EWmMainContainerViewUninstallMenuItemCommand, EWmMainContainerViewHelpMenuItemCommand, + EWmMainContainerViewOpenPortalMenuItemCommand, EWmMainContainerViewBackMenuItemCommand, - EWmMainContainerViewWiddetDetailsMenuItemCommand, - EWmStoreCommand + EWmMainContainerViewWiddetDetailsMenuItemCommand }; enum TWmMenuCmdIDs diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/inc/wmcommon.h --- a/idlehomescreen/widgetmanager/inc/wmcommon.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/inc/wmcommon.h Wed Oct 13 14:18:30 2010 +0300 @@ -35,9 +35,12 @@ // UI component ID's enum TWmUiControlIds { - EWidgetsList = 0x1, + EPortalOne = 0x1, + EPortalTwo, + ELastPortal, + EWidgetsList, EFindBox, - ELastCtrl + EMaximumWidgets = 0xC8 }; #endif //WMCOMMON_H diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/inc/wmconfiguration.h --- a/idlehomescreen/widgetmanager/inc/wmconfiguration.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/inc/wmconfiguration.h Wed Oct 13 14:18:30 2010 +0300 @@ -21,7 +21,6 @@ // INCLUDE FILES #include -#include "wmstore.h" // FORWARD DECLARATIONS class CRepository; @@ -37,11 +36,10 @@ public: // constructors and destructor - /** Store's Application type */ - enum TStoreAppType + /** Operator Application type */ + enum TOpAppType { EUnknown, - EOviCwrt, ES60, ECwrt, EWrt, @@ -66,22 +64,70 @@ void ConstructL(); public: // API - + + /** + * Number of portal buttons (1 or more) + */ + TInt PortalButtonCount(); + + /** + * Label text to be displayed on a portal button + * @param aIndex index of the button, starting at 0 + */ + const TDesC& PortalButtonText( TInt aIndex ); + /** - * Number of Stores + * Icon to be displayed on a portal button + * Logo syntax follows the widget icon syntax in CWmImageConverter + * @param aIndex index of the button, starting at 0 */ - TInt StoreCount(); + const TDesC& PortalButtonIcon( TInt aIndex ); + + /** + * Returns url to for browser by button index + * @param aIndex index of the button, starting at 0 + */ + const TDesC& PortalButtonBrowserUrl( TInt aIndex ); + + /** + * Returns client uid by button index + * @param aIndex index of the button, starting at 0 + */ + TUid PortalButtonClientUid( TInt aIndex ); /** - * Returns Store configuration array ref + * Returns client parameter by button index + * @param aIndex index of the button, starting at 0 */ - const RPointerArray& StoreConfArray(); + const TDesC& PortalButtonClientParam( TInt aIndex ); + + /** + * Returns bool if buttons are mirrored. + * @return true when operator button on left on portraid and + * on top on landscape. + */ + TBool PortalButtonsMirrored(); /** - * To compare orders - */ - static TInt CompareStoreOrder( - const CWmConfItem& aItemOne, const CWmConfItem& aItemTwo ); + * Returns application type by button index + * @param aIndex button index + * @return application type + */ + TOpAppType PortalButtonApplicationType( TInt aIndex ); + + /** + * Returns application id as string + * @param aIndex button index + * @param aOperatorAppId string to get app id + */ + void PortalButtonApplicationId( TInt aIndex, TDes& aOperatorAppId ); + + /** + * Returns application id as uid + * @param aIndex button index + * @param aOperatorAppId uid to get app id + */ + void PortalButtonApplicationId( TInt aIndex, TUid& aOperatorAppId ); private: // New functions @@ -91,15 +137,15 @@ void ReadInt32Parameter( TInt aKey, TInt32& aValue ); void ReadIntParameter( TInt aKey, TInt& aValue ); HBufC* ReadLocalisedParameterL( TInt aOffset ); - void ReadApplicationInfoL( TInt aKey, CWmConfItem& aConfItem ); + void ReadOperatorApplicationInfoL(); TUid StringToUid( const TDesC& aStr ); /** Returns uid of the widget with a particular bundle identifier. */ TUid FetchWidgetUidFromRegistryL( const TDesC& aBundleId ); - /** sets Store icon to if not already defined */ - void SetStoreIconL( CWmConfItem& aConfItem ); - + /** sets operator icon to button if not already defined */ + void SetOperatorIconL( TUid aUid ); + private: /** @@ -117,123 +163,73 @@ * system language */ TInt iLanguageIndex; + + /** + * OVI store button text + */ + HBufC* iOviButtonTitle; + + /** + * OVI store button icon + */ + HBufC* iOviButtonIcon; /** - * Array of configuration items. Array is in order as they should appear in UI - */ - RPointerArray iConfItems; - }; - - -/** - * Configuration item class for Widget Manager - * - * @class CWmConfiguration - */ -NONSHARABLE_CLASS( CWmConfItem ) : public CBase - { - public: // constructors and destructor - - /** Two-phased constructors. */ - static CWmConfItem* NewL(); - - static CWmConfItem* NewLC(); - - /** Destructor */ - ~CWmConfItem(); - - private: - /** constructor */ - CWmConfItem(); - - /** 2nd phase constructor */ - void ConstructL(); - -public: // API - /** - * Returns Store id + * OVI store button widget client param */ - CWmStore::TStoreId Id(); + HBufC* iOviStoreClientParam; /** - * Returns Label text to be displayed on a Store + * OVI store laucher uid */ - const TDesC& Title(); + TUid iOviStoreUid; /** - * Returns Icon to be displayed on a Store - * Logo syntax follows the widget icon syntax in CWmImageConverter + * OPERATOR button text */ - const TDesC& Icon(); - + HBufC* iOperatorButtonTitle; + /** - * Returns Order of Store + * OPERATOR store icon */ - TInt Order(); + HBufC* iOperatorButtonIcon; /** - * Returns url to for browser - */ - const TDesC& BrowserUrl(); - - /** - * Returns application type + * OPERATOR store button browser Url */ - CWmConfiguration::TStoreAppType AppType(); - - /** - * Returns application uid - */ - TUid AppUid(); + HBufC* iOperatorButtonUrl; /** - * Returns application parameter by index + * OPERATOR store button application parameter */ - const TDesC& AppParam(); - -private: - /** - * Store Id - */ - CWmStore::TStoreId iId; + HBufC* iOperatorParam; /** - * Store text + * OPERATOR store application id as string. Used for java */ - HBufC* iTitle; + HBufC* iOperatorAppIdStr; /** - * Store icon - */ - HBufC* iIcon; - - /** - * Store order + * OPERATOR store application id as uid. */ - TInt iOrder; - + TUid iOperatorAppIdUid; + /** - * Store browser Url + * OPERATOR store application type */ - HBufC* iUrl; - + TOpAppType iOperatorAppType; + /** - * Application type - */ - CWmConfiguration::TStoreAppType iAppType; - - /** - * Application uid + * Tells if operator button is enabled. */ - TUid iAppUid; - + TBool iOperatorButtonEnabled; + /** - * Application parameter + * Tells if buttons need to be mirrored for operator. */ - HBufC* iAppParam; - - friend class CWmConfiguration; - }; + TBool iButtonsMirrored; + }; + #endif // WMCONFIGURATION_H // End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/inc/wmcrkeys.h --- a/idlehomescreen/widgetmanager/inc/wmcrkeys.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/inc/wmcrkeys.h Wed Oct 13 14:18:30 2010 +0300 @@ -20,62 +20,60 @@ #define __WMCRKEYS_H__ // WidgetManager CR key -const TUint32 KCrWidgetManager = 0x20026F53; - -// ************************************************************ -// NON-LOCALISED parameters -// ************************************************************ - -/** */ -const TUint32 KOviStoreEnabled = 0x1; - -/** */ -const TUint32 KOviOrder = 0x2; +const TUint32 KCrWidgetManagerm = 0x20026F53; -/** */ -const TUint32 KOviUid = 0x3; -/** */ -const TUint32 KOviAppParam = 0x4; - -/** */ -const TUint32 KStoreEnabled = 0x5; - -/** */ -const TUint32 KOrder = 0x6; // ************************************************************ // LOCALISED parameters start here -// KLangId_0 0x7 -// KUrl_0 0x8 -// KTitle_0 0x9 +// Key Id's from 0x1 to 0x1E are reserved for languages. +// LangId_0 0x1 +// OperatorUrl_0 0x2 +// OperatorButtonText_0 0x3 // ... -// KLangId_1 0xA +// LangId_1 0x4 // ... -// KLangId_9 0x22 -// KUrl_9 0x23 -// KTitle_9 0x24 +// LangId_9 0x1C +// OperatorUrl_9 0x1D +// OperatorButtonText_9 0x1E // ************************************************************ /** localised set #0, language ID */ -const TUint32 KLangId_0 = 0x7; -/** localised set #0, store URL */ -const TUint32 KUrl_0 = 0x8; -/** localised set #0, store text */ -const TUint32 KTitle_0 = 0x9; +const TUint32 KLangId0 = 0x1; +/** localised set #0, Operator button URL */ +const TUint32 KOperatorButtonUrl0 = 0x2; +/** localised set #0, Operator button text */ +const TUint32 KOperatorButtonText0 = 0x3; /** localised set #1, language ID */ -const TUint32 KLangId_1 = 0xA; +const TUint32 KLangId1 = 0x4; /** localised set #9, language ID */ -const TUint32 KLangId_9 = 0x22; +const TUint32 KLangId9 = 0x1C; + // ************************************************************ -// NON-LOCALISED parameters +// NON-LOCALISED OVI parameters // ************************************************************ +/** Key to Ovi Store Client param */ +const TUint32 KOviStoreClientParam = 0x1F; + +/** Key to Ovi Store client Uid */ +const TUint32 KOviStoreUid = 0x20; + +// ************************************************************ +// NON-LOCALISED Operator parameters +// ************************************************************ + +/** Key to Operator button icon */ +const TUint32 KOperatorButtonEnabled = 0x21; + +/** Key to Operator button icon */ +const TUint32 KOperatorButtonIcon = 0x22; + /** - * Key to Store application type and id. + * Key to Operator application type and id. * Give ':' as separator between type and id. * Type can be s60, cwrt, wrt, java, qt * Examples: @@ -85,13 +83,16 @@ * java:c:/sys/bin/javastore.jar full path for java app * qt:0x2001A9CA Application Uid as id */ -const TUint32 KAppTypeAndId = 0x25; +const TUint32 KOperatorAppTypeAndId = 0x23; + +/** Key to Operator application param */ +const TUint32 KOperatorParam = 0x24; -/** */ -const TUint32 KAppParam = 0x26; - -/** Key to Store icon */ -const TUint32 KIcon = 0x27; +/** + * Key to define if operator button needs to be placed to left in landscape and + * top on portraid. By default it's right and bottom. + */ +const TUint32 KOperatorButtonHigherPriority = 0x25; #endif // __WMCRKEYS_H__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/inc/wmimageconverter.h --- a/idlehomescreen/widgetmanager/inc/wmimageconverter.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/inc/wmimageconverter.h Wed Oct 13 14:18:30 2010 +0300 @@ -57,7 +57,6 @@ * @param aIconStr str containing logo icon * @param aBitmap bitmap to create. Empty if fails * @param aMask mask to create. Empty if fails - * @param aForceScale force scaling for non-scalable icons. * Supported values: * - skin( ):mif( ) * - mif( ) @@ -70,8 +69,7 @@ const TSize& aIconSize, const TDesC& aIconStr, CFbsBitmap*& aBitmap, - CFbsBitmap*& aMask, - TBool aForceScale = EFalse ); + CFbsBitmap*& aMask ); /** * Parses icon string and resizes given bitmaps if needed. @@ -87,25 +85,6 @@ const TDesC& aIconStr, CFbsBitmap& aBitmap, CFbsBitmap& aMask ); - - /** - * Parses icon string. - * - * @param aIconStr icon string to be parsed - * @param aItemId fetched skin id - * @param aBitmapId fetched bitmap id - * @param aMaskId fetched mask id - * @param aFileName fetched file name - * - * @return ETrue if success with parsing. - */ - - TBool ParseIconString( - const TDesC& aIconStr, - TAknsItemID& aItemId, - TInt& aBitmapId, - TInt& aMaskId, - TDes& aFileName ); private: CWmImageConverter(); @@ -113,23 +92,20 @@ private: void CheckSvgErrorL( MSvgError* aError ); - void HandleIconStringL( - const TSize& aIconSize, - const TDesC& aIconStr, - TBool aForceScale ); + void HandleIconStringL( const TSize& aIconSize, const TDesC& aIconStr ); - void CreateIconFromUidL( const TUid& aUid, TBool aForceScale ); + void CreateIconFromUidL( const TUid& aUid ); void CreateIconFromSvgL( const TDesC& aFileName ); - void CreateIconFromOtherL( const TDesC& aFileName, TBool aForceScale ); + void CreateIconFromOtherL( const TDesC& aFileName ); void CreateSkinOrMifIconL( const TAknsItemID& aItemId, TInt aBitmapId, TInt aMaskId, const TDesC& aFileName ); // resolvers - TBool ResolveUid( const TDesC& aStr, TUid& aUid ); - TBool ResolveSkinId( const TDesC& aStr, TAknsItemID& aItemId ); - TBool ResolveMifId( const TDesC& aStr, TInt& aBitmapId, + TBool ResolveUid( const TDesC& aPath, TUid& aUid ); + TBool ResolveSkinId( const TDesC& aPath, TAknsItemID& aItemId ); + TBool ResolveMifId( const TDesC& aPath, TInt& aBitmapId, TInt& aMaskId, TDes& aFileName ); - TBool ResolveSkinIdAndMifId( const TDesC& aStr, TAknsItemID& aItemId, + TBool ResolveSkinIdAndMifId( const TDesC& aPath, TAknsItemID& aItemId, TInt& aBitmapId, TInt& aMaskId, TDes& aFileName ); TBool EndsWith( const TDesC& aString, const TDesC& aPattern ); diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/inc/wmmaincontainer.h --- a/idlehomescreen/widgetmanager/inc/wmmaincontainer.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/inc/wmmaincontainer.h Wed Oct 13 14:18:30 2010 +0300 @@ -38,7 +38,7 @@ class CAknSearchField; class CCoeControl; class CAknSearchField; -class CWmStore; +class CWmPortalButton; class CWmMainContainerView; class CWmConfiguration; @@ -94,6 +94,11 @@ TBool IsLoadingWidgets(); /** + * @return true, if portal button is currently selected + */ + TBool PortalSelected(); + + /** * @return true, if a widget in list is currently selected */ TBool WidgetSelected(); @@ -169,9 +174,14 @@ void UninstallWidgetL(); /** - * Store menu command. + * opens currently selected portal */ - void HandleStoreCommandL(); + void OpenPortalL(); + + /** + * Selection key (middle soft key) + */ + void SelectL(); /** * Show widget manager help @@ -216,6 +226,12 @@ * @see CCoeControl::HandlePointerEventL */ void HandlePointerEventL( const TPointerEvent& aPointerEvent ); + + /** + * Moves focus to the OVI button + * @param aIndex 0=first button, 1=second (if it exists) + */ + void SetFocusToPortalButton( TInt aIndex ); /** * Moves focus to the widgets list, alternatively also setting the currently @@ -236,6 +252,17 @@ * To set iClosingDown. See above. */ void SetClosingDown( TBool aClosingDown ); + + /** + * access to WM configuration + */ + CWmConfiguration& Configuration(); + + /** + * Process foregound events. + * @param aForeground ETrue indicates foreground + */ + void ProcessForegroundEvent( TBool aForeground ); /** * access to WM list @@ -287,22 +314,28 @@ private: // New functions - void DisplayAndLaunchStoresL(); - static void CleanupIconArray( TAny* aIconArray ); - void AddControlL( CCoeControl* aControl, TInt aControlId ); void InitializeControlsL( const TRect& aRect ); void LayoutControls(); void StartLoadingWidgetsL(); void RemoveCtrlsFromStack(); + void UpdateFocusMode(); + void ResetFocus( TDrawNow aDrawNow = ENoDrawNow ); CCoeControl* FindChildControlByPoint( const TPoint& aPoint ); void HandleFindSizeChanged(); + TKeyResponse MoveFocusByKeys( + const TKeyEvent& aKeyEvent, + TEventCode aType ); + TKeyResponse HandleButtonKeyEventL( + const TKeyEvent& aKeyEvent, + TEventCode aType ); TKeyResponse HandleListKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType ); TKeyResponse HandleSearchKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType ); + TInt OperatorButtonHigherPriority( TInt aIndex ); public: // from MWmWidgetloaderObserver void LoadDoneL( TBool aWidgetListChanged ); @@ -333,23 +366,55 @@ * background */ CAknsBasicBackgroundControlContext* iBgContext; + + /** + * portal button + * (if there is only one button, this is it) + */ + CWmPortalButton* iPortalButtonOne; /** + * portal button + * (if there is only one button, this is NULL) + */ + CWmPortalButton* iPortalButtonTwo; + + /** whether we are orientated in landscape */ + TBool iLandscape; + + /** whether we have mirrored layout */ + TBool iMirrored; + + /** focus modes */ + enum TWmFocusMode + { + ENowhere, + EPortal, + EList, + EFind + }; + + /** + * current widget manager focus mode + */ + TWmFocusMode iFocusMode; + + /** * AO for loading widgets into the list UI */ CWmWidgetLoaderAo* iWidgetLoader; - - /** - * Currectly selected store. - */ - CWmStore* iSelectedStore; - + /** * If this is set to ETrue it means wmview is closing and all user inputs * should be ignored. */ TBool iClosingDown; + /** + * The configuration + */ + CWmConfiguration* iConfiguration; + #ifdef _WM_UNIT_TEST friend class CWmUnitTest; #endif diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/inc/wmmaincontainerview.h --- a/idlehomescreen/widgetmanager/inc/wmmaincontainerview.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/inc/wmmaincontainerview.h Wed Oct 13 14:18:30 2010 +0300 @@ -79,7 +79,15 @@ * @see CAknView::DoActivateL */ void DoDeactivate(); - + +public: // from MeikMenuObserver + + /** + * Foreground event handling function. + * @param aForeground Indicates the required focus state of the control. + */ + void HandleForegroundEventL( TBool aForeground ); + private: CWmMainContainerView( CWmPlugin& aWmPlugin ); void ConstructL(); @@ -106,6 +114,7 @@ private: /** menu commands */ + TBool HandleOpenMenuItemSelectedL(); TBool HandleAddMenuItemSelectedL(); TBool HandleLaunchMenuItemSelectedL(); TBool HandleSearchMenuItemSelectedL(); @@ -116,8 +125,6 @@ TBool HandleDeactivateFindPaneL(); /** setup title in status pane */ void SetTitleL(); - /** setup msk icon */ - void UpdateMSKIconL(); private: /** @@ -134,6 +141,7 @@ * the plugin root (not owned) */ CWmPlugin& iWmPlugin; + }; #endif // WMMAINCONTAINERVIEW_H diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/inc/wmplugin.h --- a/idlehomescreen/widgetmanager/inc/wmplugin.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/inc/wmplugin.h Wed Oct 13 14:18:30 2010 +0300 @@ -33,7 +33,6 @@ class CWmEffectManager; class CWmWidgetData; class CWmInstaller; -class CWmConfiguration; /** * CWmPlugin @@ -168,11 +167,6 @@ CWmInstaller& WmInstaller(); /** - * reference to iWmConfiguration - */ - CWmConfiguration& Configuration(); - - /** * Get widget by Uid. Used for getting widget details * when error has occured during uninstallation. * @param aUid Uid of widget @@ -257,11 +251,6 @@ */ TInt iExecutionCount; - /** - * The configuration - */ - CWmConfiguration* iConfiguration; - #ifdef _WM_UNIT_TEST friend class CWmUnitTest; #endif diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/inc/wmportalbutton.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/idlehomescreen/widgetmanager/inc/wmportalbutton.h Wed Oct 13 14:18:30 2010 +0300 @@ -0,0 +1,173 @@ +/* +* Copyright (c) 2009 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" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* Declares portal button for WidgetManager +* +*/ + +#ifndef ___WMPORTALBUTTON_H__ +#define ___WMPORTALBUTTON_H__ + +#include // CAknButton +#include //MAknServerAppExitObserver + +#include "wmcommon.h" + +// FORWARD DECLARATIONS +class CWmMainContainer; +class CFbsBitmap; +class CWmConfiguration; +class CWmProcessMonitor; +class CBrowserLauncher; +class CWmImageConverter; + +/** + * Portal button ( ovi, operator ) class for Wm + * + * @class CWmPortalButton wmportalbutton.h + */ +NONSHARABLE_CLASS( CWmPortalButton ) : public CAknButton, + public MCoeControlObserver, + public MAknServerAppExitObserver + { +public: + /* + * Two-phased constructor. + * + * @param aParent button title text + * @param aPortalButtonIndex index of this button (0 or 1) + */ + static CWmPortalButton* NewL( + const CCoeControl* aParent, + TInt aPortalButtonIndex = 0 ); + + /** Destructor */ + virtual ~CWmPortalButton(); + +public: // Functions from base class + + /* + * Draws the control. + * + * @see CCoeControl::Draw + */ + void Draw( const TRect& /*aRect*/ ) const; + + /** + * Sets the control's extent, specifying a rectangle. + * + * @see CCoeControl::SizeChanged + */ + void SizeChanged(); + + /** + * Executes action for button pressed + */ + void ExecuteL(); + +protected: // from MCoeControlObserver + + /** Observes the button's own activity */ + void HandleControlEventL( CCoeControl* aControl, TCoeEvent aEventType ); + +protected: // from MAknServerAppExitObserver + + /** Observes when browser is exited */ + void HandleServerAppExit( TInt aReason ); + +protected: // from CCoeControl + + /** Handles pointer events. */ + void HandlePointerEventL( const TPointerEvent& aPointerEvent ); + +protected: // Constructors + + /** Constructor for performing 1st stage construction */ + CWmPortalButton( const TInt aFlags, + TInt aPortalButtonIndex ); + + /** 2nd phase constructor */ + void ConstructL( + CWmMainContainer* aParent, + const TDesC& aText = KNullDesC, + const TDesC& aIcon = KNullDesC ); + +private: + + /** size of button icon, defined in the layout */ + TSize LayoutIconSize() const; + + /** Draws text over button */ + void DrawText( CWindowGc& aGc, + const TDesC& aText, + TAknTextComponentLayout& aLayout, + TInt aMargin ) const; + + /** Runs ovi store launcher */ + void RunOviL( CWmConfiguration& aConf ); + + /** Starts browser */ + void StartBrowserL( const TDesC& aUrl ); + + /** Starts operator application */ + void RunOperatorApplicationL( CWmConfiguration& aConf ); + + /** Starts rprocess by given values */ + void StartProcessL( TUid aUid, const TDesC& aParam ); + + /** + * Opens cwrt/wrt widget to fullscreen. + * @param aAppUid Uid of the widget + * @param aParams Optional parameters + * */ + void StartWidgetL( TUid aAppUid, const TDesC& aParams ); + +private: //data members + + /** + * the image converter utility + */ + CWmImageConverter* iImageConverter; + + /** + * Parent control + */ + CWmMainContainer* iWmMainContainer; + + /** + * Button index + */ + TInt iPortalButtonIndex; + + /** icon */ + CFbsBitmap* iButtonIcon; + + /** icon mask */ + CFbsBitmap* iButtonIconMask; + + /** + * Monitors process + */ + CWmProcessMonitor* iProcessMonitor; + + /** + * Broswer launcher. + */ + CBrowserLauncher* iBrowserLauncher; + + }; + +#endif //___WMPORTALBUTTON_H__ + +// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/inc/wmstore.h --- a/idlehomescreen/widgetmanager/inc/wmstore.h Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,169 +0,0 @@ -/* -* Copyright (c) 2009 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* Declares Store for WidgetManager -* -*/ - -#ifndef ___WMSTORE_H__ -#define ___WMSTORE_H__ - -#include //MAknServerAppExitObserver - -#include "wmcommon.h" - -// FORWARD DECLARATIONS -class CWmMainContainer; -class CFbsBitmap; -class CWmConfiguration; -class CWmConfItem; -class CWmProcessMonitor; -class CBrowserLauncher; -class CWmImageConverter; -class CWmResourceLoader; - -/** - * Store ( ovi, operator ) class for Wm - * - * @class CWmStore wmStore.h - */ -NONSHARABLE_CLASS( CWmStore ) : public CBase, - public MAknServerAppExitObserver - { -public: - /** Store Id */ - enum TStoreId - { - EUnknown = 0, - EOvi, - EStore1, - EStore2, // for future use. Can be extented - ELastItem // do not use as store id - }; - - /* - * Two-phased constructor. - * - * @param aStoreIndex index of this Store (0 or 1) - * @param aWmConfiguration Store config - * @param aResourceLoader wm resource loader - */ - static CWmStore* NewL( CWmConfItem& aWmConfItem, - CWmResourceLoader& aResourceLoader ); - - /** Destructor */ - virtual ~CWmStore(); - -public: // New Functions - - /** - * Executes action for store - */ - void ExecuteL(); - - /** - * Icon of store - * - * @return icon of Store ( ownership not transfered ) - */ - CFbsBitmap* StoreIcon(); - - /** - * Mask for icon of store. - * - * @return mask of Store icon ( ownership not transfered ) - */ - CFbsBitmap* StoreMask(); - - /** - * Heading of store - * - * @return heading of store. - */ - const TDesC& Heading(); - - /** - * Order of store - * - * @return order of store. - */ - TInt Order() const; - -protected: // from MAknServerAppExitObserver - - /** Observes when browser is exited */ - void HandleServerAppExit( TInt aReason ); - -protected: // Constructors - - /** Constructor for performing 1st stage construction */ - CWmStore( CWmConfItem& aWmConfItem ); - - /** 2nd phase constructor */ - void ConstructL( CWmResourceLoader& aResourceLoader ); - -private: - - /** Runs ovi store launcher */ - void RunOviL(); - - /** Starts browser */ - void StartBrowserL( const TDesC& aUrl ); - - /** Starts application */ - void RunApplicationL(); - - /** Starts rprocess by given values */ - void StartProcessL( TUid aUid, const TDesC& aParam ); - - /** - * Opens cwrt/wrt widget to fullscreen. - * @param aAppUid Uid of the widget - * @param aParams Optional parameters - * */ - void StartWidgetL( TUid aAppUid, const TDesC& aParams ); - -private: //data members - - /** - * the image converter utility - */ - CWmImageConverter* iImageConverter; - - /** - * Configuration item for store data - */ - CWmConfItem& iWmConfItem; - - /** icon */ - CFbsBitmap* iIcon; - - /** icon mask */ - CFbsBitmap* iMask; - - /** - * Monitors process - */ - CWmProcessMonitor* iProcessMonitor; - - /** - * Broswer launcher. - */ - CBrowserLauncher* iBrowserLauncher; - - }; - -#endif //___WMSTORE_H__ - -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/loc/widgetmanagerview.loc --- a/idlehomescreen/widgetmanager/loc/widgetmanagerview.loc Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/loc/widgetmanagerview.loc Wed Oct 13 14:18:30 2010 +0300 @@ -96,34 +96,16 @@ // MISC -// d: Name of Ovi Store in storelist + +// d: Text displayed on OVI Store button // d: // d: -// l: list_double_large_graphic_pane_t1 +// l: wgtman_btn_pane_t1 // w: // r: TB9.2 // #define qtn_wm_ovi_store_title "Get more" -// d: Description of Ovi Store in storelist -// d: -// d: -// l: list_double_large_graphic_pane_t2 -// w: -// r: TB9.2 -// -#define qtn_wm_ovi_store_desc "Nokia" - -// d: Title of the popup storelist -// d: -// d: -// l: heading_pane_t1 -// w: -// r: TB9.2 -// -#define qtn_wm_storelist_title "Select" - - // d: Info popup to indicate that an item can not be added to home screen // d: because current view is full // d: diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/src/wmconfiguration.cpp --- a/idlehomescreen/widgetmanager/src/wmconfiguration.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/src/wmconfiguration.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -27,15 +27,14 @@ #include "wmconfiguration.h" #include "wmresourceloader.h" #include "wmcrkeys.h" -#include "wmstore.h" // some constants regarging the central repository localised section. // these will ensure CR localisation section compatibility even if // new strings are added -const TInt KLangOffsetStoreUrl = KUrl_0 - KLangId_0; -const TInt KLangOffsetStoreText = KTitle_0 - KLangId_0; -const TInt KLangGroupSize = KLangId_1 - KLangId_0; -const TUint32 KLastLangId = KLangId_9; +const TInt KLangOffsetOperatorUrl = KOperatorButtonUrl0 - KLangId0; +const TInt KLangOffsetOperatorText = KOperatorButtonText0 - KLangId0; +const TInt KLangGroupSize = KLangId1 - KLangId0; +const TUint32 KLastLangId = KLangId9; _LIT( KOpAppTypeS60, "s60" ); _LIT( KOpAppTypeCwrt, "cwrt" ); @@ -43,7 +42,7 @@ _LIT( KOpAppTypeJava, "java" ); _LIT( KOpAppTypeQt, "qt" ); _LIT( KSeparator, ":" ); -_LIT( KStoreIconFormat, "uid(%d)"); +_LIT( KOperatorIcon, "uid(%d)"); _LIT( KHexPrefix, "0x" ); // --------------------------------------------------------- @@ -68,7 +67,15 @@ CWmResourceLoader& aResourceLoader ) : iResourceLoader( aResourceLoader ) { - + + // ovi + iOviStoreUid = KNullUid; + + // operator + iOperatorAppIdUid = KNullUid; + iOperatorAppType = EUnknown; + iOperatorButtonEnabled = EFalse; + iButtonsMirrored = EFalse; } // --------------------------------------------------------- @@ -77,8 +84,17 @@ // CWmConfiguration::~CWmConfiguration() { - delete iRepository; - iConfItems.ResetAndDestroy(); + delete iRepository; + // ovi + delete iOviStoreClientParam; + delete iOviButtonTitle; + delete iOviButtonIcon; + // operator + delete iOperatorButtonTitle; + delete iOperatorButtonIcon; + delete iOperatorButtonUrl; + delete iOperatorParam; + delete iOperatorAppIdStr; } // --------------------------------------------------------- @@ -87,8 +103,24 @@ // void CWmConfiguration::ConstructL() { + // localised ovistore button text + iOviButtonTitle = StringLoader::LoadL( R_QTN_WM_GO_TO_OVI_STORE ); + + // ovistore icon descriptor. It will look something like this: + // skin( 0x101f86e3 0x23f6 ):mif( z:\resource\apps\widgetmanager.mif 16388 16389 ) + _LIT( KSkinMifIconFormat, "skin( 0x%x 0x%x ):mif( %S %d %d )"); + const TInt KMaxIconDescriptorLength = 256; + TBuf buf; + buf.Format( KSkinMifIconFormat(), + EAknsMajorGeneric, EAknsMinorGenericQgnMenuOviStore, + &iResourceLoader.IconFilePath(), + EMbmWidgetmanagerQgn_menu_ovistore, + EMbmWidgetmanagerQgn_menu_ovistore_mask ); + iOviButtonIcon = buf.AllocL(); + // read data from repository TRAP_IGNORE( LoadConfigurationL(); ); + } // --------------------------------------------------------- @@ -98,75 +130,25 @@ void CWmConfiguration::LoadConfigurationL() { iRepository = CRepository::NewL( - TUid::Uid( KCrWidgetManager ) ); - - TLinearOrder order - = CWmConfiguration::CompareStoreOrder; + TUid::Uid( KCrWidgetManagerm ) ); // read Ovi parameters - TInt oviEnabled; - ReadIntParameter( KOviStoreEnabled, oviEnabled ); - if ( oviEnabled ) + ReadInt32Parameter( KOviStoreUid, iOviStoreUid.iUid ); + iOviStoreClientParam = ReadDescParameterL( KOviStoreClientParam ); + + // read operator parameters if operator button enabled + ReadIntParameter( KOperatorButtonEnabled, iOperatorButtonEnabled ); + if ( iOperatorButtonEnabled ) { - CWmConfItem* ovi = CWmConfItem::NewLC(); - ovi->iId = CWmStore::EOvi; - - // localised ovistore text - _LIT( KFormatStr, "%S\t%S"); - HBufC* title = StringLoader::LoadLC( R_QTN_WM_OVI_STORE_TITLE ); - HBufC* desc = StringLoader::LoadLC( R_QTN_WM_OVI_STORE_DESC ); - - ovi->iTitle = HBufC::NewL( title->Des().Length() + - desc->Des().Length() + - KFormatStr().Length() ); - - ovi->iTitle->Des().Format( KFormatStr(), title, desc ); - - CleanupStack::PopAndDestroy( desc ); - CleanupStack::PopAndDestroy( title ); - - // ovistore icon descriptor. It will look something like this: - // skin( 0x101f86e3 0x23f6 ):mif( z:\resource\apps\widgetmanager.mif 16388 16389 ) - _LIT( KSkinMifIconFormat, "skin( 0x%x 0x%x ):mif( %S %d %d )"); - const TInt KMaxIconDescriptorLength = 256; - TBuf buf; - buf.Format( KSkinMifIconFormat(), - EAknsMajorGeneric, EAknsMinorGenericQgnMenuOviStore, - &iResourceLoader.IconFilePath(), - EMbmWidgetmanagerQgn_menu_ovistore, - EMbmWidgetmanagerQgn_menu_ovistore_mask ); - ovi->iIcon = buf.AllocL(); - - ReadIntParameter( KOviOrder, ovi->iOrder ); - ReadInt32Parameter( KOviUid, ovi->iAppUid.iUid ); - ovi->iAppParam = ReadDescParameterL( KOviAppParam ); - - // Item to Array - iConfItems.InsertInOrderL( ovi, order ); - CleanupStack::Pop( ovi ); - } - - // read Store parameters if Store enabled - TInt storeEnabled = 0; - ReadIntParameter( KStoreEnabled, storeEnabled ); - if ( storeEnabled ) - { + // determine language and read localised parameters iLanguageIndex = FindCorrectLanguageId(); - - CWmConfItem* op = CWmConfItem::NewLC(); - op->iId = CWmStore::EStore1; - - op->iTitle = ReadLocalisedParameterL( KLangOffsetStoreText ); - op->iUrl = ReadLocalisedParameterL( KLangOffsetStoreUrl ); + iOperatorButtonTitle = ReadLocalisedParameterL( KLangOffsetOperatorText ); + iOperatorButtonUrl = ReadLocalisedParameterL( KLangOffsetOperatorUrl ); // read non-localised parameters - op->iIcon = ReadDescParameterL( KIcon ); - ReadApplicationInfoL( KAppTypeAndId, *op ); - op->iAppParam = ReadDescParameterL( KAppParam ); - ReadIntParameter( KOrder, op->iOrder ); - - // Item to Array - iConfItems.InsertInOrderL( op, order ); - CleanupStack::Pop( op ); + iOperatorButtonIcon = ReadDescParameterL( KOperatorButtonIcon ); + ReadOperatorApplicationInfoL(); + iOperatorParam = ReadDescParameterL( KOperatorParam ); + ReadIntParameter( KOperatorButtonHigherPriority, iButtonsMirrored ); } delete iRepository; @@ -185,7 +167,7 @@ TLanguage sysLang = User::Language(); //read language id's from cenrep, find a match - for( TUint32 i=KLangId_0; i<=KLastLangId && languageIndex<0; i+=KLangGroupSize ) + for( TUint32 i=KLangId0; i<=KLastLangId && languageIndex<0; i+=KLangGroupSize ) { TInt crLang = 0; if ( iRepository->Get( i, crLang ) == KErrNone ) @@ -264,7 +246,7 @@ if ( err != KErrNone || buf.Length() == 0 ) { // This language is empty. Try default language (index 0) - err = iRepository->Get( KLangId_0 + aOffset, buf ); + err = iRepository->Get( KLangId0 + aOffset, buf ); } // construct string in heap @@ -277,13 +259,12 @@ } // --------------------------------------------------------- -// CWmConfiguration::ReadApplicationInfoL +// CWmConfiguration::ReadOperatorApplicationInfoL // --------------------------------------------------------- // -void CWmConfiguration::ReadApplicationInfoL( - TInt aKey, CWmConfItem& aConfItem ) +void CWmConfiguration::ReadOperatorApplicationInfoL() { - HBufC* applicationInfo = ReadDescParameterL( aKey ); + HBufC* applicationInfo = ReadDescParameterL( KOperatorAppTypeAndId ); if ( applicationInfo && applicationInfo->Des().Length() > 0 ) { CleanupStack::PushL( applicationInfo ); @@ -299,32 +280,34 @@ if ( !type.Compare( KOpAppTypeS60 ) ) { - aConfItem.iAppType = ES60; - aConfItem.iAppUid = StringToUid( appId ); - SetStoreIconL( aConfItem ); + iOperatorAppType = ES60; + iOperatorAppIdUid = StringToUid( appId ); + SetOperatorIconL( iOperatorAppIdUid ); } else if ( !type.Compare( KOpAppTypeCwrt ) ) { - aConfItem.iAppType = ECwrt; - aConfItem.iAppUid = FetchWidgetUidFromRegistryL( appId ); - SetStoreIconL( aConfItem ); + iOperatorAppType = ECwrt; + iOperatorAppIdUid = FetchWidgetUidFromRegistryL( appId ); + SetOperatorIconL( iOperatorAppIdUid ); } else if ( !type.Compare( KOpAppTypeWrt ) ) { - aConfItem.iAppType = EWrt; - aConfItem.iAppUid = FetchWidgetUidFromRegistryL( appId ); - SetStoreIconL( aConfItem ); + iOperatorAppType = EWrt; + iOperatorAppIdUid = FetchWidgetUidFromRegistryL( appId ); + SetOperatorIconL( iOperatorAppIdUid ); } else if ( !type.Compare( KOpAppTypeJava ) ) { - // java support is not fully implemented + //TODO: java support is not fully implemented User::Leave( KErrGeneral ); + iOperatorAppType = EJava; + iOperatorAppIdStr = appId.AllocL(); } else if ( !type.Compare( KOpAppTypeQt ) ) { - aConfItem.iAppType = EQt; - aConfItem.iAppUid = StringToUid( appId ); - SetStoreIconL( aConfItem ); + iOperatorAppType = EQt; + iOperatorAppIdUid = StringToUid( appId ); + SetOperatorIconL( iOperatorAppIdUid ); } } CleanupStack::PopAndDestroy( applicationInfo ); @@ -332,21 +315,20 @@ } // --------------------------------------------------------- -// CWmConfiguration::SetStoreIcon +// CWmConfiguration::SetOperatorIcon // --------------------------------------------------------- // -void CWmConfiguration::SetStoreIconL( CWmConfItem& aConfItem ) +void CWmConfiguration::SetOperatorIconL( TUid aUid ) { - if ( aConfItem.iIcon && - !aConfItem.iIcon->Des().Length() ) + if ( iOperatorButtonIcon && + !iOperatorButtonIcon->Des().Length() ) { - delete aConfItem.iIcon; - aConfItem.iIcon = NULL; - - aConfItem.iIcon = HBufC::NewL( - KMaxUidName + KStoreIconFormat().Length() ); - aConfItem.iIcon->Des().Format( - KStoreIconFormat(), aConfItem.iAppUid ); + delete iOperatorButtonIcon; + iOperatorButtonIcon = NULL; + iOperatorButtonIcon = HBufC::NewL( + KMaxUidName + KOperatorIcon().Length() ); + iOperatorButtonIcon->Des().Format( + KOperatorIcon(), aUid ); } } @@ -365,6 +347,137 @@ CleanupStack::PopAndDestroy( &clientSession ); return TUid::Uid( ret ); } + +// --------------------------------------------------------- +// CWmConfiguration::PortalButtonCount +// --------------------------------------------------------- +// +TInt CWmConfiguration::PortalButtonCount() + { + return ( iOperatorButtonEnabled ? 2 : 1 ); + } + +// --------------------------------------------------------- +// CWmConfiguration::PortalButtonText +// --------------------------------------------------------- +// +const TDesC& CWmConfiguration::PortalButtonText( TInt aIndex ) + { + if ( aIndex == 0 && iOviButtonTitle ) + return *iOviButtonTitle; + if ( aIndex == 1 && iOperatorButtonTitle && iOperatorButtonEnabled ) + return *iOperatorButtonTitle; + return KNullDesC; + } + +// --------------------------------------------------------- +// CWmConfiguration::PortalButtonIcon +// --------------------------------------------------------- +// +const TDesC& CWmConfiguration::PortalButtonIcon( TInt aIndex ) + { + if ( aIndex == 0 && iOviButtonIcon ) + return *iOviButtonIcon; + if ( aIndex == 1 && iOperatorButtonIcon && iOperatorButtonEnabled ) + return *iOperatorButtonIcon; + return KNullDesC; + } + +// --------------------------------------------------------- +// CWmConfiguration::PortalButtonBrowserUrl +// --------------------------------------------------------- +// +const TDesC& CWmConfiguration::PortalButtonBrowserUrl( TInt aIndex ) + { + // No support for ovi here + if ( aIndex == 1 && iOperatorButtonUrl && iOperatorButtonEnabled ) + return *iOperatorButtonUrl; + return KNullDesC; + } + +// --------------------------------------------------------- +// CWmConfiguration::PortalButtonClientUid +// --------------------------------------------------------- +// +TUid CWmConfiguration::PortalButtonClientUid( TInt aIndex ) + { + if ( aIndex == 0 ) + { + return iOviStoreUid; + } + // operator not supported. Get operator data using + // PortalButtonApplicationInfoL + return KNullUid; + } + +// --------------------------------------------------------- +// CWmConfiguration::PortalButtonClientParam +// --------------------------------------------------------- +// +const TDesC& CWmConfiguration::PortalButtonClientParam( TInt aIndex ) + { + if ( aIndex == 0 && iOviStoreClientParam ) + { + return *iOviStoreClientParam; + } + if ( aIndex == 1 && iOperatorParam && iOperatorButtonEnabled ) + { + return *iOperatorParam; + } + return KNullDesC; + } + +// --------------------------------------------------------- +// CWmConfiguration::PortalButtonsMirrored +// --------------------------------------------------------- +// +TBool CWmConfiguration::PortalButtonsMirrored() + { + return iButtonsMirrored; + } + +// --------------------------------------------------------- +// CWmConfiguration::PortalButtonApplicationType +// --------------------------------------------------------- +// +CWmConfiguration::TOpAppType CWmConfiguration::PortalButtonApplicationType( + TInt aIndex ) + { + if ( aIndex == 1 ) + { + return iOperatorAppType; + } + // no support for ovi + return EUnknown; + } + +// --------------------------------------------------------- +// CWmConfiguration::PortalButtonApplicationId +// --------------------------------------------------------- +// +void CWmConfiguration::PortalButtonApplicationId( + TInt aIndex, TDes& aOperatorAppId ) + { + if ( aIndex == 1 ) + { + aOperatorAppId.Copy( *iOperatorAppIdStr ); + } + // no support for ovi + } + +// --------------------------------------------------------- +// CWmConfiguration::PortalButtonApplicationId +// --------------------------------------------------------- +// +void CWmConfiguration::PortalButtonApplicationId( + TInt aIndex, TUid& aOperatorAppId ) + { + if ( aIndex == 1 ) + { + aOperatorAppId = iOperatorAppIdUid; + } + // no support for ovi + } // --------------------------------------------------------- // CWmConfiguration::StringToUid @@ -394,168 +507,6 @@ return KNullUid; } -// --------------------------------------------------------- -// CWmConfiguration::CompareStoreOrder -// --------------------------------------------------------- -// -TInt CWmConfiguration::CompareStoreOrder( - const CWmConfItem& aItemOne, const CWmConfItem& aItemTwo ) - { - // 1. zero, if the two objects are equal. - // 2. a negative value, if the first object is less than the second. - // 3. a positive value, if the first object is greater than the second. - TInt ret = 0; - if ( aItemOne.iOrder < aItemTwo.iOrder ) - { - ret = -1; - } - if ( aItemOne.iOrder > aItemTwo.iOrder ) - { - ret = 1; - } - return ret; - } - -// --------------------------------------------------------- -// CWmConfiguration::StoreConfArray -// --------------------------------------------------------- -// -const RPointerArray& CWmConfiguration::StoreConfArray() - { - return iConfItems; - } - -// --------------------------------------------------------- -// CWmConfiguration::StoreCount -// --------------------------------------------------------- -// -TInt CWmConfiguration::StoreCount() - { - return iConfItems.Count(); - } - -// --------------------------------------------------------- -// CWmConfItem::NewL -// --------------------------------------------------------- -// -CWmConfItem* CWmConfItem::NewL() - { - CWmConfItem* self = CWmConfItem::NewLC(); - CleanupStack::Pop(); // self; - return self; - } - -// --------------------------------------------------------- -// CWmConfItem::NewLC -// --------------------------------------------------------- -// -CWmConfItem* CWmConfItem::NewLC() - { - CWmConfItem* self = new ( ELeave ) CWmConfItem(); - CleanupStack::PushL(self); - self->ConstructL(); - return self; - } - -// --------------------------------------------------------- -// CWmConfItem::~CWmConfItem -// --------------------------------------------------------- -// -CWmConfItem::~CWmConfItem() - { - delete iTitle; - delete iIcon; - delete iUrl; - delete iAppParam; - } - -// --------------------------------------------------------- -// CWmConfItem::CWmConfItem -// --------------------------------------------------------- -// -CWmConfItem::CWmConfItem() - { - } - -// --------------------------------------------------------- -// CWmConfItem::ConstructL -// --------------------------------------------------------- -// -void CWmConfItem::ConstructL() - { - } - -// --------------------------------------------------------- -// CWmConfItem::Id -// --------------------------------------------------------- -// -CWmStore::TStoreId CWmConfItem::Id() - { - return iId; - } - -// --------------------------------------------------------- -// CWmConfItem::Title -// --------------------------------------------------------- -// -const TDesC& CWmConfItem::Title() - { - return ( iTitle ? *iTitle : KNullDesC() ); - } - -// --------------------------------------------------------- -// CWmConfItem::Icon -// --------------------------------------------------------- -// -const TDesC& CWmConfItem::Icon() - { - return ( iIcon ? *iIcon : KNullDesC() ); - } - -// --------------------------------------------------------- -// CWmConfItem::Order -// --------------------------------------------------------- -// -TInt CWmConfItem::Order() - { - return iOrder; - } - -// --------------------------------------------------------- -// CWmConfItem::BrowserUrl -// --------------------------------------------------------- -// -const TDesC& CWmConfItem::BrowserUrl() - { - return ( iUrl ? *iUrl : KNullDesC() ); - } - -// --------------------------------------------------------- -// CWmConfItem::AppType -// --------------------------------------------------------- -// -CWmConfiguration::TStoreAppType CWmConfItem::AppType() - { - return iAppType; - } - -// --------------------------------------------------------- -// CWmConfItem::AppUid -// --------------------------------------------------------- -// -TUid CWmConfItem::AppUid() - { - return iAppUid; - } - -// --------------------------------------------------------- -// CWmConfItem::AppParam -// --------------------------------------------------------- -// -const TDesC& CWmConfItem::AppParam() - { - return ( iAppParam ? *iAppParam : KNullDesC() ); - } // End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/src/wmeffectmanager.cpp --- a/idlehomescreen/widgetmanager/src/wmeffectmanager.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/src/wmeffectmanager.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -89,7 +89,7 @@ effect->iId = aId; effect->iType = KEffectTypeFullscreen; effect->iState = KWaitForLayout; - iEffects.AppendL( effect ); + iEffects.Append( effect ); CleanupStack::Pop( effect ); diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/src/wmimageconverter.cpp --- a/idlehomescreen/widgetmanager/src/wmimageconverter.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/src/wmimageconverter.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -101,14 +101,13 @@ const TSize& aIconSize, const TDesC& aIconStr, CFbsBitmap*& aBitmap, - CFbsBitmap*& aMask, - TBool aForceScale ) + CFbsBitmap*& aMask ) { delete aBitmap; aBitmap = NULL; delete aMask; aMask = NULL; TInt err( KErrNone ); - TRAP( err, HandleIconStringL( aIconSize, aIconStr, aForceScale ); ); + TRAP( err, HandleIconStringL( aIconSize, aIconStr ); ); if ( err == KErrNone && iBitmap && iMask ) { // ownership transferred @@ -140,8 +139,7 @@ // void CWmImageConverter::HandleIconStringL( const TSize& aIconSize, - const TDesC& aIconStr, - TBool aForceScale ) + const TDesC& aIconStr ) { if ( aIconStr.Length() ) { @@ -162,7 +160,7 @@ } else if ( ResolveUid( aIconStr, appUid ) ) { - CreateIconFromUidL( appUid, aForceScale ); + CreateIconFromUidL( appUid ); } else if ( EndsWith( aIconStr, KSvgExt ) ) { @@ -172,7 +170,7 @@ else if ( BaflUtils::FileExists( iFs, aIconStr ) ) { // filename_with_full_path.png/jpg - CreateIconFromOtherL( aIconStr, aForceScale ); + CreateIconFromOtherL( aIconStr ); } else { @@ -189,8 +187,7 @@ // CWmImageConverter::CreateIconFromUidL // --------------------------------------------------------- // -void CWmImageConverter::CreateIconFromUidL( - const TUid& aUid, TBool aForceScale ) +void CWmImageConverter::CreateIconFromUidL( const TUid& aUid ) { CFbsBitmap* bitmap = NULL; CFbsBitmap* mask = NULL; @@ -223,54 +220,21 @@ CApaMaskedBitmap* maskedBmp = CApaMaskedBitmap::NewLC(); User::LeaveIfError( lsSession.GetAppIcon( aUid, size, *maskedBmp ) ); - + // handle bitmap - iBitmap = new ( ELeave ) CFbsBitmap; - if ( aForceScale ) - { - // copy and scale - TRect scaledRect = TRect( iSize ); - iBitmap->Create( scaledRect.Size(), maskedBmp->DisplayMode() ); - CFbsBitmapDevice* bitmapDevice = CFbsBitmapDevice::NewL( iBitmap ); - CleanupStack::PushL( bitmapDevice ); - CFbsBitGc* bitmapGc = CFbsBitGc::NewL(); - CleanupStack::PushL( bitmapGc ); - bitmapGc->Activate( bitmapDevice ); - bitmapGc->DrawBitmap( scaledRect, maskedBmp ); - CleanupStack::PopAndDestroy( bitmapGc ); - CleanupStack::PopAndDestroy( bitmapDevice ); - } - else - { - CopyBitmapL( *iBitmap, *maskedBmp ); - } + iBitmap = new ( ELeave ) CFbsBitmap; + CopyBitmapL( *iBitmap, *maskedBmp ); // handle mask if ( maskedBmp->Mask() ) { iMask = new ( ELeave ) CFbsBitmap; - if ( aForceScale ) - { - TRect scaledRect = TRect( iSize ); - iMask->Create( scaledRect.Size(), maskedBmp->Mask()->DisplayMode() ); - CFbsBitmapDevice* bitmapDevice = CFbsBitmapDevice::NewL( iMask ); - CleanupStack::PushL( bitmapDevice ); - CFbsBitGc* bitmapGc = CFbsBitGc::NewL(); - CleanupStack::PushL( bitmapGc ); - bitmapGc->Activate( bitmapDevice ); - bitmapGc->DrawBitmap( scaledRect, maskedBmp->Mask() ); - CleanupStack::PopAndDestroy( bitmapGc ); - CleanupStack::PopAndDestroy( bitmapDevice ); - } - else - { - CopyBitmapL( *iMask, *maskedBmp->Mask() ); - } + CopyBitmapL( *iMask, *maskedBmp->Mask() ); } // cleanup CleanupStack::PopAndDestroy( maskedBmp ); - CleanupStack::PopAndDestroy( sizeArray ); + CleanupStack::PopAndDestroy( sizeArray ); CleanupStack::PopAndDestroy( &lsSession ); } else if ( aUid.iUid != KNullUid.iUid ) @@ -375,8 +339,7 @@ // CWmImageConverter::CreateIconFromOtherL // --------------------------------------------------------- // -void CWmImageConverter::CreateIconFromOtherL( - const TDesC& aFileName, TBool aForceScale ) +void CWmImageConverter::CreateIconFromOtherL( const TDesC& aFileName ) { if (iBitmap) {delete iBitmap; iBitmap = NULL;} if (iMask) {delete iMask; iMask = NULL;} @@ -409,47 +372,6 @@ } User::LeaveIfError( status.Int() ); CleanupStack::PopAndDestroy( imageDecoder ); - - // do scaling - if ( aForceScale ) - { - // scale bitmap - TRect scaledRect = TRect( iSize ); - CFbsBitmap* scaledBitmap = new (ELeave) CFbsBitmap(); - CleanupStack::PushL( scaledBitmap ); - User::LeaveIfError( - scaledBitmap->Create( scaledRect.Size(), iBitmap->DisplayMode() ) ); - CFbsBitmapDevice* bitmapDevice = CFbsBitmapDevice::NewL( scaledBitmap ); - CleanupStack::PushL( bitmapDevice ); - CFbsBitGc* bitmapGc = CFbsBitGc::NewL(); - CleanupStack::PushL( bitmapGc ); - bitmapGc->Activate( bitmapDevice ); - bitmapGc->DrawBitmap( scaledRect, iBitmap ); - CleanupStack::PopAndDestroy( bitmapGc ); - CleanupStack::PopAndDestroy( bitmapDevice ); - CleanupStack::Pop( scaledBitmap ); - // take ownership of scaled bitmap - delete iBitmap; iBitmap = NULL; - iBitmap = scaledBitmap; scaledBitmap = NULL; - - // scale mask - CFbsBitmap* scaledMask = new (ELeave) CFbsBitmap(); - CleanupStack::PushL( scaledMask ); - User::LeaveIfError( - scaledMask->Create( scaledRect.Size(), iMask->DisplayMode() ) ); - bitmapDevice = CFbsBitmapDevice::NewL( scaledMask ); - CleanupStack::PushL( bitmapDevice ); - bitmapGc = CFbsBitGc::NewL(); - CleanupStack::PushL( bitmapGc ); - bitmapGc->Activate( bitmapDevice ); - bitmapGc->DrawBitmap( scaledRect, iMask ); - CleanupStack::PopAndDestroy( bitmapGc ); - CleanupStack::PopAndDestroy( bitmapDevice ); - CleanupStack::Pop( scaledMask ); - // take ownership of scaled bitmap - delete iMask; iMask = NULL; - iMask = scaledMask; scaledMask = NULL; - } } // --------------------------------------------------------------------------- @@ -586,18 +508,18 @@ // --------------------------------------------------------------------------- // TBool CWmImageConverter::ResolveUid( - const TDesC& aStr, TUid& aUid ) + const TDesC& aPath, TUid& aUid ) { // Syntax: uid(0x12345678) TInt error = KErrNotFound; - TInt pos = aStr.FindF( KUid ); + TInt pos = aPath.FindF( KUid ); if( pos == 0 ) { // Skip uid token pos += KUid().Length(); // Initialize lexer - TLex lex( aStr.Mid( pos ) ); + TLex lex( aPath.Mid( pos ) ); lex.SkipSpaceAndMark(); // Check left parenthesis @@ -615,19 +537,18 @@ // --------------------------------------------------------------------------- // TBool CWmImageConverter::ResolveSkinId( - const TDesC& aStr, TAknsItemID& aItemId ) + const TDesC& aPath, TAknsItemID& aItemId ) { // Syntax: skin(major minor) - aItemId = KAknsIIDNone; TInt error = KErrNotFound; - TInt pos = aStr.FindF( KSkin ); + TInt pos = aPath.FindF( KSkin ); if( pos == 0 ) { // Skip skin token pos += KSkin().Length(); // Initialize lexer - TLex lex( aStr.Mid( pos ) ); + TLex lex( aPath.Mid( pos ) ); lex.SkipSpaceAndMark(); // Check left parenthesis @@ -649,22 +570,18 @@ // --------------------------------------------------------------------------- // TBool CWmImageConverter::ResolveMifId( - const TDesC& aStr, TInt& aBitmapId, + const TDesC& aPath, TInt& aBitmapId, TInt& aMaskId, TDes& aFileName ) { // Syntax: mif(filename bimapId maskId) - aBitmapId = KErrNotFound; - aMaskId = KErrNotFound; - aFileName.Copy( KNullDesC ); - TInt error = KErrNotFound; - TInt pos = aStr.FindF( KMif ); + TInt pos = aPath.FindF( KMif ); if( pos == 0 ) { // Skip mif token pos += KMif().Length(); // Initialize lexer - TLex lex( aStr.Mid( pos ) ); + TLex lex( aPath.Mid( pos ) ); lex.SkipSpaceAndMark(); // Check left parenthesis @@ -692,23 +609,23 @@ // --------------------------------------------------------------------------- // TBool CWmImageConverter::ResolveSkinIdAndMifId( - const TDesC& aStr, TAknsItemID& aItemId, + const TDesC& aPath, TAknsItemID& aItemId, TInt& aBitmapId, TInt& aMaskId, TDes& aFileName ) { // Syntax: skin(major minor):mif(filename bimapId maskId) - TBool result = ResolveSkinId( aStr, aItemId ); + TBool result = ResolveSkinId( aPath, aItemId ); if ( result ) { - TInt pos = aStr.FindF( KColon ); + TInt pos = aPath.FindF( KColon ); if ( pos != KErrNotFound ) { - TPtrC ptr = aStr.Mid( pos+1 ); + TPtrC ptr = aPath.Mid( pos+1 ); result = ResolveMifId( ptr, aBitmapId, aMaskId, aFileName ); } } else { - result = ResolveMifId( aStr, aBitmapId, aMaskId, aFileName ); + result = ResolveMifId( aPath, aBitmapId, aMaskId, aFileName ); } return result; } @@ -831,20 +748,5 @@ } } -// --------------------------------------------------------------------------- -// CWmImageConverter::ParseIconString -// --------------------------------------------------------------------------- -// -TBool CWmImageConverter::ParseIconString( - const TDesC& aIconStr, - TAknsItemID& aItemId, - TInt& aBitmapId, - TInt& aMaskId, - TDes& aFileName ) - { - return ResolveSkinIdAndMifId( - aIconStr, aItemId, aBitmapId, aMaskId, aFileName ); - } - // End of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/src/wmlistbox.cpp --- a/idlehomescreen/widgetmanager/src/wmlistbox.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/src/wmlistbox.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -184,13 +184,14 @@ CWindowGc& gc = *Gc(); MAknsSkinInstance* skin = AknsUtils::SkinInstance(); TBool highlightEnabled = !( iListBox->ItemDrawer()->Flags() & - CListItemDrawer::ESingleClickDisabledHighlight ); + CListItemDrawer::ESingleClickDisabledHighlight ); + TBool listFocused = ((iListBox->IsFocused() && !aViewIsDimmed) ? ETrue : EFalse); TRect itemRect = TRect( aItemRectPos, cellSize ); CFormattedCellListBoxItemDrawer::DrawEmptyItem( aItemIndex, aItemRectPos, aViewIsDimmed ); - if ( aItemIsCurrent && !aViewIsDimmed && highlightEnabled ) + if ( aItemIsCurrent && listFocused && highlightEnabled ) { TRect innerRect( itemRect ); const TInt highlightOffset = 5; @@ -240,7 +241,7 @@ // DRAW NAME TRgb textColor; TAknsQsnTextColorsIndex index = - ( aItemIsCurrent && aViewIsDimmed && highlightEnabled )? + ( aItemIsCurrent && listFocused && highlightEnabled )? EAknsCIQsnTextColorsCG10 : EAknsCIQsnTextColorsCG6; AknsUtils::GetCachedColor( diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/src/wmmaincontainer.cpp --- a/idlehomescreen/widgetmanager/src/wmmaincontainer.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/src/wmmaincontainer.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -40,8 +40,6 @@ #include #include #include -#include -#include #include #include #include @@ -65,7 +63,7 @@ #include "wmlistbox.h" #include "wmpersistentwidgetorder.h" #include "wmdetailsdlg.h" -#include "wmstore.h" +#include "wmportalbutton.h" #include "wmwidgetloaderao.h" #include "wmconfiguration.h" #include "wminstaller.h" @@ -77,31 +75,6 @@ const TInt KTextLimit = 40; // Text-limit for find-field const TInt KMinWidgets = 1; // minimum number of widgets to show findpane -// ======== LOCAL FUNCTIONS ======== - -// ---------------------------------------------------------------------------- -// CleanupResetAndDestroy() -// ---------------------------------------------------------------------------- -// -template -static void CleanupResetAndDestroy( TAny* aObj ) - { - if( aObj ) - { - static_cast( aObj )->ResetAndDestroy(); - } - } - -// ---------------------------------------------------------------------------- -// CleanupResetAndDestroyPushL -// ---------------------------------------------------------------------------- -// -template -static void CleanupResetAndDestroyPushL(T& aArray) - { - CleanupStack::PushL( TCleanupItem( &CleanupResetAndDestroy, &aArray ) ); - } - // --------------------------------------------------------- // CWmMainContainer::CWmMainContainer() // --------------------------------------------------------- @@ -113,6 +86,7 @@ iFindbox = NULL; iFindPaneIsVisible = EFalse; iBgContext = NULL; + iFocusMode = ENowhere; iClosingDown = ETrue; } @@ -122,11 +96,6 @@ // CWmMainContainer::~CWmMainContainer() { - if ( iSelectedStore ) - { - delete iSelectedStore; - iSelectedStore = NULL; - } TRAP_IGNORE(DeactivateFindPaneL(EFalse)); if ( iWidgetLoader ) @@ -139,8 +108,11 @@ Components().ResetAndDestroy(); iWidgetsList = NULL; + iPortalButtonOne = NULL; + iPortalButtonTwo = NULL; iFindbox = NULL; delete iBgContext; + delete iConfiguration; } // --------------------------------------------------------- @@ -207,6 +179,9 @@ // background context iBgContext = CAknsBasicBackgroundControlContext::NewL( KAknsIIDQsnBgScreen, ScreenRect() , ETrue); + + // load configuration + iConfiguration = CWmConfiguration::NewL( iWmPlugin.ResourceLoader() ); // set up controls InitializeControlsL( aRect ); @@ -236,21 +211,52 @@ { TRect rect( Rect() ); + // determine layout type + iLandscape = Layout_Meta_Data::IsLandscapeOrientation(); + iMirrored = Layout_Meta_Data::IsMirrored(); + + // layout iPortalButtons + if ( iConfiguration->PortalButtonCount() == 1 ) + { + // one button + TAknWindowLineLayout btnPane = AknLayoutScalable_Apps + ::wgtman_btn_pane( iLandscape ? 1 : 0 ).LayoutLine(); + AknLayoutUtils::LayoutControl( iPortalButtonOne, rect, btnPane ); + } + else + { + // two buttons + TInt variety = (iLandscape ? 3 : 2); + TAknWindowLineLayout oviBtnLayout = AknLayoutScalable_Apps + ::wgtman_btn_pane( variety ).LayoutLine(); + TAknWindowLineLayout operatorBtnLayout = AknLayoutScalable_Apps + ::wgtman_btn_pane_cp_01( variety ).LayoutLine(); + + // button placement + if ( iConfiguration->PortalButtonsMirrored() ) + { + AknLayoutUtils::LayoutControl( iPortalButtonOne, rect, operatorBtnLayout ); + AknLayoutUtils::LayoutControl( iPortalButtonTwo, rect, oviBtnLayout ); + } + else + { + AknLayoutUtils::LayoutControl( iPortalButtonOne, rect, oviBtnLayout ); + AknLayoutUtils::LayoutControl( iPortalButtonTwo, rect, operatorBtnLayout ); + } + } + // layout iWidgetsList + TAknWindowLineLayout listPane = AknLayoutScalable_Apps + ::listscroll_wgtman_pane( iLandscape ? 1 : 0 ).LayoutLine(); if( iFindbox && iFindPaneIsVisible ) { - iWidgetsList->SetRect( rect ); + TAknLayoutRect layoutRect; + layoutRect.LayoutRect( rect, listPane ); + iWidgetsList->SetRect( layoutRect.Rect() ); HandleFindSizeChanged(); } else { - TAknWindowLineLayout listPane; - listPane.il = rect.iTl.iX; - listPane.it = rect.iTl.iY; - listPane.ib = 0; - listPane.iH = rect.Height(); - listPane.iW = rect.Width(); - listPane.ir = ELayoutEmpty; AknLayoutUtils::LayoutControl( iWidgetsList, rect, listPane ); } @@ -281,16 +287,28 @@ { return EKeyWasConsumed; } - + // Handle search keyevent keyResponse = HandleSearchKeyEventL( aKeyEvent, aType ); - + + // Move focus between controls + if ( keyResponse == EKeyWasNotConsumed ) + { + keyResponse = MoveFocusByKeys( aKeyEvent, aType ); + } + // Handle list keyevent if ( keyResponse == EKeyWasNotConsumed ) { keyResponse = HandleListKeyEventL( aKeyEvent, aType ); } + // Handle buttons keyevent + if ( keyResponse == EKeyWasNotConsumed ) + { + keyResponse = HandleButtonKeyEventL( aKeyEvent, aType ); + } + // Update ui if needed if ( keyResponse == EKeyWasConsumed ) { @@ -368,33 +386,429 @@ TKeyResponse keyResponse( EKeyWasNotConsumed ); // pass key event except backpace or delete key event to widgets list if focused - if ( ( aType == EEventKey ) && ( aKeyEvent.iCode == EKeyBackspace - || aKeyEvent.iCode == EKeyDelete ) ) + if ( iWidgetsList->IsFocused() ) { - if( CanDoUninstall() ) + if ( ( aType == EEventKey ) && ( aKeyEvent.iCode == EKeyBackspace + || aKeyEvent.iCode == EKeyDelete ) ) { - UninstallWidgetL(); + if( CanDoUninstall() ) + { + UninstallWidgetL(); + } + else + { + CWmWidgetData* data = iWidgetsList->WidgetData(); + if( data != NULL ) + iWmPlugin.ResourceLoader().InfoPopupL( + R_QTN_WM_UNINST_NOT_ALLOWED, data->Name() ); + } + keyResponse = EKeyWasConsumed; } - else + else { - CWmWidgetData* data = iWidgetsList->WidgetData(); - if( data != NULL ) - iWmPlugin.ResourceLoader().InfoPopupL( - R_QTN_WM_UNINST_NOT_ALLOWED, data->Name() ); + //passing to listbox handler + keyResponse = iWidgetsList->OfferKeyEventL( + aKeyEvent, aType ); } - keyResponse = EKeyWasConsumed; } - else + + return keyResponse; + } + +// --------------------------------------------------------- +// CWmMainContainer::HandleButtonKeyEventL +// --------------------------------------------------------- +// +TKeyResponse CWmMainContainer::HandleButtonKeyEventL( + const TKeyEvent& aKeyEvent, + TEventCode aType ) + { + TKeyResponse keyResponse( EKeyWasNotConsumed ); + + // pass key event to portal button if focused + if ( iPortalButtonOne->IsFocused() ) { - //passing to listbox handler - keyResponse = iWidgetsList->OfferKeyEventL( - aKeyEvent, aType ); + keyResponse = iPortalButtonOne->OfferKeyEventL( + aKeyEvent, aType ); + } + + // pass key event to the other portal button if exists and focused + if ( iPortalButtonTwo && iPortalButtonTwo->IsFocused() ) + { + keyResponse = iPortalButtonTwo->OfferKeyEventL( + aKeyEvent, aType ); } return keyResponse; } // --------------------------------------------------------- +// CWmMainContainer::MoveFocusByKeys +// --------------------------------------------------------- +// +TKeyResponse CWmMainContainer::MoveFocusByKeys( + const TKeyEvent& aKeyEvent, + TEventCode aType ) + { + TKeyResponse keyResponse( EKeyWasNotConsumed ); + + if ( iWidgetsList->IsFocused() ) + { + // ------------------------------------ + // focus is in the WIDGETS LIST + // ------------------------------------ + if ( !iLandscape && + aKeyEvent.iScanCode == EStdKeyUpArrow && + iWidgetsList->CurrentItemIndex() == 0 ) + { + // widget list top -> up -> ovi button (portrait) + if ( aType == EEventKey ) + SetFocusToPortalButton( OperatorButtonHigherPriority ( 0 ) ); + keyResponse = EKeyWasConsumed; + } + else if ( !iLandscape && + aKeyEvent.iScanCode == EStdKeyDownArrow && + iWidgetsList->CurrentItemIndex() == + iWidgetsList->Model()->NumberOfItems() - 1 ) + { + // widget list bottom -> down -> ovi button (portrait) + if ( aType == EEventKey ) + SetFocusToPortalButton( OperatorButtonHigherPriority ( 0 ) ); + keyResponse = EKeyWasConsumed; + } + else if ( iLandscape && !iMirrored && + aKeyEvent.iScanCode == EStdKeyRightArrow ) + { + // widget list -> right -> ovi button (landscape normal) + if ( aType == EEventKey ) + SetFocusToPortalButton( OperatorButtonHigherPriority ( 0 ) ); + keyResponse = EKeyWasConsumed; + } + else if ( iLandscape && iMirrored && + aKeyEvent.iScanCode == EStdKeyLeftArrow ) + { + // widget list -> left -> ovi button (landscape mirrored) + if ( aType == EEventKey ) + SetFocusToPortalButton( OperatorButtonHigherPriority ( 0 ) ); + keyResponse = EKeyWasConsumed; + } + } + else if ( iPortalButtonOne->IsFocused() ) + { + // ------------------------------------ + // focus is in the FIRST PORTAL BUTTON + // ------------------------------------ + if ( !iLandscape && + aKeyEvent.iScanCode == EStdKeyDownArrow ) + { + // left portal -> down -> widget list top (portrait) + if ( aType == EEventKey ) + SetFocusToWidgetList( 0 ); + keyResponse = EKeyWasConsumed; + } + else if ( !iLandscape && + aKeyEvent.iScanCode == EStdKeyUpArrow ) + { + // left portal -> up -> widget list bottom (portrait) + if ( aType == EEventKey ) + SetFocusToWidgetList( iWidgetsList->Model()->NumberOfItems()-1 ); + keyResponse = EKeyWasConsumed; + } + else if ( !iLandscape && !iMirrored && + aKeyEvent.iScanCode == EStdKeyLeftArrow && + iConfiguration->PortalButtonCount() > 1 && + iConfiguration->PortalButtonsMirrored() ) + { + // right portal -> left -> left portal + // (portrait, operator button higher priority ) + if ( aType == EEventKey ) + SetFocusToPortalButton( 1 ); + keyResponse = EKeyWasConsumed; + } + else if ( !iLandscape && !iMirrored && + aKeyEvent.iScanCode == EStdKeyRightArrow && + iConfiguration->PortalButtonCount() > 1 && + !iConfiguration->PortalButtonsMirrored() ) + { + // left portal -> right -> right portal (portrait normal) + if ( aType == EEventKey ) + SetFocusToPortalButton( 1 ); + keyResponse = EKeyWasConsumed; + } + else if ( !iLandscape && iMirrored && + aKeyEvent.iScanCode == EStdKeyRightArrow && + iConfiguration->PortalButtonCount() > 1 && + iConfiguration->PortalButtonsMirrored() ) + { + // right portal -> left -> left portal (portrait mirrored) + if ( aType == EEventKey ) + SetFocusToPortalButton( 1 ); + keyResponse = EKeyWasConsumed; + } + else if ( !iLandscape && iMirrored && + aKeyEvent.iScanCode == EStdKeyLeftArrow && + iConfiguration->PortalButtonCount() > 1 && + !iConfiguration->PortalButtonsMirrored() ) + { + // right portal -> left -> left portal (portrait mirrored) + if ( aType == EEventKey ) + SetFocusToPortalButton( 1 ); + keyResponse = EKeyWasConsumed; + } + else if ( iLandscape && !iMirrored && + aKeyEvent.iScanCode == EStdKeyLeftArrow ) + { + // upper portal -> left -> widget list (landscape normal) + if ( aType == EEventKey ) + SetFocusToWidgetList(); + keyResponse = EKeyWasConsumed; + } + else if ( iLandscape && iMirrored && + aKeyEvent.iScanCode == EStdKeyRightArrow ) + { + // upper portal -> right -> widget list (landscape mirrored) + if ( aType == EEventKey ) + SetFocusToWidgetList(); + keyResponse = EKeyWasConsumed; + } + else if ( iLandscape && + aKeyEvent.iScanCode == EStdKeyUpArrow && + iConfiguration->PortalButtonCount() > 1 && + iConfiguration->PortalButtonsMirrored() ) + { + // lower portal -> up -> upper portal + // (landscape, operator button higher priority ) + if ( aType == EEventKey ) + SetFocusToPortalButton( 1 ); + keyResponse = EKeyWasConsumed; + } + else if ( iLandscape && + aKeyEvent.iScanCode == EStdKeyDownArrow && + iConfiguration->PortalButtonCount() > 1 && + !iConfiguration->PortalButtonsMirrored() ) + { + // upper portal -> down -> lower portal (landscape) + if ( aType == EEventKey ) + SetFocusToPortalButton( 1 ); + keyResponse = EKeyWasConsumed; + } + } + else if ( iPortalButtonTwo && iPortalButtonTwo->IsFocused() ) + { + // ------------------------------------ + // focus is in the SECOND PORTAL BUTTON + // ------------------------------------ + if ( !iLandscape && + aKeyEvent.iScanCode == EStdKeyDownArrow ) + { + // right portal -> down -> widget list top (portrait) + if ( aType == EEventKey ) + SetFocusToWidgetList( 0 ); + keyResponse = EKeyWasConsumed; + } + else if ( !iLandscape && + aKeyEvent.iScanCode == EStdKeyUpArrow ) + { + // right portal -> up -> widget list bottom (portrait) + if ( aType == EEventKey ) + SetFocusToWidgetList( iWidgetsList->Model()->NumberOfItems()-1 ); + keyResponse = EKeyWasConsumed; + } + else if ( !iLandscape && !iMirrored && + aKeyEvent.iScanCode == EStdKeyRightArrow && + iConfiguration->PortalButtonCount() > 1 && + iConfiguration->PortalButtonsMirrored() ) + { + // left portal -> right -> right portal + // (portrait, operator button higher priority ) + if ( aType == EEventKey ) + SetFocusToPortalButton( 0 ); + keyResponse = EKeyWasConsumed; + } + else if ( !iLandscape && !iMirrored && + aKeyEvent.iScanCode == EStdKeyLeftArrow && + iConfiguration->PortalButtonCount() > 1 && + !iConfiguration->PortalButtonsMirrored() ) + { + // right portal -> left -> left portal (portrait normal) + if ( aType == EEventKey ) + SetFocusToPortalButton( 0 ); + keyResponse = EKeyWasConsumed; + } + else if ( !iLandscape && iMirrored && + aKeyEvent.iScanCode == EStdKeyLeftArrow && + iConfiguration->PortalButtonCount() > 1 && + iConfiguration->PortalButtonsMirrored() ) + { + // left portal -> right -> right portal (portrait mirrored) + if ( aType == EEventKey ) + SetFocusToPortalButton( 0 ); + keyResponse = EKeyWasConsumed; + } + else if ( !iLandscape && iMirrored && + aKeyEvent.iScanCode == EStdKeyRightArrow && + iConfiguration->PortalButtonCount() > 1 && + !iConfiguration->PortalButtonsMirrored() ) + { + // left portal -> right -> right portal (portrait mirrored) + if ( aType == EEventKey ) + SetFocusToPortalButton( 0 ); + keyResponse = EKeyWasConsumed; + } + else if ( iLandscape && !iMirrored && + aKeyEvent.iScanCode == EStdKeyLeftArrow ) + { + // lower portal -> left -> widget list (landscape normal) + if ( aType == EEventKey ) + SetFocusToWidgetList(); + keyResponse = EKeyWasConsumed; + } + else if ( iLandscape && iMirrored && + aKeyEvent.iScanCode == EStdKeyRightArrow ) + { + // lower portal -> right -> widget list (landscape mirrored) + if ( aType == EEventKey ) + SetFocusToWidgetList(); + keyResponse = EKeyWasConsumed; + } + else if ( iLandscape && + aKeyEvent.iScanCode == EStdKeyDownArrow && + iConfiguration->PortalButtonsMirrored() ) + { + // upper portal -> down -> lower portal + // ( landscape operator button higher priority ) + if ( aType == EEventKey ) + SetFocusToPortalButton( 0 ); + keyResponse = EKeyWasConsumed; + } + else if ( iLandscape && + aKeyEvent.iScanCode == EStdKeyUpArrow && + !iConfiguration->PortalButtonsMirrored() ) + { + // lower portal -> up -> upper portal (landscape) + if ( aType == EEventKey ) + SetFocusToPortalButton( 0 ); + keyResponse = EKeyWasConsumed; + } + } + else + { + // ------------------------------------ + // focus is NOWHERE + // ------------------------------------ + if ( aKeyEvent.iScanCode == EStdKeyUpArrow || + aKeyEvent.iScanCode == EStdKeyDownArrow ) + { + // no focus -> key hit -> focus list + if ( aType == EEventKey ) + { + SetFocusToWidgetList(); + keyResponse = EKeyWasNotConsumed; + } + } + } + + return keyResponse; + } + + +// --------------------------------------------------------- +// CWmMainContainer::OperatorButtonHigherPriority +// --------------------------------------------------------- +// +TInt CWmMainContainer::OperatorButtonHigherPriority( TInt aIndex ) + { + TInt ret = aIndex; + if ( iConfiguration->PortalButtonsMirrored() ) + { + if ( aIndex == 0 ) + { + ret = 1; + } + else if ( aIndex == 1 ) + { + ret = 0; + } + } + return ret; + } + +// --------------------------------------------------------- +// CWmMainContainer::SetFocusToPortalButton +// --------------------------------------------------------- +// +void CWmMainContainer::SetFocusToPortalButton( TInt aIndex ) + { + if ( aIndex != 0 && iPortalButtonTwo ) + { + iWidgetsList->SetFocus(EFalse); + iPortalButtonOne->SetFocus(EFalse); + iPortalButtonTwo->SetFocus(ETrue); + } + else + { + iWidgetsList->SetFocus(EFalse); + if ( iPortalButtonTwo ) + iPortalButtonTwo->SetFocus(EFalse); + iPortalButtonOne->SetFocus(ETrue); + } + DrawDeferred(); + UpdateFocusMode(); + } + +// --------------------------------------------------------- +// CWmMainContainer::SetFocusToWidgetList +// --------------------------------------------------------- +// +void CWmMainContainer::SetFocusToWidgetList( TInt aIndex ) + { + iPortalButtonOne->SetFocus(EFalse); + if ( iPortalButtonTwo ) + iPortalButtonTwo->SetFocus(EFalse); + if ( aIndex >= 0 && aIndex < iWidgetsList->Model()->NumberOfItems() ) + { + iWidgetsList->SetCurrentItemIndex( aIndex ); + } + iWidgetsList->SetFocus(ETrue); + DrawDeferred(); + UpdateFocusMode(); + } + +// --------------------------------------------------------- +// CWmMainContainer::UpdateFocusMode +// --------------------------------------------------------- +// +void CWmMainContainer::UpdateFocusMode() + { + if ( iPortalButtonOne->IsFocused() ) + { + // PORTAL BUTTON is focused + iFocusMode = EPortal; + } + else if ( iPortalButtonTwo && iPortalButtonTwo->IsFocused() ) + { + // SECOND PORTAL BUTTON is focused + iFocusMode = EPortal; + } + else if( ( iFindPaneIsVisible ) && + ( iFindbox->IsFocused() || iWidgetsList->IsFocused() ) ) + { + // FIND MODE + iFocusMode = EFind; + } + else if ( iWidgetsList->IsFocused() ) + { + // WIDGETS LIST is focused + iFocusMode = EList; + } + else + { + // NO focus + iFocusMode = ENowhere; + } + } + +// --------------------------------------------------------- // CWmMainContainer::FindChildControlByPoint // --------------------------------------------------------- // @@ -444,6 +858,8 @@ // Set focus to the control that was clicked control->SetFocus( ETrue ); + // update focus mode accordingly + UpdateFocusMode(); // repaint DrawDeferred(); } @@ -487,6 +903,17 @@ // void CWmMainContainer::InitializeControlsL( const TRect& /*aRect*/ ) { + // Create portal buttons + iPortalButtonOne = CWmPortalButton::NewL( this, 0 ); + iPortalButtonOne->SetMopParent( this ); + AddControlL( iPortalButtonOne, EPortalOne ); + if ( iConfiguration->PortalButtonCount() > 1 ) + { + iPortalButtonTwo = CWmPortalButton::NewL( this, 1 ); + iPortalButtonTwo->SetMopParent( this ); + AddControlL( iPortalButtonTwo, EPortalTwo ); + } + // Create widget list box iWidgetsList = CWmListBox::NewL( iWmPlugin, @@ -509,7 +936,8 @@ 0, KTextLimit ); AddControlL( iFindbox, EFindBox ); iFindbox->AddAdaptiveSearchTextObserverL(this); - + + UpdateFocusMode(); StartLoadingWidgetsL(); } @@ -618,13 +1046,21 @@ } // --------------------------------------------------------- +// CWmMainContainer::PortalSelected +// --------------------------------------------------------- +// +TBool CWmMainContainer::PortalSelected() + { + return ( iFocusMode == EPortal ); + } + +// --------------------------------------------------------- // CWmMainContainer::WidgetSelected // --------------------------------------------------------- // TBool CWmMainContainer::WidgetSelected() { - return (( iWidgetsList->IsFocused() || iWidgetsList->IsHighlightEnabled())? - ETrue : EFalse ); + return ( iFocusMode == EList ) || ( iFocusMode == EFind ); } // --------------------------------------------------------- @@ -782,6 +1218,18 @@ if ( iFindbox && !iFindPaneIsVisible && iWidgetsList->Model()->NumberOfItems() > KMinWidgets ) { + // set focus + if ( iWidgetsList->ItemDrawer()->Flags() + & CListItemDrawer::ESingleClickDisabledHighlight ) + { + ResetFocus(); + } + else + { + iWidgetsList->SetFocus( ETrue, EDrawNow ); + } + + // set column filter flag TBitFlags32 bitFlag; bitFlag.ClearAll(); // clear all columns @@ -816,18 +1264,14 @@ } iFindbox->SetFocus( ETrue ); iWidgetsList->SetFindPaneIsVisible( ETrue ); - - if ( AknLayoutUtils::MSKEnabled() ) - { - // set soft key set - CEikButtonGroupContainer* cbaGroup = - CEikButtonGroupContainer::Current(); - TInt cbaResourceId = ( ( iWmPlugin.Configuration().StoreCount() > 0 )? - R_WM_SOFTKEYS_OPTIONS_CANCEL__STORE : - R_AVKON_SOFTKEYS_OPTIONS_CANCEL__SELECT ); - cbaGroup->SetCommandSetL( cbaResourceId ); - cbaGroup->DrawNow(); - } + + // set soft key set + CEikButtonGroupContainer* cbaGroup = + CEikButtonGroupContainer::Current(); + cbaGroup->SetCommandSetL( R_AVKON_SOFTKEYS_OPTIONS_CANCEL__SELECT ); + cbaGroup->DrawNow(); + + UpdateFocusMode(); } } @@ -855,6 +1299,17 @@ m->RemoveFilter(); } + //set focus + if ( iWidgetsList->ItemDrawer()->Flags() + & CListItemDrawer::ESingleClickDisabledHighlight ) + { + ResetFocus(); + } + else + { + iWidgetsList->SetFocus( ETrue, EDrawNow ); + } + iFindbox->MakeVisible( EFalse ); iFindPaneIsVisible = EFalse; iWidgetsList->SetFindPaneIsVisible( EFalse ); @@ -863,9 +1318,8 @@ // set soft key set CEikButtonGroupContainer* cbaGroup = CEikButtonGroupContainer::Current(); - TInt cbaResourceId = ( ( AknLayoutUtils::MSKEnabled() && - iWmPlugin.Configuration().StoreCount() > 0 )? - R_WM_SOFTKEYS_OPTIONS_BACK__STORE : + TInt cbaResourceId = ( AknLayoutUtils::MSKEnabled() ? + R_AVKON_SOFTKEYS_OPTIONS_BACK__SELECT : R_AVKON_SOFTKEYS_OPTIONS_BACK ); cbaGroup->SetCommandSetL( cbaResourceId ); @@ -874,6 +1328,7 @@ LayoutControls(); cbaGroup->DrawNow(); + UpdateFocusMode(); DrawNow(); } } @@ -927,32 +1382,35 @@ } // --------------------------------------------------------------------------- -// CWmMainContainer::HandleStoreCommandL +// CWmMainContainer::OpenPortalL // --------------------------------------------------------------------------- // -void CWmMainContainer::HandleStoreCommandL() +void CWmMainContainer::OpenPortalL() { - delete iSelectedStore; - iSelectedStore = NULL; - - const RPointerArray& storeConfArray = - iWmPlugin.Configuration().StoreConfArray(); - - if ( storeConfArray.Count() == 1 ) - { - iSelectedStore = CWmStore::NewL( *storeConfArray[0], - iWmPlugin.ResourceLoader() ); - - iSelectedStore->ExecuteL(); + if ( !iClosingDown ) + { + // execute whichever of the portal buttons happens to be active + if ( iPortalButtonOne->IsFocused() ) + iPortalButtonOne->ExecuteL(); + else if ( iPortalButtonTwo && iPortalButtonTwo->IsFocused() ) + iPortalButtonTwo->ExecuteL(); + else if ( !iPortalButtonTwo ) + iPortalButtonOne->ExecuteL(); } - else if ( storeConfArray.Count() > 1 ) - { - DisplayAndLaunchStoresL(); - } + } + +// --------------------------------------------------------------------------- +// CWmMainContainer::SelectL +// --------------------------------------------------------------------------- +// +void CWmMainContainer::SelectL() + { + if ( WidgetSelected() ) + AddWidgetToHomeScreenL(); + else if ( PortalSelected() ) + OpenPortalL(); else - { - // do nothing - } + SetFocusToWidgetList(); } // --------------------------------------------------------------------------- @@ -1042,6 +1500,19 @@ { AddWidgetToHomeScreenL(); } + else + { + if ( iWidgetsList->ItemDrawer()->Flags() + & CListItemDrawer::ESingleClickDisabledHighlight ) + { + ResetFocus(); + } + else + { + iWidgetsList->SetFocus( ETrue, EDrawNow ); + UpdateFocusMode(); + } + } } } @@ -1064,6 +1535,15 @@ } // ---------------------------------------------------- +// CWmMainContainer::Configuration +// ---------------------------------------------------- +// +CWmConfiguration& CWmMainContainer::Configuration() + { + return *iConfiguration; + } + +// ---------------------------------------------------- // CWmMainContainer::HandleFindSizeChanged // ---------------------------------------------------- // @@ -1093,6 +1573,44 @@ } // ---------------------------------------------------- +// CWmMainContainer::ProcessForegroundEvent +// ---------------------------------------------------- +// +void CWmMainContainer::ProcessForegroundEvent( TBool aForeground ) + { + if ( iFindbox && iFindPaneIsVisible && + iFindbox->IsFocused() ) + { + // keep focus & do nothing + } + else if ( aForeground ) + { + // set init state when wm comes to foreground. + // remove focus from all controls when activating view. + ResetFocus( EDrawNow ); + } + } + +// ---------------------------------------------------- +// CWmMainContainer::ResetFocus +// ---------------------------------------------------- +// +void CWmMainContainer::ResetFocus( TDrawNow aDrawNow ) + { + CCoeControl* control = NULL; + CCoeControlArray::TCursor cursor = Components().Begin(); + while( ( control = cursor.Control() ) != NULL ) + { + if( control->IsVisible() && control->IsFocused() ) + { + control->SetFocus( EFalse, aDrawNow ); + } + cursor.Next(); + } + UpdateFocusMode(); + } + +// ---------------------------------------------------- // CWmMainContainer::WmListBox // ---------------------------------------------------- // @@ -1112,8 +1630,10 @@ if ( iFindbox && iFindPaneIsVisible && !iFindbox->IsFocused() && IsFocused() ) { - // set focus to find pane if its lost ( ou1cimx1#308019 ) + // reset focus to find pane if its lost ( ou1cimx1#308019 ) + ResetFocus(); iFindbox->SetFocus( ETrue ); + UpdateFocusMode(); } } @@ -1146,113 +1666,5 @@ } } -// ---------------------------------------------------------- -// CWmMainContainer::CleanupIconArray -// ---------------------------------------------------------- -// -void CWmMainContainer::CleanupIconArray( TAny* aIconArray ) - { - CArrayPtrFlat* icons = (CArrayPtrFlat*)aIconArray; - icons->ResetAndDestroy(); - delete icons; - } - -// ---------------------------------------------------- -// CWmMainContainer::DisplayAndLaunchStoresL -// ---------------------------------------------------- -// -void CWmMainContainer::DisplayAndLaunchStoresL() - { - // prepare stores - RPointerArray storesArray; - CleanupResetAndDestroyPushL( storesArray ); - - const RPointerArray& storeConfArray = - iWmPlugin.Configuration().StoreConfArray(); - - for( TInt i = 0; i < storeConfArray.Count(); i++ ) - { - CWmStore* store = CWmStore::NewL( *storeConfArray[i], - iWmPlugin.ResourceLoader() ); - CleanupStack::PushL( store ); - storesArray.AppendL( store ); - CleanupStack::Pop( store ); - } - - CEikFormattedCellListBox* listBox = - new (ELeave) CAknDoubleLargeGraphicPopupMenuStyleListBox(); - CleanupStack::PushL( listBox ); - - CAknPopupList* popupList = CAknPopupList::NewL( - listBox, R_AVKON_SOFTKEYS_SELECT_CANCEL__SELECT, - AknPopupLayouts::EMenuDoubleLargeGraphicWindow ); - - CleanupStack::PushL( popupList ); - - listBox->ConstructL( popupList, EAknListBoxMenuList ); - listBox->CreateScrollBarFrameL(ETrue); - listBox->ScrollBarFrame()->SetScrollBarVisibilityL( - CEikScrollBarFrame::EOff, CEikScrollBarFrame::EAuto); - - // set title - HBufC* title = StringLoader::LoadLC( R_QTN_WM_STORELIST_TITLE ); - popupList->SetTitleL( *title ); - CleanupStack::PopAndDestroy(); // title - - // format str - _LIT( KFormatStr , "%d\t%S" ); - - // items array - CDesCArray* itemArray = - static_cast( listBox->Model()->ItemTextArray( ) ); - - // create icons array - CArrayPtr* iconarray = new (ELeave) CArrayPtrFlat( 2 ); - CleanupStack::PushL( TCleanupItem( CleanupIconArray, iconarray) ); - - for ( TInt i=0; i < storesArray.Count(); i++ ) - { - // prepare icon - CGulIcon* icon = CGulIcon::NewL( storesArray[i]->StoreIcon(), - storesArray[i]->StoreMask() ); - CleanupStack::PushL( icon ); - icon->SetBitmapsOwnedExternally( ETrue ); - iconarray->AppendL( icon ); - CleanupStack::Pop( icon ); - - // add store to items array - HBufC* buf = HBufC::NewLC( - storesArray[i]->Heading().Length() + - KFormatStr().Length() ); - - TPtr ptr = buf->Des(); - ptr.Format( KFormatStr(), i, &storesArray[i]->Heading() ); - itemArray->AppendL( ptr ); - CleanupStack::PopAndDestroy( buf ); - } - - CleanupStack::Pop(); // iconarray - listBox->ItemDrawer()->ColumnData()->SetIconArrayL( iconarray ); - - TBool result = popupList->ExecuteLD(); - CleanupStack::Pop(); // popupList ( deleted in ExecuteLD) - - TInt selection = listBox->CurrentItemIndex(); - CleanupStack::PopAndDestroy(); // listBox - - if ( result && selection >= 0 && - selection < storesArray.Count() ) - { - iSelectedStore = storesArray[selection]; - if ( iSelectedStore ) - { - storesArray.Remove( selection ); - iSelectedStore->ExecuteL(); - } - } - - CleanupStack::PopAndDestroy(); //storesArray - } - // End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/src/wmmaincontainerview.cpp --- a/idlehomescreen/widgetmanager/src/wmmaincontainerview.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/src/wmmaincontainerview.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -30,17 +30,14 @@ #include #include #include -#include + #include "wmplugin.h" #include "widgetmanager.hrh" #include "wmmaincontainerview.h" #include "wmresourceloader.h" #include "wmmaincontainer.h" #include "wmspbgcleaner.h" -#include "wmconfiguration.h" -#include "wmimageconverter.h" -#include "wmstore.h" - + // --------------------------------------------------------- // CWmMainContainerView::CWmMainContainerView() // --------------------------------------------------------- @@ -58,7 +55,7 @@ // --------------------------------------------------------- // CWmMainContainerView::~CWmMainContainerView() - { + { if ( iWmMainContainer != NULL ) { AppUi()->RemoveFromStack( iWmMainContainer ); @@ -130,7 +127,9 @@ { switch ( aCommand ) { - case EAknSoftkeySelect: + case EWmMainContainerViewOpenPortalMenuItemCommand: + HandleOpenMenuItemSelectedL(); + break; case EWmMainContainerViewAddMenuItemCommand: HandleAddMenuItemSelectedL(); break; @@ -163,11 +162,9 @@ case EWmMainContainerViewWiddetDetailsMenuItemCommand: HandleDetailsMenuItemSelectedL(); break; - case EWmStoreCommand: - { + case EAknSoftkeySelect: if ( iWmMainContainer ) - iWmMainContainer->HandleStoreCommandL(); - } + iWmMainContainer->SelectL(); break; case EAknSoftkeyCancel: // flow through case EEikCmdCanceled: @@ -191,16 +188,7 @@ const TDesC8& /*aCustomMessage*/ ) { // setup status pane layout - TInt layoutResourceId = ( (iWmPlugin.Configuration().StoreCount() ) ? - R_AVKON_STATUS_PANE_LAYOUT_IDLE_FLAT : - R_AVKON_STATUS_PANE_LAYOUT_USUAL_FLAT ); - StatusPane()->SwitchLayoutL( layoutResourceId ); - - // ToDo: Support for msk in all layout is ongoing, when available in - // sdk use next line and get rid of above. - - //StatusPane()->SwitchLayoutL( R_AVKON_STATUS_PANE_LAYOUT_USUAL_FLAT ); - + StatusPane()->SwitchLayoutL( R_AVKON_STATUS_PANE_LAYOUT_USUAL_FLAT ); // apply changes StatusPane()->ApplyCurrentSettingsL(); // disable transparancy @@ -220,19 +208,14 @@ StatusPane()->DrawNow(); // update cba - if ( !AknLayoutUtils::MSKEnabled() || - iWmPlugin.Configuration().StoreCount() == 0 ) + if ( Layout_Meta_Data::IsMSKEnabled() ) { CEikButtonGroupContainer* bgc( Cba() ); CEikCba* cba = static_cast< CEikCba* >( bgc->ButtonGroup() ); - cba->SetCommandSetL( R_AVKON_SOFTKEYS_OPTIONS_BACK ); + cba->SetCommandSetL( R_AVKON_SOFTKEYS_OPTIONS_BACK__SELECT ); bgc->SetBoundingRect( TRect() ); cba->DrawNow(); } - else if ( AknLayoutUtils::MSKEnabled() ) - { - UpdateMSKIconL(); - } // create container if ( iWmMainContainer == NULL ) @@ -326,12 +309,27 @@ !iWmMainContainer->CanDoHelp() ); aMenuPane->SetItemDimmed( EWmMainContainerViewUninstallMenuItemCommand, !iWmMainContainer->CanDoUninstall() ); + if ( !iWmMainContainer->PortalSelected() ) + aMenuPane->DeleteMenuItem( EWmMainContainerViewOpenPortalMenuItemCommand ); if ( !iWmMainContainer->WidgetSelected() ) aMenuPane->DeleteMenuItem( EWmMainContainerViewAddMenuItemCommand ); } } // --------------------------------------------------------- +// CWmMainContainerView::HandleOpenMenuItemSelectedL +// --------------------------------------------------------- +// +TBool CWmMainContainerView::HandleOpenMenuItemSelectedL() + { + if ( iWmMainContainer && iWmMainContainer->PortalSelected() ) + { + iWmMainContainer->OpenPortalL(); + } + return ETrue; + } + +// --------------------------------------------------------- // CWmMainContainerView::HandleDetailsMenuItemSelectedL // --------------------------------------------------------- // @@ -433,64 +431,16 @@ } // --------------------------------------------------------- -// CWmMainContainerView::UpdateMSKIconL +// CWmMainContainerView::HandleForegroundEventL // --------------------------------------------------------- // -void CWmMainContainerView::UpdateMSKIconL() +void CWmMainContainerView::HandleForegroundEventL( TBool aForeground ) { - CEikButtonGroupContainer* bgc( Cba() ); - CEikCba* cba = static_cast< CEikCba* >( bgc->ButtonGroup() ); - TFileName fileName( iWmPlugin.ResourceLoader().IconFilePath() ); - TAknsItemID skinId = KAknsIIDQgnMenuOviStore; - TInt bitmapId( EMbmWidgetmanagerQgn_menu_ovistore ); - TInt maskId( EMbmWidgetmanagerQgn_menu_ovistore_mask ); - - if ( iWmPlugin.Configuration().StoreCount() > 1 ) - { - skinId = KAknsIIDQgnPropLmShopping; - bitmapId = EMbmWidgetmanagerQgn_menu_shopping; - maskId = EMbmWidgetmanagerQgn_menu_shopping_mask; - } - else + CAknView::HandleForegroundEventL( aForeground ); + if ( iWmMainContainer ) { - const RPointerArray& storeConfArray = - iWmPlugin.Configuration().StoreConfArray(); - CWmConfItem* confItem( storeConfArray[0] ); - - if ( confItem && - confItem->Id() != CWmStore::EOvi && - confItem->Icon().Length() ) - { - CWmImageConverter* imageConverter = CWmImageConverter::NewL(); - CleanupStack::PushL( imageConverter ); - - // parse icon str - // TODO: now only mif&skin are supported. Later when API is there - // we can add support for rest icon types - TBool res = imageConverter->ParseIconString( - confItem->Icon(), skinId, bitmapId, maskId, fileName ); - - CleanupStack::PopAndDestroy( imageConverter ); - - if ( !res ) - { - // use default shopping icon - skinId = KAknsIIDQgnPropLmShopping; - bitmapId = EMbmWidgetmanagerQgn_menu_shopping; - maskId = EMbmWidgetmanagerQgn_menu_shopping_mask; - fileName.Copy( iWmPlugin.ResourceLoader().IconFilePath() ); - } - } + iWmMainContainer->ProcessForegroundEvent( aForeground ); } - - cba->UpdateMSKIconL( - skinId, - fileName, - bitmapId, - maskId, - ETrue ); - bgc->SetBoundingRect( TRect() ); - cba->DrawNow(); } // End of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/src/wmplugin.cpp --- a/idlehomescreen/widgetmanager/src/wmplugin.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/src/wmplugin.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -37,7 +37,6 @@ #include "wmwidgetdata.h" #include "wminstaller.h" #include "wmlistbox.h" -#include "wmconfiguration.h" const TInt KExecuteCommandDelay( 50000 ); // 50ms const TInt KMaxCmdExecutionCount( 6 ); @@ -78,7 +77,6 @@ delete iEffectManager; delete iPostponedContent; delete iWmInstaller; - delete iConfiguration; } // --------------------------------------------------------- @@ -142,15 +140,10 @@ { menuBar->StopDisplayingMenuBar(); } - - // load configuration again, there might be change - delete iConfiguration; - iConfiguration = NULL; - + TRAP_IGNORE( - iConfiguration = CWmConfiguration::NewL( ResourceLoader() ); iEffectManager->BeginFullscreenEffectL( - KAppStartEffectStyle ); + KAppStartEffectStyle ); iViewAppUi->ActivateLocalViewL( TUid::Uid( EWmMainContainerViewId ) ); ); @@ -291,10 +284,6 @@ TCallBack( ExecuteCommand, this ) ); } } - - // delete config - delete iConfiguration; - iConfiguration = NULL; } // --------------------------------------------------------- @@ -458,15 +447,6 @@ return *iWmInstaller; } -// ---------------------------------------------------- -// CWmPlugin::Configuration -// ---------------------------------------------------- -// -CWmConfiguration& CWmPlugin::Configuration() - { - return *iConfiguration; - } - // --------------------------------------------------------- // CWmPlugin::GetUnistalledWidget // --------------------------------------------------------- diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/src/wmportalbutton.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/idlehomescreen/widgetmanager/src/wmportalbutton.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -0,0 +1,619 @@ +/* +* Copyright (c) 2009 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" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* Implementation of the portal button for WidgetManager +* +*/ + +// INCLUDE FILES +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include // widgetreqistry +#include +#include +#include +#include + +#include "wmimageconverter.h" +#include "wmportalbutton.h" +#include "wmcommon.h" +#include "wmplugin.h" +#include "wmresourceloader.h" +#include "wmmaincontainer.h" +#include "wmconfiguration.h" +#include "wmprocessmonitor.h" + +// CONSTANTS + +// MEMBER FUNCTIONS + +// --------------------------------------------------------- +// CWmPortalButton::NewL +// --------------------------------------------------------- +// +CWmPortalButton* CWmPortalButton::NewL( + const CCoeControl* aParent, + TInt aPortalButtonIndex ) + { + CWmPortalButton* self = new (ELeave) CWmPortalButton( + KAknButtonTextInsideFrame, aPortalButtonIndex ); + + CleanupStack::PushL( self ); + + CWmMainContainer* mainContainer = + static_cast ( + const_cast ( aParent ) ); + + self->ConstructL( mainContainer, + mainContainer->Configuration().PortalButtonText( aPortalButtonIndex ), + mainContainer->Configuration().PortalButtonIcon( aPortalButtonIndex ) ); + + CleanupStack::Pop( self ); + return self; + } + +// --------------------------------------------------------- +// CWmPortalButton::~CWmPortalButton +// --------------------------------------------------------- +// +CWmPortalButton::~CWmPortalButton() + { + delete iButtonIcon; + delete iButtonIconMask; + + // if MAknIconFileProvider was used to create image from icon string + // then it'll try accessing imageconverter after bitmap deletion + // for de-reference open file count, so it should be deleted last. + delete iImageConverter; + delete iProcessMonitor; + delete iBrowserLauncher; + } + +// --------------------------------------------------------- +// CWmPortalButton::CWmPortalButton +// --------------------------------------------------------- +// +CWmPortalButton::CWmPortalButton( + const TInt aFlags, + TInt aPortalButtonIndex ) + :CAknButton( aFlags ), + iPortalButtonIndex( aPortalButtonIndex ) + { + iButtonIcon = NULL; + iButtonIconMask = NULL; + iProcessMonitor = NULL; + iBrowserLauncher = NULL; + } + +// --------------------------------------------------------- +// CWmPortalButton::ConstructL +// --------------------------------------------------------- +// +void CWmPortalButton::ConstructL( + CWmMainContainer* aParent, + const TDesC& aText, + const TDesC& aIcon ) + { + if ( !aParent ) + { + User::Leave( KErrArgument ); + } + SetContainerWindowL( *aParent ); + + // Obtain pointer to main container. + iWmMainContainer = aParent; + + // construct the button + CAknButton::ConstructL( NULL, NULL, NULL, NULL, aText, KNullDesC, 0 ); + + SetFrameAndCenterIds( + KAknsIIDQsnFrButtonNormal, + KAknsIIDQsnFrButtonCenterNormal, + KAknsIIDQsnFrButtonPressed, + KAknsIIDQsnFrButtonCenterPressed, + KAknsIIDQsnFrButtonInactive, + KAknsIIDQsnFrButtonCenterInactive, + KAknsIIDQsnFrButtonPressed, + KAknsIIDQsnFrButtonCenterPressed, + KAknsIIDQsnFrButtonInactive, + KAknsIIDQsnFrButtonCenterInactive ); + + // start image converter for the icon + iImageConverter = CWmImageConverter::NewL(); + TSize iconsize( LayoutIconSize() ); + iImageConverter->HandleIconString( + iconsize, + aIcon, + iButtonIcon, + iButtonIconMask ); + // observe our own press events + SetObserver( this ); + + SetFocusing( ETrue ); + SetRequestExit( ETrue ); // notification request for button up event + + // ready to be drawn + ActivateL(); + } + +// --------------------------------------------------------- +// CWmPortalButton::ExecuteL +// --------------------------------------------------------- +// +void CWmPortalButton::ExecuteL() + { + if ( iPortalButtonIndex == 0 ) + { + // OVI button + if ( !iProcessMonitor ) + { + iProcessMonitor = CWmProcessMonitor::NewL(); + } + // if process monitor is active laucher was allready started. + // this is for ignoring multiple button presses + if ( !iProcessMonitor->IsActive() ) + { + RunOviL( iWmMainContainer->Configuration() ); + } + } + else if ( iPortalButtonIndex == 1 ) + { + // OPERATOR button + // if this leaves it means we need to start browser + // becouse application info was not given + TRAPD( err, RunOperatorApplicationL( + iWmMainContainer->Configuration() ) ) + if ( err != KErrNone ) + { + StartBrowserL( + iWmMainContainer->Configuration().PortalButtonBrowserUrl( + iPortalButtonIndex ) ); + } + } + else + { + // Not supported + User::Leave( KErrGeneral ); + } + } + +// --------------------------------------------------------- +// CWmPortalButton::RunOviL +// --------------------------------------------------------- +// +void CWmPortalButton::RunOviL( CWmConfiguration& aConf ) + { + RApaLsSession session; + User::LeaveIfError( session.Connect() ); + CleanupClosePushL( session ); + + //get app info + TApaAppInfo appInfo; + TUid launchUid; + launchUid = aConf.PortalButtonClientUid( iPortalButtonIndex ); + + if ( session.GetAppInfo( appInfo, launchUid ) == KErrNone ) + { + // Form parameter + HBufC* param = HBufC::NewLC( aConf.PortalButtonClientParam( iPortalButtonIndex ).Length() ); + param->Des().Copy( aConf.PortalButtonClientParam( iPortalButtonIndex ) ); + + // do the launch + RProcess process; + User::LeaveIfError( process.Create( appInfo.iFullName, *param ) ); + + iProcessMonitor->Monitor( process ); + process.Resume(); + + CleanupStack::PopAndDestroy( param ); + } + + CleanupStack::PopAndDestroy( &session ); + } + +// --------------------------------------------------------- +// CWmPortalButton::StartBrowserL +// --------------------------------------------------------- +// +void CWmPortalButton::StartBrowserL( const TDesC& aUrl ) + { + // already running/or request launch or url is empty + if ( iBrowserLauncher || !aUrl.Length() ) { return; } + + _LIT( KUrlPrefix, "4 "); + HBufC* param = HBufC::NewLC( aUrl.Length() + KUrlPrefix().Length() ); + param->Des().Append( KUrlPrefix ); + param->Des().Append( aUrl ); + + // Create browser launcher + CBrowserLauncher* launcher = CBrowserLauncher::NewLC(); + + // Asynchronous operation to launch the browser with given URL + launcher->LaunchBrowserEmbeddedL( + *param, NULL, this, NULL ); + + CleanupStack::Pop( launcher ); + iBrowserLauncher = launcher; + launcher = NULL; + + CleanupStack::PopAndDestroy( param ); + } + +// --------------------------------------------------------- +// CWmPortalButton::HandleServerAppExit +// --------------------------------------------------------- +// +void CWmPortalButton::HandleServerAppExit( TInt aReason ) + { + MAknServerAppExitObserver::HandleServerAppExit( aReason ); + delete iBrowserLauncher; + iBrowserLauncher = NULL; + } + +// --------------------------------------------------------- +// CWmPortalButton::HandleControlEventL +// --------------------------------------------------------- +// +void CWmPortalButton::HandleControlEventL( CCoeControl* aControl, + TCoeEvent aEventType ) + { + if ( aControl == this ) + { + if ( aEventType == EEventStateChanged || + aEventType == ELongPressEndedEvent || + aEventType == EEventRequestCancel ) + { + DrawDeferred(); + } + // execute portal action when button pressed (short or long press) + if ( aEventType == EEventRequestExit ) + { + SetFocus( EFalse ); + DrawNow(); + ExecuteL(); + } + } + } + +// --------------------------------------------------------- +// CWmPortalButton::HandlePointerEventL +// --------------------------------------------------------- +// +void CWmPortalButton::HandlePointerEventL( + const TPointerEvent& aPointerEvent ) + { + CAknButton::HandlePointerEventL( aPointerEvent ); + + // remove focus from button if button is released outside rect + if ( aPointerEvent.iType == TPointerEvent::EDrag ) + { + TBool wasFoucused( IsFocused() ); + SetFocus( Rect().Contains( aPointerEvent.iPosition ) ); + if ( wasFoucused != IsFocused() ){ DrawNow(); } + } + else if ( aPointerEvent.iType == TPointerEvent::EButton1Up ) + { + SetFocus( EFalse ); // remove focus when button released. + } + } + + +// --------------------------------------------------------- +// CWmPortalButton::LayoutIconSize +// --------------------------------------------------------- +// +TSize CWmPortalButton::LayoutIconSize() const + { + TBool landscape = Layout_Meta_Data::IsLandscapeOrientation(); + TAknLayoutRect imageLayout; + if ( iWmMainContainer->Configuration().PortalButtonCount() == 1 ) + { + imageLayout.LayoutRect( Rect(), AknLayoutScalable_Apps:: + wgtman_btn_pane_g1( landscape ? 1 : 0).LayoutLine() ); + } + else + { + TInt variety = (landscape ? 5 : 4); + imageLayout.LayoutRect( Rect(), AknLayoutScalable_Apps + ::wgtman_btn_pane_g1( variety ).LayoutLine() ); + } + + return imageLayout.Rect().Size(); + } + +// --------------------------------------------------------- +// CWmPortalButton::SizeChanged +// --------------------------------------------------------- +// +void CWmPortalButton::SizeChanged() + { + CAknButton::SizeChanged(); + + SetTextVerticalAlignment( CAknButton::ECenter ); + + // resize icon + if ( iButtonIcon && iButtonIconMask ) + { + iImageConverter->UpdateImageSize( + LayoutIconSize(), + iWmMainContainer->Configuration().PortalButtonIcon( + iPortalButtonIndex ), + *iButtonIcon, + *iButtonIconMask ); + } + + TBool landscape = Layout_Meta_Data::IsLandscapeOrientation(); + SetTextAndIconAlignment( + landscape ? CAknButton::EIconOverText : CAknButton::EIconBeforeText ); + } + +// --------------------------------------------------------- +// CWmPortalButton::Draw +// --------------------------------------------------------- +// +void CWmPortalButton::Draw( const TRect& /*aRect*/ ) const + { + TRect rect = Rect(); + + TAknLayoutRect centerLayout; + centerLayout.LayoutRect( rect, + AknLayoutScalable_Avkon::toolbar_button_pane_g1().LayoutLine() ); + TRect innerRect = centerLayout.Rect(); + + CWindowGc& gc = SystemGc(); + MAknsSkinInstance* skin = AknsUtils::SkinInstance(); + + TAknsItemID frameId = ( KAknsIIDQsnFrButtonNormal ); + TAknsItemID frameCenterId = ( KAknsIIDQsnFrButtonCenterNormal ); + + if ( iButtonPressed ) + { + frameId = ( KAknsIIDQsnFrButtonPressed ); + frameCenterId = ( KAknsIIDQsnFrButtonCenterPressed ); + } + else if ( IsDimmed() ) + { + frameId = KAknsIIDQsnFrButtonInactive; + frameCenterId = KAknsIIDQsnFrButtonCenterInactive; + } + else if ( IsFocused() ) + { + frameId = KAknsIIDQsnFrButtonHighlight; + frameCenterId = KAknsIIDQsnFrButtonHighlightCenter; + } + + iBgContext->SetFrame( frameId ); + iBgContext->SetCenter( frameCenterId ); + iBgContext->SetFrameRects( rect, innerRect ); + + if ( !AknsDrawUtils::Background( skin, iBgContext, NULL, + gc, rect, KAknsDrawParamNoClearUnderImage ) ) + { + gc.SetBrushColor( KRgbRed ); + gc.SetBrushStyle( CGraphicsContext::ESolidBrush ); + gc.DrawRect( rect ); + } + gc.SetBrushStyle( CGraphicsContext::ENullBrush ); + + CAknButtonState* state = State(); + if ( state ) + { + TBool landscape = Layout_Meta_Data::IsLandscapeOrientation(); + + // draw image if one exists + if ( iButtonIcon && iButtonIconMask ) + { + TAknLayoutRect imageLayout; + if ( iWmMainContainer->Configuration().PortalButtonCount() == 1 ) + { + imageLayout.LayoutRect( rect, AknLayoutScalable_Apps:: + wgtman_btn_pane_g1( landscape ? 3 : 0).LayoutLine() ); + } + else + { + TInt variety = (landscape ? 7 : 4); + imageLayout.LayoutRect( rect, AknLayoutScalable_Apps + ::wgtman_btn_pane_g1( variety ).LayoutLine() ); + } + + gc.DrawBitmapMasked( + imageLayout.Rect(), + iButtonIcon, + TRect(TPoint( 0, 0 ), iButtonIcon->SizeInPixels() ), + iButtonIconMask, + EFalse ); + } + + // draw text if portrait + if ( !landscape ) + { + TAknTextComponentLayout leftLayout; + TInt variety = + ((iWmMainContainer->Configuration().PortalButtonCount()== 2)? 4:0 ); + leftLayout = AknLayoutScalable_Apps::wgtman_btn_pane_t1( variety ); + DrawText( gc, state->Text(), leftLayout, 1 ); + } + } + } + +// --------------------------------------------------------- +// CWmPortalButton::DrawText +// --------------------------------------------------------- +// +void CWmPortalButton::DrawText( + CWindowGc& aGc, + const TDesC& aText, + TAknTextComponentLayout& aLayout, + TInt aMargin ) const + { + TAknLayoutText layoutText; + layoutText.LayoutText(Rect(), aLayout.LayoutLine() ); + + const CFont* font = layoutText.Font(); + TRect textRect = layoutText.TextRect(); + + aGc.UseFont( font ); + + MAknsSkinInstance* skin = AknsUtils::SkinInstance(); + + TRgb textColor; + TInt err = AknsUtils::GetCachedColor( + skin, + textColor, + KAknsIIDQsnTextColors, + EAknsCIQsnTextColorsCG63 ); + if ( err != KErrNone ) + { + textColor = layoutText.Color(); + } + aGc.SetPenColor( textColor); + + // Layout data not correct, add some space for text + textRect.iBr.iX += aMargin; + textRect.iTl.iX -= aMargin; + + // buffer for visually ordered text + TBuf<255 + KAknBidiExtraSpacePerLine> visualText; + TInt clipWidth = textRect.Width(); + + // bidi processing - using AknBidiTextUtils. + AknBidiTextUtils::ConvertToVisualAndClip( + aText, + visualText, + *font, + clipWidth, + clipWidth ); + + TInt baselineOffset = 0; + switch ( iVerticalAlignment ) + { + case ETop: + baselineOffset = font->AscentInPixels(); + break; + + case EBottom: + baselineOffset = textRect.Height(); + break; + + default: // centered + baselineOffset = font->AscentInPixels() + + ( textRect.Height() - font->AscentInPixels() ) / 2; + } + + aGc.DrawText( visualText, textRect, + baselineOffset, layoutText.Align() ); + } + +// --------------------------------------------------------- +// CWmPortalButton::RunOperatorApplicationL +// --------------------------------------------------------- +// +void CWmPortalButton::RunOperatorApplicationL( CWmConfiguration& aConf ) + { + CWmConfiguration::TOpAppType type = aConf.PortalButtonApplicationType( 1 ); + if ( type == CWmConfiguration::EUnknown || + type >= CWmConfiguration::EReserved ) + { + // Leave if not found + User::Leave( KErrArgument ); + } + + switch( type ) + { + case CWmConfiguration::ES60: + case CWmConfiguration::EQt: + { + TUid uid = KNullUid; + aConf.PortalButtonApplicationId( 1, uid ); + StartProcessL( uid, aConf.PortalButtonClientParam( 1 ) ); + } + break; + case CWmConfiguration::ECwrt: + { + TUid uid = KNullUid; + aConf.PortalButtonApplicationId( 1, uid ); + StartWidgetL( uid, aConf.PortalButtonClientParam( 1 ) ); + } + break; + case CWmConfiguration::EWrt: + { + TUid uid = KNullUid; + aConf.PortalButtonApplicationId( 1, uid ); + StartWidgetL( uid, KNullDesC ); + } + break; + case CWmConfiguration::EJava: + { + TBuf appId; + aConf.PortalButtonApplicationId( 1, appId ); + //TODO: + } + break; + } + } + +// --------------------------------------------------------- +// CWmPortalButton::StartProcessL +// --------------------------------------------------------- +// +void CWmPortalButton::StartProcessL( TUid aUid, const TDesC& aParam ) + { + RApaLsSession session; + User::LeaveIfError( session.Connect() ); + CleanupClosePushL( session ); + + //get app info + TApaAppInfo appInfo; + User::LeaveIfError( session.GetAppInfo( appInfo, aUid ) ); + // do the launch + RProcess process; + User::LeaveIfError( process.Create( appInfo.iFullName, aParam ) ); + process.Resume(); + + CleanupStack::PopAndDestroy( &session ); + } + +// --------------------------------------------------------- +// CWmPortalButton::StartWidgetL +// --------------------------------------------------------- +// +void CWmPortalButton::StartWidgetL( TUid aAppUid, const TDesC& aParams ) + { + if ( aAppUid == KNullUid ) + User::Leave( KErrArgument ); + + HBufC* params = aParams.AllocLC(); + + RApaLsSession appArc; + User::LeaveIfError( appArc.Connect() ); + CleanupClosePushL( appArc ); + + TThreadId threadId; + User::LeaveIfError( appArc.StartDocument( *params, aAppUid, threadId ) ); + + CleanupStack::PopAndDestroy( &appArc ); + CleanupStack::PopAndDestroy( params ); + } + +// End of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/src/wmstore.cpp --- a/idlehomescreen/widgetmanager/src/wmstore.cpp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,367 +0,0 @@ -/* -* Copyright (c) 2009 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* Implementation of the store for WidgetManager -* -*/ - -// INCLUDE FILES -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include // widgetreqistry -#include -#include -#include -#include -#include - -#include "wmimageconverter.h" -#include "wmstore.h" -#include "wmcommon.h" -#include "wmplugin.h" -#include "wmresourceloader.h" -#include "wmmaincontainer.h" -#include "wmconfiguration.h" -#include "wmprocessmonitor.h" - -// CONSTANTS - -// MEMBER FUNCTIONS - -// --------------------------------------------------------- -// CWmStore::NewL -// --------------------------------------------------------- -// -CWmStore* CWmStore::NewL( CWmConfItem& aWmConfItem, - CWmResourceLoader& aResourceLoader ) - { - CWmStore* self = new (ELeave) CWmStore( aWmConfItem ); - CleanupStack::PushL( self ); - self->ConstructL( aResourceLoader ); - CleanupStack::Pop( self ); - return self; - } - -// --------------------------------------------------------- -// CWmStore::~CWmStore -// --------------------------------------------------------- -// -CWmStore::~CWmStore() - { - delete iIcon; - delete iMask; - - // if MAknIconFileProvider was used to create image from icon string - // then it'll try accessing imageconverter after bitmap deletion - // for de-reference open file count, so it should be deleted last. - delete iImageConverter; - delete iProcessMonitor; - delete iBrowserLauncher; - } - -// --------------------------------------------------------- -// CWmStore::CWmStore -// --------------------------------------------------------- -// -CWmStore::CWmStore( CWmConfItem& aWmConfItem ) - : iWmConfItem( aWmConfItem ) - { - iIcon = NULL; - iMask = NULL; - iProcessMonitor = NULL; - iBrowserLauncher = NULL; - } - -// --------------------------------------------------------- -// CWmStore::ConstructL -// --------------------------------------------------------- -// -void CWmStore::ConstructL( CWmResourceLoader& aResourceLoader ) - { - // start image converter for the icon - iImageConverter = CWmImageConverter::NewL(); - - // get size of icon for double large style list - TRect rect; - TAknLayoutRect layout; - - layout.LayoutRect( rect, - AknLayoutScalable_Avkon::list_double_large_graphic_pane_g1( 0 ).LayoutLine() ); - - TSize iconSize( layout.Rect().Width(), - layout.Rect().Height() ); - - // create icon - TInt err = iImageConverter->HandleIconString( - iconSize, - iWmConfItem.Icon(), - iIcon, - iMask, - ETrue ); // force scaling for non scaleble icons - - if ( err != KErrNone ) - { - // lets use basket icon - // skin( 0x101f86e3 0x23f6 ):mif( z:\resource\apps\widgetmanager.mif 16388 16389 ) - _LIT( KSkinMifIconFormat, "skin( 0x%x 0x%x ):mif( %S %d %d )"); - const TInt KMaxIconDescriptorLength = 256; - TBuf buf; - buf.Format( KSkinMifIconFormat(), - EAknsMajorGeneric, EAknsMinorGenericQgnPropLmShopping, - &aResourceLoader.IconFilePath(), - EMbmWidgetmanagerQgn_menu_shopping, - EMbmWidgetmanagerQgn_menu_shopping_mask ); - - iImageConverter->HandleIconString( - iconSize, - buf, - iIcon, - iMask, - EFalse ); // force scaling for non scaleble icons - } - } - -// --------------------------------------------------------- -// CWmStore::StoreIcon -// --------------------------------------------------------- -// -CFbsBitmap* CWmStore::StoreIcon() - { - return iIcon; - } - -// --------------------------------------------------------- -// CWmStore::StoreMask -// --------------------------------------------------------- -// -CFbsBitmap* CWmStore::StoreMask() - { - return iMask; - } - -// --------------------------------------------------------- -// CWmStore::Heading -// --------------------------------------------------------- -// -const TDesC& CWmStore::Heading() - { - return iWmConfItem.Title(); - } - -// --------------------------------------------------------- -// CWmStore::Order -// --------------------------------------------------------- -// -TInt CWmStore::Order() const - { - return iWmConfItem.Order(); - } - -// --------------------------------------------------------- -// CWmStore::ExecuteL -// --------------------------------------------------------- -// -void CWmStore::ExecuteL() - { - if ( iWmConfItem.Id() == EOvi ) - { - if ( !iProcessMonitor ) - { - iProcessMonitor = CWmProcessMonitor::NewL(); - } - // if process monitor is active laucher was allready started. - // this is for ignoring multiple presses - if ( !iProcessMonitor->IsActive() ) - { - RunOviL(); - } - } - else if ( iWmConfItem.Id() >= EStore1 && iWmConfItem.Id() < ELastItem ) - { - // if this leaves it means we need to start browser - // becouse application info was not given - TRAPD( err, RunApplicationL() ) - if ( err != KErrNone ) - { - StartBrowserL( iWmConfItem.BrowserUrl() ); - } - } - else - { - // Not supported - User::Leave( KErrGeneral ); - } - } - -// --------------------------------------------------------- -// CWmStore::RunOviL -// --------------------------------------------------------- -// -void CWmStore::RunOviL() - { - RApaLsSession session; - User::LeaveIfError( session.Connect() ); - CleanupClosePushL( session ); - - //get app info - TApaAppInfo appInfo; - if ( session.GetAppInfo( appInfo, iWmConfItem.AppUid() ) == KErrNone ) - { - // Form parameter - HBufC* param = HBufC::NewLC( iWmConfItem.AppParam().Length() ); - param->Des().Copy( iWmConfItem.AppParam() ); - - // do the launch - RProcess process; - User::LeaveIfError( process.Create( appInfo.iFullName, *param ) ); - - iProcessMonitor->Monitor( process ); - process.Resume(); - - CleanupStack::PopAndDestroy( param ); - } - - CleanupStack::PopAndDestroy( &session ); - } - -// --------------------------------------------------------- -// CWmStore::StartBrowserL -// --------------------------------------------------------- -// -void CWmStore::StartBrowserL( const TDesC& aUrl ) - { - // already running/or request launch or url is empty - if ( iBrowserLauncher || !aUrl.Length() ) { return; } - - _LIT( KUrlPrefix, "4 "); - HBufC* param = HBufC::NewLC( aUrl.Length() + KUrlPrefix().Length() ); - param->Des().Append( KUrlPrefix ); - param->Des().Append( aUrl ); - - // Create browser launcher - CBrowserLauncher* launcher = CBrowserLauncher::NewLC(); - - // Asynchronous operation to launch the browser with given URL - launcher->LaunchBrowserEmbeddedL( - *param, NULL, this, NULL ); - - CleanupStack::Pop( launcher ); - iBrowserLauncher = launcher; - launcher = NULL; - - CleanupStack::PopAndDestroy( param ); - } - -// --------------------------------------------------------- -// CWmStore::HandleServerAppExit -// --------------------------------------------------------- -// -void CWmStore::HandleServerAppExit( TInt aReason ) - { - MAknServerAppExitObserver::HandleServerAppExit( aReason ); - delete iBrowserLauncher; - iBrowserLauncher = NULL; - } - -// --------------------------------------------------------- -// CWmStore::RunApplicationL -// --------------------------------------------------------- -// -void CWmStore::RunApplicationL() - { - CWmConfiguration::TStoreAppType type = iWmConfItem.AppType(); - if ( type == CWmConfiguration::EUnknown || - type >= CWmConfiguration::EReserved ) - { - // Leave if not found - User::Leave( KErrArgument ); - } - - switch( type ) - { - case CWmConfiguration::ES60: - case CWmConfiguration::EQt: - { - StartProcessL( iWmConfItem.AppUid(), - iWmConfItem.AppParam() ); - } - break; - case CWmConfiguration::ECwrt: - { - StartWidgetL( iWmConfItem.AppUid(), - iWmConfItem.AppParam() ); - } - break; - case CWmConfiguration::EWrt: - { - StartWidgetL( iWmConfItem.AppUid(), KNullDesC ); - } - break; - } - } - -// --------------------------------------------------------- -// CWmStore::StartProcessL -// --------------------------------------------------------- -// -void CWmStore::StartProcessL( TUid aUid, const TDesC& aParam ) - { - RApaLsSession session; - User::LeaveIfError( session.Connect() ); - CleanupClosePushL( session ); - - //get app info - TApaAppInfo appInfo; - User::LeaveIfError( session.GetAppInfo( appInfo, aUid ) ); - // do the launch - RProcess process; - User::LeaveIfError( process.Create( appInfo.iFullName, aParam ) ); - process.Resume(); - - CleanupStack::PopAndDestroy( &session ); - } - -// --------------------------------------------------------- -// CWmStore::StartWidgetL -// --------------------------------------------------------- -// -void CWmStore::StartWidgetL( TUid aAppUid, const TDesC& aParams ) - { - if ( aAppUid == KNullUid ) - User::Leave( KErrArgument ); - - HBufC* params = aParams.AllocLC(); - - RApaLsSession appArc; - User::LeaveIfError( appArc.Connect() ); - CleanupClosePushL( appArc ); - - TThreadId threadId; - User::LeaveIfError( appArc.StartDocument( *params, aAppUid, threadId ) ); - - CleanupStack::PopAndDestroy( &appArc ); - CleanupStack::PopAndDestroy( params ); - } - -// End of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/src/wmwidgetorderdata.cpp --- a/idlehomescreen/widgetmanager/src/wmwidgetorderdata.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/src/wmwidgetorderdata.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -86,6 +86,7 @@ { delete iPublisherId; delete iName; + //delete iPersistentWidgetOrder // TODO: is needed??? } // --------------------------------------------------------- diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/widgetmanager/tsrc/wmunittest/group/wmunittest.mmp --- a/idlehomescreen/widgetmanager/tsrc/wmunittest/group/wmunittest.mmp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/widgetmanager/tsrc/wmunittest/group/wmunittest.mmp Wed Oct 13 14:18:30 2010 +0300 @@ -50,7 +50,7 @@ SOURCE wmpersistentwidgetorder.cpp SOURCE wmeffectmanager.cpp SOURCE wmdetailsdlg.cpp -SOURCE wmstore.cpp +SOURCE wmportalbutton.cpp SOURCE wmwidgetloaderao.cpp SOURCE wmconfiguration.cpp SOURCE wminstaller.cpp diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluicontroller/inc/mtransaction.h --- a/idlehomescreen/xmluicontroller/inc/mtransaction.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluicontroller/inc/mtransaction.h Wed Oct 13 14:18:30 2010 +0300 @@ -21,7 +21,6 @@ #include -#include "aipolicyelement.h" inline TUint32 NodeHash(const TAny* aPtr) { @@ -88,8 +87,7 @@ * * @param [out] aLayoutChanged true if UI layout changes */ - virtual void CommitL( RAiPolicyElementArray& aPolicyArray, - RPropertyHashMap& aPropertyHashMap ) = 0; + virtual void CommitL( TBool& aLayoutChanged, RPropertyHashMap& aPropertyHashMap ) = 0; /** * Resets this transaction for reuse. diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluicontroller/inc/mtransactionelement.h --- a/idlehomescreen/xmluicontroller/inc/mtransactionelement.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluicontroller/inc/mtransactionelement.h Wed Oct 13 14:18:30 2010 +0300 @@ -41,11 +41,11 @@ /** * Commits the publish operation and actually updates the UI control/element. * + * @param [out] aLayoutChanged true if UI layout changes * @see UpdateDataL() * @see ApplyPublishingPolicy() */ - void CommitL( RAiPolicyElementArray& aPolicyArray, - RPropertyHashMap& aPropertyHashMap ); + void CommitL( TBool& aLayoutChanged, RPropertyHashMap& aPropertyHashMap ); /** * Resets the transaction element and clears the references to content @@ -55,6 +55,12 @@ virtual void Reset() = 0; /** + * Returns the array of associated content policy elements. + * + */ + virtual RAiPolicyElementArray& PolicyArray() = 0; + + /** * Return the target UI element for this transaction element */ virtual CXnNodeAppIf& Target() const = 0 ; @@ -73,7 +79,7 @@ * * @param [out] aLayoutChanged true if UI layout changes */ - virtual void ApplyPublishingPolicy( RAiPolicyElementArray& aPolicyArray, + virtual void ApplyPublishingPolicy( TBool& aLayoutChanged, RPropertyHashMap& aPropertyHashMap ) = 0; protected: // Constructors and destructor diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluicontroller/inc/transaction.h --- a/idlehomescreen/xmluicontroller/inc/transaction.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluicontroller/inc/transaction.h Wed Oct 13 14:18:30 2010 +0300 @@ -57,7 +57,7 @@ void Append(MTransactionElement& aElement); - void CommitL(RAiPolicyElementArray& aPolicyArray, RPropertyHashMap& aPropertyHashMap); + void CommitL(TBool& aLayoutChanged, RPropertyHashMap& aPropertyHashMap); void Reset(MTransactionFactory& aFactory); diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluicontroller/inc/transactionelement.h --- a/idlehomescreen/xmluicontroller/inc/transactionelement.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluicontroller/inc/transactionelement.h Wed Oct 13 14:18:30 2010 +0300 @@ -59,6 +59,8 @@ void Reset(); + RAiPolicyElementArray& PolicyArray(); + /** * Sets current content priority value. * @@ -104,10 +106,10 @@ * The policy is applied by modifying CSS property defined * by non-empty content. */ - void ApplyPublishingPolicy( RAiPolicyElementArray& aPolicyArray, + void ApplyPublishingPolicy( TBool& aLayoutChanged, RPropertyHashMap& aPropertyHashMap ); - void DoApplyPublishingPolicyL( RAiPolicyElementArray& aPolicyArray, + void DoApplyPublishingPolicyL( TBool& aLayoutChanged, RPropertyHashMap& aPropertyHashMap ); /** @@ -125,6 +127,11 @@ private: /** + * Array of policy elements + */ + RAiPolicyElementArray iPolicyArray; + + /** * Content priority map */ AiUtility::CContentPriorityMap& iContentPriorityMap; diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluicontroller/inc/transactionfactoryimpl.h --- a/idlehomescreen/xmluicontroller/inc/transactionfactoryimpl.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluicontroller/inc/transactionfactoryimpl.h Wed Oct 13 14:18:30 2010 +0300 @@ -22,7 +22,6 @@ #include #include "transactionfactory.h" -#include "aipolicyelement.h" namespace AiUtility { @@ -86,10 +85,6 @@ void ReleaseTransactionElement( MTransactionElement* aElement ); TBool IsSupported( CXnNodeAppIf& aTarget, const TDesC8& aContentType ); - - RAiPolicyElementArray& CTransactionFactoryImpl::PolicyArray(); - - void CTransactionFactoryImpl::ResetPolicyArray(); private: // Construction @@ -138,11 +133,6 @@ * UI controller's CSS property map. Not own. */ CCssPropertyMap& iPropertyMap; - - /** - * Array of policy elements - */ - RAiPolicyElementArray iPolicyArray; }; } // namespace AiXmlUiController diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluicontroller/src/contentrenderer.cpp --- a/idlehomescreen/xmluicontroller/src/contentrenderer.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluicontroller/src/contentrenderer.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -442,7 +442,7 @@ TBool layoutChanged( EFalse ); - TRAPD( error, tr->CommitL( iFactory->PolicyArray(), propertyHashMap ) ); + TRAPD( error, tr->CommitL( layoutChanged, propertyHashMap ) ); if( error == KErrNone ) { @@ -464,8 +464,7 @@ ); - iFactory->ReleaseTransaction( tr ); - iFactory->ResetPolicyArray(); + iFactory->ReleaseTransaction( tr ); return error; } @@ -1015,10 +1014,10 @@ } iPolicyEvaluator->EvaluateContentPolicyL( - *target, iFactory->PolicyArray() ); + *target, element->PolicyArray() ); iPolicyEvaluator->EvaluateVisibilityPolicyL( - *target, iFactory->PolicyArray() ); + *target, element->PolicyArray() ); ProcessTransactionElementL( element ); } @@ -1132,10 +1131,10 @@ *target, aFile, priority ); iPolicyEvaluator->EvaluateContentPolicyL( - *target, iFactory->PolicyArray() ); + *target, element->PolicyArray() ); iPolicyEvaluator->EvaluateVisibilityPolicyL( - *target, iFactory->PolicyArray() ); + *target, element->PolicyArray() ); ProcessTransactionElementL( element ); } @@ -1215,10 +1214,10 @@ *target, aIndex ); iPolicyEvaluator->EvaluateEmptyContentPolicyL( - *target, iFactory->PolicyArray() ); + *target, element->PolicyArray() ); iPolicyEvaluator->EvaluateVisibilityPolicyL( - *target, iFactory->PolicyArray() ); + *target, element->PolicyArray() ); ProcessTransactionElementL( element ); @@ -1276,7 +1275,7 @@ RPropertyHashMap propertyHashMap; CleanupClosePushL( propertyHashMap ); - aElement->CommitL( iFactory->PolicyArray(), propertyHashMap ); + aElement->CommitL( layoutChanged, propertyHashMap ); SetPropertyArraysL( propertyHashMap ); CleanupStack::PopAndDestroy( &propertyHashMap ); @@ -1445,22 +1444,22 @@ if ( aResource ) { iPolicyEvaluator->EvaluateResourcePolicyL( - *target, *aResource, iFactory->PolicyArray() ); + *target, *aResource, element->PolicyArray() ); iPolicyEvaluator->EvaluateContentPolicyL( - *target, iFactory->PolicyArray() ); + *target, element->PolicyArray() ); iPolicyEvaluator->EvaluateVisibilityPolicyL( - *target, iFactory->PolicyArray() ); + *target, element->PolicyArray() ); } else { iPolicyEvaluator->EvaluateContentPolicyL( - *target, iFactory->PolicyArray() ); + *target, element->PolicyArray() ); iPolicyEvaluator->EvaluateVisibilityPolicyL( - *target, iFactory->PolicyArray() ); + *target, element->PolicyArray() ); } ProcessTransactionElementL( element ); @@ -1523,21 +1522,21 @@ if ( aResource ) { iPolicyEvaluator->EvaluateResourcePolicyL( - *target, *aResource, iFactory->PolicyArray() ); + *target, *aResource, element->PolicyArray() ); iPolicyEvaluator->EvaluateContentPolicyL( - *target, iFactory->PolicyArray() ); + *target, element->PolicyArray() ); iPolicyEvaluator->EvaluateVisibilityPolicyL( - *target, iFactory->PolicyArray() ); + *target, element->PolicyArray() ); } else { iPolicyEvaluator->EvaluateContentPolicyL( - *target, iFactory->PolicyArray() ); + *target, element->PolicyArray() ); iPolicyEvaluator->EvaluateVisibilityPolicyL( - *target, iFactory->PolicyArray() ); + *target, element->PolicyArray() ); } ProcessTransactionElementL( element ); diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluicontroller/src/transaction.cpp --- a/idlehomescreen/xmluicontroller/src/transaction.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluicontroller/src/transaction.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -57,8 +57,10 @@ iTransactionElements.AddLast(dynamic_cast(aElement)); } -void CTransaction::CommitL( RAiPolicyElementArray& aPolicyArray, RPropertyHashMap& aPropertyHashMap ) +void CTransaction::CommitL( TBool& aLayoutChanged, RPropertyHashMap& aPropertyHashMap ) { + aLayoutChanged = EFalse; + if ( iTransactionElements.IsEmpty() ) { // Nothing to do @@ -73,7 +75,7 @@ while ( iter ) { // Commit element and advance iterator - (iter++)->CommitL( aPolicyArray, aPropertyHashMap ); + (iter++)->CommitL( aLayoutChanged, aPropertyHashMap ); } } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluicontroller/src/transactionelement.cpp --- a/idlehomescreen/xmluicontroller/src/transactionelement.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluicontroller/src/transactionelement.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -24,7 +24,6 @@ #include "xmluicontrollerpanic.h" #include "aixmluiutils.h" #include "aixmluiconstants.h" -#include "aipolicyelement.h" #include "contentprioritymap.h" @@ -36,14 +35,13 @@ /** * Template method implementation */ -void MTransactionElement::CommitL( RAiPolicyElementArray& aPolicyArray, - RPropertyHashMap& aPropertyHashMap ) +void MTransactionElement::CommitL( TBool& aLayoutChanged, RPropertyHashMap& aPropertyHashMap ) { // Update UI element data UpdateDataL(); // Update CSS properties - ApplyPublishingPolicy( aPolicyArray, aPropertyHashMap ); + ApplyPublishingPolicy( aLayoutChanged, aPropertyHashMap ); } CTransactionElement::CTransactionElement( AiUtility::CContentPriorityMap& aContentPriorityMap ) @@ -63,6 +61,13 @@ iContentPriority = KErrNotFound; iElementLink.Deque(); + + iPolicyArray.Reset(); + } + +RAiPolicyElementArray& CTransactionElement::PolicyArray() + { + return iPolicyArray; } void CTransactionElement::SetContentPriority( TInt aPriority ) @@ -81,22 +86,20 @@ iTarget = &aTarget; } -void CTransactionElement::ApplyPublishingPolicy( RAiPolicyElementArray& aPolicyArray, - RPropertyHashMap& aPropertyHashMap ) +void CTransactionElement::ApplyPublishingPolicy( TBool& aLayoutChanged, RPropertyHashMap& aPropertyHashMap ) { // Ignore errors if CSS property could not be modified - TRAP_IGNORE( DoApplyPublishingPolicyL( aPolicyArray, aPropertyHashMap ) ); + TRAP_IGNORE( DoApplyPublishingPolicyL( aLayoutChanged, aPropertyHashMap ) ); } -void CTransactionElement::DoApplyPublishingPolicyL( RAiPolicyElementArray& aPolicyArray, - RPropertyHashMap& aPropertyHashMap ) +void CTransactionElement::DoApplyPublishingPolicyL( TBool& aLayoutChanged, RPropertyHashMap& aPropertyHashMap ) { RArray targetArray; CleanupClosePushL( targetArray ); - for ( TInt i = 0; i < aPolicyArray.Count() && iPropertyMap; ++i ) + for ( TInt i = 0; i < iPolicyArray.Count() && iPropertyMap; ++i ) { - TAiPolicyElement& element = aPolicyArray[ i ]; + TAiPolicyElement& element = iPolicyArray[ i ]; RArray elementArray; CleanupClosePushL( elementArray ); @@ -115,15 +118,15 @@ if( !found ) { // Mark this target to be processed - targetArray.AppendL( &(element.Target()) ); + targetArray.Append( &(element.Target()) ); - for( TInt i3 = 0; i3 < aPolicyArray.Count(); ++i3 ) + for( TInt i3 = 0; i3 < iPolicyArray.Count(); ++i3 ) { - TAiPolicyElement& element2 = aPolicyArray[ i3 ]; + TAiPolicyElement& element2 = iPolicyArray[ i3 ]; // find form target array if( &(element.Target()) == &(element2.Target()) ) { - elementArray.AppendL( element2 ); + elementArray.Append( element2 ); } } @@ -141,6 +144,10 @@ CleanupStack::PopAndDestroy(); // targetArray + if ( iPolicyArray.Count() > 0 ) + { + aLayoutChanged |= ETrue; + } } CXnNodeAppIf& CTransactionElement::Target() const diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluicontroller/src/transactionfactoryimpl.cpp --- a/idlehomescreen/xmluicontroller/src/transactionfactoryimpl.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluicontroller/src/transactionfactoryimpl.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -49,18 +49,9 @@ CTransactionFactoryImpl* self = new( ELeave ) CTransactionFactoryImpl( aContentPriorityMap, aPropertyMap ); + return self; } - -RAiPolicyElementArray& CTransactionFactoryImpl::PolicyArray() - { - return iPolicyArray; - } - -void CTransactionFactoryImpl::ResetPolicyArray() - { - iPolicyArray.Reset(); - } CTransactionFactoryImpl::~CTransactionFactoryImpl() { @@ -71,8 +62,6 @@ // Delete transaction elements DeleteElementList( iAvailableElements ); DeleteElementList( iReservedElements ); - - ResetPolicyArray(); } MTransaction* CTransactionFactoryImpl::CreateTransactionL( TInt aTxId ) diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/group/xnclockfactory.mmp --- a/idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/group/xnclockfactory.mmp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/group/xnclockfactory.mmp Wed Oct 13 14:18:30 2010 +0300 @@ -31,7 +31,6 @@ SOURCE xnclock.cpp SOURCE xnclockadapter.cpp SOURCE xnclockcontrol.cpp -SOURCE xndatecontrol.cpp SOURCE xnclockface.cpp USERINCLUDE ../inc @@ -52,8 +51,6 @@ LIBRARY fbscli.lib LIBRARY gdi.lib LIBRARY hwrmlightclient.lib -LIBRARY commonengine.lib -LIBRARY bafl.lib LANG SC diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/inc/xnclockadapter.h --- a/idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/inc/xnclockadapter.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/inc/xnclockadapter.h Wed Oct 13 14:18:30 2010 +0300 @@ -30,7 +30,6 @@ // Forward declarations class CXnNodePluginIf; class CXnClockControl; -class CXnDateControl; class CAknLayoutFont; class CFont; class TRgb; @@ -43,20 +42,22 @@ */ NONSHARABLE_CLASS( CXnClockAdapter ) : public CXnControlAdapter, public MCoeMessageMonitorObserver, public MHWRMLightObserver - { + { +public: + enum TClockFont + { + EDigitalFont, + EAmPmFont, + EDateFont + }; + public: // constructor and destructor /** * 2 phase construction. - * - * @param aParent Parent control - * @param aNode clock node - * - * @return Newly constructed object */ - static CXnClockAdapter* NewL( CXnControlAdapter* aParent, - CXnNodePluginIf& aNode ); + static CXnClockAdapter* NewL( CXnControlAdapter* aParent, CXnNodePluginIf& aNode ); /** * Destructor. @@ -65,44 +66,39 @@ public: // New functions - - /* - * Create font - * - * @param aNode Node which contains info of font - * @param aFont On return points to a created font - */ - void CreateFontL( CXnNodePluginIf& aNode, - CFont*& aFont ); - - /* - * Create color - * - * @param aNode Node which contains color info - * @param aColor On return points to a created color - */ - void CreateColorL( CXnNodePluginIf& aNode, TRgb& aColor ); + + /** + * Gets font based on type + * + * @return Font based on aType, NULL if not found + */ + const CAknLayoutFont* FontL( const TInt aType ); + + /** + * Gets text color + * + * @return Text color + */ + const TRgb& TextColorL(); + + /** + * Gets date information + * + * @return A node which holds date information + */ + CXnNodePluginIf* Date() const; + + /** + * Gets day information + * + * @return A node which holds day information + */ + CXnNodePluginIf* Day() const; /** * Calls DrawNow, if node is laidout */ void UpdateDisplay() const; - - /** - * Sets clock format - * - * @param aFormat format of clock to set - */ - void SetClockFormatL( TClockFormat aFormat ); - - /** - * Gets text align from text-align property - * - * @param aNode Node which contains property - * - * @return Text align or CGraphicsContext::ECenter if property is not set - */ - CGraphicsContext::TTextAlign GetTextAlignL( CXnNodePluginIf& aNode ); public: // from base classes @@ -168,6 +164,16 @@ void ConstructL(); private: // New functions + + /* + * Create font + */ + void CreateFontL( const TInt aType ); + + /* + * Create color + */ + void CreateColorL(); /** * Starts clock @@ -179,47 +185,29 @@ */ void StopClock(); - /** - * Sets display property of node to block or none - * - * @param aNode Node which display property is set - * @param aBlock Value of display property to set - */ - void SetDisplayToBlockL( CXnNodePluginIf& aNode, TBool aBlock ); - private: // Parent control, not owned CXnControlAdapter* iParent; // UI node, not owned CXnNodePluginIf& iNode; - // Digital clock element, not owned - CXnNodePluginIf* iDigital; - // Analog clock element, not owned - CXnNodePluginIf* iAnalog; - // Day number element, not owned + // Digital clock date information, not owned + CXnNodePluginIf* iDate; + // Analog clock day information, not owned CXnNodePluginIf* iDay; - // Am\Pm element, not owned - CXnNodePluginIf* iAmpm; - // Digital face 12h element, not owned - CXnNodePluginIf* iDigitalFace12; - // Digital face 24h element, not owned - CXnNodePluginIf* iDigitalFace24; - // Analog face element, not owned - CXnNodePluginIf* iAnalogFace; - // Date element, not owned - CXnNodePluginIf* iDate; - // Digital clock date element, not owned - CXnNodePluginIf* iDigitalDate; - // Analog clock date element, not owned - CXnNodePluginIf* iAnalogDate; // Light observer, owned CHWRMLight* iLightObserver; - // Clock control, owned - CXnClockControl* iClockControl; - // Date control, owned - CXnDateControl* iDateControl; - // Day number control, owned - CXnDateControl* iDayControl; + // Clock control, owned + CXnClockControl* iClockControl; + // Digital clock font, not owned + CFont* iDigitalFont; + // AmPm font, not owned + CFont* iAmPmFont; + // Date font, not owned + CFont* iDateFont; + // Font color + TRgb iColor; + // Flag for initializing font color + TBool iColorSet; // Flag indicating foreground state TBool iForeground; // Flag indicating lights status diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/inc/xnclockcontrol.h --- a/idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/inc/xnclockcontrol.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/inc/xnclockcontrol.h Wed Oct 13 14:18:30 2010 +0300 @@ -28,7 +28,6 @@ class CWindowGc; class CXnClockAdapter; class CXnClockFace; -class CXnNodePluginIf; // Class declaration /** @@ -45,15 +44,17 @@ * * @since S60 5.1 * - * @param aAdapter Reference to clockadapter. + * @param aContainerWindow Container window for the clock component. + * * @param aFormatFromLocale Boolean flag to indicate whether the clock * format should be updated from the locale. - * @param aFormat Boolean flag that indicates whether the - * clock is digital or analog. + * + * @param aContextPaneClock Boolean flag that indicates whether the + * clock is in the context pane. * * @return Newly constructed object. */ - static CXnClockControl* NewL( CXnClockAdapter& aAdapter, + static CXnClockControl* NewL( CXnClockAdapter* aAdapter, const TBool aFormatFromLocale, const TClockFormat aFormat ); @@ -90,10 +91,9 @@ * Draws the clock * * @param aGc Context where to draw - * @param aNode Node to draw - * @param aAmpm Possible am/pm text to draw + * @param aRect Rect Clock rect */ - void Draw( CWindowGc& aGc, CXnNodePluginIf* aNode, CXnNodePluginIf* aAmpm ); + void Draw( CWindowGc& aGc, const TRect& aRect ); /** * Starts the clock timer. @@ -106,16 +106,6 @@ * Used when the clock loses visibility. */ void StopTimer(); - - /** - * Checks if clock format has changed - */ - void CheckClockFormatL(); - - /** - * Reset font and color - */ - void ResetFont(); private: // New functions @@ -133,7 +123,7 @@ /** * C++ default constructor. */ - CXnClockControl( CXnClockAdapter& aAdapter, + CXnClockControl( CXnClockAdapter* aAdapter, const TBool aFormatFromLocale, const TClockFormat aFormat ); @@ -149,13 +139,11 @@ // Clock face, owned CXnClockFace* iFace; // Clock adapter, not owned - CXnClockAdapter& iAdapter; + CXnClockAdapter* iAdapter; // Clock format - TClockFormat iClockFormat; - // Time format - TTimeFormat iTimeFormat; - // Flag indicating whether format clock from locale - TBool iFormatFromLocale; + TClockFormat iClockFormat; + // Flag indicating whetger format clock from locale + TBool iFormatFromLocale; }; #endif // _XNCLOCKCONTROL_H diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/inc/xnclockface.h --- a/idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/inc/xnclockface.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/inc/xnclockface.h Wed Oct 13 14:18:30 2010 +0300 @@ -24,7 +24,6 @@ // FORWARD DECLARATIONS class CXnClockAdapter; -class CXnNodePluginIf; class CWindowGc; // CLASS DECLARATIONS @@ -50,35 +49,22 @@ * @since S60 5.1 * * @param aAdapter Clock adapter + * * @param aGc Graphics context that can be used to draw to - * the clock - * @param aNode Node which contains drawing info + * the clock + * + * @param aRect Rect where to scale the clock + * * @param aTime Time to be used for drawing. - * @param aAmpm Possible am\pm text to draw */ virtual void DrawL( CXnClockAdapter& aAdapter, CWindowGc& aGc, - CXnNodePluginIf& aNode, - const TTime& aTime, - CXnNodePluginIf* aAmpm ) = 0; - - /** - * Reset font - */ - virtual void ResetFont() = 0; + const TRect& aRect, + const TTime& aTime ) = 0; }; class CXnClockFaceDigital : public CXnClockFace { - public: - /** - * Type of font, digital or for am/pm text - */ - enum TXnClockFontType { - EClock, - EAmpm - }; - public: // Constructors and destructor /** @@ -98,14 +84,8 @@ */ void DrawL( CXnClockAdapter& aAdapter, CWindowGc& aGc, - CXnNodePluginIf& aNode, - const TTime& aTime, - CXnNodePluginIf* aAmpm ); - - /** - * @see CXnClockFace::ResetFont - */ - void ResetFont(); + const TRect& aRect, + const TTime& aTime ); private: @@ -118,60 +98,8 @@ * By default Symbian 2nd phase constructor is private. */ void ConstructL(); - - /** - * Draws am/pm text - * - * @param aAdapter Clock adapter - * @param aGc Graphics context that can be used to draw to - * the clock - * @param aTime Time to be used for drawing. - * @param aAmpm Contains info for drawing - */ - void DrawAmpmL( CXnClockAdapter& aAdapter, - CWindowGc& aGc, - const TTime& aTime, - CXnNodePluginIf& aAmpm ); - - /** - * Creates font - * - * @param aAdapter Clock adapter - * @param aNode Contains info to create font - * @param aFontType Digital clock font or am/pm font - * - * @return CAknLayoutFont - */ - const CAknLayoutFont* CreateFontL( CXnClockAdapter& aAdapter, - CXnNodePluginIf& aNode, - TXnClockFontType aFontType ); - - /** - * Creates font color - * - * @param aAdapter Clock adapter - * @param aNode Contains info to create color - * @param aFontType Digital clock font color or am/pm font color - * - * @return Color - */ - const TRgb& CreateColorL( CXnClockAdapter& aAdapter, - CXnNodePluginIf& aNode, - TXnClockFontType aFontType); private: // Data - // Date font, not owned - CFont* iClockFont; - // Date font, not owned - CFont* iAmpmFont; - // Digital clock font color - TRgb iFaceColor; - // Indicates whether digital clock color should be created - TBool iIsFaceColorSet; - // Am/pm text font color - TRgb iAmpmColor; - // Indicates whether am/pm font color should be created - TBool iIsAmpmColorSet; }; class CXnClockFaceAnalog : public CXnClockFace @@ -195,14 +123,8 @@ */ void DrawL( CXnClockAdapter& aAdapter, CWindowGc& aGc, - CXnNodePluginIf& aNode, - const TTime& aTime, - CXnNodePluginIf* aAmpm ); - - /** - * @see CXnClockFace::ResetFont - */ - void ResetFont(); + const TRect& aRect, + const TTime& aTime ); private: // New functions @@ -210,18 +132,14 @@ * Draws the hands of the clock. * * @param aGc Graphics context that can be used to draw to the - * clock + * clock + * * @param aRect Rectangle defining the size of the clock. + * * @param aDateTime Time to be used for drawing. */ void DrawHandsL( CWindowGc& aGc, const TRect& aRect, const TDateTime& aDateTime ); - - /** - * Stores clock face adjustment value - * @param aNode is current face. - */ - TInt FaceAdjustmentValueL( CXnNodePluginIf& aNode ); private: @@ -235,10 +153,7 @@ */ void ConstructL(); - private: // Data - - // Stores face adjustment value - TInt iFaceAdjustmentValue; + private: // Data }; #endif // _XNCLOCKFACE_H diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/inc/xndatecontrol.h --- a/idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/inc/xndatecontrol.h Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,161 +0,0 @@ -/* -* Copyright (c) 2006-2008 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Date control -* -*/ - - -#ifndef _XNDATECONTROL_H -#define _XNDATECONTROL_H - -// System includes -#include - -// User includes - -// Forward declarations -class CWindowGc; -class CXnClockAdapter; -class CXnNodePluginIf; -class CEnvironmentChangeNotifier; - -enum TXnDateType { - EDate, - EDay - }; - -// Class declaration -/** -* @ingroup group_xnclockfactory -* @lib xnclockfactory.lib -* @since S60 5.0 -*/ -NONSHARABLE_CLASS( CXnDateControl ) : public CBase - { -public: // Constructors and destructor - - /** - * Two-phased constructor. - * - * @since S60 5.1 - * - * @param aAdapter Clock adapter - * @param aType Type of date. Could be date or day number - * - * @return Newly constructed object. - */ - static CXnDateControl* NewL( CXnClockAdapter& aAdapter, - TXnDateType aType ); - - - /** - * Destructor. - */ - virtual ~CXnDateControl(); - -public: // New functions - - /** - * Draws the clock - * - * @param aGc Context where to draw - * @param aNode Contains drawing info - */ - void DrawL( CWindowGc& aGc, CXnNodePluginIf* aNode ); - - /** - * Resets font and color values - */ - void ResetFont(); - -private: // New functions - - /** - * Constructs date string - * - * @return pointer to date string. - */ - HBufC* ConstructDateStringL(); - - /** - * Constructs day number string - * - * @return pointer to day number string. - */ - HBufC* ConstructDayStringL(); - -private: - - /** - * C++ default constructor. - */ - CXnDateControl( CXnClockAdapter& aAdapter, - TXnDateType aType ); - - /** - * By default Symbian 2nd phase constructor is private. - */ - void ConstructL(); - - /** - * Creates font - * - * @param aNode Contains info of font - * - * @return CAknLayoutFont - */ - const CAknLayoutFont* CreateFontL( CXnNodePluginIf& aNode ); - - /** - * Creates font color - * - * @param aNode Contains info of color - */ - const TRgb& CreateColorL( CXnNodePluginIf& aNode ); - - /** - * Callback when enviroment changed. - * - * @param aPtr Pointer to self - * - * @return KErrNone - */ - static TInt HandleCallBackL( TAny *aPtr ); - - /** - * Updated date/day string - */ - void RefreshDateL(); - -private: // data - - // Holds date/day text, owned - HBufC* iDateText; - // Clock adapter - CXnClockAdapter& iAdapter; - // Date font, not owned - CFont* iDateFont; - // Font color - TRgb iDateColor; - // Indicates whether color should be created - TBool iIsColorSet; - // Environment notifier, owned - CEnvironmentChangeNotifier* iEnvNotifier; - // Type of date. Could be date or day number - TXnDateType iDateType; - }; - -#endif // _XNDATECONTROL_H - -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/src/xnclockadapter.cpp --- a/idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/src/xnclockadapter.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/src/xnclockadapter.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -31,14 +31,15 @@ #include "xncontroladapter.h" #include "xnclockcontrol.h" #include "xnclockadapter.h" -#include "xndatecontrol.h" #include "c_xnutils.h" // Constants -_LIT8( KDisplay, "display" ); -_LIT8( KNone, "none" ); -_LIT8( KBlock, "block" ); -_LIT( KLogicalSecondaryFont, "EAknLogicalFontSecondaryFont" ); +_LIT8( KDateInformation, "Clock/DateInformation" ); +_LIT8( KDayInformation, "Clock/DayInformation" ); + +_LIT( KDigitalFont, "EAknLogicalFontSecondaryFont" ); +_LIT( KAmPmFont, "EAknLogicalFontSecondaryFont" ); +_LIT( KDateFont, "EAknLogicalFontSecondaryFont" ); // ============================ LOCAL FUNCTIONS =============================== @@ -119,8 +120,6 @@ delete iLightObserver; delete iClockControl; - delete iDateControl; - delete iDayControl; } // ----------------------------------------------------------------------------- @@ -136,177 +135,45 @@ iLightObserver = CHWRMLight::NewL( this ); - TBool useLocale; - CXnProperty* prop( - iNode.GetPropertyL( XnPropertyNames::clock::KS60Format ) ); - TClockFormat format( ClockFormat( prop, useLocale ) ); - RPointerArray< CXnNodePluginIf > children( iNode.ChildrenL() ); CleanupClosePushL( children ); - for ( TInt i = 0; i < children.Count(); i++ ) + for( TInt i = 0; i < children.Count(); i++ ) { CXnNodePluginIf* child( children[i] ); - const TDesC8& clocktype = child->Type()->Type(); - if ( clocktype == XnPropertyNames::clock::format::KDigital ) - { - iDigital = child; - } - else if ( clocktype == XnPropertyNames::clock::format::KAnalog ) - { - iAnalog = child; - } - else if ( clocktype == XnPropertyNames::clock::KDate ) + CXnProperty* id( child->IdL() ); + + if( id ) { - if ( !iDateControl ) - { - iDateControl = CXnDateControl::NewL( *this, EDate ); - } - iDate = child; - } - - RPointerArray< CXnNodePluginIf > clockChildren( child->ChildrenL() ); - CleanupClosePushL( clockChildren ); - for ( TInt j = 0; j < clockChildren.Count(); j++ ) - { - CXnNodePluginIf* clockChild( clockChildren[j] ); - const TDesC8& childType = clockChild->Type()->Type(); - - if ( childType == XnPropertyNames::clock::KFace12 ) - { - if ( !iClockControl ) - { - iClockControl = CXnClockControl::NewL( *this, useLocale, format ); - } - iDigitalFace12 = clockChild; - } - else if ( childType == XnPropertyNames::clock::KFace24 ) + if( id->StringValue() == KDateInformation ) { - if ( !iClockControl ) - { - iClockControl = CXnClockControl::NewL( *this, useLocale, format ); - } - iDigitalFace24 = clockChild; - } - else if ( childType == XnPropertyNames::clock::KFace ) - { - if ( !iClockControl ) - { - iClockControl = CXnClockControl::NewL( *this, useLocale, format ); - } - iAnalogFace = clockChild; - } - else if ( childType == XnPropertyNames::clock::KDate && - clocktype == XnPropertyNames::clock::format::KDigital ) - { - if ( !iDateControl ) - { - iDateControl = CXnDateControl::NewL( *this, EDate ); - } - iDigitalDate = clockChild; + iDate = child; } - else if ( childType == XnPropertyNames::clock::KDate && - clocktype == XnPropertyNames::clock::format::KAnalog ) + else if( id->StringValue() == KDayInformation ) { - if ( !iDateControl ) - { - iDateControl = CXnDateControl::NewL( *this, EDate ); - } - iAnalogDate = clockChild; + iDay = child; } - else if ( childType == XnPropertyNames::clock::KDay ) - { - if ( !iDayControl ) - { - iDayControl = CXnDateControl::NewL( *this, EDay ); - } - iDay = clockChild; - } - else if ( childType == XnPropertyNames::clock::KAmpm ) - { - iAmpm = clockChild; - } } - CleanupStack::PopAndDestroy( &clockChildren ); } CleanupStack::PopAndDestroy( &children ); - SetClockFormatL( format ); + TBool useLocale; + + CXnProperty* prop( + iNode.GetPropertyL( XnPropertyNames::clock::KS60Format ) ); + + TClockFormat format( ClockFormat( prop, useLocale ) ); + + iClockControl = CXnClockControl::NewL( this, useLocale, format ); iCoeEnv->AddMessageMonitorObserverL( *this ); } - -// ----------------------------------------------------------------------------- -// CXnClockAdapter::SetDisplayToBlockL -// ----------------------------------------------------------------------------- -// -void CXnClockAdapter::SetDisplayToBlockL( CXnNodePluginIf& aNode, TBool aBlock ) - { - CXnDomStringPool& sp = aNode.UiEngineL()->StringPool(); - CXnProperty* prop; - if ( aBlock ) - { - prop = CXnProperty::NewL( - KDisplay, KBlock, CXnDomPropertyValue::EString, sp ); - } - else - { - prop = CXnProperty::NewL( - KDisplay, KNone, CXnDomPropertyValue::EString, sp ); - } - CleanupStack::PushL( prop ); - aNode.SetPropertyL( prop ); - CleanupStack::Pop( prop ); - } - -// ----------------------------------------------------------------------------- -// CXnClockAdapter::SetClockFormatL -// ----------------------------------------------------------------------------- -// -void CXnClockAdapter::SetClockFormatL( TClockFormat aFormat ) - { - if ( iAnalog && iDigital ) - { - if ( aFormat == EClockAnalog ) - { - SetDisplayToBlockL( *iAnalog, ETrue ); - SetDisplayToBlockL( *iDigital, EFalse ); - } - else - { - SetDisplayToBlockL( *iDigital, ETrue ); - SetDisplayToBlockL( *iAnalog, EFalse ); - // check whether time format is 12 or 24 - if ( iDigitalFace12 && iDigitalFace24 ) - { - if ( TLocale().TimeFormat() == ETime12 ) - { - SetDisplayToBlockL( *iDigitalFace12, ETrue ); - if ( iAmpm ) - { - SetDisplayToBlockL( *iAmpm, ETrue ); - } - SetDisplayToBlockL( *iDigitalFace24, EFalse ); - } - else - { - SetDisplayToBlockL( *iDigitalFace24, ETrue ); - SetDisplayToBlockL( *iDigitalFace12, EFalse ); - if ( iAmpm ) - { - SetDisplayToBlockL( *iAmpm, EFalse ); - } - } - } - } - iNode.UiEngineL()->LayoutUIL( &iNode ); - } - } // ----------------------------------------------------------------------------- // CXnClockAdapter::DoHandlePropertyChangeL +// // ----------------------------------------------------------------------------- // void CXnClockAdapter::DoHandlePropertyChangeL( CXnProperty* aProperty ) @@ -315,7 +182,7 @@ { const TDesC8& name( aProperty->Property()->Name() ); - if( iClockControl && name == XnPropertyNames::clock::KS60Format ) + if( name == XnPropertyNames::clock::KS60Format ) { TBool useLocale; @@ -323,11 +190,28 @@ iClockControl->SetFormatL( useLocale, format ); } + else if( name == XnPropertyNames::clock::KS60DigitalFontSize ) + { + iDigitalFont = NULL; + } + else if( name == XnPropertyNames::clock::KS60AmPmFontSize ) + { + iAmPmFont = NULL; + } + else if( name == XnPropertyNames::clock::KS60DateFontSize ) + { + iDateFont = NULL; + } + else if( name == XnPropertyNames::appearance::common::KColor ) + { + iColorSet = EFalse; + } } } // ----------------------------------------------------------------------------- // CXnClockAdapter::UpdateDisplay +// Draws the clock component // ----------------------------------------------------------------------------- // void CXnClockAdapter::UpdateDisplay() const @@ -340,6 +224,7 @@ // ----------------------------------------------------------------------------- // CXnClockAdapter::Draw +// Draws the clock component // ----------------------------------------------------------------------------- // void CXnClockAdapter::Draw( const TRect& aRect ) const @@ -347,51 +232,13 @@ CXnControlAdapter::Draw( aRect ); CWindowGc& gc( SystemGc() ); - - if ( iClockControl ) - { - TClockFormat format = iClockControl->Format(); - if ( format == EClockAnalog ) - { - iClockControl->Draw( gc, iAnalogFace, NULL ); - } - else - { - if ( TLocale().TimeFormat() == ETime12 ) - { - iClockControl->Draw( gc, iDigitalFace12, iAmpm ); - } - else - { - iClockControl->Draw( gc, iDigitalFace24, NULL ); - } - } - } - - if ( iDateControl ) - { - if ( iClockControl && iClockControl->Format() == EClockAnalog && iAnalogDate ) - { - TRAP_IGNORE( iDateControl->DrawL( gc, iAnalogDate ) ); - } - else if ( iClockControl && iClockControl->Format() == EClockDigital && iDigitalDate ) - { - TRAP_IGNORE( iDateControl->DrawL( gc, iDigitalDate ) ); - } - else - { - TRAP_IGNORE( iDateControl->DrawL( gc, iDate ) ); - } - } - - if ( iDayControl ) - { - TRAP_IGNORE( iDayControl->DrawL( gc, iDay ) ); - } + + iClockControl->Draw( gc, iNode.Rect() ); } // ----------------------------------------------------------------------------- // CXnClockAdapter::MakeVisible +// // ----------------------------------------------------------------------------- // void CXnClockAdapter::MakeVisible( TBool aVisible ) @@ -416,6 +263,7 @@ // ----------------------------------------------------------------------------- // CXnClockAdapter::MonitorWsMessage +// // ----------------------------------------------------------------------------- // void CXnClockAdapter::MonitorWsMessage( const TWsEvent& aEvent ) @@ -436,13 +284,9 @@ if( foreground != iForeground ) { if( iForeground ) - { - // check if clock format has changed - if ( iClockControl ) - { - TRAP_IGNORE( iClockControl->CheckClockFormatL() ); - } + { UpdateDisplay(); + // Start clock ensures UI state StartClock(); } @@ -455,6 +299,7 @@ // ----------------------------------------------------------------------------- // CXnClockAdapter::LightStatusChanged +// // ----------------------------------------------------------------------------- // void CXnClockAdapter::LightStatusChanged( TInt aTarget, @@ -483,128 +328,185 @@ } } -// ----------------------------------------------------------------------------- -// CXnClockAdapter::GetTextAlignL + // ----------------------------------------------------------------------------- +// CXnClockAdapter::FontL // -CGraphicsContext::TTextAlign CXnClockAdapter::GetTextAlignL( CXnNodePluginIf& aNode ) +// ----------------------------------------------------------------------------- +// +const CAknLayoutFont* CXnClockAdapter::FontL( const TInt aType ) { - CGraphicsContext::TTextAlign ret = CGraphicsContext::ECenter; - CXnProperty* prop( aNode.GetPropertyL( - XnPropertyNames::appearance::common::KTextAlign ) ); + CFont* font( NULL ); - if( prop ) + if( aType == EDigitalFont ) + { + if( !iDigitalFont ) + { + CreateFontL( aType ); + } + + font = iDigitalFont; + } + else if( aType == EAmPmFont ) { - if ( prop->StringValue() == - XnPropertyNames::appearance::common::textalign::KAlignLeft ) + if( !iAmPmFont ) + { + CreateFontL( aType ); + } + + font = iAmPmFont; + } + else if( aType == EDateFont ) + { + if( !iDateFont ) { - ret = CGraphicsContext::ELeft; - } - else if ( prop->StringValue() == - XnPropertyNames::appearance::common::textalign::KAlignRight ) - { - ret = CGraphicsContext::ERight; + CreateFontL( aType ); } - else if ( prop->StringValue() == - XnPropertyNames::appearance::common::textalign::KAlignCenter ) - { - ret = CGraphicsContext::ECenter; - } + + font = iDateFont; + } + + if( font ) + { + return CAknLayoutFont::AsCAknLayoutFontOrNull( font ); + } + + return NULL; + } + +// ----------------------------------------------------------------------------- +// CXnClockAdapter::TextColorL +// +// ----------------------------------------------------------------------------- +// +const TRgb& CXnClockAdapter::TextColorL() + { + if( !iColorSet ) + { + CreateColorL(); } - return ret; + + return iColor; + } + +// ----------------------------------------------------------------------------- +// CXnClockAdapter::Date +// +// ----------------------------------------------------------------------------- +// +CXnNodePluginIf* CXnClockAdapter::Date() const + { + return iDate; + } + +// ----------------------------------------------------------------------------- +// CXnClockAdapter::Day +// +// ----------------------------------------------------------------------------- +// +CXnNodePluginIf* CXnClockAdapter::Day() const + { + return iDay; } // ----------------------------------------------------------------------------- // CXnClockAdapter::CreateFontL +// // ----------------------------------------------------------------------------- // -void CXnClockAdapter::CreateFontL( CXnNodePluginIf& aNode, - CFont*& aFont ) +void CXnClockAdapter::CreateFontL( const TInt aType ) { TFontSpec spec; TInt dummy; - - CXnProperty* prop( aNode.GetPropertyL( - XnPropertyNames::clock::KS60FontSize ) ); - // default - TInt height( ( aNode.Rect().Height() / 5 ) ); - - if ( prop ) + if( aType == EDigitalFont ) { - height = aNode.UiEngineL()->VerticalPixelValueL( - prop, aNode.Rect().Height() ); - } - else - { - // check if fontsize is defined in clock element - prop = iNode.GetPropertyL( - XnPropertyNames::clock::KS60FontSize ); + iDigitalFont = NULL; + + CXnProperty* prop( iNode.GetPropertyL( + XnPropertyNames::clock::KS60DigitalFontSize ) ); + + // default + TInt height( ( iNode.Rect().Height() / 3 ) * 2 ); + if ( prop ) { height = iNode.UiEngineL()->VerticalPixelValueL( prop, iNode.Rect().Height() ); } - } - - TBool fontNotSet( ETrue ); - prop = aNode.GetPropertyL( - XnPropertyNames::appearance::common::KFontFamily ); - - if ( prop ) - { - CXnDomPropertyValue* value = static_cast< CXnDomPropertyValue* >( - prop->Property()->PropertyValueList().Item( 0 ) ); - - if ( CXnDomPropertyValue::EIdent == value->PrimitiveValueType() - ||CXnDomPropertyValue::EString == value->PrimitiveValueType() ) - { - const TDesC& fontName( prop->StringValueL()->Des() ); - - // No need to relase avkon font - CXnUtils::CreateFontL( fontName, - height, - spec.iFontStyle, - aFont, - dummy ); - - fontNotSet = EFalse; - } - } - - if( fontNotSet ) - { + // No need to relase avkon font - CXnUtils::CreateFontL( KLogicalSecondaryFont, + CXnUtils::CreateFontL( KDigitalFont, height, spec.iFontStyle, - aFont, + iDigitalFont, dummy ); } + else if( aType == EAmPmFont ) + { + iAmPmFont = NULL; + + CXnProperty* prop( iNode.GetPropertyL( + XnPropertyNames::clock::KS60AmPmFontSize ) ); + + // default + TInt height( ( iNode.Rect().Height() / 5 ) ); + + if ( prop ) + { + height = iNode.UiEngineL()->VerticalPixelValueL( + prop, iNode.Rect().Height() ); + } + + // No need to relase avkon font + CXnUtils::CreateFontL( KAmPmFont, + height, + spec.iFontStyle, + iAmPmFont, + dummy ); + } + else if( aType == EDateFont ) + { + iDateFont = NULL; + + CXnProperty* prop( iNode.GetPropertyL( + XnPropertyNames::clock::KS60DateFontSize ) ); + + // default + TInt height( ( iNode.Rect().Height() / 5 ) ); + + if ( prop ) + { + height = iNode.UiEngineL()->VerticalPixelValueL( + prop, iNode.Rect().Height() ); + } + + // No need to relase avkon font + CXnUtils::CreateFontL( KDateFont, + height, + spec.iFontStyle, + iDateFont, + dummy ); + } } // ----------------------------------------------------------------------------- // CXnClockAdapter::CreateColorL +// // ----------------------------------------------------------------------------- // -void CXnClockAdapter::CreateColorL( CXnNodePluginIf& aNode, TRgb& aColor ) +void CXnClockAdapter::CreateColorL() { TRgb color; TInt result( KErrNone ); - CXnProperty* prop( aNode.GetPropertyL( + CXnProperty* prop( iNode.GetPropertyL( XnPropertyNames::appearance::common::KColor ) ); if( !prop ) { - // check if color is defined in clock element - prop = iNode.GetPropertyL( - XnPropertyNames::appearance::common::KColor ); - if ( !prop ) - { - return; - } + return; } CXnDomProperty* domProp( prop->Property() ); @@ -652,78 +554,53 @@ if( result == KErrNone ) { - aColor = color; + iColorSet = ETrue; + iColor = color; } } // ----------------------------------------------------------------------------- // CXnClockAdapter::SkinChanged +// Skin change notification // ----------------------------------------------------------------------------- // void CXnClockAdapter::SkinChanged() { - if ( iClockControl ) - { - iClockControl->ResetFont(); - } - if ( iDateControl ) - { - iDateControl->ResetFont(); - } - if ( iDayControl ) - { - iDayControl->ResetFont(); - } + iAmPmFont = iDigitalFont = iDateFont = NULL; + iColorSet = EFalse; CXnControlAdapter::SkinChanged(); } // ----------------------------------------------------------------------------- // CXnClockAdapter::HandleScreenDeviceChangedL +// Screen device change notification // ----------------------------------------------------------------------------- // void CXnClockAdapter::HandleScreenDeviceChangedL() { - if ( iClockControl ) - { - iClockControl->ResetFont(); - } - if ( iDateControl ) - { - iDateControl->ResetFont(); - } - if ( iDayControl ) - { - iDayControl->ResetFont(); - } + iAmPmFont = iDigitalFont = iDateFont = NULL; + iColorSet = EFalse; CXnControlAdapter::HandleScreenDeviceChangedL(); } // ----------------------------------------------------------------------------- // CXnClockAdapter::SizeChanged +// Size changed notification // ----------------------------------------------------------------------------- // void CXnClockAdapter::SizeChanged() { - if ( iClockControl ) - { - iClockControl->ResetFont(); - } - if ( iDateControl ) - { - iDateControl->ResetFont(); - } - if ( iDayControl ) - { - iDayControl->ResetFont(); - } + iAmPmFont = iDigitalFont = iDateFont = NULL; + iColorSet = EFalse; CXnControlAdapter::SizeChanged(); } // ----------------------------------------------------------------------------- // CXnClockAdapter::StartClock +// // ----------------------------------------------------------------------------- // void CXnClockAdapter::StartClock() @@ -743,6 +620,7 @@ // ----------------------------------------------------------------------------- // CXnClockAdapter::StopClock +// // ----------------------------------------------------------------------------- // void CXnClockAdapter::StopClock() @@ -750,7 +628,7 @@ if ( iClockControl ) { iClockControl->StopTimer(); - } + } } // End of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/src/xnclockcontrol.cpp --- a/idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/src/xnclockcontrol.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/src/xnclockcontrol.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -24,7 +24,7 @@ #include "xncontroladapter.h" #include "xnclockadapter.h" #include "xnclockface.h" -#include "xnnodepluginif.h" + #include "xnclockcontrol.h" // Constants @@ -39,12 +39,12 @@ // might leave. // ----------------------------------------------------------------------------- // -CXnClockControl::CXnClockControl( CXnClockAdapter& aAdapter, +CXnClockControl::CXnClockControl( CXnClockAdapter* aAdapter, const TBool aFormatFromLocale, const TClockFormat aFormat ) : iAdapter( aAdapter ), iClockFormat( aFormat ), - iFormatFromLocale ( aFormatFromLocale ) + iFormatFromLocale ( aFormatFromLocale ) { } @@ -56,7 +56,7 @@ void CXnClockControl::ConstructL() { iTimer = CPeriodic::NewL( CActive::EPriorityHigh ); - iTimeFormat = TLocale().TimeFormat(); + SetFormatL( iFormatFromLocale, iClockFormat ); } @@ -65,20 +65,24 @@ // Two-phased constructor. // ----------------------------------------------------------------------------- // -CXnClockControl* CXnClockControl::NewL( CXnClockAdapter& aAdapter, +CXnClockControl* CXnClockControl::NewL( CXnClockAdapter* aAdapter, const TBool aFormatFromLocale, const TClockFormat aFormat ) { CXnClockControl* self = new (ELeave) CXnClockControl( aAdapter, aFormatFromLocale, aFormat ); + CleanupStack::PushL( self ); self->ConstructL(); + CleanupStack::Pop( self ); + return self; } // ----------------------------------------------------------------------------- // Destructor +// // ----------------------------------------------------------------------------- // CXnClockControl::~CXnClockControl() @@ -89,6 +93,7 @@ // ----------------------------------------------------------------------------- // CXnClockControl::UpdateDisplay +// (other items were commented in a header). // ----------------------------------------------------------------------------- // void CXnClockControl::UpdateDisplay() @@ -98,11 +103,12 @@ return; } - iAdapter.UpdateDisplay(); + iAdapter->UpdateDisplay(); } // ----------------------------------------------------------------------------- // CXnClockControl::SetFormatL +// (other items were commented in a header). // ----------------------------------------------------------------------------- // void CXnClockControl::SetFormatL( const TBool aFormatFromLocale, @@ -116,17 +122,14 @@ } iFormatFromLocale = aFormatFromLocale; - - TTimeFormat timeFormat = TLocale().TimeFormat(); - if( format == iClockFormat && iFace && timeFormat == iTimeFormat ) + if( format == iClockFormat && iFace ) { // Already correct face return; } iClockFormat = format; - iTimeFormat = timeFormat; delete iFace; iFace = NULL; @@ -138,22 +141,12 @@ else if( format == EClockDigital ) { iFace = CXnClockFaceDigital::NewL(); - } - - iAdapter.SetClockFormatL( format ); - } - -// ----------------------------------------------------------------------------- -// CXnClockControl::CheckClockFormatL -// ----------------------------------------------------------------------------- -// -void CXnClockControl::CheckClockFormatL() - { - SetFormatL( iFormatFromLocale, iClockFormat ); + } } // ----------------------------------------------------------------------------- // CXnClockControl::Format +// (other items were commented in a header). // ----------------------------------------------------------------------------- // TClockFormat CXnClockControl::Format() const @@ -163,38 +156,28 @@ // ----------------------------------------------------------------------------- // CXnClockControl::Draw +// (other items were commented in a header). // ----------------------------------------------------------------------------- // -void CXnClockControl::Draw( CWindowGc& aGc, CXnNodePluginIf* aNode, - CXnNodePluginIf* aAmpm ) +void CXnClockControl::Draw( CWindowGc& aGc, const TRect& aRect ) { - if ( !aNode ) - { - return; - } + // Ensure correct appearance + TRAP_IGNORE( SetFormatL( iFormatFromLocale, iClockFormat ) ); - if( iFace && !aNode->Rect().IsEmpty() ) + if( iFace && !aRect.IsEmpty() ) { __PRINT( __DBG_FORMAT( "CXnClockControl::Draw: 0x%X" ), this ); TTime homeTime; homeTime.HomeTime(); - TRAP_IGNORE( iFace->DrawL( iAdapter, aGc, *aNode, homeTime, aAmpm ) ); + TRAP_IGNORE( iFace->DrawL( *iAdapter, aGc, aRect, homeTime ) ); } } // ----------------------------------------------------------------------------- -// CXnClockControl::ResetFont -// ----------------------------------------------------------------------------- -// -void CXnClockControl::ResetFont() - { - iFace->ResetFont(); - } - -// ----------------------------------------------------------------------------- // CXnClockControl::TimerCallback +// (other items were commented in a header). // ----------------------------------------------------------------------------- // TInt CXnClockControl::TimerCallback( TAny* aThis ) @@ -223,6 +206,7 @@ // ----------------------------------------------------------------------------- // CXnClockControl::StartTimer +// (other items were commented in a header). // ----------------------------------------------------------------------------- // void CXnClockControl::StartTimer() @@ -246,6 +230,7 @@ // ----------------------------------------------------------------------------- // CXnClockControl::StopTimer +// (other items were commented in a header). // ----------------------------------------------------------------------------- // void CXnClockControl::StopTimer() diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/src/xnclockface.cpp --- a/idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/src/xnclockface.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/src/xnclockface.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -30,9 +30,6 @@ #include "xnnodepluginif.h" #include "xnclockadapter.h" #include "xntext.h" -#include "xnproperty.h" -#include "xndomproperty.h" -#include "xndomlist.h" #include "xnclockface.h" @@ -41,8 +38,6 @@ _LIT( KAmPmFormat, "%B" ); _LIT( KTimeFormat, "%J%:1%T" ); -const TInt KDefaultFaceAdjustmentValue = 0; - // ============================ MEMBER FUNCTIONS =============================== // ----------------------------------------------------------------------------- @@ -91,134 +86,123 @@ // ----------------------------------------------------------------------------- // CXnClockFaceDigital::DrawL +// (other items were commented in a header). // ----------------------------------------------------------------------------- // void CXnClockFaceDigital::DrawL( CXnClockAdapter& aAdapter, CWindowGc& aGc, - CXnNodePluginIf& aNode, const TTime& aTime, CXnNodePluginIf* aAmpm ) - { + const TRect& aRect, const TTime& aTime ) + { TBuf< KMaxTimeFormatSpec > time; aTime.FormatL( time, KTimeFormat() ); + TBuf< KMaxTimeFormatSpec > ampm; + aTime.FormatL( ampm, KAmPmFormat() ); + AknTextUtils::LanguageSpecificNumberConversion( time ); - const CAknLayoutFont* clockFont( CreateFontL( aAdapter, aNode, EClock ) ); - if ( !clockFont ) + const CAknLayoutFont* clockFont( + aAdapter.FontL( CXnClockAdapter::EDigitalFont ) ); + + const CAknLayoutFont* ampmFont( + aAdapter.FontL( CXnClockAdapter::EAmPmFont ) ); + + const CAknLayoutFont* dateFont( + aAdapter.FontL( CXnClockAdapter::EDateFont ) ); + + const TRgb& color( aAdapter.TextColorL() ); + + CXnNodePluginIf* date( aAdapter.Date() ); + + const TInt deltaHeight( aRect.Height() - clockFont->TextPaneHeight() ); + TInt offset( clockFont->TextPaneTopToBaseline() + deltaHeight / 2 ); + + if( date ) { - return; + // When date string is shown, time string must be lifted up + offset -= ( dateFont->TextPaneHeight() / 2 ); } - const TRgb& color( CreateColorL( aAdapter, aNode, EClock) ); + // Measure the full width of the time string + TInt textWidth( AknBidiTextUtils::MeasureTextBoundsWidth( *clockFont, time, + CFont::TMeasureTextInput::EFVisualOrder ) ); - const TInt deltaHeight( aNode.Rect().Height() - clockFont->TextPaneHeight() ); - TInt offset( clockFont->TextPaneTopToBaseline() + deltaHeight / 2 ); - - CGraphicsContext::TTextAlign align = aAdapter.GetTextAlignL( aNode ); + TInt extraWidth( aRect.Width() - textWidth ); + + TInt margin( extraWidth / 2 ); aGc.SetPenColor( color ); + aGc.UseFont( clockFont ); - aGc.DrawText( time, aNode.Rect(), offset, align ); - aGc.DiscardFont(); - - if( TLocale().TimeFormat() == ETime12 && aAmpm ) - { - DrawAmpmL( aAdapter, aGc, aTime, *aAmpm ); - } - } -// ----------------------------------------------------------------------------- -// CXnClockFaceDigital::DrawAmpmL -// ----------------------------------------------------------------------------- -// -void CXnClockFaceDigital::DrawAmpmL( CXnClockAdapter& aAdapter, - CWindowGc& aGc, - const TTime& aTime, - CXnNodePluginIf& aAmpm ) - { - TBuf< KMaxTimeFormatSpec > ampm; - aTime.FormatL( ampm, KAmPmFormat() ); - ampm.Trim(); - - const CAknLayoutFont* ampmFont( CreateFontL( aAdapter, aAmpm, EAmpm ) ); - if ( !ampmFont ) + CGraphicsContext::TTextAlign align; + + TBool mirrored( AknLayoutUtils::LayoutMirrored() ); + + if( mirrored ) { - return; - } - - const TRgb& color( CreateColorL( aAdapter, aAmpm, EAmpm) ); - - const TInt deltaHeight( aAmpm.Rect().Height() - ampmFont->TextPaneHeight() ); - TInt offset( ampmFont->TextPaneTopToBaseline() + deltaHeight / 2 ); - - CGraphicsContext::TTextAlign align = aAdapter.GetTextAlignL( aAmpm ); - - aGc.SetPenColor( color ); - aGc.UseFont( ampmFont ); - aGc.DrawText( ampm, aAmpm.Rect(), offset, align ); - aGc.DiscardFont(); - } - -// ----------------------------------------------------------------------------- -// CXnClockFaceDigital::CreateFontL -// ----------------------------------------------------------------------------- -// -const CAknLayoutFont* CXnClockFaceDigital::CreateFontL( CXnClockAdapter& aAdapter, - CXnNodePluginIf& aNode, - TXnClockFontType aFontType) - { - if ( aFontType == EClock ) - { - if ( !iClockFont ) - { - aAdapter.CreateFontL( aNode, iClockFont ); - } - return CAknLayoutFont::AsCAknLayoutFontOrNull( iClockFont ); + align = CGraphicsContext::ERight; } else { - if ( !iAmpmFont ) - { - aAdapter.CreateFontL( aNode, iAmpmFont ); - } - return CAknLayoutFont::AsCAknLayoutFontOrNull( iAmpmFont ); + align = CGraphicsContext::ELeft; } - } + + aGc.DrawText( time, aRect, offset, align, margin ); + + aGc.DiscardFont(); -// ----------------------------------------------------------------------------- -// CXnClockFaceDigital::CreateColorL -// ----------------------------------------------------------------------------- -// -const TRgb& CXnClockFaceDigital::CreateColorL( CXnClockAdapter& aAdapter, - CXnNodePluginIf& aNode, - TXnClockFontType aFontType ) - { - if ( aFontType == EClock ) + if( TLocale().TimeFormat() == ETime12 ) { - if ( !iIsFaceColorSet ) + TRect ampmRect( aRect ); + TInt ampmHeight( ampmFont->TextPaneHeight() ); + + if( mirrored ) + { + align = CGraphicsContext::ELeft; + } + else { - aAdapter.CreateColorL( aNode, iFaceColor ); - iIsFaceColorSet = ETrue; - } - return iFaceColor; - } - else - { - if ( !iIsAmpmColorSet ) - { - aAdapter.CreateColorL( aNode, iAmpmColor ); - iIsAmpmColorSet = ETrue; + align = CGraphicsContext::ERight; } - return iAmpmColor; + + ampmRect.iTl.iY += ampmHeight; + + aGc.UseFont( ampmFont ); + + aGc.DrawText( ampm, ampmRect, offset, align, margin ); + + aGc.DiscardFont(); } - } + + if( date ) + { + const TDesC* dateStr( &KNullDesC() ); + + CXnText* textIf( NULL ); + + XnComponentInterface::MakeInterfaceL( textIf, date->AppIfL() ); -// ----------------------------------------------------------------------------- -// CXnClockFaceDigital::ResetFont -// ----------------------------------------------------------------------------- -// -void CXnClockFaceDigital::ResetFont() - { - iClockFont = iAmpmFont = NULL; - iIsFaceColorSet = iIsAmpmColorSet = EFalse; + if( textIf ) + { + dateStr = textIf->Text(); + } + + // Measure the full width of the time string + TInt dateWidth( AknBidiTextUtils::MeasureTextBoundsWidth( *dateFont, *dateStr, + CFont::TMeasureTextInput::EFVisualOrder ) ); + + TInt width( aRect.Width() - dateWidth ); + TInt margin( width / 2 ); + + // Move date string down by text pane height and 5% of rect height + offset += dateFont->TextPaneHeight() + ( aRect.Height() / 20 ); + + aGc.UseFont( dateFont ); + + aGc.DrawText( *dateStr, aRect, offset, align, margin ); + + aGc.DiscardFont(); + } } // ============================ MEMBER FUNCTIONS =============================== @@ -230,7 +214,6 @@ // ----------------------------------------------------------------------------- // CXnClockFaceAnalog::CXnClockFaceAnalog() - : iFaceAdjustmentValue( KErrNotFound ) { } @@ -270,12 +253,13 @@ // ----------------------------------------------------------------------------- // CXnClockFaceAnalog::DrawL +// (other items were commented in a header). // ----------------------------------------------------------------------------- // void CXnClockFaceAnalog::DrawL( CXnClockAdapter& /*aAdapter*/, CWindowGc& aGc, - CXnNodePluginIf& aNode, const TTime& aTime, CXnNodePluginIf* /*aAmpm*/ ) - { - TRect faceRect( aNode.Rect() ); + const TRect& aRect, const TTime& aTime ) + { + TSize faceSize( aRect.Size() ); TDateTime dateTime( aTime.DateTime() ); @@ -295,19 +279,14 @@ { return; } - - TInt value( FaceAdjustmentValueL( aNode ) ); - - TSize growthSize( value, 0 ); - faceRect.Grow( growthSize ); - User::LeaveIfError( AknIconUtils::SetSize( skinBmp, faceRect.Size() ) ); + User::LeaveIfError( AknIconUtils::SetSize( skinBmp, faceSize ) ); if( skinMask ) { - User::LeaveIfError( AknIconUtils::SetSize( skinMask, faceRect.Size() ) ); + User::LeaveIfError( AknIconUtils::SetSize( skinMask, faceSize ) ); - aGc.BitBltMasked( faceRect.iTl, + aGc.BitBltMasked( aRect.iTl, skinBmp, TRect( TPoint( 0, 0 ), skinBmp->SizeInPixels() ), skinMask, @@ -315,17 +294,18 @@ } else { - aGc.BitBlt( faceRect.iTl, skinBmp ); + aGc.BitBlt( aRect.iTl, skinBmp ); } aGc.SetBrushStyle( CGraphicsContext::ENullBrush ); aGc.SetPenStyle( CGraphicsContext::ESolidPen ); - DrawHandsL( aGc, aNode.Rect(), dateTime ); + DrawHandsL( aGc, aRect, dateTime ); } // ----------------------------------------------------------------------------- // CXnClockFaceAnalog::DrawHands +// (other items were commented in a header). // ----------------------------------------------------------------------------- // void CXnClockFaceAnalog::DrawHandsL( CWindowGc& aGc, @@ -375,41 +355,5 @@ minmask, EFalse ); } - -// ----------------------------------------------------------------------------- -// CXnClockFaceAnalog::FaceAdjustmentValueL -// ----------------------------------------------------------------------------- -// -TInt CXnClockFaceAnalog::FaceAdjustmentValueL( CXnNodePluginIf& aNode ) - { - if( iFaceAdjustmentValue == KErrNotFound ) - { - CXnProperty* prop( aNode.GetPropertyL( XnPropertyNames::clock::KFaceAdjustmentValue ) ); - - if( prop ) - { - TInt value = static_cast( prop->FloatValueL() ); - - if( value > KErrNotFound ) - { - iFaceAdjustmentValue = value; - } - } - - if( iFaceAdjustmentValue <= KErrNotFound ) - { - iFaceAdjustmentValue = KDefaultFaceAdjustmentValue; - } - } - - return iFaceAdjustmentValue; - } - -// CXnClockFaceAnalog::ResetFont -// ----------------------------------------------------------------------------- -// -void CXnClockFaceAnalog::ResetFont() - { - } // End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/src/xndatecontrol.cpp --- a/idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/src/xndatecontrol.cpp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,281 +0,0 @@ -/* -* Copyright (c) 2006-2008 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Clock control -* -*/ - - -// System includes -#include -#include -#include -#include -#include -#include -#include - -// User includes -#include "xndatecontrol.h" -#include "xncontroladapter.h" -#include "xnclockadapter.h" -#include "xnnodepluginif.h" -#include "xnproperty.h" -#include "xnuienginepluginif.h" -#include "c_xnutils.h" - -// Constants -const TInt KMaxDateStringLength = 100; -const TInt KMaxDayNumberStringLength = 10; - -_LIT( KTimeFormat, "%0U %1U" ); - - -// ============================ MEMBER FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// CXnDateControl::CXnDateControl -// C++ default constructor can NOT contain any code, that -// might leave. -// ----------------------------------------------------------------------------- -// -CXnDateControl::CXnDateControl( CXnClockAdapter& aAdapter, - TXnDateType aType ) - : iAdapter( aAdapter ), iDateType( aType ) - { - } - -// ----------------------------------------------------------------------------- -// CXnDateControl::ConstructL -// Symbian 2nd phase constructor can leave. -// ----------------------------------------------------------------------------- -// -void CXnDateControl::ConstructL() - { - // Create enviroment notifier - iEnvNotifier = CEnvironmentChangeNotifier::NewL( - CActive::EPriorityStandard, TCallBack( HandleCallBackL, this ) ); - // Start listening notifications - iEnvNotifier->Start(); - } - -// ----------------------------------------------------------------------------- -// CXnDateControl::NewL -// Two-phased constructor. -// ----------------------------------------------------------------------------- -// -CXnDateControl* CXnDateControl::NewL( CXnClockAdapter& aAdapter, - TXnDateType aType ) - { - CXnDateControl* self = new (ELeave) CXnDateControl( aAdapter, aType ); - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop( self ); - return self; - } - -// ----------------------------------------------------------------------------- -// Destructor -// ----------------------------------------------------------------------------- -// -CXnDateControl::~CXnDateControl() - { - delete iDateText; - delete iEnvNotifier; - } - -// ----------------------------------------------------------------------------- -// CXnDateControl::DrawL -// ----------------------------------------------------------------------------- -// -void CXnDateControl::DrawL( CWindowGc& aGc, CXnNodePluginIf* aNode ) - { - if ( !aNode || - !iDateText || - ( aNode && aNode->Rect().IsEmpty() ) ) - { - return; - } - - const CAknLayoutFont* dateFont( CreateFontL( *aNode ) ); - if ( !dateFont ) - { - return; - } - - const TRgb& color( CreateColorL( *aNode ) ); - - CGraphicsContext::TTextAlign align = iAdapter.GetTextAlignL( *aNode ); - - const TInt deltaHeight( aNode->Rect().Height() - dateFont->TextPaneHeight() ); - TInt offset( dateFont->TextPaneTopToBaseline() + deltaHeight / 2 ); - - aGc.SetPenColor( color ); - aGc.UseFont( dateFont ); - aGc.DrawText( *iDateText, aNode->Rect(), offset, align ); - aGc.DiscardFont(); - } - -// ----------------------------------------------------------------------------- -// CXnDateControl::ConstructDateStringL -// ----------------------------------------------------------------------------- -// -HBufC* CXnDateControl::ConstructDateStringL() - { - // Construct date string using date format from resource file - CCoeEnv* coeEnv = CCoeEnv::Static(); - - if( !coeEnv ) - { - User::Leave( KErrNotReady ); - } - - TTime time; - time.HomeTime(); - - HBufC* aiDateString = HBufC::NewLC( KMaxDateStringLength ); - HBufC* aiDateFormatString = HBufC::NewLC( KMaxDateStringLength ); - aiDateFormatString->Des().Copy( KTimeFormat() ); - // TODO: when localisation is ready read format string from resource - //HBufC* aiDateFormatString = StringLoader::LoadLC( R_ACTIVEIDLE_TIME_FORMAT, - // coeEnv ); - HBufC* dateStringBuf = HBufC::NewLC( KMaxDateStringLength ); - HBufC* dateFormatString = StringLoader::LoadLC( R_QTN_DATE_SHORT_WITH_ZERO, - coeEnv ); - TPtr dateString( dateStringBuf->Des() ); - time.FormatL( dateString, *dateFormatString ); - CleanupStack::PopAndDestroy( dateFormatString ); - - //now dateString contains string which is formatted using - //R_QTN_DATE_USUAL_WITH_ZERO - - // To arabic - AknTextUtils::DisplayTextLanguageSpecificNumberConversion( dateString ); - - TPtr aiDateStringPtr = aiDateString->Des(); - - TDayNameAbb wkDayAbb = TDayNameAbb(); - wkDayAbb.Set(time.DayNoInWeek()); - - //add date to string - StringLoader::Format( aiDateStringPtr, *aiDateFormatString, 1,dateString ); - - //reuse dateString - dateString.Copy( aiDateStringPtr ); - - //add weekday to string - StringLoader::Format( aiDateStringPtr, dateString, 0, wkDayAbb ); - - CleanupStack::PopAndDestroy( dateStringBuf );//dateStringBuf, aiDateFormatString - CleanupStack::PopAndDestroy( aiDateFormatString ); - - CleanupStack::Pop( aiDateString ); - return aiDateString; - } - -// ----------------------------------------------------------------------------- -// CXnDateControl::ConstructDayStringL -// ----------------------------------------------------------------------------- -// -HBufC* CXnDateControl::ConstructDayStringL() - { - TTime time; - time.HomeTime(); - - HBufC* aiDayString = HBufC::NewLC( KMaxDayNumberStringLength ); - aiDayString->Des().Num( time.DayNoInMonth() + 1 ); - // To arabic - TPtr dayStringPtr = aiDayString->Des(); - AknTextUtils::DisplayTextLanguageSpecificNumberConversion( dayStringPtr ); - CleanupStack::Pop( aiDayString ); - return aiDayString; - } - -// ----------------------------------------------------------------------------- -// CXnDateControl::CreateFontL -// ----------------------------------------------------------------------------- -// -const CAknLayoutFont* CXnDateControl::CreateFontL( CXnNodePluginIf& aNode ) - { - if ( !iDateFont ) - { - iAdapter.CreateFontL( aNode, iDateFont ); - } - return CAknLayoutFont::AsCAknLayoutFontOrNull( iDateFont ); - } - -// ----------------------------------------------------------------------------- -// CXnDateControl::CreateColorL -// ----------------------------------------------------------------------------- -// -const TRgb& CXnDateControl::CreateColorL( CXnNodePluginIf& aNode ) - { - if ( !iIsColorSet ) - { - iAdapter.CreateColorL( aNode, iDateColor ); - iIsColorSet = ETrue; - } - return iDateColor; - } - -// ----------------------------------------------------------------------------- -// CXnDateControl::ResetFont -// ----------------------------------------------------------------------------- -// -void CXnDateControl::ResetFont() - { - iDateFont = NULL; - iIsColorSet = EFalse; - } - -// ----------------------------------------------------------------------------- -// CXnDateControl::RefreshDateL -// ----------------------------------------------------------------------------- -// -void CXnDateControl::RefreshDateL() - { - delete iDateText; - iDateText = NULL; - if ( iDateType == EDate ) - { - iDateText = ConstructDateStringL(); - } - else if ( iDateType == EDay ) - { - iDateText = ConstructDayStringL(); - } - } - -// ----------------------------------------------------------------------------- -// CXnDateControl::HandleCallBackL -// ----------------------------------------------------------------------------- -// -TInt CXnDateControl::HandleCallBackL( TAny *aPtr ) - { - CXnDateControl* self = static_cast( aPtr ); - - if( self ) - { - TInt changes( self->iEnvNotifier->Change() ); - - if ( changes & - ( EChangesLocale | EChangesMidnightCrossover | EChangesSystemTime ) ) - { - self->RefreshDateL(); - } - } - - return KErrNone; - } - -// End of File diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/renderingplugins/xnnewstickerfactory/src/xnnewstickercontrol.cpp --- a/idlehomescreen/xmluirendering/renderingplugins/xnnewstickerfactory/src/xnnewstickercontrol.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/renderingplugins/xnnewstickerfactory/src/xnnewstickercontrol.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -154,11 +154,6 @@ } UpdateTitleL( KNullDesC, aIndex ); - - if( aIndex == iCurrentTitleIndex ) - { - iCurrentTitleIndex = GetNextTitleWithContent( aIndex ); - } } } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/renderingplugins/xntexteditorfactory/inc/xntexteditoradapter.h --- a/idlehomescreen/xmluirendering/renderingplugins/xntexteditorfactory/inc/xntexteditoradapter.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/renderingplugins/xntexteditorfactory/inc/xntexteditoradapter.h Wed Oct 13 14:18:30 2010 +0300 @@ -20,7 +20,6 @@ // System includes #include -#include // User includes #include "xncontroladapter.h" @@ -84,8 +83,15 @@ */ HBufC* Text() const; -public: - // from base classes + /** + * Handles editor events + * + * @since S60 5.2 + * @param aReason, editor event + */ + void HandleEditorEvent( TInt aReason ); + +public: // from base classes /** * See CCoeControl documentation @@ -106,7 +112,12 @@ * See CCoeControl documentation */ TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType); - + + /** + * See CXnControlAdapter documentation + */ + TBool RefusesFocusLoss() const; + /** * See CCoeControl documentation */ @@ -119,9 +130,19 @@ /** * See CCoeControl documentation + */ + void HandleResourceChange( TInt aType ); + + /** + * See CCoeControl documentation */ void HandlePointerEventL(const TPointerEvent& aPointerEvent); + /** + * See CCoeAppUiBase. + */ + void HandleScreenDeviceChangedL(); + private: // from MCoeControlBackground @@ -171,9 +192,13 @@ /** Flag to indicate whether the font needs to be released or not */ TBool iReleaseFont; /** Max line amount */ - TInt iMaxLines; - /** Flags */ - TBitFlags32 iFlags; + TInt iMaxLines; + /** Flag to indicate whether focus loss is refused */ + TBool iRefusesFocusLoss; + /** Split input states*/ + TInt iSplitInputFlags; + /** Flag to indicate if SetTextL is called */ + TBool iIsSetText; }; #endif // _XNTEXTEDITORADAPTER_H diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/renderingplugins/xntexteditorfactory/src/xntexteditor.cpp --- a/idlehomescreen/xmluirendering/renderingplugins/xntexteditorfactory/src/xntexteditor.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/renderingplugins/xntexteditorfactory/src/xntexteditor.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -87,6 +87,16 @@ } // --------------------------------------------------------- +// CXnTextEditor::HandleEditorEvent +// --------------------------------------------------------- +// +void CXnTextEditor::HandleEditorEvent( TInt aReason ) + { + static_cast(ControlAdapter())-> + HandleEditorEvent( aReason ); + } + +// --------------------------------------------------------- // --------------------------------------------------------- XnComponentInterface::MXnComponentInterface* CXnTextEditor::MakeInterfaceL(const TDesC8& aType) { diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/renderingplugins/xntexteditorfactory/src/xntexteditoradapter.cpp --- a/idlehomescreen/xmluirendering/renderingplugins/xntexteditorfactory/src/xntexteditoradapter.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/renderingplugins/xntexteditorfactory/src/xntexteditoradapter.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -51,12 +51,13 @@ #include "xntexteditor.h" // Constants -enum EFlags + +enum TSplitInputState { - EUsePartialScreenInput = 1, - EIsAlreadyFocused, - EIsFocused, - ESetText + ESplitInputEnabled = 1, + ESplitInputOpen = 2, + ESplitInputEditorInStack = 4, + EScreenDeviceChanged = 8 }; const TInt KDefaultLength( 100 ); @@ -65,6 +66,8 @@ _LIT8( KMaxLineAmount, "max-line-amount" ); _LIT8( KMaxCharAmount, "max-char-amount" ); _LIT8( KEnablePartialInput, "splitinputenabled" ); +_LIT8( KSplitScreenEnabledTrigger , "splitscreenenabled" ); +_LIT8( KSplitScreenDisabledTrigger, "splitscreendisabled" ); _LIT( KEnterChar, "\x2029" ); @@ -75,7 +78,32 @@ // ============================ LOCAL FUNCTIONS ================================ +// ----------------------------------------------------------------------------- +// ----------------------------------------------------------------------------- +// +TBool IsFlagSet( TInt aFlags, TInt aFlag ) + { + return aFlags & aFlag; + } + +// ----------------------------------------------------------------------------- +// ----------------------------------------------------------------------------- +// +void SetFlag( TInt& aFlags, TInt aFlag ) + { + aFlags |= aFlag; + } + +// ----------------------------------------------------------------------------- +// ----------------------------------------------------------------------------- +// +void ClearFlag( TInt& aFlags, TInt aFlag ) + { + aFlags &= ~aFlag; + } + // ============================ MEMBER FUNCTIONS =============================== + // ----------------------------------------------------------------------------- // CXnTextEditorAdapter::NewL // Symbian static 1st phase constructor @@ -112,16 +140,17 @@ // CXnTextEditorAdapter::~CXnTextEditorAdapter() { - if ( iAppui ) + if( IsFlagSet( iSplitInputFlags, ESplitInputOpen ) ) { - iAppui->RemoveFromStack( iEditor ); + if( iUiEngine ) + { + iUiEngine->EnablePartialTouchInput( iNode, EFalse ); + } } - - if ( iFlags.IsSet( EIsFocused ) ) + + if ( iAvkonAppUi ) { - RProperty::Set( KPSUidAiInformation, - KActiveIdleForwardNumericKeysToPhone, - EPSAiForwardNumericKeysToPhone ); + iAvkonAppUi->RemoveFromStack( iEditor ); } if( iFont && iReleaseFont ) @@ -143,7 +172,6 @@ void CXnTextEditorAdapter::ConstructL() { CXnControlAdapter::ConstructL( iNode ); - iUiEngine = iNode.UiEngineL(); iAppui = static_cast< CXnAppUiAdapter* >( iAvkonAppUi ); @@ -195,13 +223,14 @@ iEditor->SetAknEditorNumericKeymap( EAknEditorPlainNumberModeKeymap ); // Enable partial Screen - CXnProperty* prop( iNode.GetPropertyL( KEnablePartialInput ) ); - - if ( prop && prop->StringValue() == XnPropertyNames::KTrue ) + CXnProperty* enablepartialinput( iNode.GetPropertyL( KEnablePartialInput ) ); + iSplitInputFlags = 0; + + if ( enablepartialinput && + enablepartialinput->StringValue() == XnPropertyNames::KTrue ) { iEditor->SetAknEditorFlags( EAknEditorFlagEnablePartialScreen ); - - iFlags.Set( EUsePartialScreenInput ); + SetFlag( iSplitInputFlags, ESplitInputEnabled ); } iEditor->SetAlignment( AknLayoutUtils::LayoutMirrored() ? @@ -272,7 +301,9 @@ if ( IS_ARROW_KEY( aKeyEvent.iScanCode ) ) { if ( ret == EKeyWasNotConsumed && aType == EEventKey ) - { + { + iRefusesFocusLoss = EFalse; + ret = CXnControlAdapter::OfferKeyEventL( aKeyEvent, aType ); } } @@ -298,42 +329,72 @@ return ret; } + +// ----------------------------------------------------------------------------- +// CXnTextEditorAdapter::RefusesFocusLoss +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +TBool CXnTextEditorAdapter::RefusesFocusLoss() const + { + return iRefusesFocusLoss; + } // ----------------------------------------------------------------------------- // CXnTextEditorAdapter::FocusChanged // (other items were commented in a header). // ----------------------------------------------------------------------------- // -void CXnTextEditorAdapter::FocusChanged( TDrawNow /*aDrawNow*/ ) +void CXnTextEditorAdapter::FocusChanged( TDrawNow aDrawNow ) { TBool isFocused( IsFocused() ? ETrue : EFalse ); - TBool wasFocused( iFlags.IsSet( EIsFocused ) ? ETrue : EFalse ); - - if ( isFocused != wasFocused ) - { - TInt value; - - if ( isFocused ) - { - value = EPSAiDontForwardNumericKeysToPhone; - - iFlags.Set( EIsFocused ); - - TRAP_IGNORE( iAppui->AddToStackL( iAppui->View(), iEditor ) ); + TInt value; + + if ( isFocused ) + { + value = EPSAiDontForwardNumericKeysToPhone; + + if( !IsFlagSet( iSplitInputFlags, ESplitInputEnabled ) ) + { + TRAP_IGNORE( iAppui->AddToStackL( iAppui->View(), iEditor ) ); + // AddToStackL calls iEditor->SetFocus( ETrue ); + } + else if( !IsFlagSet( iSplitInputFlags, ESplitInputOpen ) ) + { + TRAP_IGNORE( iAppui->AddToStackL( iAppui->View(), iEditor ) ); + SetFlag( iSplitInputFlags, ESplitInputEditorInStack ); } - else + } + else + { + value = EPSAiForwardNumericKeysToPhone; + + if( !IsFlagSet( iSplitInputFlags, ESplitInputEnabled ) ) + { + iAppui->RemoveFromStack( iEditor ); + iEditor->SetFocus( EFalse, aDrawNow ); + } + + // Remove editor from stack if it has not beed removed AND split screen has been closed + else if( IsFlagSet( iSplitInputFlags, ESplitInputEditorInStack ) && + !IsFlagSet( iSplitInputFlags, ESplitInputOpen ) ) { - value = EPSAiForwardNumericKeysToPhone; - - iFlags.Clear( EIsFocused ); - iAppui->RemoveFromStack( iEditor ); - iEditor->SetFocus( EFalse ); - } - - RProperty::Set( KPSUidAiInformation, - KActiveIdleForwardNumericKeysToPhone, value ); - } + iEditor->SetFocus( EFalse, aDrawNow ); + ClearFlag( iSplitInputFlags, ESplitInputEditorInStack ); + } + } + + if( IsFlagSet( iSplitInputFlags, ESplitInputOpen ) ) + { + value = EPSAiDontForwardNumericKeysToPhone; + } + + iRefusesFocusLoss = isFocused; + + RProperty::Set( KPSUidAiInformation, + KActiveIdleForwardNumericKeysToPhone, + value ); } // ----------------------------------------------------------------------------- @@ -348,57 +409,113 @@ } // ----------------------------------------------------------------------------- +// CXnTextEditorAdapter::HandleResourceChange +// +// ----------------------------------------------------------------------------- +// +void CXnTextEditorAdapter::HandleResourceChange( TInt aType ) + { + if ( aType == KAknSplitInputEnabled ) + { + if( IsFlagSet( iSplitInputFlags, ESplitInputEditorInStack ) && + !IsFlagSet( iSplitInputFlags, ESplitInputOpen ) ) + { + iUiEngine->EnablePartialTouchInput( iNode, ETrue ); + SetFlag( iSplitInputFlags, ESplitInputOpen ); + if ( !IsFlagSet( iSplitInputFlags, EScreenDeviceChanged ) ) + { + TRAP_IGNORE( iNode.ReportTriggerEventL( KSplitScreenEnabledTrigger, + KNullDesC8, KNullDesC8) ); + } + else + { + ClearFlag( iSplitInputFlags, EScreenDeviceChanged ); + } + } + } + + if ( aType == KAknSplitInputDisabled ) + { + if( IsFlagSet( iSplitInputFlags, ESplitInputOpen ) ) + { + iUiEngine->EnablePartialTouchInput( iNode, EFalse ); + ClearFlag( iSplitInputFlags, ESplitInputOpen ); + + // Note that after orientation switch, split screen is first closed and + // then opened again. Therefore these must be discarded + if ( !IsFlagSet( iSplitInputFlags, EScreenDeviceChanged ) ) + { + TRAP_IGNORE( iNode.ReportTriggerEventL( KSplitScreenDisabledTrigger, + KNullDesC8, KNullDesC8) ); + + // If editor is not focused anymore, remove if from stack + CXnNodePluginIf* focusedNode( NULL ); + TRAP_IGNORE( focusedNode = iUiEngine->FocusedNodeL() ); + if( focusedNode != &iNode && + IsFlagSet( iSplitInputFlags, ESplitInputEditorInStack ) ) + { + iAppui->RemoveFromStack( iEditor ); + iEditor->SetFocus( EFalse ); + ClearFlag( iSplitInputFlags, ESplitInputEditorInStack ); + + // Forward keys to phone again + RProperty::Set( KPSUidAiInformation, + KActiveIdleForwardNumericKeysToPhone, + EPSAiForwardNumericKeysToPhone ); + } + } + } + } + CCoeControl::HandleResourceChange( aType ); + } + +// ----------------------------------------------------------------------------- // CXnTextEditorAdapter::HandlePointerEventL // // ----------------------------------------------------------------------------- // -void CXnTextEditorAdapter::HandlePointerEventL( - const TPointerEvent& aPointerEvent ) - { - if ( aPointerEvent.iType == TPointerEvent::EButton1Down ) +void CXnTextEditorAdapter::HandlePointerEventL( const TPointerEvent& aPointerEvent ) + { + TPointerEvent pointerEvent( aPointerEvent ); + TRect rect( iEditor->TextView()->ViewRect() ); + TPoint point( aPointerEvent.iPosition ); + + // this opens partial screen also when margin is tapped + if( !IsFlagSet( iSplitInputFlags, ESplitInputOpen ) ) { - iFlags.Clear( EIsAlreadyFocused ); + if( point.iX < rect.iTl.iX ) + { + pointerEvent.iPosition.iX = rect.iTl.iX; + } + else if( point.iX > rect.iBr.iX ) + { + pointerEvent.iPosition.iX = rect.iBr.iX; + } - if ( IsFocused() ) + if( point.iY < rect.iTl.iY ) { - iFlags.Set( EIsAlreadyFocused ); + pointerEvent.iPosition.iY = rect.iTl.iY; + } + else if( point.iY > rect.iBr.iY ) + { + pointerEvent.iPosition.iY = rect.iBr.iY; } } - if ( iFlags.IsSet( EIsAlreadyFocused ) ) - { - CCoeControl::HandlePointerEventL( aPointerEvent ); - } - else + CXnControlAdapter::HandlePointerEventL( pointerEvent ); + } + +// ----------------------------------------------------------------------------- +// CXnTextEditorAdapter::HandleScreenDeviceChangedL +// +// ----------------------------------------------------------------------------- +// +void CXnTextEditorAdapter::HandleScreenDeviceChangedL() + { + if( IsFlagSet( iSplitInputFlags, ESplitInputOpen ) ) { - TPointerEvent pointerEvent( aPointerEvent ); - TRect rect( iEditor->TextView()->ViewRect() ); - TPoint point( aPointerEvent.iPosition ); - - // this opens partial screen also when margin is tapped - if ( iFlags.IsSet( EUsePartialScreenInput ) ) - { - if( point.iX < rect.iTl.iX ) - { - pointerEvent.iPosition.iX = rect.iTl.iX; - } - else if( point.iX > rect.iBr.iX ) - { - pointerEvent.iPosition.iX = rect.iBr.iX; - } - - if( point.iY < rect.iTl.iY ) - { - pointerEvent.iPosition.iY = rect.iTl.iY; - } - else if( point.iY > rect.iBr.iY ) - { - pointerEvent.iPosition.iY = rect.iBr.iY; - } - } - - CXnControlAdapter::HandlePointerEventL( pointerEvent ); - } + SetFlag( iSplitInputFlags, EScreenDeviceChanged ); + } } // ----------------------------------------------------------------------------- @@ -446,11 +563,11 @@ if ( update ) { - iFlags.Set( ESetText ); - + iIsSetText = ETrue; + TRAP_IGNORE( iEditor->SetTextL( &aText ) ); - iFlags.Clear( ESetText ); + iIsSetText = EFalse; iNode.SetDirtyL(); } @@ -463,7 +580,7 @@ // TBool CXnTextEditorAdapter::IsSetText() const { - return iFlags.IsSet( ESetText ) ? ETrue : EFalse; + return iIsSetText; } // ----------------------------------------------------------------------------- @@ -482,6 +599,22 @@ } // ----------------------------------------------------------------------------- +// CXnTextEditorAdapter::HandleEditorEvent +// ----------------------------------------------------------------------------- +// +void CXnTextEditorAdapter::HandleEditorEvent( TInt aReason ) + { + if( aReason == CXnTextEditor::KDeactivateTextEditor && + IsFlagSet( iSplitInputFlags, ESplitInputOpen ) ) + { + iAppui->RemoveFromStack( iEditor ); + iEditor->SetFocus( EFalse ); + ClearFlag( iSplitInputFlags, ESplitInputEditorInStack ); + iRefusesFocusLoss = EFalse; + } + } + +// ----------------------------------------------------------------------------- // CXnTextEditorAdapter::SetPropertiesL // Sets text properties // ----------------------------------------------------------------------------- diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/bwins/xn3layoutengineu.def --- a/idlehomescreen/xmluirendering/uiengine/bwins/xn3layoutengineu.def Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/bwins/xn3layoutengineu.def Wed Oct 13 14:18:30 2010 +0300 @@ -40,178 +40,178 @@ ?ComponentNodeImpl@CXnNodePluginIf@@QAEPAVCXnComponentNodeImpl@@XZ @ 39 NONAME ; class CXnComponentNodeImpl * CXnNodePluginIf::ComponentNodeImpl(void) ??0CXnViewsNodeImpl@@IAE@XZ @ 40 NONAME ; CXnViewsNodeImpl::CXnViewsNodeImpl(void) ?IsTextEditorActive@TXnUiEnginePluginIf@@QAEHXZ @ 41 NONAME ; int TXnUiEnginePluginIf::IsTextEditorActive(void) - ?IsEditState@CXnNodePluginIf@@QAEHXZ @ 42 NONAME ; int CXnNodePluginIf::IsEditState(void) - ?HandlePointerEventL@CXnControlAdapter@@UAEXABUTPointerEvent@@@Z @ 43 NONAME ; void CXnControlAdapter::HandlePointerEventL(struct TPointerEvent const &) - ??1CXnDocument@@UAE@XZ @ 44 NONAME ; CXnDocument::~CXnDocument(void) - ?HandleResourceChangeL@CXnAppUiAdapter@@MAEXH@Z @ 45 NONAME ; void CXnAppUiAdapter::HandleResourceChangeL(int) - ?DoEnterPowerSaveModeL@CXnControlAdapter@@UAEXW4TModeEvent@1@@Z @ 46 NONAME ; void CXnControlAdapter::DoEnterPowerSaveModeL(enum CXnControlAdapter::TModeEvent) - ?CloneL@CXnProperty@@QAEPAV1@XZ @ 47 NONAME ; class CXnProperty * CXnProperty::CloneL(void) - ?ReportTriggerEventL@CXnNodePluginIf@@QAEXABVTDesC8@@00@Z @ 48 NONAME ; void CXnNodePluginIf::ReportTriggerEventL(class TDesC8 const &, class TDesC8 const &, class TDesC8 const &) - ?FocusedNodeL@TXnUiEnginePluginIf@@QAEPAVCXnNodePluginIf@@XZ @ 49 NONAME ; class CXnNodePluginIf * TXnUiEnginePluginIf::FocusedNodeL(void) - ?FindContentSourceNodesL@TXnUiEngineAppIf@@QAE?AV?$RPointerArray@VCXnNodeAppIf@@@@ABVTDesC8@@@Z @ 50 NONAME ; class RPointerArray TXnUiEngineAppIf::FindContentSourceNodesL(class TDesC8 const &) - ?EqualsL@CXnProperty@@QBEHAAV1@@Z @ 51 NONAME ; int CXnProperty::EqualsL(class CXnProperty &) const - ?ScreenDeviceSize@TXnUiEnginePluginIf@@QAE?AVTSize@@XZ @ 52 NONAME ; class TSize TXnUiEnginePluginIf::ScreenDeviceSize(void) - ??0CXnControlAdapter@@IAE@XZ @ 53 NONAME ; CXnControlAdapter::CXnControlAdapter(void) - ?UiEngineL@CXnNodeAppIf@@QAEPAVTXnUiEngineAppIf@@XZ @ 54 NONAME ; class TXnUiEngineAppIf * CXnNodeAppIf::UiEngineL(void) - ?LongTapDetector@CXnControlAdapter@@QBEPAVCAknLongTapDetector@@XZ @ 55 NONAME ; class CAknLongTapDetector * CXnControlAdapter::LongTapDetector(void) const - ??0CXnAppUiAdapter@@QAE@VTUid@@@Z @ 56 NONAME ; CXnAppUiAdapter::CXnAppUiAdapter(class TUid) - ?DestroyPublisher@CXnAppUiAdapter@@UAEXABVTAiFwPublisherInfo@@@Z @ 57 NONAME ; void CXnAppUiAdapter::DestroyPublisher(class TAiFwPublisherInfo const &) - ?Rect@CXnNodePluginIf@@QAE?AVTRect@@XZ @ 58 NONAME ; class TRect CXnNodePluginIf::Rect(void) - ?AddChildL@CXnNodePluginIf@@QAEXPAV1@@Z @ 59 NONAME ; void CXnNodePluginIf::AddChildL(class CXnNodePluginIf *) - ?SetNode@CXnComponent@@QAEXAAVCXnNodePluginIf@@@Z @ 60 NONAME ; void CXnComponent::SetNode(class CXnNodePluginIf &) - ?ResetStylusCounter@CXnControlAdapter@@QAEXXZ @ 61 NONAME ; void CXnControlAdapter::ResetStylusCounter(void) - ?SetComponent@CXnComponentNodeImpl@@QAEXPAVCXnComponent@@@Z @ 62 NONAME ; void CXnComponentNodeImpl::SetComponent(class CXnComponent *) - ?LayoutUIL@TXnUiEnginePluginIf@@QAEXPAVCXnNodePluginIf@@@Z @ 63 NONAME ; void TXnUiEnginePluginIf::LayoutUIL(class CXnNodePluginIf *) - ?ExitPowerSaveModeL@CXnControlAdapter@@QAEXW4TModeEvent@1@@Z @ 64 NONAME ; void CXnControlAdapter::ExitPowerSaveModeL(enum CXnControlAdapter::TModeEvent) - ?PublisherInfo@CXnAppUiAdapter@@UAEHAAVCXnNodeAppIf@@AAVTHsPublisherInfo@@@Z @ 65 NONAME ; int CXnAppUiAdapter::PublisherInfo(class CXnNodeAppIf &, class THsPublisherInfo &) - ?GetThemeResource@TXnUiEngineAppIf@@QAEHABVTDesC16@@AAVRFile@@@Z @ 66 NONAME ; int TXnUiEngineAppIf::GetThemeResource(class TDesC16 const &, class RFile &) - ?ConstructL@CXnComponent@@IAEXXZ @ 67 NONAME ; void CXnComponent::ConstructL(void) - ?FindResource@CXnUtils@@SAPAVCXnResource@@AAV?$CArrayPtrSeg@VCXnResource@@@@ABVTDesC16@@AAH@Z @ 68 NONAME ; class CXnResource * CXnUtils::FindResource(class CArrayPtrSeg &, class TDesC16 const &, int &) - ?UnsetStateL@CXnNodeAppIf@@QAEXABVTDesC8@@@Z @ 69 NONAME ; void CXnNodeAppIf::UnsetStateL(class TDesC8 const &) - ?Uid@CXnDocument@@QAE?AVTUid@@XZ @ 70 NONAME ; class TUid CXnDocument::Uid(void) - ?FocusChanged@CXnControlAdapter@@UAEXW4TDrawNow@@@Z @ 71 NONAME ; void CXnControlAdapter::FocusChanged(enum TDrawNow) - ?SetBlank@CXnControlAdapter@@QAEXH@Z @ 72 NONAME ; void CXnControlAdapter::SetBlank(int) - ?ProcessMessageL@CXnAppUiAdapter@@UAEXVTUid@@ABVTDesC8@@@Z @ 73 NONAME ; void CXnAppUiAdapter::ProcessMessageL(class TUid, class TDesC8 const &) - ?Component@CXnNodeAppIf@@QAEAAVCXnComponent@@XZ @ 74 NONAME ; class CXnComponent & CXnNodeAppIf::Component(void) - ?SetLayoutCapable@CXnNodePluginIf@@QAEXH@Z @ 75 NONAME ; void CXnNodePluginIf::SetLayoutCapable(int) - ?MarginRect@CXnNodePluginIf@@QAE?AVTRect@@XZ @ 76 NONAME ; class TRect CXnNodePluginIf::MarginRect(void) - ?UiEngineL@CXnAppUiAdapter@@QAEPAVTXnUiEngineAppIf@@XZ @ 77 NONAME ; class TXnUiEngineAppIf * CXnAppUiAdapter::UiEngineL(void) - ?ActiveView@TXnUiEngineAppIf@@QAEPAVCXnNodeAppIf@@XZ @ 78 NONAME ; class CXnNodeAppIf * TXnUiEngineAppIf::ActiveView(void) - ?HandleXuikonEventL@CXnAppUiAdapter@@UAEXAAVCXnNodeAppIf@@0AAVCXnDomNode@@1@Z @ 79 NONAME ; void CXnAppUiAdapter::HandleXuikonEventL(class CXnNodeAppIf &, class CXnNodeAppIf &, class CXnDomNode &, class CXnDomNode &) - ?RenderUIL@TXnUiEngineAppIf@@QAEXPAVCXnNodeAppIf@@@Z @ 80 NONAME ; void TXnUiEngineAppIf::RenderUIL(class CXnNodeAppIf *) - ?PrepareToExit@CXnAppUiAdapter@@MAEXXZ @ 81 NONAME ; void CXnAppUiAdapter::PrepareToExit(void) - ?DoHandlePropertyChangeL@CXnControlAdapter@@UAEXPAVCXnProperty@@@Z @ 82 NONAME ; void CXnControlAdapter::DoHandlePropertyChangeL(class CXnProperty *) - ?ConstructL@CXnControlAdapter@@IAEXAAVCXnNodePluginIf@@@Z @ 83 NONAME ; void CXnControlAdapter::ConstructL(class CXnNodePluginIf &) - ?FocusedNode@TXnUiEngineAppIf@@QAEPAVCXnNodeAppIf@@XZ @ 84 NONAME ; class CXnNodeAppIf * TXnUiEngineAppIf::FocusedNode(void) - ?SetDataL@CXnComponent@@QAEXABVTDesC8@@ABVTDesC16@@H@Z @ 85 NONAME ; void CXnComponent::SetDataL(class TDesC8 const &, class TDesC16 const &, int) - ?OfferKeyEventL@CXnControlAdapter@@UAE?AW4TKeyResponse@@ABUTKeyEvent@@W4TEventCode@@@Z @ 86 NONAME ; enum TKeyResponse CXnControlAdapter::OfferKeyEventL(struct TKeyEvent const &, enum TEventCode) - ?IsDrawingAllowed@CXnControlAdapter@@QBEHXZ @ 87 NONAME ; int CXnControlAdapter::IsDrawingAllowed(void) const - ?DisplayL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 88 NONAME ; class CXnProperty * CXnNodePluginIf::DisplayL(void) - ?NewL@CXnProperty@@SAPAV1@ABVTDesC8@@PAVCXnDomPropertyValue@@AAVCXnDomStringPool@@@Z @ 89 NONAME ; class CXnProperty * CXnProperty::NewL(class TDesC8 const &, class CXnDomPropertyValue *, class CXnDomStringPool &) - ?Rect@CXnNodeAppIf@@QAE?AVTRect@@XZ @ 90 NONAME ; class TRect CXnNodeAppIf::Rect(void) - ?NewL@CXnComponentNodeImpl@@SAPAV1@PAVCXnType@@@Z @ 91 NONAME ; class CXnComponentNodeImpl * CXnComponentNodeImpl::NewL(class CXnType *) - ?WidgetsVisible@TXnUiEngineAppIf@@QBEHXZ @ 92 NONAME ; int TXnUiEngineAppIf::WidgetsVisible(void) const - ?Type@CXnNodePluginIf@@QAEPAVCXnType@@XZ @ 93 NONAME ; class CXnType * CXnNodePluginIf::Type(void) - ?MakeXnComponentL@MXnComponentFactory@@EAE?AW4TXnComponentFactoryResponse@1@AAVCXnNodePluginIf@@AAPAVCXnComponent@@@Z @ 94 NONAME ; enum MXnComponentFactory::TXnComponentFactoryResponse MXnComponentFactory::MakeXnComponentL(class CXnNodePluginIf &, class CXnComponent * &) - ?UnsetStateL@CXnNodePluginIf@@QAEXABVTDesC8@@@Z @ 95 NONAME ; void CXnNodePluginIf::UnsetStateL(class TDesC8 const &) - ?StringValueL@CXnProperty@@QAEPAVHBufC16@@XZ @ 96 NONAME ; class HBufC16 * CXnProperty::StringValueL(void) - ?DisableRenderUiLC@TXnUiEnginePluginIf@@QAEXXZ @ 97 NONAME ; void TXnUiEnginePluginIf::DisableRenderUiLC(void) - ?SetPropertyL@CXnNodeAppIf@@QAEXPAVCXnProperty@@@Z @ 98 NONAME ; void CXnNodeAppIf::SetPropertyL(class CXnProperty *) - ?View@CXnAppUiAdapter@@QBEAAVCAknView@@XZ @ 99 NONAME ; class CAknView & CXnAppUiAdapter::View(void) const - ?ViewNodeImpl@CXnNodePluginIf@@QAEPAVCXnViewNodeImpl@@XZ @ 100 NONAME ; class CXnViewNodeImpl * CXnNodePluginIf::ViewNodeImpl(void) - ?StripQuotes@CXnUtils@@SAXAAPAVHBufC16@@@Z @ 101 NONAME ; void CXnUtils::StripQuotes(class HBufC16 * &) - ?SetPCDataL@CXnNodePluginIf@@QAEXABVTDesC8@@@Z @ 102 NONAME ; void CXnNodePluginIf::SetPCDataL(class TDesC8 const &) - ?VisibilityL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 103 NONAME ; class CXnProperty * CXnNodePluginIf::VisibilityL(void) - ?Draw@CXnControlAdapter@@MBEXABVTRect@@@Z @ 104 NONAME ; void CXnControlAdapter::Draw(class TRect const &) const - ??1CXnApplication@@UAE@XZ @ 105 NONAME ; CXnApplication::~CXnApplication(void) - ?DoesNodeNeedComponentImplL@MXnComponentFactory@@QAEHABVTDesC8@@@Z @ 106 NONAME ; int MXnComponentFactory::DoesNodeNeedComponentImplL(class TDesC8 const &) - ?ConstructL@CXnViewsNodeImpl@@IAEXPAVCXnType@@@Z @ 107 NONAME ; void CXnViewsNodeImpl::ConstructL(class CXnType *) - ?StringPool@TXnUiEngineAppIf@@QAEAAVCXnDomStringPool@@XZ @ 108 NONAME ; class CXnDomStringPool & TXnUiEngineAppIf::StringPool(void) - ?UiEngineL@CXnNodePluginIf@@QAEPAVTXnUiEnginePluginIf@@XZ @ 109 NONAME ; class TXnUiEnginePluginIf * CXnNodePluginIf::UiEngineL(void) - ?ResolveSkinItemIDL@CXnUtils@@SAHABVTDesC16@@AAVTAknsItemID@@@Z @ 110 NONAME ; int CXnUtils::ResolveSkinItemIDL(class TDesC16 const &, class TAknsItemID &) - ?PluginNodeL@TXnUiEnginePluginIf@@QAEAAVCXnNodePluginIf@@PAV2@@Z @ 111 NONAME ; class CXnNodePluginIf & TXnUiEnginePluginIf::PluginNodeL(class CXnNodePluginIf *) - ?VerticalPixelValueL@TXnUiEnginePluginIf@@QAEHPAVCXnProperty@@H@Z @ 112 NONAME ; int TXnUiEnginePluginIf::VerticalPixelValueL(class CXnProperty *, int) - ?SetComponent@CXnControlAdapter@@QAEXPAVCXnComponent@@@Z @ 113 NONAME ; void CXnControlAdapter::SetComponent(class CXnComponent *) - ??0MXnNodePredicate@@QAE@XZ @ 114 NONAME ; MXnNodePredicate::MXnNodePredicate(void) - ??1CXnViewsNodeImpl@@UAE@XZ @ 115 NONAME ; CXnViewsNodeImpl::~CXnViewsNodeImpl(void) - ?HandleControlEventL@CXnControlAdapter@@UAEXPAVCCoeControl@@W4TCoeEvent@MCoeControlObserver@@@Z @ 116 NONAME ; void CXnControlAdapter::HandleControlEventL(class CCoeControl *, enum MCoeControlObserver::TCoeEvent) - ?HandleScreenDeviceChangedL@CXnControlAdapter@@UAEXXZ @ 117 NONAME ; void CXnControlAdapter::HandleScreenDeviceChangedL(void) - ?SizeChanged@CXnControlAdapter@@MAEXXZ @ 118 NONAME ; void CXnControlAdapter::SizeChanged(void) - ?CountComponentControls@CXnControlAdapter@@MBEHXZ @ 119 NONAME ; int CXnControlAdapter::CountComponentControls(void) const - ?HideTooltipsL@CXnNodeAppIf@@QAEXXZ @ 120 NONAME ; void CXnNodeAppIf::HideTooltipsL(void) - ?GetPropertyL@CXnNodeAppIf@@QBEPAVCXnProperty@@ABVTDesC8@@@Z @ 121 NONAME ; class CXnProperty * CXnNodeAppIf::GetPropertyL(class TDesC8 const &) const - ?FindNodeByClassL@TXnUiEngineAppIf@@QAE?AV?$RPointerArray@VCXnNodeAppIf@@@@ABVTDesC8@@0@Z @ 122 NONAME ; class RPointerArray TXnUiEngineAppIf::FindNodeByClassL(class TDesC8 const &, class TDesC8 const &) - ?Match@MXnNodePredicate@@UAEHAAVCXnNode@@@Z @ 123 NONAME ; int MXnNodePredicate::Match(class CXnNode &) - ?GetBitmapAndMask@CXnControlAdapter@@QAEXABVTDesC16@@0AAPAVCFbsBitmap@@1@Z @ 124 NONAME ; void CXnControlAdapter::GetBitmapAndMask(class TDesC16 const &, class TDesC16 const &, class CFbsBitmap * &, class CFbsBitmap * &) - ?NewL@CXnViewsNodeImpl@@SAPAV1@PAVCXnType@@@Z @ 125 NONAME ; class CXnViewsNodeImpl * CXnViewsNodeImpl::NewL(class CXnType *) - ?PaddingRect@CXnNodeAppIf@@QAE?AVTRect@@XZ @ 126 NONAME ; class TRect CXnNodeAppIf::PaddingRect(void) - ?SetMarginRect@CXnNodePluginIf@@QAEXABVTRect@@@Z @ 127 NONAME ; void CXnNodePluginIf::SetMarginRect(class TRect const &) - ?IsDialogDisplaying@TXnUiEnginePluginIf@@QAEHXZ @ 128 NONAME ; int TXnUiEnginePluginIf::IsDialogDisplaying(void) - ?HandleEventL@CXnAppUiAdapter@@UAEXABVTDesC16@@AAVCXnNodeAppIf@@@Z @ 129 NONAME ; void CXnAppUiAdapter::HandleEventL(class TDesC16 const &, class CXnNodeAppIf &) - ?GetPropertyL@CXnNodePluginIf@@QBEPAVCXnProperty@@ABVTDesC8@@@Z @ 130 NONAME ; class CXnProperty * CXnNodePluginIf::GetPropertyL(class TDesC8 const &) const - ?SetPropertyArrayL@CXnNodeAppIf@@QAEXPAV?$RPointerArray@VCXnProperty@@@@@Z @ 131 NONAME ; void CXnNodeAppIf::SetPropertyArrayL(class RPointerArray *) - ?RemoveViewL@CXnAppUiAdapter@@QAEXAAVCAknView@@@Z @ 132 NONAME ; void CXnAppUiAdapter::RemoveViewL(class CAknView &) - ?EnterPowerSaveModeL@CXnComponent@@UAEXXZ @ 133 NONAME ; void CXnComponent::EnterPowerSaveModeL(void) - ?SetRect@CXnNodePluginIf@@QAEXABVTRect@@@Z @ 134 NONAME ; void CXnNodePluginIf::SetRect(class TRect const &) - ??0CXnComponent@@IAE@XZ @ 135 NONAME ; CXnComponent::CXnComponent(void) - ?CollapseWhiteSpace@CXnUtils@@SAXAAVCXnNodePluginIf@@AAVTDes16@@@Z @ 136 NONAME ; void CXnUtils::CollapseWhiteSpace(class CXnNodePluginIf &, class TDes16 &) - ?SetHandleTooltip@CXnNodePluginIf@@QAEXH@Z @ 137 NONAME ; void CXnNodePluginIf::SetHandleTooltip(int) - ??1CXnAppUiAdapter@@UAE@XZ @ 138 NONAME ; CXnAppUiAdapter::~CXnAppUiAdapter(void) - ?NewL@CXnControlAdapter@@SAPAV1@AAVCXnNodePluginIf@@@Z @ 139 NONAME ; class CXnControlAdapter * CXnControlAdapter::NewL(class CXnNodePluginIf &) - ?EnableLongTapAnimation@CXnControlAdapter@@QAEXH@Z @ 140 NONAME ; void CXnControlAdapter::EnableLongTapAnimation(int) - ?SetPaddingRect@CXnNodePluginIf@@QAEXABVTRect@@@Z @ 141 NONAME ; void CXnNodePluginIf::SetPaddingRect(class TRect const &) - ?SetFocusedNode@TXnUiEnginePluginIf@@QAEXPAVCXnNodePluginIf@@@Z @ 142 NONAME ; void TXnUiEnginePluginIf::SetFocusedNode(class CXnNodePluginIf *) - ?ExitPowerSaveModeL@CXnComponent@@UAEXXZ @ 143 NONAME ; void CXnComponent::ExitPowerSaveModeL(void) - ?GetPCData@CXnNodeAppIf@@QBEABVTDesC8@@XZ @ 144 NONAME ; class TDesC8 const & CXnNodeAppIf::GetPCData(void) const - ?Namespace@CXnNodeAppIf@@QAEABVTDesC8@@XZ @ 145 NONAME ; class TDesC8 const & CXnNodeAppIf::Namespace(void) - ?LoadPublisher@CXnAppUiAdapter@@UAEXABVTAiFwPublisherInfo@@@Z @ 146 NONAME ; void CXnAppUiAdapter::LoadPublisher(class TAiFwPublisherInfo const &) - ??1CXnComponentNodeImpl@@UAE@XZ @ 147 NONAME ; CXnComponentNodeImpl::~CXnComponentNodeImpl(void) - ?SetPropertyWithoutNotificationL@CXnNodePluginIf@@QAEXPAVCXnProperty@@@Z @ 148 NONAME ; void CXnNodePluginIf::SetPropertyWithoutNotificationL(class CXnProperty *) - ?GetPCData@CXnNodePluginIf@@QBEABVTDesC8@@XZ @ 149 NONAME ; class TDesC8 const & CXnNodePluginIf::GetPCData(void) const - ?SetPCDataL@CXnNodeAppIf@@QAEXABVTDesC8@@@Z @ 150 NONAME ; void CXnNodeAppIf::SetPCDataL(class TDesC8 const &) - ?Resources@TXnUiEnginePluginIf@@QAEAAV?$CArrayPtrSeg@VCXnResource@@@@XZ @ 151 NONAME ; class CArrayPtrSeg & TXnUiEnginePluginIf::Resources(void) - ?SetContentBitmaps@CXnControlAdapter@@QAEXABVTDesC16@@0@Z @ 152 NONAME ; void CXnControlAdapter::SetContentBitmaps(class TDesC16 const &, class TDesC16 const &) - ??1CXnControlAdapter@@UAE@XZ @ 153 NONAME ; CXnControlAdapter::~CXnControlAdapter(void) - ??1MXnNodePredicate@@UAE@XZ @ 154 NONAME ; MXnNodePredicate::~MXnNodePredicate(void) - ?HorizontalTwipValueL@TXnUiEnginePluginIf@@QAEHPAVCXnProperty@@H@Z @ 155 NONAME ; int TXnUiEnginePluginIf::HorizontalTwipValueL(class CXnProperty *, int) - ?ConstructL@CXnAppUiAdapter@@UAEXXZ @ 156 NONAME ; void CXnAppUiAdapter::ConstructL(void) - ?CreateFontL@CXnUtils@@SAXAAVCXnNodePluginIf@@AAPAVCFont@@AAH@Z @ 157 NONAME ; void CXnUtils::CreateFontL(class CXnNodePluginIf &, class CFont * &, int &) - ??0CXnApplication@@QAE@VTUid@@@Z @ 158 NONAME ; CXnApplication::CXnApplication(class TUid) - ?ComponentControl@CXnControlAdapter@@MBEPAVCCoeControl@@H@Z @ 159 NONAME ; class CCoeControl * CXnControlAdapter::ComponentControl(int) const - ?HandleLongTapEventL@CXnControlAdapter@@UAEXABVTPoint@@0@Z @ 160 NONAME ; void CXnControlAdapter::HandleLongTapEventL(class TPoint const &, class TPoint const &) - ?ParentL@CXnNodeAppIf@@QBEPAV1@XZ @ 161 NONAME ; class CXnNodeAppIf * CXnNodeAppIf::ParentL(void) const - ??1CXnComponent@@UAE@XZ @ 162 NONAME ; CXnComponent::~CXnComponent(void) - ?ControlAdapter@CXnComponent@@QAEPAVCXnControlAdapter@@XZ @ 163 NONAME ; class CXnControlAdapter * CXnComponent::ControlAdapter(void) - ?DrawContentImage@CXnControlAdapter@@IBEXXZ @ 164 NONAME ; void CXnControlAdapter::DrawContentImage(void) const - ?Component@CXnComponentNodeImpl@@QAEPAVCXnComponent@@XZ @ 165 NONAME ; class CXnComponent * CXnComponentNodeImpl::Component(void) - ?WidgetsVisible@TXnUiEnginePluginIf@@QBEHXZ @ 166 NONAME ; int TXnUiEnginePluginIf::WidgetsVisible(void) const - ?SetControlAdapter@CXnComponent@@QAEXPAVCXnControlAdapter@@@Z @ 167 NONAME ; void CXnComponent::SetControlAdapter(class CXnControlAdapter *) - ?SetStateL@CXnNodePluginIf@@QAEXABVTDesC8@@@Z @ 168 NONAME ; void CXnNodePluginIf::SetStateL(class TDesC8 const &) - ?DoesComponentNeedCreation@CXnComponentNodeImpl@@QBEHXZ @ 169 NONAME ; int CXnComponentNodeImpl::DoesComponentNeedCreation(void) const - ??0CXnDocument@@QAE@AAVCEikApplication@@VTUid@@@Z @ 170 NONAME ; CXnDocument::CXnDocument(class CEikApplication &, class TUid) - ?FindNodeByClassL@TXnUiEnginePluginIf@@QAE?AV?$RPointerArray@VCXnNodePluginIf@@@@ABVTDesC16@@@Z @ 171 NONAME ; class RPointerArray TXnUiEnginePluginIf::FindNodeByClassL(class TDesC16 const &) - ?InternalDomNodeType@CXnNodeAppIf@@QBEABVTDesC8@@XZ @ 172 NONAME ; class TDesC8 const & CXnNodeAppIf::InternalDomNodeType(void) const - ?StringPool@TXnUiEnginePluginIf@@QAEAAVCXnDomStringPool@@XZ @ 173 NONAME ; class CXnDomStringPool & TXnUiEnginePluginIf::StringPool(void) - ?SetStateL@CXnNodeAppIf@@QAEXABVTDesC8@@@Z @ 174 NONAME ; void CXnNodeAppIf::SetStateL(class TDesC8 const &) - ?Type@CXnNodeAppIf@@QAEPAVCXnType@@XZ @ 175 NONAME ; class CXnType * CXnNodeAppIf::Type(void) - ?BorderRect@CXnNodeAppIf@@QAE?AVTRect@@XZ @ 176 NONAME ; class TRect CXnNodeAppIf::BorderRect(void) - ?IdL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 177 NONAME ; class CXnProperty * CXnNodePluginIf::IdL(void) - ?RootNodeL@TXnUiEngineAppIf@@QAEAAVCXnNodeAppIf@@XZ @ 178 NONAME ; class CXnNodeAppIf & TXnUiEngineAppIf::RootNodeL(void) - ?CreateXnComponentL@MXnComponentFactory@@QAE?AW4TXnComponentFactoryResponse@1@AAVCXnNodePluginIf@@AAPAVCXnComponent@@@Z @ 179 NONAME ; enum MXnComponentFactory::TXnComponentFactoryResponse MXnComponentFactory::CreateXnComponentL(class CXnNodePluginIf &, class CXnComponent * &) - ?RefreshMenuL@TXnUiEngineAppIf@@QAEXXZ @ 180 NONAME ; void TXnUiEngineAppIf::RefreshMenuL(void) - ?PaddingRect@CXnNodePluginIf@@QAE?AVTRect@@XZ @ 181 NONAME ; class TRect CXnNodePluginIf::PaddingRect(void) - ?MeasureAdaptiveContentL@CXnControlAdapter@@UAE?AVTSize@@ABV2@@Z @ 182 NONAME ; class TSize CXnControlAdapter::MeasureAdaptiveContentL(class TSize const &) - ?NewL@CXnProperty@@SAPAV1@ABVTDesC8@@0W4TPrimitiveValueType@CXnDomPropertyValue@@AAVCXnDomStringPool@@@Z @ 183 NONAME ; class CXnProperty * CXnProperty::NewL(class TDesC8 const &, class TDesC8 const &, enum CXnDomPropertyValue::TPrimitiveValueType, class CXnDomStringPool &) - ?GetPropertyL@CXnNodePluginIf@@QBEPAVCXnProperty@@AAV2@@Z @ 184 NONAME ; class CXnProperty * CXnNodePluginIf::GetPropertyL(class CXnProperty &) const - ?MarginRect@CXnNodeAppIf@@QAE?AVTRect@@XZ @ 185 NONAME ; class TRect CXnNodeAppIf::MarginRect(void) - ?EditMode@TXnUiEnginePluginIf@@QAEHXZ @ 186 NONAME ; int TXnUiEnginePluginIf::EditMode(void) - ?FindNodeByIdL@TXnUiEnginePluginIf@@QAEPAVCXnNodePluginIf@@ABVTDesC8@@0@Z @ 187 NONAME ; class CXnNodePluginIf * TXnUiEnginePluginIf::FindNodeByIdL(class TDesC8 const &, class TDesC8 const &) - ?MakeInterfaceL@CXnComponent@@UAEPAVMXnComponentInterface@XnComponentInterface@@ABVTDesC8@@@Z @ 188 NONAME ; class XnComponentInterface::MXnComponentInterface * CXnComponent::MakeInterfaceL(class TDesC8 const &) - ?EnableRenderUi@CXnUiEngineImpl@@CAXPAX@Z @ 189 NONAME ; void CXnUiEngineImpl::EnableRenderUi(void *) - ?IsMenuDisplaying@TXnUiEnginePluginIf@@QAEHXZ @ 190 NONAME ; int TXnUiEnginePluginIf::IsMenuDisplaying(void) - ?IsMenuDisplaying@TXnUiEngineAppIf@@QAEHXZ @ 191 NONAME ; int TXnUiEngineAppIf::IsMenuDisplaying(void) - ?NewL@CXnProperty@@SAPAV1@PAVCXnDomProperty@@@Z @ 192 NONAME ; class CXnProperty * CXnProperty::NewL(class CXnDomProperty *) - ?ConstructL@CXnComponentNodeImpl@@IAEXPAVCXnType@@@Z @ 193 NONAME ; void CXnComponentNodeImpl::ConstructL(class CXnType *) - ?ChildrenL@CXnNodeAppIf@@QAE?AV?$RPointerArray@VCXnNodeAppIf@@@@XZ @ 194 NONAME ; class RPointerArray CXnNodeAppIf::ChildrenL(void) - ?ConvertHslToRgb@CXnUtils@@SA?AVTRgb@@HHH@Z @ 195 NONAME ; class TRgb CXnUtils::ConvertHslToRgb(int, int, int) - ?LoadBitmap@CXnControlAdapter@@QAEPAVCFbsBitmap@@ABVTDesC16@@@Z @ 196 NONAME ; class CFbsBitmap * CXnControlAdapter::LoadBitmap(class TDesC16 const &) - ??0MXnComponentFactory@@IAE@XZ @ 197 NONAME ; MXnComponentFactory::MXnComponentFactory(void) - ?SetComponent@CXnViewsNodeImpl@@QAEXPAVCXnComponent@@@Z @ 198 NONAME ; void CXnViewsNodeImpl::SetComponent(class CXnComponent *) - ?BorderRect@CXnNodePluginIf@@QAE?AVTRect@@XZ @ 199 NONAME ; class TRect CXnNodePluginIf::BorderRect(void) - ?CreateDocumentL@CXnApplication@@MAEPAVCApaDocument@@XZ @ 200 NONAME ; class CApaDocument * CXnApplication::CreateDocumentL(void) - ?HandleUiReadyEventL@CXnAppUiAdapter@@UAEXXZ @ 201 NONAME ; void CXnAppUiAdapter::HandleUiReadyEventL(void) - ?CreateFontL@CXnUtils@@SAXABVTDesC16@@HVTFontStyle@@AAPAVCFont@@AAH@Z @ 202 NONAME ; void CXnUtils::CreateFontL(class TDesC16 const &, int, class TFontStyle, class CFont * &, int &) - ?GetPluginNodeArrayL@TXnUiEngineAppIf@@QAEHAAV?$RPointerArray@VCXnNodeAppIf@@@@@Z @ 203 NONAME ; int TXnUiEngineAppIf::GetPluginNodeArrayL(class RPointerArray &) - ?MakeXnControlAdapterL@MXnComponentFactory@@EAEPAVCXnControlAdapter@@AAVCXnNodePluginIf@@PAV2@@Z @ 204 NONAME ; class CXnControlAdapter * MXnComponentFactory::MakeXnControlAdapterL(class CXnNodePluginIf &, class CXnControlAdapter *) - ?IsDrawingAllowed@CXnNodePluginIf@@QBEHXZ @ 205 NONAME ; int CXnNodePluginIf::IsDrawingAllowed(void) const - ?MakeInterfaceL@CXnNodeAppIf@@QAEPAVMXnComponentInterface@XnComponentInterface@@ABVTDesC8@@@Z @ 206 NONAME ; class XnComponentInterface::MXnComponentInterface * CXnNodeAppIf::MakeInterfaceL(class TDesC8 const &) - ?VerticalTwipValueL@TXnUiEnginePluginIf@@QAEHPAVCXnProperty@@H@Z @ 207 NONAME ; int TXnUiEnginePluginIf::VerticalTwipValueL(class CXnProperty *, int) - ?Component@CXnControlAdapter@@QAEPAVCXnComponent@@XZ @ 208 NONAME ; class CXnComponent * CXnControlAdapter::Component(void) - ?FloatValueL@CXnProperty@@QAENXZ @ 209 NONAME ; double CXnProperty::FloatValueL(void) - ?SetUiEngine@TXnUiEngineAppIf@@QAEXPAVCXnUiEngine@@@Z @ 210 NONAME ; void TXnUiEngineAppIf::SetUiEngine(class CXnUiEngine *) - ?FindNodeByIdL@TXnUiEngineAppIf@@QAEPAVCXnNodeAppIf@@ABVTDesC16@@0@Z @ 211 NONAME ; class CXnNodeAppIf * TXnUiEngineAppIf::FindNodeByIdL(class TDesC16 const &, class TDesC16 const &) - ?IsEditMode@TXnUiEngineAppIf@@QAEHXZ @ 212 NONAME ; int TXnUiEngineAppIf::IsEditMode(void) - ?ResolveSkinItemIDL@CXnUtils@@SAHABVTDesC16@@AAVTAknsItemID@@AAH@Z @ 213 NONAME ; int CXnUtils::ResolveSkinItemIDL(class TDesC16 const &, class TAknsItemID &, int &) + ?HandlePointerEventL@CXnControlAdapter@@UAEXABUTPointerEvent@@@Z @ 42 NONAME ; void CXnControlAdapter::HandlePointerEventL(struct TPointerEvent const &) + ??1CXnDocument@@UAE@XZ @ 43 NONAME ; CXnDocument::~CXnDocument(void) + ?HandleResourceChangeL@CXnAppUiAdapter@@MAEXH@Z @ 44 NONAME ; void CXnAppUiAdapter::HandleResourceChangeL(int) + ?DoEnterPowerSaveModeL@CXnControlAdapter@@UAEXW4TModeEvent@1@@Z @ 45 NONAME ; void CXnControlAdapter::DoEnterPowerSaveModeL(enum CXnControlAdapter::TModeEvent) + ?CloneL@CXnProperty@@QAEPAV1@XZ @ 46 NONAME ; class CXnProperty * CXnProperty::CloneL(void) + ?ReportTriggerEventL@CXnNodePluginIf@@QAEXABVTDesC8@@00@Z @ 47 NONAME ; void CXnNodePluginIf::ReportTriggerEventL(class TDesC8 const &, class TDesC8 const &, class TDesC8 const &) + ?FocusedNodeL@TXnUiEnginePluginIf@@QAEPAVCXnNodePluginIf@@XZ @ 48 NONAME ; class CXnNodePluginIf * TXnUiEnginePluginIf::FocusedNodeL(void) + ?FindContentSourceNodesL@TXnUiEngineAppIf@@QAE?AV?$RPointerArray@VCXnNodeAppIf@@@@ABVTDesC8@@@Z @ 49 NONAME ; class RPointerArray TXnUiEngineAppIf::FindContentSourceNodesL(class TDesC8 const &) + ?EqualsL@CXnProperty@@QBEHAAV1@@Z @ 50 NONAME ; int CXnProperty::EqualsL(class CXnProperty &) const + ?ScreenDeviceSize@TXnUiEnginePluginIf@@QAE?AVTSize@@XZ @ 51 NONAME ; class TSize TXnUiEnginePluginIf::ScreenDeviceSize(void) + ??0CXnControlAdapter@@IAE@XZ @ 52 NONAME ; CXnControlAdapter::CXnControlAdapter(void) + ?UiEngineL@CXnNodeAppIf@@QAEPAVTXnUiEngineAppIf@@XZ @ 53 NONAME ; class TXnUiEngineAppIf * CXnNodeAppIf::UiEngineL(void) + ?LongTapDetector@CXnControlAdapter@@QBEPAVCAknLongTapDetector@@XZ @ 54 NONAME ; class CAknLongTapDetector * CXnControlAdapter::LongTapDetector(void) const + ??0CXnAppUiAdapter@@QAE@VTUid@@@Z @ 55 NONAME ; CXnAppUiAdapter::CXnAppUiAdapter(class TUid) + ?DestroyPublisher@CXnAppUiAdapter@@UAEXABVTAiFwPublisherInfo@@@Z @ 56 NONAME ; void CXnAppUiAdapter::DestroyPublisher(class TAiFwPublisherInfo const &) + ?Rect@CXnNodePluginIf@@QAE?AVTRect@@XZ @ 57 NONAME ; class TRect CXnNodePluginIf::Rect(void) + ?AddChildL@CXnNodePluginIf@@QAEXPAV1@@Z @ 58 NONAME ; void CXnNodePluginIf::AddChildL(class CXnNodePluginIf *) + ?SetNode@CXnComponent@@QAEXAAVCXnNodePluginIf@@@Z @ 59 NONAME ; void CXnComponent::SetNode(class CXnNodePluginIf &) + ?ResetStylusCounter@CXnControlAdapter@@QAEXXZ @ 60 NONAME ; void CXnControlAdapter::ResetStylusCounter(void) + ?SetComponent@CXnComponentNodeImpl@@QAEXPAVCXnComponent@@@Z @ 61 NONAME ; void CXnComponentNodeImpl::SetComponent(class CXnComponent *) + ?LayoutUIL@TXnUiEnginePluginIf@@QAEXPAVCXnNodePluginIf@@@Z @ 62 NONAME ; void TXnUiEnginePluginIf::LayoutUIL(class CXnNodePluginIf *) + ?ExitPowerSaveModeL@CXnControlAdapter@@QAEXW4TModeEvent@1@@Z @ 63 NONAME ; void CXnControlAdapter::ExitPowerSaveModeL(enum CXnControlAdapter::TModeEvent) + ?PublisherInfo@CXnAppUiAdapter@@UAEHAAVCXnNodeAppIf@@AAVTHsPublisherInfo@@@Z @ 64 NONAME ; int CXnAppUiAdapter::PublisherInfo(class CXnNodeAppIf &, class THsPublisherInfo &) + ?GetThemeResource@TXnUiEngineAppIf@@QAEHABVTDesC16@@AAVRFile@@@Z @ 65 NONAME ; int TXnUiEngineAppIf::GetThemeResource(class TDesC16 const &, class RFile &) + ?ConstructL@CXnComponent@@IAEXXZ @ 66 NONAME ; void CXnComponent::ConstructL(void) + ?FindResource@CXnUtils@@SAPAVCXnResource@@AAV?$CArrayPtrSeg@VCXnResource@@@@ABVTDesC16@@AAH@Z @ 67 NONAME ; class CXnResource * CXnUtils::FindResource(class CArrayPtrSeg &, class TDesC16 const &, int &) + ?UnsetStateL@CXnNodeAppIf@@QAEXABVTDesC8@@@Z @ 68 NONAME ; void CXnNodeAppIf::UnsetStateL(class TDesC8 const &) + ?Uid@CXnDocument@@QAE?AVTUid@@XZ @ 69 NONAME ; class TUid CXnDocument::Uid(void) + ?FocusChanged@CXnControlAdapter@@UAEXW4TDrawNow@@@Z @ 70 NONAME ; void CXnControlAdapter::FocusChanged(enum TDrawNow) + ?SetBlank@CXnControlAdapter@@QAEXH@Z @ 71 NONAME ; void CXnControlAdapter::SetBlank(int) + ?ProcessMessageL@CXnAppUiAdapter@@UAEXVTUid@@ABVTDesC8@@@Z @ 72 NONAME ; void CXnAppUiAdapter::ProcessMessageL(class TUid, class TDesC8 const &) + ?Component@CXnNodeAppIf@@QAEAAVCXnComponent@@XZ @ 73 NONAME ; class CXnComponent & CXnNodeAppIf::Component(void) + ?SetLayoutCapable@CXnNodePluginIf@@QAEXH@Z @ 74 NONAME ; void CXnNodePluginIf::SetLayoutCapable(int) + ?MarginRect@CXnNodePluginIf@@QAE?AVTRect@@XZ @ 75 NONAME ; class TRect CXnNodePluginIf::MarginRect(void) + ?UiEngineL@CXnAppUiAdapter@@QAEPAVTXnUiEngineAppIf@@XZ @ 76 NONAME ; class TXnUiEngineAppIf * CXnAppUiAdapter::UiEngineL(void) + ?ActiveView@TXnUiEngineAppIf@@QAEPAVCXnNodeAppIf@@XZ @ 77 NONAME ; class CXnNodeAppIf * TXnUiEngineAppIf::ActiveView(void) + ?HandleXuikonEventL@CXnAppUiAdapter@@UAEXAAVCXnNodeAppIf@@0AAVCXnDomNode@@1@Z @ 78 NONAME ; void CXnAppUiAdapter::HandleXuikonEventL(class CXnNodeAppIf &, class CXnNodeAppIf &, class CXnDomNode &, class CXnDomNode &) + ?RenderUIL@TXnUiEngineAppIf@@QAEXPAVCXnNodeAppIf@@@Z @ 79 NONAME ; void TXnUiEngineAppIf::RenderUIL(class CXnNodeAppIf *) + ?PrepareToExit@CXnAppUiAdapter@@MAEXXZ @ 80 NONAME ; void CXnAppUiAdapter::PrepareToExit(void) + ?DoHandlePropertyChangeL@CXnControlAdapter@@UAEXPAVCXnProperty@@@Z @ 81 NONAME ; void CXnControlAdapter::DoHandlePropertyChangeL(class CXnProperty *) + ?ConstructL@CXnControlAdapter@@IAEXAAVCXnNodePluginIf@@@Z @ 82 NONAME ; void CXnControlAdapter::ConstructL(class CXnNodePluginIf &) + ?FocusedNode@TXnUiEngineAppIf@@QAEPAVCXnNodeAppIf@@XZ @ 83 NONAME ; class CXnNodeAppIf * TXnUiEngineAppIf::FocusedNode(void) + ?SetDataL@CXnComponent@@QAEXABVTDesC8@@ABVTDesC16@@H@Z @ 84 NONAME ; void CXnComponent::SetDataL(class TDesC8 const &, class TDesC16 const &, int) + ?OfferKeyEventL@CXnControlAdapter@@UAE?AW4TKeyResponse@@ABUTKeyEvent@@W4TEventCode@@@Z @ 85 NONAME ; enum TKeyResponse CXnControlAdapter::OfferKeyEventL(struct TKeyEvent const &, enum TEventCode) + ?IsDrawingAllowed@CXnControlAdapter@@QBEHXZ @ 86 NONAME ; int CXnControlAdapter::IsDrawingAllowed(void) const + ?DisplayL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 87 NONAME ; class CXnProperty * CXnNodePluginIf::DisplayL(void) + ?NewL@CXnProperty@@SAPAV1@ABVTDesC8@@PAVCXnDomPropertyValue@@AAVCXnDomStringPool@@@Z @ 88 NONAME ; class CXnProperty * CXnProperty::NewL(class TDesC8 const &, class CXnDomPropertyValue *, class CXnDomStringPool &) + ?Rect@CXnNodeAppIf@@QAE?AVTRect@@XZ @ 89 NONAME ; class TRect CXnNodeAppIf::Rect(void) + ?NewL@CXnComponentNodeImpl@@SAPAV1@PAVCXnType@@@Z @ 90 NONAME ; class CXnComponentNodeImpl * CXnComponentNodeImpl::NewL(class CXnType *) + ?WidgetsVisible@TXnUiEngineAppIf@@QBEHXZ @ 91 NONAME ; int TXnUiEngineAppIf::WidgetsVisible(void) const + ?Type@CXnNodePluginIf@@QAEPAVCXnType@@XZ @ 92 NONAME ; class CXnType * CXnNodePluginIf::Type(void) + ?MakeXnComponentL@MXnComponentFactory@@EAE?AW4TXnComponentFactoryResponse@1@AAVCXnNodePluginIf@@AAPAVCXnComponent@@@Z @ 93 NONAME ; enum MXnComponentFactory::TXnComponentFactoryResponse MXnComponentFactory::MakeXnComponentL(class CXnNodePluginIf &, class CXnComponent * &) + ?UnsetStateL@CXnNodePluginIf@@QAEXABVTDesC8@@@Z @ 94 NONAME ; void CXnNodePluginIf::UnsetStateL(class TDesC8 const &) + ?StringValueL@CXnProperty@@QAEPAVHBufC16@@XZ @ 95 NONAME ; class HBufC16 * CXnProperty::StringValueL(void) + ?DisableRenderUiLC@TXnUiEnginePluginIf@@QAEXXZ @ 96 NONAME ; void TXnUiEnginePluginIf::DisableRenderUiLC(void) + ?SetPropertyL@CXnNodeAppIf@@QAEXPAVCXnProperty@@@Z @ 97 NONAME ; void CXnNodeAppIf::SetPropertyL(class CXnProperty *) + ?View@CXnAppUiAdapter@@QBEAAVCAknView@@XZ @ 98 NONAME ; class CAknView & CXnAppUiAdapter::View(void) const + ?ViewNodeImpl@CXnNodePluginIf@@QAEPAVCXnViewNodeImpl@@XZ @ 99 NONAME ; class CXnViewNodeImpl * CXnNodePluginIf::ViewNodeImpl(void) + ?StripQuotes@CXnUtils@@SAXAAPAVHBufC16@@@Z @ 100 NONAME ; void CXnUtils::StripQuotes(class HBufC16 * &) + ?SetPCDataL@CXnNodePluginIf@@QAEXABVTDesC8@@@Z @ 101 NONAME ; void CXnNodePluginIf::SetPCDataL(class TDesC8 const &) + ?VisibilityL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 102 NONAME ; class CXnProperty * CXnNodePluginIf::VisibilityL(void) + ?Draw@CXnControlAdapter@@MBEXABVTRect@@@Z @ 103 NONAME ; void CXnControlAdapter::Draw(class TRect const &) const + ??1CXnApplication@@UAE@XZ @ 104 NONAME ; CXnApplication::~CXnApplication(void) + ?DoesNodeNeedComponentImplL@MXnComponentFactory@@QAEHABVTDesC8@@@Z @ 105 NONAME ; int MXnComponentFactory::DoesNodeNeedComponentImplL(class TDesC8 const &) + ?ConstructL@CXnViewsNodeImpl@@IAEXPAVCXnType@@@Z @ 106 NONAME ; void CXnViewsNodeImpl::ConstructL(class CXnType *) + ?StringPool@TXnUiEngineAppIf@@QAEAAVCXnDomStringPool@@XZ @ 107 NONAME ; class CXnDomStringPool & TXnUiEngineAppIf::StringPool(void) + ?UiEngineL@CXnNodePluginIf@@QAEPAVTXnUiEnginePluginIf@@XZ @ 108 NONAME ; class TXnUiEnginePluginIf * CXnNodePluginIf::UiEngineL(void) + ?ResolveSkinItemIDL@CXnUtils@@SAHABVTDesC16@@AAVTAknsItemID@@@Z @ 109 NONAME ; int CXnUtils::ResolveSkinItemIDL(class TDesC16 const &, class TAknsItemID &) + ?PluginNodeL@TXnUiEnginePluginIf@@QAEAAVCXnNodePluginIf@@PAV2@@Z @ 110 NONAME ; class CXnNodePluginIf & TXnUiEnginePluginIf::PluginNodeL(class CXnNodePluginIf *) + ?VerticalPixelValueL@TXnUiEnginePluginIf@@QAEHPAVCXnProperty@@H@Z @ 111 NONAME ; int TXnUiEnginePluginIf::VerticalPixelValueL(class CXnProperty *, int) + ?SetComponent@CXnControlAdapter@@QAEXPAVCXnComponent@@@Z @ 112 NONAME ; void CXnControlAdapter::SetComponent(class CXnComponent *) + ??0MXnNodePredicate@@QAE@XZ @ 113 NONAME ; MXnNodePredicate::MXnNodePredicate(void) + ??1CXnViewsNodeImpl@@UAE@XZ @ 114 NONAME ; CXnViewsNodeImpl::~CXnViewsNodeImpl(void) + ?HandleControlEventL@CXnControlAdapter@@UAEXPAVCCoeControl@@W4TCoeEvent@MCoeControlObserver@@@Z @ 115 NONAME ; void CXnControlAdapter::HandleControlEventL(class CCoeControl *, enum MCoeControlObserver::TCoeEvent) + ?HandleScreenDeviceChangedL@CXnControlAdapter@@UAEXXZ @ 116 NONAME ; void CXnControlAdapter::HandleScreenDeviceChangedL(void) + ?SizeChanged@CXnControlAdapter@@MAEXXZ @ 117 NONAME ; void CXnControlAdapter::SizeChanged(void) + ?CountComponentControls@CXnControlAdapter@@MBEHXZ @ 118 NONAME ; int CXnControlAdapter::CountComponentControls(void) const + ?HideTooltipsL@CXnNodeAppIf@@QAEXXZ @ 119 NONAME ; void CXnNodeAppIf::HideTooltipsL(void) + ?GetPropertyL@CXnNodeAppIf@@QBEPAVCXnProperty@@ABVTDesC8@@@Z @ 120 NONAME ; class CXnProperty * CXnNodeAppIf::GetPropertyL(class TDesC8 const &) const + ?FindNodeByClassL@TXnUiEngineAppIf@@QAE?AV?$RPointerArray@VCXnNodeAppIf@@@@ABVTDesC8@@0@Z @ 121 NONAME ; class RPointerArray TXnUiEngineAppIf::FindNodeByClassL(class TDesC8 const &, class TDesC8 const &) + ?Match@MXnNodePredicate@@UAEHAAVCXnNode@@@Z @ 122 NONAME ; int MXnNodePredicate::Match(class CXnNode &) + ?GetBitmapAndMask@CXnControlAdapter@@QAEXABVTDesC16@@0AAPAVCFbsBitmap@@1@Z @ 123 NONAME ; void CXnControlAdapter::GetBitmapAndMask(class TDesC16 const &, class TDesC16 const &, class CFbsBitmap * &, class CFbsBitmap * &) + ?NewL@CXnViewsNodeImpl@@SAPAV1@PAVCXnType@@@Z @ 124 NONAME ; class CXnViewsNodeImpl * CXnViewsNodeImpl::NewL(class CXnType *) + ?PaddingRect@CXnNodeAppIf@@QAE?AVTRect@@XZ @ 125 NONAME ; class TRect CXnNodeAppIf::PaddingRect(void) + ?SetMarginRect@CXnNodePluginIf@@QAEXABVTRect@@@Z @ 126 NONAME ; void CXnNodePluginIf::SetMarginRect(class TRect const &) + ?IsDialogDisplaying@TXnUiEnginePluginIf@@QAEHXZ @ 127 NONAME ; int TXnUiEnginePluginIf::IsDialogDisplaying(void) + ?HandleEventL@CXnAppUiAdapter@@UAEXABVTDesC16@@AAVCXnNodeAppIf@@@Z @ 128 NONAME ; void CXnAppUiAdapter::HandleEventL(class TDesC16 const &, class CXnNodeAppIf &) + ?GetPropertyL@CXnNodePluginIf@@QBEPAVCXnProperty@@ABVTDesC8@@@Z @ 129 NONAME ; class CXnProperty * CXnNodePluginIf::GetPropertyL(class TDesC8 const &) const + ?SetPropertyArrayL@CXnNodeAppIf@@QAEXPAV?$RPointerArray@VCXnProperty@@@@@Z @ 130 NONAME ; void CXnNodeAppIf::SetPropertyArrayL(class RPointerArray *) + ?RemoveViewL@CXnAppUiAdapter@@QAEXAAVCAknView@@@Z @ 131 NONAME ; void CXnAppUiAdapter::RemoveViewL(class CAknView &) + ?EnterPowerSaveModeL@CXnComponent@@UAEXXZ @ 132 NONAME ; void CXnComponent::EnterPowerSaveModeL(void) + ?SetRect@CXnNodePluginIf@@QAEXABVTRect@@@Z @ 133 NONAME ; void CXnNodePluginIf::SetRect(class TRect const &) + ??0CXnComponent@@IAE@XZ @ 134 NONAME ; CXnComponent::CXnComponent(void) + ?CollapseWhiteSpace@CXnUtils@@SAXAAVCXnNodePluginIf@@AAVTDes16@@@Z @ 135 NONAME ; void CXnUtils::CollapseWhiteSpace(class CXnNodePluginIf &, class TDes16 &) + ?SetHandleTooltip@CXnNodePluginIf@@QAEXH@Z @ 136 NONAME ; void CXnNodePluginIf::SetHandleTooltip(int) + ??1CXnAppUiAdapter@@UAE@XZ @ 137 NONAME ; CXnAppUiAdapter::~CXnAppUiAdapter(void) + ?NewL@CXnControlAdapter@@SAPAV1@AAVCXnNodePluginIf@@@Z @ 138 NONAME ; class CXnControlAdapter * CXnControlAdapter::NewL(class CXnNodePluginIf &) + ?EnableLongTapAnimation@CXnControlAdapter@@QAEXH@Z @ 139 NONAME ; void CXnControlAdapter::EnableLongTapAnimation(int) + ?SetPaddingRect@CXnNodePluginIf@@QAEXABVTRect@@@Z @ 140 NONAME ; void CXnNodePluginIf::SetPaddingRect(class TRect const &) + ?SetFocusedNode@TXnUiEnginePluginIf@@QAEXPAVCXnNodePluginIf@@@Z @ 141 NONAME ; void TXnUiEnginePluginIf::SetFocusedNode(class CXnNodePluginIf *) + ?ExitPowerSaveModeL@CXnComponent@@UAEXXZ @ 142 NONAME ; void CXnComponent::ExitPowerSaveModeL(void) + ?GetPCData@CXnNodeAppIf@@QBEABVTDesC8@@XZ @ 143 NONAME ; class TDesC8 const & CXnNodeAppIf::GetPCData(void) const + ?Namespace@CXnNodeAppIf@@QAEABVTDesC8@@XZ @ 144 NONAME ; class TDesC8 const & CXnNodeAppIf::Namespace(void) + ?LoadPublisher@CXnAppUiAdapter@@UAEXABVTAiFwPublisherInfo@@@Z @ 145 NONAME ; void CXnAppUiAdapter::LoadPublisher(class TAiFwPublisherInfo const &) + ??1CXnComponentNodeImpl@@UAE@XZ @ 146 NONAME ; CXnComponentNodeImpl::~CXnComponentNodeImpl(void) + ?SetPropertyWithoutNotificationL@CXnNodePluginIf@@QAEXPAVCXnProperty@@@Z @ 147 NONAME ; void CXnNodePluginIf::SetPropertyWithoutNotificationL(class CXnProperty *) + ?GetPCData@CXnNodePluginIf@@QBEABVTDesC8@@XZ @ 148 NONAME ; class TDesC8 const & CXnNodePluginIf::GetPCData(void) const + ?SetPCDataL@CXnNodeAppIf@@QAEXABVTDesC8@@@Z @ 149 NONAME ; void CXnNodeAppIf::SetPCDataL(class TDesC8 const &) + ?Resources@TXnUiEnginePluginIf@@QAEAAV?$CArrayPtrSeg@VCXnResource@@@@XZ @ 150 NONAME ; class CArrayPtrSeg & TXnUiEnginePluginIf::Resources(void) + ?SetContentBitmaps@CXnControlAdapter@@QAEXABVTDesC16@@0@Z @ 151 NONAME ; void CXnControlAdapter::SetContentBitmaps(class TDesC16 const &, class TDesC16 const &) + ??1CXnControlAdapter@@UAE@XZ @ 152 NONAME ; CXnControlAdapter::~CXnControlAdapter(void) + ??1MXnNodePredicate@@UAE@XZ @ 153 NONAME ; MXnNodePredicate::~MXnNodePredicate(void) + ?HorizontalTwipValueL@TXnUiEnginePluginIf@@QAEHPAVCXnProperty@@H@Z @ 154 NONAME ; int TXnUiEnginePluginIf::HorizontalTwipValueL(class CXnProperty *, int) + ?ConstructL@CXnAppUiAdapter@@UAEXXZ @ 155 NONAME ; void CXnAppUiAdapter::ConstructL(void) + ?CreateFontL@CXnUtils@@SAXAAVCXnNodePluginIf@@AAPAVCFont@@AAH@Z @ 156 NONAME ; void CXnUtils::CreateFontL(class CXnNodePluginIf &, class CFont * &, int &) + ??0CXnApplication@@QAE@VTUid@@@Z @ 157 NONAME ; CXnApplication::CXnApplication(class TUid) + ?ComponentControl@CXnControlAdapter@@MBEPAVCCoeControl@@H@Z @ 158 NONAME ; class CCoeControl * CXnControlAdapter::ComponentControl(int) const + ?HandleLongTapEventL@CXnControlAdapter@@UAEXABVTPoint@@0@Z @ 159 NONAME ; void CXnControlAdapter::HandleLongTapEventL(class TPoint const &, class TPoint const &) + ?ParentL@CXnNodeAppIf@@QBEPAV1@XZ @ 160 NONAME ; class CXnNodeAppIf * CXnNodeAppIf::ParentL(void) const + ??1CXnComponent@@UAE@XZ @ 161 NONAME ; CXnComponent::~CXnComponent(void) + ?ControlAdapter@CXnComponent@@QAEPAVCXnControlAdapter@@XZ @ 162 NONAME ; class CXnControlAdapter * CXnComponent::ControlAdapter(void) + ?DrawContentImage@CXnControlAdapter@@IBEXXZ @ 163 NONAME ; void CXnControlAdapter::DrawContentImage(void) const + ?Component@CXnComponentNodeImpl@@QAEPAVCXnComponent@@XZ @ 164 NONAME ; class CXnComponent * CXnComponentNodeImpl::Component(void) + ?WidgetsVisible@TXnUiEnginePluginIf@@QBEHXZ @ 165 NONAME ; int TXnUiEnginePluginIf::WidgetsVisible(void) const + ?SetControlAdapter@CXnComponent@@QAEXPAVCXnControlAdapter@@@Z @ 166 NONAME ; void CXnComponent::SetControlAdapter(class CXnControlAdapter *) + ?SetStateL@CXnNodePluginIf@@QAEXABVTDesC8@@@Z @ 167 NONAME ; void CXnNodePluginIf::SetStateL(class TDesC8 const &) + ?DoesComponentNeedCreation@CXnComponentNodeImpl@@QBEHXZ @ 168 NONAME ; int CXnComponentNodeImpl::DoesComponentNeedCreation(void) const + ??0CXnDocument@@QAE@AAVCEikApplication@@VTUid@@@Z @ 169 NONAME ; CXnDocument::CXnDocument(class CEikApplication &, class TUid) + ?FindNodeByClassL@TXnUiEnginePluginIf@@QAE?AV?$RPointerArray@VCXnNodePluginIf@@@@ABVTDesC16@@@Z @ 170 NONAME ; class RPointerArray TXnUiEnginePluginIf::FindNodeByClassL(class TDesC16 const &) + ?InternalDomNodeType@CXnNodeAppIf@@QBEABVTDesC8@@XZ @ 171 NONAME ; class TDesC8 const & CXnNodeAppIf::InternalDomNodeType(void) const + ?StringPool@TXnUiEnginePluginIf@@QAEAAVCXnDomStringPool@@XZ @ 172 NONAME ; class CXnDomStringPool & TXnUiEnginePluginIf::StringPool(void) + ?SetStateL@CXnNodeAppIf@@QAEXABVTDesC8@@@Z @ 173 NONAME ; void CXnNodeAppIf::SetStateL(class TDesC8 const &) + ?Type@CXnNodeAppIf@@QAEPAVCXnType@@XZ @ 174 NONAME ; class CXnType * CXnNodeAppIf::Type(void) + ?BorderRect@CXnNodeAppIf@@QAE?AVTRect@@XZ @ 175 NONAME ; class TRect CXnNodeAppIf::BorderRect(void) + ?IdL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 176 NONAME ; class CXnProperty * CXnNodePluginIf::IdL(void) + ?RootNodeL@TXnUiEngineAppIf@@QAEAAVCXnNodeAppIf@@XZ @ 177 NONAME ; class CXnNodeAppIf & TXnUiEngineAppIf::RootNodeL(void) + ?CreateXnComponentL@MXnComponentFactory@@QAE?AW4TXnComponentFactoryResponse@1@AAVCXnNodePluginIf@@AAPAVCXnComponent@@@Z @ 178 NONAME ; enum MXnComponentFactory::TXnComponentFactoryResponse MXnComponentFactory::CreateXnComponentL(class CXnNodePluginIf &, class CXnComponent * &) + ?RefreshMenuL@TXnUiEngineAppIf@@QAEXXZ @ 179 NONAME ; void TXnUiEngineAppIf::RefreshMenuL(void) + ?PaddingRect@CXnNodePluginIf@@QAE?AVTRect@@XZ @ 180 NONAME ; class TRect CXnNodePluginIf::PaddingRect(void) + ?MeasureAdaptiveContentL@CXnControlAdapter@@UAE?AVTSize@@ABV2@@Z @ 181 NONAME ; class TSize CXnControlAdapter::MeasureAdaptiveContentL(class TSize const &) + ?NewL@CXnProperty@@SAPAV1@ABVTDesC8@@0W4TPrimitiveValueType@CXnDomPropertyValue@@AAVCXnDomStringPool@@@Z @ 182 NONAME ; class CXnProperty * CXnProperty::NewL(class TDesC8 const &, class TDesC8 const &, enum CXnDomPropertyValue::TPrimitiveValueType, class CXnDomStringPool &) + ?GetPropertyL@CXnNodePluginIf@@QBEPAVCXnProperty@@AAV2@@Z @ 183 NONAME ; class CXnProperty * CXnNodePluginIf::GetPropertyL(class CXnProperty &) const + ?MarginRect@CXnNodeAppIf@@QAE?AVTRect@@XZ @ 184 NONAME ; class TRect CXnNodeAppIf::MarginRect(void) + ?EditMode@TXnUiEnginePluginIf@@QAEHXZ @ 185 NONAME ; int TXnUiEnginePluginIf::EditMode(void) + ?FindNodeByIdL@TXnUiEnginePluginIf@@QAEPAVCXnNodePluginIf@@ABVTDesC8@@0@Z @ 186 NONAME ; class CXnNodePluginIf * TXnUiEnginePluginIf::FindNodeByIdL(class TDesC8 const &, class TDesC8 const &) + ?MakeInterfaceL@CXnComponent@@UAEPAVMXnComponentInterface@XnComponentInterface@@ABVTDesC8@@@Z @ 187 NONAME ; class XnComponentInterface::MXnComponentInterface * CXnComponent::MakeInterfaceL(class TDesC8 const &) + ?EnableRenderUi@CXnUiEngineImpl@@CAXPAX@Z @ 188 NONAME ; void CXnUiEngineImpl::EnableRenderUi(void *) + ?IsMenuDisplaying@TXnUiEnginePluginIf@@QAEHXZ @ 189 NONAME ; int TXnUiEnginePluginIf::IsMenuDisplaying(void) + ?IsMenuDisplaying@TXnUiEngineAppIf@@QAEHXZ @ 190 NONAME ; int TXnUiEngineAppIf::IsMenuDisplaying(void) + ?NewL@CXnProperty@@SAPAV1@PAVCXnDomProperty@@@Z @ 191 NONAME ; class CXnProperty * CXnProperty::NewL(class CXnDomProperty *) + ?ConstructL@CXnComponentNodeImpl@@IAEXPAVCXnType@@@Z @ 192 NONAME ; void CXnComponentNodeImpl::ConstructL(class CXnType *) + ?ChildrenL@CXnNodeAppIf@@QAE?AV?$RPointerArray@VCXnNodeAppIf@@@@XZ @ 193 NONAME ; class RPointerArray CXnNodeAppIf::ChildrenL(void) + ?ConvertHslToRgb@CXnUtils@@SA?AVTRgb@@HHH@Z @ 194 NONAME ; class TRgb CXnUtils::ConvertHslToRgb(int, int, int) + ?LoadBitmap@CXnControlAdapter@@QAEPAVCFbsBitmap@@ABVTDesC16@@@Z @ 195 NONAME ; class CFbsBitmap * CXnControlAdapter::LoadBitmap(class TDesC16 const &) + ??0MXnComponentFactory@@IAE@XZ @ 196 NONAME ; MXnComponentFactory::MXnComponentFactory(void) + ?SetComponent@CXnViewsNodeImpl@@QAEXPAVCXnComponent@@@Z @ 197 NONAME ; void CXnViewsNodeImpl::SetComponent(class CXnComponent *) + ?BorderRect@CXnNodePluginIf@@QAE?AVTRect@@XZ @ 198 NONAME ; class TRect CXnNodePluginIf::BorderRect(void) + ?CreateDocumentL@CXnApplication@@MAEPAVCApaDocument@@XZ @ 199 NONAME ; class CApaDocument * CXnApplication::CreateDocumentL(void) + ?HandleUiReadyEventL@CXnAppUiAdapter@@UAEXXZ @ 200 NONAME ; void CXnAppUiAdapter::HandleUiReadyEventL(void) + ?CreateFontL@CXnUtils@@SAXABVTDesC16@@HVTFontStyle@@AAPAVCFont@@AAH@Z @ 201 NONAME ; void CXnUtils::CreateFontL(class TDesC16 const &, int, class TFontStyle, class CFont * &, int &) + ?GetPluginNodeArrayL@TXnUiEngineAppIf@@QAEHAAV?$RPointerArray@VCXnNodeAppIf@@@@@Z @ 202 NONAME ; int TXnUiEngineAppIf::GetPluginNodeArrayL(class RPointerArray &) + ?MakeXnControlAdapterL@MXnComponentFactory@@EAEPAVCXnControlAdapter@@AAVCXnNodePluginIf@@PAV2@@Z @ 203 NONAME ; class CXnControlAdapter * MXnComponentFactory::MakeXnControlAdapterL(class CXnNodePluginIf &, class CXnControlAdapter *) + ?IsDrawingAllowed@CXnNodePluginIf@@QBEHXZ @ 204 NONAME ; int CXnNodePluginIf::IsDrawingAllowed(void) const + ?MakeInterfaceL@CXnNodeAppIf@@QAEPAVMXnComponentInterface@XnComponentInterface@@ABVTDesC8@@@Z @ 205 NONAME ; class XnComponentInterface::MXnComponentInterface * CXnNodeAppIf::MakeInterfaceL(class TDesC8 const &) + ?VerticalTwipValueL@TXnUiEnginePluginIf@@QAEHPAVCXnProperty@@H@Z @ 206 NONAME ; int TXnUiEnginePluginIf::VerticalTwipValueL(class CXnProperty *, int) + ?Component@CXnControlAdapter@@QAEPAVCXnComponent@@XZ @ 207 NONAME ; class CXnComponent * CXnControlAdapter::Component(void) + ?FloatValueL@CXnProperty@@QAENXZ @ 208 NONAME ; double CXnProperty::FloatValueL(void) + ?SetUiEngine@TXnUiEngineAppIf@@QAEXPAVCXnUiEngine@@@Z @ 209 NONAME ; void TXnUiEngineAppIf::SetUiEngine(class CXnUiEngine *) + ?FindNodeByIdL@TXnUiEngineAppIf@@QAEPAVCXnNodeAppIf@@ABVTDesC16@@0@Z @ 210 NONAME ; class CXnNodeAppIf * TXnUiEngineAppIf::FindNodeByIdL(class TDesC16 const &, class TDesC16 const &) + ?IsEditMode@TXnUiEngineAppIf@@QAEHXZ @ 211 NONAME ; int TXnUiEngineAppIf::IsEditMode(void) + ?ResolveSkinItemIDL@CXnUtils@@SAHABVTDesC16@@AAVTAknsItemID@@AAH@Z @ 212 NONAME ; int CXnUtils::ResolveSkinItemIDL(class TDesC16 const &, class TAknsItemID &, int &) + ?EnablePartialTouchInput@TXnUiEnginePluginIf@@QAEXAAVCXnNodePluginIf@@H@Z @ 213 NONAME ; void TXnUiEnginePluginIf::EnablePartialTouchInput(class CXnNodePluginIf &, int) ?RootNodeL@TXnUiEnginePluginIf@@QAEAAVCXnNodePluginIf@@XZ @ 214 NONAME ; class CXnNodePluginIf & TXnUiEnginePluginIf::RootNodeL(void) ?CreateAppUiL@CXnDocument@@UAEPAVCEikAppUi@@XZ @ 215 NONAME ; class CEikAppUi * CXnDocument::CreateAppUiL(void) ?PathL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 216 NONAME ; class CXnProperty * CXnNodePluginIf::PathL(void) diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/eabi/xn3layoutengineu.def --- a/idlehomescreen/xmluirendering/uiengine/eabi/xn3layoutengineu.def Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/eabi/xn3layoutengineu.def Wed Oct 13 14:18:30 2010 +0300 @@ -76,129 +76,129 @@ _ZN15CXnNodePluginIf10BorderRectEv @ 75 NONAME _ZN15CXnNodePluginIf10MarginRectEv @ 76 NONAME _ZN15CXnNodePluginIf10SetPCDataLERK6TDesC8 @ 77 NONAME - _ZN15CXnNodePluginIf11IsEditStateEv @ 78 NONAME - _ZN15CXnNodePluginIf11PaddingRectEv @ 79 NONAME - _ZN15CXnNodePluginIf11UnsetStateLERK6TDesC8 @ 80 NONAME - _ZN15CXnNodePluginIf11VisibilityLEv @ 81 NONAME - _ZN15CXnNodePluginIf12SetPropertyLEP11CXnProperty @ 82 NONAME - _ZN15CXnNodePluginIf12ViewNodeImplEv @ 83 NONAME - _ZN15CXnNodePluginIf13SetBorderRectERK5TRect @ 84 NONAME - _ZN15CXnNodePluginIf13SetMarginRectERK5TRect @ 85 NONAME - _ZN15CXnNodePluginIf14IsFocusedStateEv @ 86 NONAME - _ZN15CXnNodePluginIf14MakeInterfaceLERK6TDesC8 @ 87 NONAME - _ZN15CXnNodePluginIf14SetPaddingRectERK5TRect @ 88 NONAME - _ZN15CXnNodePluginIf16SetHandleTooltipEi @ 89 NONAME - _ZN15CXnNodePluginIf16SetLayoutCapableEi @ 90 NONAME - _ZN15CXnNodePluginIf17ComponentNodeImplEv @ 91 NONAME - _ZN15CXnNodePluginIf19ReportTriggerEventLERK6TDesC8S2_S2_ @ 92 NONAME - _ZN15CXnNodePluginIf31SetPropertyWithoutNotificationLEP11CXnProperty @ 93 NONAME - _ZN15CXnNodePluginIf3IdLEv @ 94 NONAME - _ZN15CXnNodePluginIf4RectEv @ 95 NONAME - _ZN15CXnNodePluginIf4TypeEv @ 96 NONAME - _ZN15CXnNodePluginIf5PathLEv @ 97 NONAME - _ZN15CXnNodePluginIf6AppIfLEv @ 98 NONAME - _ZN15CXnNodePluginIf6LabelLEv @ 99 NONAME - _ZN15CXnNodePluginIf7SetRectERK5TRect @ 100 NONAME - _ZN15CXnNodePluginIf8DisplayLEv @ 101 NONAME - _ZN15CXnNodePluginIf9AddChildLEPS_ @ 102 NONAME - _ZN15CXnNodePluginIf9ChildrenLEv @ 103 NONAME - _ZN15CXnNodePluginIf9MaskPathLEv @ 104 NONAME - _ZN15CXnNodePluginIf9NamespaceEv @ 105 NONAME - _ZN15CXnNodePluginIf9SetDirtyLEv @ 106 NONAME - _ZN15CXnNodePluginIf9SetStateLERK6TDesC8 @ 107 NONAME - _ZN15CXnNodePluginIf9UiEngineLEv @ 108 NONAME - _ZN15CXnUiEngineImpl14EnableRenderUiEPv @ 109 NONAME - _ZN16CXnViewsNodeImpl10ConstructLEP7CXnType @ 110 NONAME - _ZN16CXnViewsNodeImpl12SetComponentEP12CXnComponent @ 111 NONAME - _ZN16CXnViewsNodeImpl4NewLEP7CXnType @ 112 NONAME - _ZN16CXnViewsNodeImpl9ComponentEv @ 113 NONAME - _ZN16CXnViewsNodeImplC1Ev @ 114 NONAME - _ZN16CXnViewsNodeImplC2Ev @ 115 NONAME - _ZN16CXnViewsNodeImplD0Ev @ 116 NONAME - _ZN16CXnViewsNodeImplD1Ev @ 117 NONAME - _ZN16CXnViewsNodeImplD2Ev @ 118 NONAME - _ZN16MXnNodePredicate5MatchER7CXnNode @ 119 NONAME - _ZN16MXnNodePredicateC1Ev @ 120 NONAME - _ZN16MXnNodePredicateC2Ev @ 121 NONAME - _ZN16MXnNodePredicateD0Ev @ 122 NONAME - _ZN16MXnNodePredicateD1Ev @ 123 NONAME - _ZN16MXnNodePredicateD2Ev @ 124 NONAME - _ZN16TXnUiEngineAppIf10ActiveViewEv @ 125 NONAME - _ZN16TXnUiEngineAppIf10IsEditModeEv @ 126 NONAME - _ZN16TXnUiEngineAppIf10StringPoolEv @ 127 NONAME - _ZN16TXnUiEngineAppIf11FocusedNodeEv @ 128 NONAME - _ZN16TXnUiEngineAppIf11SetUiEngineEP11CXnUiEngine @ 129 NONAME - _ZN16TXnUiEngineAppIf12RefreshMenuLEv @ 130 NONAME - _ZN16TXnUiEngineAppIf13FindNodeByIdLERK6TDesC8S2_ @ 131 NONAME - _ZN16TXnUiEngineAppIf13FindNodeByIdLERK7TDesC16S2_ @ 132 NONAME - _ZN16TXnUiEngineAppIf16FindNodeByClassLERK6TDesC8S2_ @ 133 NONAME - _ZN16TXnUiEngineAppIf16FindNodeByClassLERK7TDesC16S2_ @ 134 NONAME - _ZN16TXnUiEngineAppIf16GetThemeResourceERK7TDesC16R5RFile @ 135 NONAME - _ZN16TXnUiEngineAppIf16IsMenuDisplayingEv @ 136 NONAME - _ZN16TXnUiEngineAppIf19GetPluginNodeArrayLER13RPointerArrayI12CXnNodeAppIfE @ 137 NONAME - _ZN16TXnUiEngineAppIf23FindContentSourceNodesLERK6TDesC8 @ 138 NONAME - _ZN16TXnUiEngineAppIf9RenderUILEP12CXnNodeAppIf @ 139 NONAME - _ZN16TXnUiEngineAppIf9RootNodeLEv @ 140 NONAME - _ZN17CXnControlAdapter10ConstructLER15CXnNodePluginIf @ 141 NONAME - _ZN17CXnControlAdapter10LoadBitmapERK7TDesC16 @ 142 NONAME - _ZN17CXnControlAdapter10SetVisibleEi @ 143 NONAME - _ZN17CXnControlAdapter11SizeChangedEv @ 144 NONAME - _ZN17CXnControlAdapter11SkinChangedEv @ 145 NONAME - _ZN17CXnControlAdapter12FocusChangedE8TDrawNow @ 146 NONAME - _ZN17CXnControlAdapter12SetComponentEP12CXnComponent @ 147 NONAME - _ZN17CXnControlAdapter14ContentBitmapsERP10CFbsBitmapS2_ @ 148 NONAME - _ZN17CXnControlAdapter14OfferKeyEventLERK9TKeyEvent10TEventCode @ 149 NONAME - _ZN17CXnControlAdapter15SetLocalUiZoomLE10TAknUiZoom @ 150 NONAME - _ZN17CXnControlAdapter16GetBitmapAndMaskERK7TDesC16S2_RP10CFbsBitmapS5_ @ 151 NONAME - _ZN17CXnControlAdapter17SetContentBitmapsEP10CFbsBitmapS1_ @ 152 NONAME - _ZN17CXnControlAdapter17SetContentBitmapsERK7TDesC16S2_ @ 153 NONAME - _ZN17CXnControlAdapter18ExitPowerSaveModeLENS_10TModeEventE @ 154 NONAME - _ZN17CXnControlAdapter18ResetStylusCounterEv @ 155 NONAME - _ZN17CXnControlAdapter19EnterPowerSaveModeLENS_10TModeEventE @ 156 NONAME - _ZN17CXnControlAdapter19HandleControlEventLEP11CCoeControlN19MCoeControlObserver9TCoeEventE @ 157 NONAME - _ZN17CXnControlAdapter19HandleLongTapEventLERK6TPointS2_ @ 158 NONAME - _ZN17CXnControlAdapter19HandlePointerEventLERK13TPointerEvent @ 159 NONAME - _ZN17CXnControlAdapter20DoExitPowerSaveModeLENS_10TModeEventE @ 160 NONAME - _ZN17CXnControlAdapter21DoEnterPowerSaveModeLENS_10TModeEventE @ 161 NONAME - _ZN17CXnControlAdapter21HandlePropertyChangeLEP11CXnProperty @ 162 NONAME - _ZN17CXnControlAdapter22EnableLongTapAnimationEi @ 163 NONAME - _ZN17CXnControlAdapter23DoHandlePropertyChangeLEP11CXnProperty @ 164 NONAME - _ZN17CXnControlAdapter23MeasureAdaptiveContentLERK5TSize @ 165 NONAME - _ZN17CXnControlAdapter26HandleScreenDeviceChangedLEv @ 166 NONAME - _ZN17CXnControlAdapter4NewLER15CXnNodePluginIf @ 167 NONAME - _ZN17CXnControlAdapter8SetBlankEi @ 168 NONAME - _ZN17CXnControlAdapter8SetDataLERK6TDesC8RK7TDesC16i @ 169 NONAME - _ZN17CXnControlAdapter9ComponentEv @ 170 NONAME - _ZN17CXnControlAdapterC1Ev @ 171 NONAME - _ZN17CXnControlAdapterC2Ev @ 172 NONAME - _ZN17CXnControlAdapterD0Ev @ 173 NONAME - _ZN17CXnControlAdapterD1Ev @ 174 NONAME - _ZN17CXnControlAdapterD2Ev @ 175 NONAME - _ZN19MXnComponentFactory16MakeXnComponentLER15CXnNodePluginIfRP12CXnComponent @ 176 NONAME - _ZN19MXnComponentFactory18CreateXnComponentLER15CXnNodePluginIfRP12CXnComponent @ 177 NONAME - _ZN19MXnComponentFactory21MakeXnControlAdapterLER15CXnNodePluginIfP17CXnControlAdapter @ 178 NONAME - _ZN19MXnComponentFactory26DoesNodeNeedComponentImplLERK6TDesC8 @ 179 NONAME - _ZN19MXnComponentFactoryC2Ev @ 180 NONAME - _ZN19MXnComponentFactoryD0Ev @ 181 NONAME - _ZN19MXnComponentFactoryD1Ev @ 182 NONAME - _ZN19MXnComponentFactoryD2Ev @ 183 NONAME - _ZN19TXnUiEnginePluginIf10StringPoolEv @ 184 NONAME - _ZN19TXnUiEnginePluginIf11PluginNodeLEP15CXnNodePluginIf @ 185 NONAME - _ZN19TXnUiEnginePluginIf12FocusedNodeLEv @ 186 NONAME - _ZN19TXnUiEnginePluginIf13AddDirtyNodeLER15CXnNodePluginIf @ 187 NONAME - _ZN19TXnUiEnginePluginIf13FindNodeByIdLERK6TDesC8S2_ @ 188 NONAME - _ZN19TXnUiEnginePluginIf13FindNodeByIdLERK7TDesC16S2_ @ 189 NONAME - _ZN19TXnUiEnginePluginIf14SetFocusedNodeEP15CXnNodePluginIf @ 190 NONAME - _ZN19TXnUiEnginePluginIf16FindNodeByClassLERK7TDesC16 @ 191 NONAME - _ZN19TXnUiEnginePluginIf16IsMenuDisplayingEv @ 192 NONAME - _ZN19TXnUiEnginePluginIf16ScreenDeviceSizeEv @ 193 NONAME - _ZN19TXnUiEnginePluginIf17DisableRenderUiLCEv @ 194 NONAME - _ZN19TXnUiEnginePluginIf18IsDialogDisplayingEv @ 195 NONAME - _ZN19TXnUiEnginePluginIf18IsTextEditorActiveEv @ 196 NONAME - _ZN19TXnUiEnginePluginIf18VerticalTwipValueLEP11CXnPropertyi @ 197 NONAME - _ZN19TXnUiEnginePluginIf19VerticalPixelValueLEP11CXnPropertyi @ 198 NONAME - _ZN19TXnUiEnginePluginIf20HorizontalTwipValueLEP11CXnPropertyi @ 199 NONAME - _ZN19TXnUiEnginePluginIf21HorizontalPixelValueLEP11CXnPropertyi @ 200 NONAME + _ZN15CXnNodePluginIf11PaddingRectEv @ 78 NONAME + _ZN15CXnNodePluginIf11UnsetStateLERK6TDesC8 @ 79 NONAME + _ZN15CXnNodePluginIf11VisibilityLEv @ 80 NONAME + _ZN15CXnNodePluginIf12SetPropertyLEP11CXnProperty @ 81 NONAME + _ZN15CXnNodePluginIf12ViewNodeImplEv @ 82 NONAME + _ZN15CXnNodePluginIf13SetBorderRectERK5TRect @ 83 NONAME + _ZN15CXnNodePluginIf13SetMarginRectERK5TRect @ 84 NONAME + _ZN15CXnNodePluginIf14IsFocusedStateEv @ 85 NONAME + _ZN15CXnNodePluginIf14MakeInterfaceLERK6TDesC8 @ 86 NONAME + _ZN15CXnNodePluginIf14SetPaddingRectERK5TRect @ 87 NONAME + _ZN15CXnNodePluginIf16SetHandleTooltipEi @ 88 NONAME + _ZN15CXnNodePluginIf16SetLayoutCapableEi @ 89 NONAME + _ZN15CXnNodePluginIf17ComponentNodeImplEv @ 90 NONAME + _ZN15CXnNodePluginIf19ReportTriggerEventLERK6TDesC8S2_S2_ @ 91 NONAME + _ZN15CXnNodePluginIf31SetPropertyWithoutNotificationLEP11CXnProperty @ 92 NONAME + _ZN15CXnNodePluginIf3IdLEv @ 93 NONAME + _ZN15CXnNodePluginIf4RectEv @ 94 NONAME + _ZN15CXnNodePluginIf4TypeEv @ 95 NONAME + _ZN15CXnNodePluginIf5PathLEv @ 96 NONAME + _ZN15CXnNodePluginIf6AppIfLEv @ 97 NONAME + _ZN15CXnNodePluginIf6LabelLEv @ 98 NONAME + _ZN15CXnNodePluginIf7SetRectERK5TRect @ 99 NONAME + _ZN15CXnNodePluginIf8DisplayLEv @ 100 NONAME + _ZN15CXnNodePluginIf9AddChildLEPS_ @ 101 NONAME + _ZN15CXnNodePluginIf9ChildrenLEv @ 102 NONAME + _ZN15CXnNodePluginIf9MaskPathLEv @ 103 NONAME + _ZN15CXnNodePluginIf9NamespaceEv @ 104 NONAME + _ZN15CXnNodePluginIf9SetDirtyLEv @ 105 NONAME + _ZN15CXnNodePluginIf9SetStateLERK6TDesC8 @ 106 NONAME + _ZN15CXnNodePluginIf9UiEngineLEv @ 107 NONAME + _ZN15CXnUiEngineImpl14EnableRenderUiEPv @ 108 NONAME + _ZN16CXnViewsNodeImpl10ConstructLEP7CXnType @ 109 NONAME + _ZN16CXnViewsNodeImpl12SetComponentEP12CXnComponent @ 110 NONAME + _ZN16CXnViewsNodeImpl4NewLEP7CXnType @ 111 NONAME + _ZN16CXnViewsNodeImpl9ComponentEv @ 112 NONAME + _ZN16CXnViewsNodeImplC1Ev @ 113 NONAME + _ZN16CXnViewsNodeImplC2Ev @ 114 NONAME + _ZN16CXnViewsNodeImplD0Ev @ 115 NONAME + _ZN16CXnViewsNodeImplD1Ev @ 116 NONAME + _ZN16CXnViewsNodeImplD2Ev @ 117 NONAME + _ZN16MXnNodePredicate5MatchER7CXnNode @ 118 NONAME + _ZN16MXnNodePredicateC1Ev @ 119 NONAME + _ZN16MXnNodePredicateC2Ev @ 120 NONAME + _ZN16MXnNodePredicateD0Ev @ 121 NONAME + _ZN16MXnNodePredicateD1Ev @ 122 NONAME + _ZN16MXnNodePredicateD2Ev @ 123 NONAME + _ZN16TXnUiEngineAppIf10ActiveViewEv @ 124 NONAME + _ZN16TXnUiEngineAppIf10IsEditModeEv @ 125 NONAME + _ZN16TXnUiEngineAppIf10StringPoolEv @ 126 NONAME + _ZN16TXnUiEngineAppIf11FocusedNodeEv @ 127 NONAME + _ZN16TXnUiEngineAppIf11SetUiEngineEP11CXnUiEngine @ 128 NONAME + _ZN16TXnUiEngineAppIf12RefreshMenuLEv @ 129 NONAME + _ZN16TXnUiEngineAppIf13FindNodeByIdLERK6TDesC8S2_ @ 130 NONAME + _ZN16TXnUiEngineAppIf13FindNodeByIdLERK7TDesC16S2_ @ 131 NONAME + _ZN16TXnUiEngineAppIf16FindNodeByClassLERK6TDesC8S2_ @ 132 NONAME + _ZN16TXnUiEngineAppIf16FindNodeByClassLERK7TDesC16S2_ @ 133 NONAME + _ZN16TXnUiEngineAppIf16GetThemeResourceERK7TDesC16R5RFile @ 134 NONAME + _ZN16TXnUiEngineAppIf16IsMenuDisplayingEv @ 135 NONAME + _ZN16TXnUiEngineAppIf19GetPluginNodeArrayLER13RPointerArrayI12CXnNodeAppIfE @ 136 NONAME + _ZN16TXnUiEngineAppIf23FindContentSourceNodesLERK6TDesC8 @ 137 NONAME + _ZN16TXnUiEngineAppIf9RenderUILEP12CXnNodeAppIf @ 138 NONAME + _ZN16TXnUiEngineAppIf9RootNodeLEv @ 139 NONAME + _ZN17CXnControlAdapter10ConstructLER15CXnNodePluginIf @ 140 NONAME + _ZN17CXnControlAdapter10LoadBitmapERK7TDesC16 @ 141 NONAME + _ZN17CXnControlAdapter10SetVisibleEi @ 142 NONAME + _ZN17CXnControlAdapter11SizeChangedEv @ 143 NONAME + _ZN17CXnControlAdapter11SkinChangedEv @ 144 NONAME + _ZN17CXnControlAdapter12FocusChangedE8TDrawNow @ 145 NONAME + _ZN17CXnControlAdapter12SetComponentEP12CXnComponent @ 146 NONAME + _ZN17CXnControlAdapter14ContentBitmapsERP10CFbsBitmapS2_ @ 147 NONAME + _ZN17CXnControlAdapter14OfferKeyEventLERK9TKeyEvent10TEventCode @ 148 NONAME + _ZN17CXnControlAdapter15SetLocalUiZoomLE10TAknUiZoom @ 149 NONAME + _ZN17CXnControlAdapter16GetBitmapAndMaskERK7TDesC16S2_RP10CFbsBitmapS5_ @ 150 NONAME + _ZN17CXnControlAdapter17SetContentBitmapsEP10CFbsBitmapS1_ @ 151 NONAME + _ZN17CXnControlAdapter17SetContentBitmapsERK7TDesC16S2_ @ 152 NONAME + _ZN17CXnControlAdapter18ExitPowerSaveModeLENS_10TModeEventE @ 153 NONAME + _ZN17CXnControlAdapter18ResetStylusCounterEv @ 154 NONAME + _ZN17CXnControlAdapter19EnterPowerSaveModeLENS_10TModeEventE @ 155 NONAME + _ZN17CXnControlAdapter19HandleControlEventLEP11CCoeControlN19MCoeControlObserver9TCoeEventE @ 156 NONAME + _ZN17CXnControlAdapter19HandleLongTapEventLERK6TPointS2_ @ 157 NONAME + _ZN17CXnControlAdapter19HandlePointerEventLERK13TPointerEvent @ 158 NONAME + _ZN17CXnControlAdapter20DoExitPowerSaveModeLENS_10TModeEventE @ 159 NONAME + _ZN17CXnControlAdapter21DoEnterPowerSaveModeLENS_10TModeEventE @ 160 NONAME + _ZN17CXnControlAdapter21HandlePropertyChangeLEP11CXnProperty @ 161 NONAME + _ZN17CXnControlAdapter22EnableLongTapAnimationEi @ 162 NONAME + _ZN17CXnControlAdapter23DoHandlePropertyChangeLEP11CXnProperty @ 163 NONAME + _ZN17CXnControlAdapter23MeasureAdaptiveContentLERK5TSize @ 164 NONAME + _ZN17CXnControlAdapter26HandleScreenDeviceChangedLEv @ 165 NONAME + _ZN17CXnControlAdapter4NewLER15CXnNodePluginIf @ 166 NONAME + _ZN17CXnControlAdapter8SetBlankEi @ 167 NONAME + _ZN17CXnControlAdapter8SetDataLERK6TDesC8RK7TDesC16i @ 168 NONAME + _ZN17CXnControlAdapter9ComponentEv @ 169 NONAME + _ZN17CXnControlAdapterC1Ev @ 170 NONAME + _ZN17CXnControlAdapterC2Ev @ 171 NONAME + _ZN17CXnControlAdapterD0Ev @ 172 NONAME + _ZN17CXnControlAdapterD1Ev @ 173 NONAME + _ZN17CXnControlAdapterD2Ev @ 174 NONAME + _ZN19MXnComponentFactory16MakeXnComponentLER15CXnNodePluginIfRP12CXnComponent @ 175 NONAME + _ZN19MXnComponentFactory18CreateXnComponentLER15CXnNodePluginIfRP12CXnComponent @ 176 NONAME + _ZN19MXnComponentFactory21MakeXnControlAdapterLER15CXnNodePluginIfP17CXnControlAdapter @ 177 NONAME + _ZN19MXnComponentFactory26DoesNodeNeedComponentImplLERK6TDesC8 @ 178 NONAME + _ZN19MXnComponentFactoryC2Ev @ 179 NONAME + _ZN19MXnComponentFactoryD0Ev @ 180 NONAME + _ZN19MXnComponentFactoryD1Ev @ 181 NONAME + _ZN19MXnComponentFactoryD2Ev @ 182 NONAME + _ZN19TXnUiEnginePluginIf10StringPoolEv @ 183 NONAME + _ZN19TXnUiEnginePluginIf11PluginNodeLEP15CXnNodePluginIf @ 184 NONAME + _ZN19TXnUiEnginePluginIf12FocusedNodeLEv @ 185 NONAME + _ZN19TXnUiEnginePluginIf13AddDirtyNodeLER15CXnNodePluginIf @ 186 NONAME + _ZN19TXnUiEnginePluginIf13FindNodeByIdLERK6TDesC8S2_ @ 187 NONAME + _ZN19TXnUiEnginePluginIf13FindNodeByIdLERK7TDesC16S2_ @ 188 NONAME + _ZN19TXnUiEnginePluginIf14SetFocusedNodeEP15CXnNodePluginIf @ 189 NONAME + _ZN19TXnUiEnginePluginIf16FindNodeByClassLERK7TDesC16 @ 190 NONAME + _ZN19TXnUiEnginePluginIf16IsMenuDisplayingEv @ 191 NONAME + _ZN19TXnUiEnginePluginIf16ScreenDeviceSizeEv @ 192 NONAME + _ZN19TXnUiEnginePluginIf17DisableRenderUiLCEv @ 193 NONAME + _ZN19TXnUiEnginePluginIf18IsDialogDisplayingEv @ 194 NONAME + _ZN19TXnUiEnginePluginIf18IsTextEditorActiveEv @ 195 NONAME + _ZN19TXnUiEnginePluginIf18VerticalTwipValueLEP11CXnPropertyi @ 196 NONAME + _ZN19TXnUiEnginePluginIf19VerticalPixelValueLEP11CXnPropertyi @ 197 NONAME + _ZN19TXnUiEnginePluginIf20HorizontalTwipValueLEP11CXnPropertyi @ 198 NONAME + _ZN19TXnUiEnginePluginIf21HorizontalPixelValueLEP11CXnPropertyi @ 199 NONAME + _ZN19TXnUiEnginePluginIf23EnablePartialTouchInputER15CXnNodePluginIfi @ 200 NONAME _ZN19TXnUiEnginePluginIf8EditModeEv @ 201 NONAME _ZN19TXnUiEnginePluginIf9LayoutUILEP15CXnNodePluginIf @ 202 NONAME _ZN19TXnUiEnginePluginIf9RenderUILEP15CXnNodePluginIf @ 203 NONAME @@ -277,5 +277,4 @@ _ZTVN21CXnControlAdapterImpl13TIconProviderE @ 276 NONAME _ZThn52_N17CXnControlAdapter19HandleControlEventLEP11CCoeControlN19MCoeControlObserver9TCoeEventE @ 277 NONAME _ZThn60_N17CXnControlAdapter19HandleLongTapEventLERK6TPointS2_ @ 278 NONAME - _ZN8CXnUtils18ResolveSkinItemIDLERK7TDesC16R11TAknsItemID @ 279 NONAME diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/group/xnlayoutengine.mmp --- a/idlehomescreen/xmluirendering/uiengine/group/xnlayoutengine.mmp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/group/xnlayoutengine.mmp Wed Oct 13 14:18:30 2010 +0300 @@ -85,7 +85,6 @@ SOURCE xnwaitdialog.cpp SOURCE xnpublisherdata.cpp SOURCE xnitemactivator.cpp -SOURCE xnviewswitcher.cpp START RESOURCE xnuiengine.rss HEADER diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/inc/xnbackgroundmanager.h --- a/idlehomescreen/xmluirendering/uiengine/inc/xnbackgroundmanager.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/inc/xnbackgroundmanager.h Wed Oct 13 14:18:30 2010 +0300 @@ -326,23 +326,6 @@ * to be stored to AknsWallpaperUtils */ TBool iStoreWallpaper; - - /** - * Pointer to wallpaper image. - * Usually wallpaper is read from active view data, but in case of - * finger follow swipe, wallpaper is changed during the page switch. - * Therefore this is used only during finger follow. - * - * Not own. - */ - mutable CFbsBitmap* iWallpaper; - - /* - * Flag to indicate to use bitmap stored in iWallpaper - * instead of reading it from CXnViewData. - * This is used when page is being changed with finger follow swipe. - */ - mutable TBool iImageChanged; }; #endif // CXNBACKGROUNDMANAGER_H diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/inc/xncontroladapterimpl.h --- a/idlehomescreen/xmluirendering/uiengine/inc/xncontroladapterimpl.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/inc/xncontroladapterimpl.h Wed Oct 13 14:18:30 2010 +0300 @@ -451,13 +451,6 @@ */ RPointerArray< CXnControlAdapter >& ChildAdapters(); - /* - * Checks if widget is Gesture destination node. - * - * @return ETrue if widget is Gesture destination. - */ - TBool IsWidgetGestureDest(); - private: // from MAknTouchGestureFwObserver /** * Implements gesture handling diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/inc/xneditor.h --- a/idlehomescreen/xmluirendering/uiengine/inc/xneditor.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/inc/xneditor.h Wed Oct 13 14:18:30 2010 +0300 @@ -332,8 +332,6 @@ void NotifyViewActivatedL( const CXnViewData& aViewData ); - void NotifyViewLoadedL( const CXnViewData& aViewData ); - void NotifyViewDeactivatedL( const CXnViewData& /*aViewData*/ ); void NotifyConfigureWidgetL( const CHsContentInfo& aContentInfo, @@ -343,9 +341,9 @@ void NotifyWidgetRemovalL( const CXnPluginData& aPluginData ); - void NotifyViewAdditionL( const CXnViewData& /*aViewData*/ ); + void NotifyViewAdditionL( const CXnPluginData& /*aPluginData*/ ); - void NotifyViewRemovalL( const CXnViewData& /*aViewData*/ ); + void NotifyViewRemovalL( const CXnPluginData& /*aPluginData*/ ); void NotifyAllViewsLoadedL(); diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/inc/xneffectmanager.h --- a/idlehomescreen/xmluirendering/uiengine/inc/xneffectmanager.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/inc/xneffectmanager.h Wed Oct 13 14:18:30 2010 +0300 @@ -139,7 +139,6 @@ * @param aThis Active view * @param aOther View to activate * @param aEffect Effect uid - * @param aBgEffectOnly Show only background effect without view animation * @return ETrue of effect is started, EFalse otherwise */ TBool BeginActivateViewEffect( const CXnViewData& aThis, diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/inc/xnfocuscontrol.h --- a/idlehomescreen/xmluirendering/uiengine/inc/xnfocuscontrol.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/inc/xnfocuscontrol.h Wed Oct 13 14:18:30 2010 +0300 @@ -106,6 +106,8 @@ CXnAppUiAdapter& iAppUiAdapter; /** Flag to indicate whether it is allowed to show focus */ TBool iVisible; + /** Flag to indicate refusal */ + TBool iRefused; }; #endif // _XNFOCUSCONTROL_H diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/inc/xnkeyeventdispatcher.h --- a/idlehomescreen/xmluirendering/uiengine/inc/xnkeyeventdispatcher.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/inc/xnkeyeventdispatcher.h Wed Oct 13 14:18:30 2010 +0300 @@ -26,7 +26,6 @@ // Uder includes #include "xnviewmanager.h" -#include "xnuistatelistener.h" // Forward declarations class CXnNode; @@ -46,7 +45,6 @@ */ NONSHARABLE_CLASS( CXnKeyEventDispatcher ) : public CCoeControl, public MCoeMessageMonitorObserver, - public MXnUiResourceChangeObserver, public MXnViewObserver { public: @@ -79,19 +77,6 @@ */ void MonitorWsMessage( const TWsEvent& aEvent ); -private: - // from MXnUiResourceChangeObserver - - /** - * @see MXnUiResourceChangeObserver - */ - void NotifyStatusPaneSizeChanged(); - - /** - * @see MXnUiResourceChangeObserver - */ - void NotifyResourceChanged( TInt aType ); - public: // New functions @@ -189,24 +174,7 @@ * @return Last pointer event */ const TPointerEvent& PointerEvent() const; - - /** - * Sets activate text editor - * - * @since S60 5.2 - * @param aNode Editor Node - * @param TBool True if text editor should be activated - */ - void SetTextEditorActive( CXnNode* aNode, TBool aActivate ); - - /** - * Queries whether a text editor is active - * - * @since S60 5.2 - * @return ETrue if text editor is active, EFalse otherwise - */ - TBool IsTextEditorActive() const; - + private: // new functions @@ -232,7 +200,6 @@ // from MXnViewObserver void NotifyViewActivatedL( const CXnViewData& aViewData ); - void NotifyViewLoadedL( const CXnViewData& /*aViewData*/ ) {}; void NotifyViewDeactivatedL( const CXnViewData& aViewData ); @@ -241,8 +208,8 @@ void NotifyWidgetAdditionL( const CXnPluginData& aPluginData ); void NotifyWidgetRemovalL( const CXnPluginData& aPluginData ); - void NotifyViewAdditionL( const CXnViewData& /*aViewData*/ ){}; - void NotifyViewRemovalL( const CXnViewData& /*aViewData*/ ){}; + void NotifyViewAdditionL( const CXnPluginData& /*aPluginData*/ ){}; + void NotifyViewRemovalL( const CXnPluginData& /*aPluginData*/ ){}; void NotifyAllViewsLoadedL(){}; void NotifyContainerActivatedL( const CXnViewData& /*aViewData*/ ){}; @@ -273,8 +240,6 @@ RPointerArray< CXnNode > iPassiveFocusedNodes; /** Last pointer event */ TPointerEvent iPointerEvent; - /** Active text editor node, not owned */ - CXnNode* iActiveTextEditor; }; #endif //__XNKEYEVENTDISPATCHER_H__ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/inc/xnplugindata.h --- a/idlehomescreen/xmluirendering/uiengine/inc/xnplugindata.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/inc/xnplugindata.h Wed Oct 13 14:18:30 2010 +0300 @@ -34,41 +34,9 @@ class CXnODT; class CXnViewManager; class CXnPublisherData; -class CCoeControl; // Constants -NONSHARABLE_STRUCT( TXnDirtyRegion ) - { - /** Area that needs to be redrawn */ - RRegion iRegion; - - /** Window owning control - * Not own. - */ - CCoeControl* iControl; - - /** Window owning node - * Not own. - */ - CXnNode* iRootNode; - - /** List of currently dirty nodes */ - RPointerArray< CXnNode > iDirtyList; - - /** Controls layouting */ - TInt iLayoutControl; - - TXnDirtyRegion() : iControl( NULL ), iRootNode( NULL ), - iLayoutControl( 0 ) {} - - ~TXnDirtyRegion() - { - iRegion.Close(); - iDirtyList.Reset(); - } - }; - // Class declaration /** @@ -90,8 +58,7 @@ EIsEmpty, EIsRemovable, EIsActive, - EIsInitial, - EIsEditable + EIsInitial }; public: @@ -406,13 +373,6 @@ inline TBool Removable() const; /* - * Checks whether editable - * - * @return ETrue when editable EFalse when not - */ - inline TBool Editable() const; - - /* * Queries whether this plugin is holding "empty" widget * * @return ETrue if empty, EFalse otherwise @@ -480,26 +440,12 @@ void ShowOutOfMemError(); /** - * Sets locking_status attribute (none/locked/permanent) + * Sets locking_status attribute (locked/none) * - * @param aStatus "none" / "locked" / "permanent" + * @param aStatus "locked" / "none" */ void SetLockingStatus( const TDesC8& aStatus ); - /** - * Creates dirty region. - * - * @return Created dirty region. - */ - TXnDirtyRegion* CreateDirtyRegionL( CXnNode& aRootNode, CCoeControl& aControl); - - /** - * Get dirty region. - * - * @return dirty region. - */ - inline TXnDirtyRegion* DirtyRegion() const; - protected: // data @@ -539,8 +485,6 @@ HBufC* iPublisherName; /** Flags to define this plugin's state */ TBitFlags32 iFlags; - /** Region pending redraw, Owned */ - TXnDirtyRegion* iDirtyRegion; }; // Inline functions diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/inc/xnplugindata.inl --- a/idlehomescreen/xmluirendering/uiengine/inc/xnplugindata.inl Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/inc/xnplugindata.inl Wed Oct 13 14:18:30 2010 +0300 @@ -171,15 +171,6 @@ }; // --------------------------------------------------------------------------- -// Returns editable -// --------------------------------------------------------------------------- -// -inline TBool CXnPluginData::Editable() const - { - return( iFlags.IsSet( EIsEditable ) ? ETrue : EFalse ); - } - -// --------------------------------------------------------------------------- // Returns list of plugindata // --------------------------------------------------------------------------- // @@ -188,13 +179,4 @@ return iPluginsData; }; -// --------------------------------------------------------------------------- -// Returns dirty region -// --------------------------------------------------------------------------- -// -inline TXnDirtyRegion* CXnPluginData::DirtyRegion() const - { - return iDirtyRegion; - }; - #endif // _XNPLUGINDATA_INL_ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/inc/xnrootdata.h --- a/idlehomescreen/xmluirendering/uiengine/inc/xnrootdata.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/inc/xnrootdata.h Wed Oct 13 14:18:30 2010 +0300 @@ -93,7 +93,7 @@ /** * Loads remaining application views */ - void LoadRemainingViewsL(); + void LoadRemainingViews(); /** * Cancels load remaining application views @@ -122,13 +122,6 @@ CXnViewData& NextViewData() const; /** - * Gets a view data, where the given node belongs to. - * - * @return Acquired view data. NULL if not found. - */ - CXnViewData* ViewData( CXnNode& aNode ) const; - - /** * Sets view data to destroyal list * * @param aViewData View data to destroy @@ -176,21 +169,7 @@ * @return number of pages allowed */ TInt32 MaxPages(); - - /** - * Returns template view's uid - * - * @return Returns template view's uid, or if not set qhd default - */ - const TDesC8& TemplateViewUid() const; - - /** - * Sets template view's uid - * - * @param Template view's uid - */ - void SetTemplateViewUidL( const TDesC8& aTemplateViewUid ); - + /** * Returns ETrue, if all views are loaded */ @@ -227,8 +206,6 @@ TBool iLoadForward; /** Maximum of views allowed */ TInt32 iMaxPages; - /** Template view uid is uid of the view when user selects New view */ - HBufC8* iTemplateViewUid; /** Load error code */ TInt iLoadError; }; diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/inc/xnuiengineimpl.h --- a/idlehomescreen/xmluirendering/uiengine/inc/xnuiengineimpl.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/inc/xnuiengineimpl.h Wed Oct 13 14:18:30 2010 +0300 @@ -41,7 +41,6 @@ class CXnViewManager; class CXnViewData; class CXnPluginData; -class TXnDirtyRegion; // Constants namespace XnLayoutPhase @@ -60,6 +59,18 @@ const TInt EViewDirty = 0x10; const TInt EEffectStarted = 0x20; } + +NONSHARABLE_STRUCT( TXnDirtyRegion ) + { + RRegion iRegion; + CCoeControl* iControl; // Not own. + + ~TXnDirtyRegion() + { + iRegion.Close(); + } + }; + NONSHARABLE_STRUCT( TXnSplitScreenState ) { @@ -289,7 +300,6 @@ * @since Series 60 3.1 */ void RefreshMenuL(); - void RefreshMenuL( TXnDirtyRegion* aDirtyRegion ); /** * Returns view manager @@ -496,10 +506,10 @@ * Enables partial touch input * * @since Series 60 5.2 - * @param aNode Editor Node, can be NULL when disabling partial input + * @param aNode Editor Node * @param TBool Partial input is enabled */ - void EnablePartialTouchInput( CXnNode* aNode, TBool aEnable ); + void EnablePartialTouchInput( CXnNode& aNode, TBool aEnable ); /** * Is partial input active @@ -520,7 +530,7 @@ private: IMPORT_C static void EnableRenderUi( TAny* aAny ); - + private: // constructors @@ -531,55 +541,49 @@ private: // new functions - - /** - * Lays out the UI - */ - void LayoutL( TXnDirtyRegion& aRegion ); - void RenderL( TXnDirtyRegion& aRegion ); - + /** * Prepares to the layout algorithm run * * @since Series 60 3.2 */ - void PrepareRunLayoutL( TXnDirtyRegion& aDirtyRegion ); + void PrepareRunLayoutL(); /** * Runs the layout algorithm * * @since Series 60 3.2 */ - TInt RunLayoutL( TXnDirtyRegion& aDirtyRegion, CXnNode& aNode ); + TInt RunLayoutL( CXnNode* aNode ); /** * Checks if layout is currently disabled * * @since Series 60 3.2 */ - TBool IsLayoutDisabled( TXnDirtyRegion& aDirtyRegion ); + TBool IsLayoutDisabled(); - void AddToRedrawListL( TXnDirtyRegion& aRegion, CXnNode& aNode, - TRect aRect = TRect::EUninitialized ); + void AddToRedrawListL( CXnNode* aNode, TRect aRect = + TRect::EUninitialized ); - void AddToDirtyListL( TXnDirtyRegion& aRegion, CXnNode& aNode ); + void AddToDirtyListL( CXnNode* aNode ); /** * Finds a node where to start layout * * @since Series 60 5.0 */ - CXnNode* StartLayoutFromL( TXnDirtyRegion& aDirtyRegion ); + CXnNode* StartLayoutFromL(); void ForceRenderUIL( TBool aLayoutOnly = EFalse ); - CXnNode* WindowOwningNode( CXnNode& aNode ); + CCoeControl* WindowOwningControl( CXnNode& aNode ); TXnDirtyRegion* FindDirtyRegionL( CXnNode& aNode ); - void ReportScreenDeviceChangeL(); + void AddRedrawRectL( TRect aRect, CXnNode& aNode ); - void EnableRenderUiL(); + void ReportScreenDeviceChangeL(); /** * Handle partial touch input @@ -587,7 +591,7 @@ * @since Series 60 5.2 * @param TInt aType */ - void HandlePartialTouchInputL( CXnNode* aNode, TBool aEnable ); + void HandlePartialTouchInputL( CXnNode& aNode, TBool aEnable ); /** * Set node visible @@ -631,11 +635,6 @@ void NotifyViewActivatedL( const CXnViewData& aViewData ); /** - * from MXnViewObserver - */ - void NotifyViewLoadedL( const CXnViewData& aViewData ); - - /** * from MXnViewObserver */ void NotifyViewDeactivatedL( const CXnViewData& /*aViewData*/ ); @@ -659,12 +658,12 @@ /** * from MXnViewObserver */ - void NotifyViewAdditionL( const CXnViewData& aViewData ); + void NotifyViewAdditionL( const CXnPluginData& /*aPluginData*/ ){}; /** * from MXnViewObserver */ - void NotifyViewRemovalL( const CXnViewData& /*aViewData*/ ){}; + void NotifyViewRemovalL( const CXnPluginData& /*aPluginData*/ ){}; /** * from MXnViewObserver @@ -721,12 +720,18 @@ CXnKeyEventDispatcher* iKeyEventDispatcher; /** ControlAdapters, not owned */ const RPointerArray< CXnControlAdapter >* iControlAdapterList; + /** Region pending redraw */ + RPointerArray iRedrawRegions; + /** List of currently dirty nodes */ + RPointerArray< CXnNode > iDirtyList; /** Array of nodes which can be focused */ RPointerArray< CXnNode > iFocusCandidateList; /** current view */ CXnNode* iCurrentView; /** current view control adapter, not owned */ CXnControlAdapter* iCurrentViewControlAdapter; + /** Controls layouting */ + TInt iLayoutControl; /** Layout algo phase */ TInt iLayoutPhase; /** Unit in pixels (width). */ diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/inc/xnviewadapter.h --- a/idlehomescreen/xmluirendering/uiengine/inc/xnviewadapter.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/inc/xnviewadapter.h Wed Oct 13 14:18:30 2010 +0300 @@ -177,29 +177,10 @@ * @param aContainer Container to activate * @param aEnterEditState ETrue if activated container should be set to edit state. * @param aEffect Effect uid, default no effect - * @param aUpdateBg Whether to update wallpaper or not. */ void ActivateContainerL( CXnViewData& aContainer, - TBool aEnterEditState = EFalse, TUid aEffect = TUid::Null(), - TBool aUpdateBg = ETrue ); - - /** - * Sets edit state property of container - * - * @since S60 5.0 - * @param aView container - * @param aEnter ETrue if container should be set to edit state. - */ - void EnterEditStateL( CXnViewData& aView, TBool aEnter ); - - /** - * Tell if this adapter is on foreground. Returns EFalse immediately after - * adapter is deactivated (Avkon IsForeground has some delay). - * @since S60 5.0 - * @return ETrue if container is on foreground, EFalse otherwise - */ - TBool IsForegroundAdapter() const; - + TBool aEnterEditState = EFalse, TUid aEffect = TUid::Null() ); + private: // new functions @@ -219,6 +200,15 @@ * @param aEnterEditState ETrue if default container should be set to edit state. */ void ActivateDefaultContainerL( TBool aEnterEditState = EFalse ); + + /** + * Sets edit state property of container + * + * @since S60 5.0 + * @param aView container + * @param aEnter ETrue if container should be set to edit state. + */ + void EnterEditStateL( CXnViewData& aView, TBool aEnter ); /** * Callback function to be used with CPeriodic. diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/inc/xnviewcontroladapter.h --- a/idlehomescreen/xmluirendering/uiengine/inc/xnviewcontroladapter.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/inc/xnviewcontroladapter.h Wed Oct 13 14:18:30 2010 +0300 @@ -38,8 +38,7 @@ NONSHARABLE_CLASS( CXnViewControlAdapter ) : public CXnControlAdapter, public MXnUiStateObserver { - -public: +public: // Constructors and destructor /** @@ -104,7 +103,7 @@ /** * C++ default constructor */ - CXnViewControlAdapter(); + CXnViewControlAdapter( CXnNodePluginIf& aNode ); /** * 2nd phase constructor @@ -113,14 +112,14 @@ private: // data + + /** Node */ + CXnNodePluginIf& iNode; /** AppUi */ CXnAppUiAdapter& iAppUi; - /** HS foreground status*/ MXnUiStateObserver::TForegroundStatus iForegroundStatus; - - //friend class CXnViewSwitcher; - }; + }; #endif // _XNVIEWCONTROLADAPTER_H diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/inc/xnviewdata.h --- a/idlehomescreen/xmluirendering/uiengine/inc/xnviewdata.h Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/inc/xnviewdata.h Wed Oct 13 14:18:30 2010 +0300 @@ -26,6 +26,8 @@ class CXnViewManager; class CFbsBitmap; +// Constants + // Class declaration /** @@ -210,28 +212,14 @@ * Loads publishers to this view */ void LoadPublishers( TInt aReason ); - + /** * Destroys all publishers in this view * * @param aReason Destroy reason */ void DestroyPublishers( TInt aReason ); - - /** - * Gets dirty region of a given node. - * - * @return Dirty region if found, otherwise NULL. - */ - TXnDirtyRegion* DirtyRegionL( CXnNode& aNode ); - - /** - * Gets an array of dirty regions. - * - * @param aList An array for dirty regions. - */ - void GetDirtyRegions( RPointerArray& aList ); - + private: // data diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnappuiadapter.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnappuiadapter.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnappuiadapter.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -30,7 +30,6 @@ #include "hscontentcontrolfactory.h" #include "xnviewadapter.h" #include "xnnode.h" -#include "xnviewswitcher.h" #include "xuikon_builds_cfg.hrh" #include "debug.h" @@ -88,9 +87,7 @@ iImpl = CXnAppUiAdapterImpl::NewL( iApplicationUid, *this ); iImpl->ConstructL(); - - iViewSwitcher = CXnViewSwitcher::NewL(); - + __TIME_ENDMARK( "CXnAppUiAdapter::ConstructL, done", time ); } @@ -101,8 +98,6 @@ // EXPORT_C CXnAppUiAdapter::~CXnAppUiAdapter() { - delete iViewSwitcher; - delete iUiEngineAppIf; delete iImpl; @@ -476,14 +471,4 @@ return iImpl->ViewAdapter().FocusControl().MakeVisible( ETrue ); } -// ----------------------------------------------------------------------------- -// CXnAppUiAdapter::ViewSwitcher -// -// ----------------------------------------------------------------------------- -// -CXnViewSwitcher* CXnAppUiAdapter::ViewSwitcher() - { - return iViewSwitcher; - } - // End of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnbackgroundmanager.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnbackgroundmanager.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnbackgroundmanager.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -83,14 +83,10 @@ void HandleErrorL( TInt aErr ) { TInt resourceId( NULL ); - if ( aErr == KErrTooBig ) + if ( aErr == KErrTooBig || aErr == KErrNoMemory ) { resourceId = R_QTN_HS_TOO_BIG_IMAGE_NOTE; } - else if( aErr == KErrNoMemory ) - { - resourceId = R_QTN_HS_WALLPAPER_OUT_OF_RAM; - } else if ( aErr == KErrCancel || aErr == KErrCouldNotConnect || aErr == KErrCANoRights ) { @@ -143,8 +139,7 @@ CXnBackgroundManager::CXnBackgroundManager( CXnViewManager& aViewManager, CHspsWrapper& aWrapper ) : iViewManager( aViewManager ), iHspsWrapper( aWrapper ), - iStoreWallpaper( ETrue ), - iImageChanged( EFalse ) + iStoreWallpaper( ETrue ) { } @@ -231,13 +226,7 @@ { CFbsBitmap* wallpaper( NULL ); - if( iImageChanged ) - { - iImageChanged = EFalse; - wallpaper = iWallpaper; - iWallpaper = NULL; - } - else if( iType == EPageSpecific ) + if( iType == EPageSpecific ) { CXnViewData& viewData( iViewManager.ActiveViewData() ); wallpaper = viewData.WallpaperImage(); @@ -354,20 +343,6 @@ TRAP_IGNORE( RemovableDiskRemovedL() ); } } - else if( aEvent.iType == MDiskNotifyHandlerCallback::EDiskAdded ) - { - if( aEvent.iInfo.iType == EMediaHardDisk ) - { - TRAP_IGNORE( RemovableDiskInsertedL() ); - } - } - else if( aEvent.iType == MDiskNotifyHandlerCallback::EDiskRemoved ) - { - if( aEvent.iInfo.iType == EMediaNotPresent ) - { - TRAP_IGNORE( RemovableDiskRemovedL() ); - } - } } // ----------------------------------------------------------------------------- @@ -427,7 +402,7 @@ else { // Potentially not enough memory - HandleErrorL( KErrNoMemory ); + iViewManager.OomSysHandler().HandlePotentialOomL(); } } } @@ -502,8 +477,7 @@ if ( oldwp.Compare( newwp ) ) { iStoreWallpaper = ETrue; - iImageChanged = ETrue; - iWallpaper = aNewView.WallpaperImage(); + if ( aDrawNow ) { DrawNow(); @@ -766,11 +740,16 @@ const TDesC& path = viewData->WallpaperImagePath(); if( path != KNullDesC ) { - CFbsBitmap* bitmap = iSkinSrv.WallpaperImageL( path ); - if( bitmap ) + CFbsBitmap* bitmap = NULL; + TRAPD( err, bitmap = iSkinSrv.WallpaperImageL( path ) ); + if( err == KErrNone && bitmap ) { viewData->SetWallpaperImage( bitmap ); } + else + { + viewData->SetWallpaperImage( NULL ); + } } } } @@ -799,9 +778,9 @@ CFbsBitmap* bitmap = viewData->WallpaperImage(); if( path != KNullDesC && bitmap ) { - if ( !BaflUtils::FileExists( fs, path ) && path.Compare( KNullDesC ) != KErrNone ) + if ( !BaflUtils::FileExists( fs, path ) ) { - iSkinSrv.RemoveWallpaper( path ); + RemoveWallpaperFromCache( path, viewData ); viewData->SetWallpaperImage( NULL ); if( viewData == &iViewManager.ActiveViewData() ) { @@ -815,9 +794,9 @@ { if( iBgImagePath && iBgImage ) { - if ( !BaflUtils::FileExists( fs, *iBgImagePath ) && iBgImagePath->Compare( KNullDesC ) != KErrNone ) + if ( !BaflUtils::FileExists( fs, *iBgImagePath ) ) { - iSkinSrv.RemoveWallpaper( *iBgImagePath ); + RemoveWallpaperFromCache( *iBgImagePath ); delete iBgImage; iBgImage = NULL; drawingNeeded = ETrue; @@ -944,23 +923,14 @@ if( aFileName == KNullDesC ) { - if( viewData.WallpaperImagePath() == KNullDesC ) - { - // Default already set as background. - err = KErrCancel; - } - else - { - err = AknsWallpaperUtils::SetIdleWallpaper( aFileName, NULL ); - } + err = AknsWallpaperUtils::SetIdleWallpaper( aFileName, NULL ); } else { // Wallpaper is also added into the cache if it is not there already. - err = AknsWallpaperUtils::SetIdleWallpaper( aFileName, CCoeEnv::Static()/*, - R_QTN_HS_PROCESSING_NOTE, R_CHANGE_WALLPAPER_WAIT_DIALOG */ ); + err = AknsWallpaperUtils::SetIdleWallpaper( aFileName, CCoeEnv::Static(), + R_QTN_HS_PROCESSING_NOTE, R_CHANGE_WALLPAPER_WAIT_DIALOG ); } - if( err == KErrNone ) { // Remove old wallpaper from the cache @@ -1149,9 +1119,9 @@ RFs& fs( CEikonEnv::Static()->FsSession() ); if ( path != KNullDesC && BaflUtils::FileExists( fs, path ) ) { - iIntUpdate++; - TInt err( AknsWallpaperUtils::SetIdleWallpaper( path, NULL ) ); + TInt err( AknsWallpaperUtils::SetIdleWallpaper( path, NULL ) ); + if( err ) { iIntUpdate--; @@ -1174,16 +1144,8 @@ if( err ) { iIntUpdate--; - } - - // If the drive was formatted or temporarily detached or the image was removed - if( path.Length() ) - { - iViewManager.ActiveViewData().SetWallpaperImage( NULL ); - iSkinSrv.RemoveWallpaper( path ); - DrawNow(); - } - } + } + } } } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xncomposer.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xncomposer.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xncomposer.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -52,9 +52,6 @@ _LIT( KCDrive, "C:" ); _LIT8( KTagXuikon, "xuikon" ); -_LIT8( KTemplateViewSetting, "templateView" ); -_LIT8( KViewUidSetting, "uid" ); - using namespace hspswrapper; // ======== LOCAL FUNCTIONS ======== @@ -515,25 +512,6 @@ return NULL; } - RPointerArray& settings( configuration->Settings() ); - - for ( TInt i = 0; i < settings.Count(); i++ ) - { - CItemMap* setting( settings[i] ); - if ( (setting != NULL) && setting->ItemId() == KTemplateViewSetting ) - { - RPointerArray& properties = setting->Properties(); - for ( TInt j = 0; j < properties.Count(); j++ ) - { - CPropertyMap* property( properties[i] ); - if ( (property != NULL) && property->Name() == KViewUidSetting ) - { - aRootData.SetTemplateViewUidL( property->Value() ); - } - } - } - } - CPluginInfo& info( configuration->PluginInfo() ); aRootData.SetOwner( root ); diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xncontroladapter.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xncontroladapter.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xncontroladapter.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -615,14 +615,3 @@ { } - -// ----------------------------------------------------------------------------- -// CXnControlAdapter::IsWidgetGestureDest -// ----------------------------------------------------------------------------- -// -TBool CXnControlAdapter::IsWidgetGestureDest() - { - return iImpl->IsWidgetGestureDest(); - } - -// End of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xncontroladapterimpl.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xncontroladapterimpl.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xncontroladapterimpl.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -61,7 +61,6 @@ #include "xnscrollablecontroladapter.h" #include "xnfocuscontrol.h" #include "xneditmode.h" -#include "xnviewswitcher.h" _LIT8(KScrollableBoxNodeName, "scrollablebox"); _LIT8( KView, "view" ); @@ -208,6 +207,7 @@ CXnResource& aResource, RFile& aFile, RFs& aFsSession ); static void DrawFocusAppearance( CXnNode& aNode, CWindowGc& aGc ); static CXnDomNode* HasHoldTrigger( CXnDomNode* aNode ); +static void CancelFocusRefusalL( CXnUiEngine& aUiEngine ); // ============================= LOCAL FUNCTIONS =============================== // ----------------------------------------------------------------------------- @@ -3414,6 +3414,30 @@ } // ----------------------------------------------------------------------------- +// CancelFocusRefusalL +// Cancels focus refusal +// ----------------------------------------------------------------------------- +// +static void CancelFocusRefusalL( CXnUiEngine& aUiEngine ) + { + CXnNode* focused( aUiEngine.FocusedNode() ); + + if ( focused ) + { + CXnControlAdapter* control( focused->Control() ); + + if ( control && control->RefusesFocusLoss() ) + { + focused->HideTooltipsL(); + + // It is now time to give up holding focus + focused->UnsetStateL( + XnPropertyNames::style::common::KFocus ); + } + } + } + +// ----------------------------------------------------------------------------- // Calculates scaled bitmap size (rect) // ----------------------------------------------------------------------------- // @@ -3776,9 +3800,9 @@ if ( prop && prop->StringValue() == XnPropertyNames::KTrue ) { CXnUiEngine* engine( node->UiEngine() ); - CXnAppUiAdapter& appui( engine->AppUiAdapter() ); - - appui.ViewAdapter().CloseAllPopupsL(); + CXnAppUiAdapter& appui( engine->AppUiAdapter() ); + + CancelFocusRefusalL( *engine ); appui.HideFocus(); @@ -3840,7 +3864,7 @@ // TBool CXnControlAdapterImpl::HandlePointerEventL( const TPointerEvent& aPointerEvent ) - { + { const TPointerEvent& event( aPointerEvent ); CXnNode* node( &iNode.Node() ); @@ -3923,6 +3947,11 @@ if ( !menuBar ) { + CancelFocusRefusalL( *engine ); + } + + if ( !menuBar && !engine->FocusedNode() ) + { // save starting point iButtonDownStartPoint = event.iPosition; // Require focus to be shown @@ -3991,41 +4020,21 @@ // void CXnControlAdapterImpl::DoDrawL( const TRect& aRect, CWindowGc& aGc ) const { - if( !iComponent ) - { - return; - } CXnNode& node = iComponent->Node()->Node(); DrawBordersL( aRect, node, aGc ); const_cast< CXnControlAdapterImpl* >( this )->DrawBackgroundDataL( aRect, node, aGc ); - if ( node.IsStateSet( XnPropertyNames::style::common::KFocus ) ) - { - CXnProperty* prop( node.GetPropertyL( - XnPropertyNames::common::KFocusAppearance ) ); - - if ( prop && prop->StringValue() == XnPropertyNames::KNone ) - { - // Current element refuses to draw focus appearance - } - else - { - DrawFocusAppearance( node, aGc ); - } + if ( iAdapter->IsFocused() ) + { + DrawFocusAppearance( node, aGc ); } // Draw plus sign for empty plugins in edit mode. if( node.UiEngine()->EditMode()->EditState() ) { - CXnControlAdapterImpl* adapter = const_cast< CXnControlAdapterImpl* >( this ); - TBool editstate = iNode.IsEditState(); - - if( editstate ) - { - adapter->DrawPlusSign( node, aGc ); - } + const_cast< CXnControlAdapterImpl* >( this )->DrawPlusSign( node, aGc ); } if ( iAnimation ) @@ -4311,7 +4320,7 @@ // ----------------------------------------------------------------------------- // void CXnControlAdapterImpl::DrawBackgroundImageL( - const TRect& /*aRect*/, + const TRect& aRect, CXnNode& aNode, CWindowGc& aGc, CFbsBitmap* aBitmap, @@ -4402,7 +4411,7 @@ TPoint( rect.iTl.iX + imageRect.Width(), rect.iTl.iY + imageRect.Height() ) ); - //aGc.SetClippingRect( aRect ); + aGc.SetClippingRect( aRect ); if ( aMask ) { @@ -4419,7 +4428,7 @@ TPoint( rect.iTl.iX + imageRect.Width(), rect.iTl.iY + imageRect.Height() ) ); - //aGc.SetClippingRect( aRect ); + aGc.SetClippingRect( aRect ); aGc.DrawBitmap( newRect, aBitmap, bitmapRect ); } @@ -5723,26 +5732,22 @@ { swipe = &XnPropertyNames::action::trigger::name::swipe::direction::KRight; } - + if ( swipe && iGestureDestination ) { CXnUiEngine* engine = iNode.Node().UiEngine(); + if ( iGestureDestination == &iNode.Node() ) + { + CancelFocusRefusalL( *engine ); + } // Remove focus engine->AppUiAdapter().HideFocus(); - if ( ( engine->AppUiAdapter().ViewSwitcher() != NULL ) && - ( engine->AppUiAdapter().ViewSwitcher()->FingerFollowSupported() ) && - ( !iGestureDestination || iGestureDestination == &iNode.Node() ) ) - { - engine->AppUiAdapter().ViewSwitcher()->TouchGesture( type ); - } - else if ( iGestureDestination ) - { - CXnNode* trigger( BuildSwipeTriggerNodeLC( *engine, *swipe ) ); - iGestureDestination->ReportXuikonEventL( *trigger ); - CleanupStack::PopAndDestroy( trigger ); - } + CXnNode* trigger( BuildSwipeTriggerNodeLC( *engine, *swipe ) ); + iGestureDestination->ReportXuikonEventL( *trigger ); + CleanupStack::PopAndDestroy( trigger ); + CXnAppUiAdapter& appui( engine->AppUiAdapter() ); CXnViewData& data( appui.ViewManager().ActiveViewData() ); @@ -5754,13 +5759,6 @@ } } -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -TBool CXnControlAdapterImpl::IsWidgetGestureDest() - { - return ( !iGestureDestination || iGestureDestination != &iNode.Node() ); - } // ============================= TIconProvider =============================== diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xneditmode.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xneditmode.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xneditmode.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -504,7 +504,6 @@ CXnPluginData* plugin( iUiEngine.ViewManager()-> ActiveViewData().Plugin( node ) ); - if ( plugin && plugin->Occupied() ) { StartDragL( *plugin ); diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xneditor.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xneditor.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xneditor.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -57,6 +57,7 @@ #include "xnviewdata.h" #include "xnwallpaperview.h" #include "xnbackgroundmanager.h" +#include "xnpopupcontroladapter.h" #include "xneditor.h" #include "xnpanic.h" @@ -234,7 +235,7 @@ CXnPluginData* plugin( viewData.Plugin( node ) ); - if ( plugin && !plugin->Occupied() && plugin->Editable() ) + if ( plugin && !plugin->Occupied() ) { return plugin; } @@ -628,6 +629,18 @@ } if( ui ) { + CXnNode* popup( iViewManager.UiEngine().StylusPopupNode() ); + if ( popup ) + { + CXnPopupControlAdapter* control = + static_cast< CXnPopupControlAdapter* >( + popup->Control() ); + + if ( control ) + { + control->HideMenuL(); + } + } ui->SetContentController( this ); ui->Activate(); @@ -1074,14 +1087,6 @@ } } -// ----------------------------------------------------------------------------- -// CXnEditor::NotifyViewLoadedL -// ----------------------------------------------------------------------------- -// -void CXnEditor::NotifyViewLoadedL( const CXnViewData& /*aViewData*/ ) - { - } - // --------------------------------------------------------------------------- // CXnEditor::NotifyConfigureWidgetL // --------------------------------------------------------------------------- @@ -1334,7 +1339,7 @@ // CXnEditor::NotifyViewAdditionL // --------------------------------------------------------------------------- // -void CXnEditor::NotifyViewAdditionL( const CXnViewData& /*aViewData*/ ) +void CXnEditor::NotifyViewAdditionL( const CXnPluginData& /*aPluginData*/ ) { NotifyViewListChanged(); } @@ -1343,7 +1348,7 @@ // CXnEditor::NotifyViewRemovalL // --------------------------------------------------------------------------- // -void CXnEditor::NotifyViewRemovalL( const CXnViewData& /*aViewData*/ ) +void CXnEditor::NotifyViewRemovalL( const CXnPluginData& /*aPluginData*/ ) { NotifyViewListChanged(); } @@ -1417,6 +1422,7 @@ KNotifyWidgetListChangedDelay, KNotifyWidgetListChangedDelay, TCallBack( WidgetListChangedCallBack, this ) ); + } // --------------------------------------------------------------------------- @@ -1922,23 +1928,12 @@ const TDesC8& type( aInfo.Type() ); if ( ( type != KKeyWidget && type != KKeyTemplate ) || - aInfo.Uid() == KNullDesC8 ) + aInfo.Uid() == KNullDesC8 || !aInfo.CanBeAdded() ) { // malformed content info return KErrArgument; } - // the widget can not be added. Return proper error code - if ( IsCurrentViewFull() ) - { - return KHsErrorViewFull; - } - else if ( !aInfo.CanBeAdded() ) - { - return KHsErrorMaxInstanceCountExceeded; - } - - CXnPluginData* plugin( NULL ); if( iTargetPlugin ) @@ -1952,9 +1947,27 @@ iTargetPlugin = NULL; - if ( !plugin ) + // the widget can not be added. Return proper error code + if ( IsCurrentViewFull() || !plugin ) + { + return KHsErrorViewFull; + } + else { - return KErrGeneral; + TInt result; + if ( aInfo.Type() != KKeyTemplate() ) + { + result = NonTemplateWidgetCanBeAddedRemovedL( aInfo ); + } + else + { + result = TemplateWidgetCanBeAddedRemovedL( aInfo ); + } + + if ( !( result & ECanBeAdded ) ) + { + return KHsErrorMaxInstanceCountExceeded; + } } ret = iViewManager.LoadWidgetToPluginL( aInfo, *plugin ); @@ -2180,7 +2193,7 @@ { CXnPluginData* plugin = plugins[ i ]; - if ( plugin && !plugin->Occupied() && plugin->Editable() ) + if ( !plugin->Occupied() ) { isFull = EFalse; break; diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xneffectmanager.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xneffectmanager.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xneffectmanager.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -366,17 +366,17 @@ iBgEffect = ETrue; } - + // because of changes in nga end has to call here. Effects below are // grouped and those will be triggered when calling GfxTransEffect::EndGroup if ( iLandscape ) { GfxTransEffect::Begin( thisView, KGfxControlActionDisappearLsc ); GfxTransEffect::Begin( otherView, KGfxControlActionAppearLsc ); - + GfxTransEffect::SetDemarcation( otherView, otherView->Position() ); GfxTransEffect::End( otherView ); - + GfxTransEffect::SetDemarcation( thisView, thisView->Position() ); GfxTransEffect::End( thisView ); } @@ -387,11 +387,11 @@ GfxTransEffect::SetDemarcation( otherView, otherView->Position() ); GfxTransEffect::End( otherView ); - + GfxTransEffect::SetDemarcation( thisView, thisView->Position() ); GfxTransEffect::End( thisView ); - } - + } + return ETrue; } @@ -452,7 +452,8 @@ void CXnEffectManager::CleanupControlEffect() { iBgEffect = EFalse; - iGroupId = -1; + iGroupId = -1; + iControls.Reset(); } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnextrenderingpluginwrapper.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnextrenderingpluginwrapper.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnextrenderingpluginwrapper.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -224,7 +224,8 @@ void CXnExtRenderingPluginWrapper::HandleEventL( const TDesC& aEvent, const TDesC8& aDestination ) { - CXnNode* node = iNode->Node().UiEngine()->FindNodeByIdL( aDestination ); + CXnNode* node = iNode->Node().UiEngine()->FindNodeByIdL( aDestination, iNode->Namespace() ); + CXnAppUiAdapter* appui = static_cast(iAvkonAppUi); if ( !appui || !node ) { diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnfocuscontrol.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnfocuscontrol.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnfocuscontrol.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -109,20 +109,43 @@ { if ( aVisible != iVisible ) { - iVisible = aVisible; - if ( !aVisible ) { + iVisible = aVisible; + + iRefused = EFalse; + CXnNode* node( iAppUiAdapter.UiEngine().FocusedNode() ); if ( node ) { - node->UnsetStateL( - XnPropertyNames::style::common::KFocus ); + node->HideTooltipsL(); + + CXnControlAdapter* control( node->Control() ); + + if ( control && control->RefusesFocusLoss() ) + { + // Need to keep drawing focus appearance + iRefused = ETrue; + + node->UnsetStateL( + XnPropertyNames::style::common::KPressedDown ); + } + else + { + node->UnsetStateL( + XnPropertyNames::style::common::KFocus ); + } iAppUiAdapter.UiEngine().RenderUIL(); - } + } } + else + { + iRefused = EFalse; + + iVisible = aVisible; + } } } @@ -151,17 +174,42 @@ return; } - if ( IsVisible() ) + if ( IsVisible() || iRefused ) { - TRect innerRect( aRect ); + CXnNode* node( iAppUiAdapter.UiEngine().FocusedNode() ); - innerRect.Shrink( - KSkinGfxInnerRectShrink, KSkinGfxInnerRectShrink ); - - MAknsSkinInstance* skin( AknsUtils::SkinInstance() ); - - AknsDrawUtils::DrawFrame( skin, aGc, aRect, innerRect, - KAknsIIDQsnFrHome, KAknsIIDDefault ); + if ( node ) + { + CXnProperty* prop( NULL ); + + TRAP_IGNORE( prop = node->GetPropertyL( + XnPropertyNames::common::KFocusAppearance ) ); + + if ( prop && prop->StringValue() == XnPropertyNames::KNone ) + { + // Current element refuses to draw focus appearance + return; + } + + TRect innerRect( aRect ); + + innerRect.Shrink( + KSkinGfxInnerRectShrink, KSkinGfxInnerRectShrink ); + + MAknsSkinInstance* skin( AknsUtils::SkinInstance() ); + + if ( node->IsStateSet( XnPropertyNames::style::common::KPressedDown ) ) + { + AknsDrawUtils::DrawFrame( skin, aGc, aRect, innerRect, + KAknsIIDQsnFrHomePressed, KAknsIIDDefault ); + } + + if ( node->IsStateSet( XnPropertyNames::style::common::KFocus ) ) + { + AknsDrawUtils::DrawFrame( skin, aGc, aRect, innerRect, + KAknsIIDQsnFrHome, KAknsIIDDefault ); + } + } } } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnkeyeventdispatcher.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnkeyeventdispatcher.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnkeyeventdispatcher.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -17,11 +17,9 @@ // System includes #include -#include // User includes #include "xnappuiadapter.h" -#include "xnviewadapter.h" #include "xnfocuscontrol.h" #include "xnkeyeventdispatcher.h" #include "xntype.h" @@ -42,11 +40,7 @@ ( k == EStdKeyLeftArrow || k == EStdKeyRightArrow || \ k == EStdKeyUpArrow || k == EStdKeyDownArrow ) -// Constants -const TInt KOneView( 1 ); - -_LIT8( KEnablePartialInput, "splitinputenabled" ); -_LIT8( KTextEditor, "texteditor" ); +const TInt KOneView = 1; // ----------------------------------------------------------------------------- // SetInitialFocusL @@ -151,11 +145,7 @@ { iCoeEnv->RemoveMessageMonitorObserver( *this ); - CXnAppUiAdapter& appui( iUiEngine.AppUiAdapter() ); - - appui.ViewManager().RemoveObserver( *this ); - - appui.UiStateListener().RemoveObserver( *this ); + iUiEngine.ViewManager()->RemoveObserver( *this ); delete iLoseFocus; delete iGainFocus; @@ -181,11 +171,7 @@ { MakeVisible( EFalse ); - CXnAppUiAdapter& appui( iUiEngine.AppUiAdapter() ); - - appui.UiStateListener().AddObserver( *this ); - - appui.ViewManager().AddObserver( *this ); + iUiEngine.ViewManager()->AddObserver( *this ); iCoeEnv->AddMessageMonitorObserverL( *this ); } @@ -242,44 +228,6 @@ } // ----------------------------------------------------------------------------- -// CXnKeyEventDispatcher::NotifyStatusPaneSizeChanged() -// -// ----------------------------------------------------------------------------- -// -void CXnKeyEventDispatcher::NotifyStatusPaneSizeChanged() - { - // No implementation required - } - -// ----------------------------------------------------------------------------- -// CXnKeyEventDispatcher::NotifyResourceChanged() -// -// ----------------------------------------------------------------------------- -// -void CXnKeyEventDispatcher::NotifyResourceChanged( TInt aType ) - { - if ( aType == KAknSplitInputEnabled ) - { - if ( iActiveTextEditor ) - { - CXnProperty* prop( NULL ); - - TRAP_IGNORE( prop = - iActiveTextEditor->GetPropertyL( KEnablePartialInput ) ); - - if ( prop && prop->StringValue() == XnPropertyNames::KTrue ) - { - iUiEngine.EnablePartialTouchInput( iActiveTextEditor, ETrue ); - } - } - } - else if ( aType == KAknSplitInputDisabled ) - { - iUiEngine.EnablePartialTouchInput( NULL, EFalse ); - } - } - -// ----------------------------------------------------------------------------- // CXnKeyEventDispatcher::PointerEvent() // // ----------------------------------------------------------------------------- @@ -290,43 +238,6 @@ } // ----------------------------------------------------------------------------- -// CXnKeyEventDispatcher::SetTextEditorActive() -// -// ----------------------------------------------------------------------------- -// -void CXnKeyEventDispatcher::SetTextEditorActive( CXnNode* aNode, - TBool aActivate ) - { - if ( iActiveTextEditor && iActiveTextEditor != aNode ) - { - CXnNode* activeTextEditor( iActiveTextEditor ); - iActiveTextEditor = NULL; - - // Run lose focus to text editor node - TRAP_IGNORE( SetNodeL( activeTextEditor, NULL, ETrue ) ); - } - - if ( aActivate && aNode && aNode->Type()->Type() == KTextEditor ) - { - iActiveTextEditor = aNode; - } - else - { - iActiveTextEditor = NULL; - } - } - -// ----------------------------------------------------------------------------- -// CXnKeyEventDispatcher::IsTextEditorActive -// -// ----------------------------------------------------------------------------- -// -TBool CXnKeyEventDispatcher::IsTextEditorActive() const - { - return iActiveTextEditor ? ETrue : EFalse; - } - -// ----------------------------------------------------------------------------- // CXnKeyEventDispatcher::OfferKeyEventL // Handles key events. // ----------------------------------------------------------------------------- @@ -358,11 +269,6 @@ { keyYesNoApps = ETrue; - if ( aKeyEvent.iScanCode == EStdKeyNo && aType == EEventKey ) - { - iUiEngine.AppUiAdapter().ViewAdapter().CloseAllPopupsL(); - } - iFocusChanged = EFalse; // AppsKey, YesKey, NoKey events must be always handled, and if we don't @@ -375,45 +281,38 @@ if ( IS_ARROW_KEY( aKeyEvent.iScanCode ) && aType == EEventKey ) { - if ( !appui.FocusShown() || !iNode ) + if ( !appui.FocusShown() ) { appui.ShowFocus(); if ( !iNode ) { - if ( iActiveTextEditor ) - { - iNode = iActiveTextEditor; - } - else + // Find initial location for focus + ResolveAndSetFocusL(); + + // If focus is still not set, we are in normal mode and the view is empty. + // left and right arrows lead to next/previous view. When other arrows + // are pressed, the focus is hidden. + if( !iNode ) { - // Find initial location for focus - ResolveAndSetFocusL(); - - // If focus is still not set, we are in normal mode and the view is empty. - // left and right arrows lead to next/previous view. When other arrows - // are pressed, the focus is hidden. - if( !iNode ) + if( iUiEngine.ViewManager()->ViewAmount() != KOneView && + aKeyEvent.iScanCode == EStdKeyRightArrow ) { - if( iUiEngine.ViewManager()->ViewAmount() != KOneView && - aKeyEvent.iScanCode == EStdKeyRightArrow ) - { - iUiEngine.ViewManager()->ActivateNextViewL(); - } - else if( iUiEngine.ViewManager()->ViewAmount() != KOneView && - aKeyEvent.iScanCode == EStdKeyLeftArrow ) - { - iUiEngine.ViewManager()->ActivatePreviousViewL(); - } - else - { - // hide focus if view is not switched - appui.HideFocus(); - } + iUiEngine.ViewManager()->ActivateNextViewL(); + } + else if( iUiEngine.ViewManager()->ViewAmount() != KOneView && + aKeyEvent.iScanCode == EStdKeyLeftArrow ) + { + iUiEngine.ViewManager()->ActivatePreviousViewL(); } - - return EKeyWasConsumed; + else + { + // hide focus if view is not switched + appui.HideFocus(); + } } + + return EKeyWasConsumed; } } } @@ -532,14 +431,6 @@ { if ( aToLose ) { - CXnControlAdapter* adapter( aToLose->Control() ); - - // Don't change control focus when element is focused - if ( adapter && !iActiveTextEditor ) - { - adapter->SetFocus( EFalse ); - } - aToLose->SetDirtyL( XnDirtyLevel::ERender ); aToLose->UnsetStateL( XnPropertyNames::style::common::KFocus ); @@ -553,34 +444,20 @@ iLoseFocus = BuildTriggerNodeL( iUiEngine, XnPropertyNames::action::trigger::name::KLoseFocus ); } - - if ( iActiveTextEditor != aToLose ) - { - aToLose->ReportXuikonEventL( *iLoseFocus ); - } + + aToLose->ReportXuikonEventL( *iLoseFocus ); + } + + CXnControlAdapter* adapter( aToLose->Control() ); + + if ( adapter ) + { + adapter->SetFocus( EFalse ); } } if ( aToGain ) { - TBool isTextEditor( aToGain->Type()->Type() == KTextEditor ); - - if ( iActiveTextEditor && ( ( aSource != XnEventSource::EStylus && !isTextEditor ) || - ( iActiveTextEditor->Namespace() != aToGain->Namespace() ) || - ( isTextEditor && iActiveTextEditor != aToGain ) ) ) - { - // Remove focus from active element - SetTextEditorActive( NULL, EFalse ); - } - - CXnControlAdapter* adapter( aToGain->Control() ); - - // Don't change control focus when element is focused - if ( adapter && !iActiveTextEditor ) - { - adapter->SetFocus( ETrue ); - } - aToGain->SetDirtyL( XnDirtyLevel::ERender ); if ( aNotify ) @@ -591,17 +468,15 @@ XnPropertyNames::action::trigger::name::KGainFocus ); } - if ( iActiveTextEditor != aToGain ) - { - aToGain->ReportXuikonEventL( *iGainFocus, aSource ); - } + aToGain->ReportXuikonEventL( *iGainFocus, aSource ); } - - if ( isTextEditor ) + + CXnControlAdapter* adapter( aToGain->Control() ); + + if ( adapter ) { - // Set active element - SetTextEditorActive( aToGain, ETrue ); - } + adapter->SetFocus( ETrue ); + } } } @@ -766,9 +641,6 @@ const CXnViewData& /*aViewData*/ ) { iMenuNode = NULL; - - SetTextEditorActive( NULL, EFalse ); - ClearPassiveFocusedNodesL(); ClearStateL(); @@ -795,11 +667,11 @@ { ClearPassiveFocusedNodesL(); - CXnViewData& activeViewData( - iUiEngine.ViewManager()->ActiveViewData() ); - if ( iNode ) { + CXnViewData& activeViewData( + iUiEngine.ViewManager()->ActiveViewData() ); + const CXnPluginData* pluginData( activeViewData.Plugin( iNode ) ); @@ -809,17 +681,6 @@ ClearStateL(); } } - - if ( iActiveTextEditor ) - { - const CXnPluginData* pluginData( - activeViewData.Plugin( iActiveTextEditor ) ); - - if ( pluginData == &aPluginData ) - { - SetTextEditorActive( NULL, EFalse ); - } - } } } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnnodeimpl.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnnodeimpl.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnnodeimpl.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -27,7 +27,6 @@ #include "xnproperty.h" #include "xnuiengine.h" #include "xnappuiadapter.h" -#include "xnkeyeventdispatcher.h" #include "xncontroladapter.h" #include "xnpopupcontroladapter.h" #include "xnmenuadapter.h" @@ -52,6 +51,7 @@ #include "xneffectmanager.h" #include "xnviewadapter.h" #include "xnbackgroundmanager.h" +#include "xntexteditor.h" #include "xnitemactivator.h" // Local constants @@ -337,11 +337,10 @@ static CXnNode* FindNextNodeFromLeftL( RPointerArray< CXnNode >& aArray, CXnNode& aNode, TBool stayInNamespace = EFalse, CXnUiEngine* aEngine = NULL ); static CXnNode* FindNextNodeFromBelowL( - RPointerArray< CXnNode >& aArray, CXnNode& aNode, TBool stayInNamespace = EFalse, CXnUiEngine* aEngine = NULL ); + RPointerArray< CXnNode >& aArray, CXnNode& aNode, TBool stayInNamespace = EFalse ); static CXnNode* FindNextNodeFromAboveL( - RPointerArray< CXnNode >& aArray, CXnNode& aNode, TBool stayInNamespace = EFalse, CXnUiEngine* aEngine = NULL ); + RPointerArray< CXnNode >& aArray, CXnNode& aNode, TBool stayInNamespace = EFalse ); static CXnNode* FindPluginNode( CXnNode& aNode ); -static TBool IsPluginNode( CXnNode& aNode ); static TBool DoInternalFocusChangeL( CXnUiEngine& aEngine, CXnNode& aNode, const TKeyEvent& aKeyEvent, TEventCode aType ); @@ -2936,22 +2935,22 @@ editorNode = &aLayoutNode; } - if ( editorNode ) - { - CXnKeyEventDispatcher* eventDispatcher( - aEngine.AppUiAdapter().ViewAdapter().EventDispatcher() ); + if( editorNode ) + { + XnTextEditorInterface::MXnTextEditorInterface* editorControl = NULL; - if ( eventDispatcher ) - { - if ( aActivate ) - { - eventDispatcher->SetTextEditorActive( editorNode, ETrue ); + XnComponentInterface::MakeInterfaceL( editorControl, editorNode->AppIfL() ); + if( editorControl ) + { + if( aActivate ) + { + editorControl->HandleEditorEvent(CXnTextEditor::KActivateTextEditor); } else { - eventDispatcher->SetTextEditorActive( NULL, EFalse ); - } - } + editorControl->HandleEditorEvent(CXnTextEditor::KDeactivateTextEditor); + } + } } } @@ -3057,21 +3056,17 @@ for ( TInt i = 0; i < plugins.Count(); i++ ) { - CXnNode* node( plugins[i]->Owner()->LayoutNode() ); - TBool editable = plugins[i]->Editable(); - - if( editable ) - { - node->SetStateL( XnPropertyNames::style::common::KEdit ); - } + CXnNode* node( plugins[i]->Owner()->LayoutNode() ); + node->SetStateL( XnPropertyNames::style::common::KEdit ); + if ( !plugins[i]->Occupied() && useEmpty ) { // Make empty space visible SetStringPropertyToNodeL( *sp, *node, XnPropertyNames::style::common::KVisibility, XnPropertyNames::style::common::visibility::KVisible ); - } + } } aEngine.EditMode()->SetEditModeL( CXnEditMode::EDragAndDrop ); @@ -3739,7 +3734,7 @@ } } - plugins.AppendL( &viewData ); + plugins.Append( &viewData ); RPointerArray< CXnNode > list; CleanupClosePushL( list ); @@ -4785,6 +4780,7 @@ TBool stayInNamespace, CXnUiEngine* aEngine ) { + CXnNode* nextNode = NULL; TRect rect = aNode.PaddingRect(); @@ -4804,14 +4800,6 @@ // do not shift focus to another view continue; } - if( aEngine->IsEditMode() ) - { - if( !IsPluginNode( *tmpNode ) ) - { - // move only between "plugin" nodes in edit mode - continue; - } - } const TDesC8& tmpNamespace = tmpNode->Impl()->Namespace(); const TDesC8& nodeNamespace = aNode.Impl()->Namespace(); @@ -4935,14 +4923,6 @@ // do not shift focus to another view continue; } - if( aEngine->IsEditMode() ) - { - if( !IsPluginNode( *tmpNode ) ) - { - // move only between "plugin" nodes in edit mode - continue; - } - } const TDesC8& tmpNamespace = tmpNode->Impl()->Namespace(); const TDesC8& nodeNamespace = aNode.Impl()->Namespace(); @@ -5057,7 +5037,6 @@ for ( TInt i = 0; i < aArray.Count(); ++i ) { CXnNode* tmpNode = aArray[i]; - if ( !IsNodeNavigableL( *tmpNode ) ) { continue; @@ -5067,14 +5046,6 @@ // do not shift focus to another view continue; } - if( aEngine->IsEditMode() ) - { - if( !IsPluginNode( *tmpNode ) ) - { - // move only between "plugin" nodes in edit mode - continue; - } - } const TDesC8& tmpNamespace = tmpNode->Impl()->Namespace(); const TDesC8& nodeNamespace = aNode.Impl()->Namespace(); @@ -5260,14 +5231,6 @@ // do not shift focus to another view continue; } - if( aEngine->IsEditMode() ) - { - if( !IsPluginNode( *tmpNode ) ) - { - // move only between "plugin" nodes in edit mode - continue; - } - } const TDesC8& tmpNamespace = tmpNode->Impl()->Namespace(); const TDesC8& nodeNamespace = aNode.Impl()->Namespace(); @@ -5390,14 +5353,6 @@ // do not shift focus to another view continue; } - if( aEngine->IsEditMode() ) - { - if( !IsPluginNode( *tmpNode ) ) - { - // move only between "plugin" nodes in edit mode - continue; - } - } const TDesC8& tmpNamespace = tmpNode->Impl()->Namespace(); const TDesC8& nodeNamespace = aNode.Impl()->Namespace(); @@ -5515,7 +5470,12 @@ for ( TInt i = 0; i < aArray.Count(); ++i ) { CXnNode* tmpNode = aArray[i]; - + /* + if ( tmpNode == &aNode ) + { + continue; + } + */ if ( !IsNodeNavigableL( *tmpNode ) ) { continue; @@ -5525,14 +5485,6 @@ // do not shift focus to another view continue; } - if( aEngine->IsEditMode() ) - { - if( !IsPluginNode( *tmpNode ) ) - { - // move only between "plugin" nodes in edit mode - continue; - } - } const TDesC8& tmpNamespace = tmpNode->Impl()->Namespace(); const TDesC8& nodeNamespace = aNode.Impl()->Namespace(); @@ -5697,8 +5649,7 @@ // static CXnNode* FindNextNodeFromBelowL( RPointerArray< CXnNode >& aArray, - CXnNode& aNode, TBool stayInNamespace, - CXnUiEngine* aEngine ) + CXnNode& aNode, TBool stayInNamespace ) { CXnNode* nextNode = NULL; TRect rect = aNode.PaddingRect(); @@ -5718,14 +5669,6 @@ { // do not shift focus to another view continue; - } - if( aEngine->IsEditMode() ) - { - if( !IsPluginNode( *tmpNode ) ) - { - // move only between "plugin" nodes in edit mode - continue; - } } const TDesC8& tmpNamespace = tmpNode->Impl()->Namespace(); @@ -5811,14 +5754,6 @@ // do not shift focus to another view continue; } - if( aEngine->IsEditMode() ) - { - if( !IsPluginNode( *tmpNode ) ) - { - // move only between "plugin" nodes in edit mode - continue; - } - } const TDesC8& tmpNamespace = tmpNode->Impl()->Namespace(); const TDesC8& nodeNamespace = aNode.Impl()->Namespace(); @@ -5890,8 +5825,7 @@ // static CXnNode* FindNextNodeFromAboveL( RPointerArray< CXnNode >& aArray, - CXnNode& aNode, TBool stayInNamespace, - CXnUiEngine* aEngine ) + CXnNode& aNode, TBool stayInNamespace ) { CXnNode* nextNode = NULL; TRect rect = aNode.PaddingRect(); @@ -5912,14 +5846,6 @@ // do not shift focus to another view continue; } - if( aEngine->IsEditMode() ) - { - if( !IsPluginNode( *tmpNode ) ) - { - // move only between "plugin" nodes in edit mode - continue; - } - } const TDesC8& tmpNamespace = tmpNode->Impl()->Namespace(); const TDesC8& nodeNamespace = aNode.Impl()->Namespace(); @@ -6003,14 +5929,6 @@ // do not shift focus to another view continue; } - if( aEngine->IsEditMode() ) - { - if( !IsPluginNode( *tmpNode ) ) - { - // move only between "plugin" nodes in edit mode - continue; - } - } const TDesC8& tmpNamespace = tmpNode->Impl()->Namespace(); const TDesC8& nodeNamespace = aNode.Impl()->Namespace(); @@ -6101,23 +6019,6 @@ } // ----------------------------------------------------------------------------- -// IsPluginNode -// ----------------------------------------------------------------------------- -// -static TBool IsPluginNode( CXnNode& aNode ) - { - TBool ret = EFalse; - - const TDesC8& nodeType = aNode.DomNode()->Name(); - if( nodeType == KPlugin ) - { - ret = ETrue; - } - - return ret; - } - -// ----------------------------------------------------------------------------- // DoInternalFocusChangeL // ----------------------------------------------------------------------------- // @@ -6149,11 +6050,12 @@ // "nav-index: appearance"... CXnProperty* navind = aNode.NavIndexL(); if ( navind && navind->StringValue() == XnPropertyNames::style::common::KAppearance ) - { - CXnAppUiAdapter& appui( aEngine.AppUiAdapter() ); + { - CXnPluginData* plugin( appui.ViewManager().ActiveViewData().Plugin( &aNode ) ); - + CXnAppUiAdapter& appui = static_cast< CXnAppUiAdapter& >( *iAvkonAppUi ); + CXnPluginData* plugin( + appui.ViewManager().ActiveViewData().Plugin( &aNode ) ); + // find if node is in a widget that contatins some opened popup window TBool containsPopUp = ( plugin ? plugin->IsDisplayingPopup() : EFalse ); @@ -6161,11 +6063,11 @@ RPointerArray< CXnNode >& array = aEngine.ViewManager()->AppearanceNodes(); if ( aKeyEvent.iScanCode == EStdKeyDownArrow ) { - nextNode = FindNextNodeFromBelowL( array, aNode, containsPopUp, &aEngine ); + nextNode = FindNextNodeFromBelowL( array, aNode, containsPopUp ); } else if ( aKeyEvent.iScanCode == EStdKeyUpArrow ) { - nextNode = FindNextNodeFromAboveL( array, aNode, containsPopUp, &aEngine ); + nextNode = FindNextNodeFromAboveL( array, aNode, containsPopUp ); } else if ( aKeyEvent.iScanCode == EStdKeyRightArrow ) { @@ -6176,12 +6078,24 @@ nextNode = FindNextNodeFromLeftL( array, aNode, containsPopUp, &aEngine ); } if ( nextNode ) - { + { + // focus plugin node if in edit mode + if( aEngine.IsEditMode() ) + { + if( nextNode->Type()->Type() != KPlugin ) + { + CXnNode* pluginNode = FindPluginNode( *nextNode ); + if( pluginNode ) + { + nextNode = pluginNode; + } + } + } + if( nextNode && nextNode->ScrollableControl() ) { nextNode->ScrollableControl()->ShowItem( *nextNode ); } - nextNode->SetStateL( XnPropertyNames::style::common::KFocus ); return ETrue; } @@ -7978,10 +7892,13 @@ if ( iDropped || !displayed ) { // Need to check blank here - CXnProperty* prop( VisibilityL() ); - - if ( prop && prop->StringValue() == - XnPropertyNames::style::common::visibility::KBlank ) + CXnProperty* visibility( VisibilityL() ); + CXnProperty* display( DisplayL() ); + + if ( visibility && visibility->StringValue() == + XnPropertyNames::style::common::visibility::KBlank && + ( !display || display->StringValue() + == XnPropertyNames::style::common::display::KBlock ) ) { control->SetBlank( ETrue ); control->MakeVisible( EFalse ); @@ -8042,15 +7959,18 @@ // ----------------------------------------------------------------------------- // void CXnNodeImpl::SetLaidOutL() - { - if ( !iLayoutCapable || iDropped || !IsNodeDisplayedL( *iNode ) ) - { - iLaidOut = EFalse; - } - else - { - iLaidOut = ETrue; - } + { + if ( !iLayoutCapable ) + { + return; + } + + if ( iDropped || !IsNodeDisplayedL( *iNode ) ) + { + return; + } + + iLaidOut = ETrue; for ( TInt i = 0; i < iChildren.Count(); i++ ) { @@ -9217,7 +9137,6 @@ CleanupStack::PopAndDestroy( 2 ); // lockedNodes, lockedNodeIndex } -/* // ----------------------------------------------------------------------------- // CXnNodeImpl::FindNextNodeL // ----------------------------------------------------------------------------- @@ -9246,7 +9165,6 @@ } return node; } -*/ // ----------------------------------------------------------------------------- // CXnNodeImpl::Namespace diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnnodepluginif.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnnodepluginif.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnnodepluginif.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -26,9 +26,6 @@ #include "xndomdocument.h" #include "xnodt.h" -_LIT8( KFocus, "focus" ); -_LIT8( KEdit, "edit" ); - // ============================ MEMBER FUNCTIONS =============================== // ----------------------------------------------------------------------------- @@ -210,16 +207,7 @@ // EXPORT_C TBool CXnNodePluginIf::IsFocusedState() { - return iNode->IsStateSet( KFocus ); - } - -// ----------------------------------------------------------------------------- -// CXnNodePluginIf::IsEditState -// ----------------------------------------------------------------------------- -// -EXPORT_C TBool CXnNodePluginIf::IsEditState() - { - return iNode->IsStateSet( KEdit ); + return iNode->IsStateSet( _L8( "focus" ) ); } // ----------------------------------------------------------------------------- diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnodtparser.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnodtparser.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnodtparser.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -88,14 +88,6 @@ _LIT8( KWidgetNodeName, "widget" ); _LIT8( KSliderNodeName, "slider" ); _LIT8( KClockNodeName, "clock" ); -_LIT8( KClockAnalog, "analog" ); -_LIT8( KClockDigital, "digital" ); -_LIT8( KClockFace, "face" ); -_LIT8( KClockFace12, "face12" ); -_LIT8( KClockFace24, "face24" ); -_LIT8( KClockDate, "date" ); -_LIT8( KClockAmpm, "ampm" ); -_LIT8( KClockDay, "day" ); _LIT8( KSoftkeyNodeName,"softkey" ); _LIT8( KConditionalTrigger,"conditional" ); _LIT8( KCondtionalOn, "true" ); @@ -519,14 +511,6 @@ name == KNewstickerNodeName || name == KSliderNodeName || name == KClockNodeName || - name == KClockAnalog || - name == KClockDigital || - name == KClockFace || - name == KClockFace12 || - name == KClockFace24 || - name == KClockDate || - name == KClockAmpm || - name == KClockDay || name == KStylusPopupNodeName || name == KPopUpNodeName || name == KWidgetExtensionNodeName || diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnplugindata.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnplugindata.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnplugindata.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -37,7 +37,6 @@ // Constants _LIT8( KLockingStatusLocked, "locked" ); -_LIT8( KLockingStatusPermanent, "permanent" ); // ============================ LOCAL FUNCTIONS ================================ @@ -498,25 +497,12 @@ void CXnPluginData::Flush() { // Don't touch to iOwner, because this plugin might be reused later - - delete iDirtyRegion; - iDirtyRegion = NULL; - - // clear all flags, except editable and removable - TBool removable = iFlags.IsSet( EIsRemovable ); - TBool editable = iFlags.IsSet( EIsEditable ); - + iFlags.ClearAll(); - if( removable ) - { - iFlags.Set( EIsRemovable ); - } - if( editable ) - { - iFlags.Set( EIsEditable ); - } - + // This is default + iFlags.Set( EIsRemovable ); + iNode = NULL; delete iConfigurationId; @@ -565,7 +551,7 @@ } // ----------------------------------------------------------------------------- -// CXnPluginData::SetEmptyL() +// CXnPluginData::SetEmpty() // // ----------------------------------------------------------------------------- // @@ -638,38 +624,14 @@ // void CXnPluginData::SetLockingStatus( const TDesC8& aStatus ) { - if( aStatus.CompareF( KLockingStatusPermanent ) == 0 ) + if ( aStatus.CompareF( KLockingStatusLocked ) == 0 ) { iFlags.Clear( EIsRemovable ); - iFlags.Clear( EIsEditable ); - } - else if( aStatus.CompareF( KLockingStatusLocked ) == 0 ) - { - iFlags.Clear( EIsRemovable ); - iFlags.Set( EIsEditable ); } else { iFlags.Set( EIsRemovable ); - iFlags.Set( EIsEditable ); } } -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -TXnDirtyRegion* CXnPluginData::CreateDirtyRegionL( CXnNode& aRootNode, - CCoeControl& aControl ) - { - delete iDirtyRegion; - iDirtyRegion = NULL; - iDirtyRegion = new (ELeave) TXnDirtyRegion; - iDirtyRegion->iRegion.Clear(); - iDirtyRegion->iControl = &aControl; - iDirtyRegion->iRootNode = &aRootNode; - iDirtyRegion->iDirtyList.Reset(); - iDirtyRegion->iLayoutControl = 0; - return iDirtyRegion; - } - // End of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnpopupcontroladapter.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnpopupcontroladapter.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnpopupcontroladapter.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -204,19 +204,13 @@ CXnViewManager* manager( iUiEngine->ViewManager() ); CXnPluginData* plugin( manager->ActiveViewData().Plugin( &aPlugin ) ); - + if ( !plugin ) { return; } CXnViewAdapter& adapter( iUiEngine->AppUiAdapter().ViewAdapter() ); - - // this is to avoid stylus popup on widget manager - if ( !adapter.IsForegroundAdapter() ) - { - return; - } const TPointerEvent& event( adapter.EventDispatcher()->PointerEvent() ); diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnrootdata.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnrootdata.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnrootdata.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -45,7 +45,6 @@ // Constants const TInt KScheduleInterval( 2000000 ); -_LIT8( KTemplateViewUID, "0x20026f50" ); // ============================ LOCAL FUNCTIONS ================================ @@ -95,9 +94,6 @@ // CXnRootData::~CXnRootData() { - delete iTemplateViewUid; - iTemplateViewUid = NULL; - if ( iLoadTimer ) { iLoadTimer->Cancel(); @@ -254,7 +250,7 @@ // // ----------------------------------------------------------------------------- // -void CXnRootData::LoadRemainingViewsL() +void CXnRootData::LoadRemainingViews() { if ( iFlags.IsClear( EIsDispose ) ) { @@ -426,46 +422,6 @@ } // ----------------------------------------------------------------------------- -// CXnRootData::ViewData() -// ----------------------------------------------------------------------------- -// -CXnViewData* CXnRootData::ViewData( CXnNode& aNode ) const - { - CXnNode* tmp( &aNode ); - CXnNode* viewNode( NULL ); - while( tmp ) - { - if ( tmp->ViewNodeImpl() ) - { - viewNode = tmp; - break; - } - else - { - tmp = tmp->Parent(); - } - } - if( !viewNode ) - { - return NULL; - } - - CXnViewData* viewData( NULL ); - for ( TInt i = 0; i < iPluginsData.Count(); i++ ) - { - CXnViewData* tmpViewdata( static_cast< CXnViewData* >( iPluginsData[i] ) ); - if( tmpViewdata->ViewNode() == viewNode ) - { - viewData = tmpViewdata; - break; - } - } - - return viewData; - } - - -// ----------------------------------------------------------------------------- // CXnRootData::DestroyViewData() // Sets view data to be destroyed // ----------------------------------------------------------------------------- @@ -478,9 +434,10 @@ { iPluginsData.Remove( index ); - if ( iViewsToDestroy.Find( aViewData ) == KErrNotFound && - iViewsToDestroy.Append( aViewData ) == KErrNone ) + if ( iViewsToDestroy.Find( aViewData ) == KErrNotFound ) { + iViewsToDestroy.Append( aViewData ); + iDestroyTimer->Cancel(); iDestroyTimer->Start( TTimeIntervalMicroSeconds32( 0 ), @@ -643,28 +600,6 @@ return iMaxPages; } -// --------------------------------------------------------------------------- -// Returns TemplateViewUid -// --------------------------------------------------------------------------- -// -const TDesC8& CXnRootData::TemplateViewUid() const - { - const TDesC8& templateViewUid = KTemplateViewUID; - return iTemplateViewUid ? *iTemplateViewUid : templateViewUid; // qhd uid - }; - -// --------------------------------------------------------------------------- -// Sets TemplateViewUid -// --------------------------------------------------------------------------- -// -void CXnRootData::SetTemplateViewUidL( const TDesC8& aTemplateViewUid ) - { - delete iTemplateViewUid; - iTemplateViewUid = NULL; - - iTemplateViewUid = aTemplateViewUid.AllocL(); - }; - // ----------------------------------------------------------------------------- // CXnRootData::RunDestroyL() // diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnuiengine.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnuiengine.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnuiengine.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -526,7 +526,7 @@ // CXnUiEngine::EnablePartialTouchInput() // ----------------------------------------------------------------------------- // -void CXnUiEngine::EnablePartialTouchInput( CXnNode* aNode, TBool aEnable ) +void CXnUiEngine::EnablePartialTouchInput( CXnNode& aNode, TBool aEnable ) { iUiEngineImpl->EnablePartialTouchInput(aNode, aEnable); } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnuiengineimpl.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnuiengineimpl.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnuiengineimpl.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -58,7 +58,6 @@ #include "xnbackgroundmanager.h" #include "xntexteditor.h" #include "xnrootdata.h" -#include "xnviewswitcher.h" #ifdef _XN_PERFORMANCE_TEST_ #include "xntimemon.h" @@ -78,17 +77,15 @@ _LIT8( KBoxNodeName, "box" ); _LIT8( KButtonNodeName, "button" ); +_LIT8( KWidgetNodeName, "widget" ); _LIT8( KWidgetExtensionNodeName, "widgetextension" ); _LIT8( KScrollableBoxNodeName, "scrollablebox" ); _LIT8( KMenuBar, "menubar" ); _LIT8( KPopUpNodeName, "popup" ); +_LIT8( KEditorNodeName, "texteditor" ); _LIT8( KPlugin, "plugin" ); -_LIT8( KSplitScreenEnabledTrigger , "splitscreenenabled" ); -_LIT8( KSplitScreenDisabledTrigger, "splitscreendisabled" ); - - // LOCAL CONSTANTS AND MACROS static const TReal KIntConversionConstant = 0.5; static const TReal KIntPercentageConstant = @@ -291,6 +288,23 @@ // ============================= LOCAL FUNCTIONS =============================== // ----------------------------------------------------------------------------- +// ----------------------------------------------------------------------------- +// +CXnNode* FindPlugin( CXnNode& aNode ) + { + CXnNode* pluginNode( NULL ); + for( CXnNode* node = &aNode; node; node = node->Parent() ) + { + if( node->DomNode()->Name() == KPlugin ) + { + pluginNode = node; + break; + } + } + return pluginNode; + } + +// ----------------------------------------------------------------------------- // GrowIfNeeded() // When a plugin is focused, the focus is a bit bigger than its control // (this is a hack fix to get focus visible with WRT widgets). @@ -3169,18 +3183,18 @@ { TInt width = aNode.BorderRect().Width() + marginLeft + marginRight; - if ( aColumnMargin < marginRight ) + if ( aColumnMargin < marginLeft ) { width -= aColumnMargin; } else { - width -= marginRight; + width -= marginLeft; } if ( width + aColumnWidth <= aParentRect.Width() ) { offsety = aParentRect.iTl.iY + marginTop; - if ( aColumnMargin < marginRight ) + if ( aColumnMargin < marginLeft ) { offsetx = aParentRect.iBr.iX - aColumnWidth + aColumnMargin - marginRight - @@ -3266,7 +3280,7 @@ { offsety = aParentRect.iBr.iY - marginBottom - aNode.BorderRect().Height(); - if ( aColumnMargin < marginRight ) + if ( aColumnMargin < marginLeft ) { offsetx = aParentRect.iBr.iX - aColumnWidth + aColumnMargin - marginRight - @@ -7086,71 +7100,71 @@ if ( IsPropertyAutoL( *top ) ) { TPtrC8 propertyName = top->Property()->Name(); - autoArray.AppendL( propertyName ); + autoArray.Append( propertyName ); } CXnProperty* bottom = aNode.BottomL(); if ( IsPropertyAutoL( *bottom ) ) { TPtrC8 propertyName = bottom->Property()->Name(); - autoArray.AppendL( propertyName ); + autoArray.Append( propertyName ); } CXnProperty* left = aNode.LeftL(); if ( IsPropertyAutoL( *left ) ) { TPtrC8 propertyName = left->Property()->Name(); - autoArray.AppendL( propertyName ); + autoArray.Append( propertyName ); } CXnProperty* right = aNode.RightL(); if ( IsPropertyAutoL( *right ) ) { TPtrC8 propertyName = right->Property()->Name(); - autoArray.AppendL( propertyName ); + autoArray.Append( propertyName ); } CXnProperty* width = aNode.WidthL(); if ( IsPropertyAutoL( *width ) ) { TPtrC8 propertyName = width->Property()->Name(); - autoArray.AppendL( propertyName ); + autoArray.Append( propertyName ); } if ( !width ) { TPtrC8 propertyName = XnPropertyNames::style::common::KWidth(); - autoArray.AppendL( propertyName ); + autoArray.Append( propertyName ); } CXnProperty* height = aNode.HeightL(); if ( IsPropertyAutoL( *height ) ) { TPtrC8 propertyName = height->Property()->Name(); - autoArray.AppendL( propertyName ); + autoArray.Append( propertyName ); } if ( !height ) { TPtrC8 propertyName = XnPropertyNames::style::common::KHeight(); - autoArray.AppendL( propertyName ); + autoArray.Append( propertyName ); } CXnProperty* marginTop = aNode.MarginTopL(); if ( IsPropertyAutoL( *marginTop ) ) { TPtrC8 propertyName = marginTop->Property()->Name(); - autoArray.AppendL( propertyName ); + autoArray.Append( propertyName ); } CXnProperty* marginBottom = aNode.MarginBottomL(); if ( IsPropertyAutoL( *marginBottom ) ) { TPtrC8 propertyName = marginBottom->Property()->Name(); - autoArray.AppendL( propertyName ); + autoArray.Append( propertyName ); } CXnProperty* marginLeft = aNode.MarginLeftL(); if ( IsPropertyAutoL( *marginLeft ) ) { TPtrC8 propertyName = marginLeft->Property()->Name(); - autoArray.AppendL( propertyName ); + autoArray.Append( propertyName ); } CXnProperty* marginRight = aNode.MarginRightL(); if ( IsPropertyAutoL( *marginRight ) ) { TPtrC8 propertyName = marginRight->Property()->Name(); - autoArray.AppendL( propertyName ); + autoArray.Append( propertyName ); } if ( aParentDirection == XnPropertyNames::style::common::direction::KLTR ) @@ -7969,37 +7983,6 @@ } // ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -static void ReportScreenDeviceChangedL( const CXnPluginData& aPluginData ) - { - CXnNode* node( NULL ); - - if ( aPluginData.Node() ) - { - node = aPluginData.Node()->LayoutNode(); - } - - if ( !node ) - { - return; - } - - CXnNode* trigger( BuildScreenDeviceChangeTriggerNodeLC( *node->UiEngine() ) ); - - node->ReportXuikonEventL( *trigger ); - - CleanupStack::PopAndDestroy( trigger ); - - RPointerArray< CXnPluginData >& plugins( aPluginData.PluginData() ); - - for( TInt i = 0; i < plugins.Count(); i++ ) - { - ReportScreenDeviceChangedL( *plugins[i] ); - } - } - -// ----------------------------------------------------------------------------- // FillFocusCandidatesL // ----------------------------------------------------------------------------- // @@ -8211,6 +8194,13 @@ delete iEditMode; iFocusCandidateList.Reset(); + + if ( iRedrawRegions.Count() ) + { + iRedrawRegions.ResetAndDestroy(); + } + + iDirtyList.Reset(); } // ----------------------------------------------------------------------------- @@ -8226,124 +8216,82 @@ // CXnUiEngineImpl::LayoutUIL() // ----------------------------------------------------------------------------- // -void CXnUiEngineImpl::LayoutUIL( CXnNode* aNode ) - { - if( aNode ) - { - TXnDirtyRegion* dirtyRegion = FindDirtyRegionL( *aNode ); - if( dirtyRegion ) - { - LayoutL( *dirtyRegion ); - } - } - else - { - CXnViewData* viewData = iViewManager.ActiveAppData().ViewData( *iCurrentView ); - if( viewData ) - { - RPointerArray arr; - CleanupClosePushL( arr ); - viewData->GetDirtyRegions( arr ); - for( TInt i = 0; i < arr.Count(); i++ ) - { - LayoutL( *arr[i] ); - } - CleanupStack::PopAndDestroy( &arr ); - } - } - } - -// ----------------------------------------------------------------------------- -// CXnUiEngineImpl::LayoutUIL() -// ----------------------------------------------------------------------------- -// -void CXnUiEngineImpl::LayoutL( TXnDirtyRegion& aRegion ) - { - if ( IsLayoutDisabled( aRegion ) ) +void CXnUiEngineImpl::LayoutUIL( CXnNode* /*aNode*/ ) + { + if ( IsLayoutDisabled() ) { - aRegion.iLayoutControl |= XnLayoutControl::ELayoutUI; + iLayoutControl |= XnLayoutControl::ELayoutUI; return; } - aRegion.iLayoutControl &= ~XnLayoutControl::ELayoutUI; - - if ( aRegion.iDirtyList.Count() == 0 ) + iLayoutControl &= ~XnLayoutControl::ELayoutUI; + + if ( iDirtyList.Count() == 0 ) { // Nothing to do, layout is up-to-date return; } DisableRenderUiLC(); - - CXnNode* candidate( StartLayoutFromL( aRegion ) ); - if( !candidate ) - { - return; - } - - PrepareRunLayoutL( aRegion ); - aRegion.iDirtyList.Reset(); + CXnNode* candidate( StartLayoutFromL() ); + PrepareRunLayoutL(); + iDirtyList.Reset(); // Run layout until it is fully calculated do { - iLayoutPhase = RunLayoutL( aRegion, *candidate ); + iLayoutPhase = RunLayoutL( candidate ); } while ( iLayoutPhase != XnLayoutPhase::ENone ); - // Run these only if the current view is being layouted - if( iCurrentView == aRegion.iRootNode ) - { - CXnNode* focused( FocusedNode() ); - - if ( focused && focused->IsDropped() ) - { - // The currently focused node is dropped, run losevisualization - CXnNode* loseVisualisation = - BuildTriggerNodeLC( *iUiEngine, - XnPropertyNames::action::trigger::name::KLoseVisualisation ); - - focused->ReportXuikonEventL( *loseVisualisation ); - CleanupStack::PopAndDestroy( loseVisualisation ); - - if ( FocusedNode() == focused ) - { - // Remove focus as losevisualization trigger didn't - // change focus from dropped node to another one - SetFocusedNodeL( NULL ); - } - } - - if ( !FocusedNode() && iAppUiAdapter.FocusShown() ) - { - // No focus, try if some of the focus candidates can be focused - RootNode()->RunFocusChangeL( iFocusCandidateList ); - } - - iFocusCandidateList.Reset(); - - iAppUiAdapter.EffectManager()->UiLayouted(); - } + CXnNode* focused( FocusedNode() ); + + if ( focused && focused->IsDropped() ) + { + // The currently focused node is dropped, run losevisualization + CXnNode* loseVisualisation = + BuildTriggerNodeLC( *iUiEngine, + XnPropertyNames::action::trigger::name::KLoseVisualisation ); + + focused->ReportXuikonEventL( *loseVisualisation ); + CleanupStack::PopAndDestroy( loseVisualisation ); + + if ( FocusedNode() == focused ) + { + // Remove focus as losevisualization trigger didn't + // change focus from dropped node to another one + SetFocusedNodeL( NULL ); + } + } + + if ( !FocusedNode() && iAppUiAdapter.FocusShown() ) + { + // No focus, try if some of the focus candidates can be focused + RootNode()->RunFocusChangeL( iFocusCandidateList ); + } + + iFocusCandidateList.Reset(); + + iAppUiAdapter.EffectManager()->UiLayouted(); // Layout is now recalculated CleanupStack::PopAndDestroy(); // anonymous } - // ----------------------------------------------------------------------------- // PrepareRunLayoutL() // Set dropped flags of all nodes in the tree to ENone. // ----------------------------------------------------------------------------- // -void CXnUiEngineImpl::PrepareRunLayoutL( TXnDirtyRegion& aDirtyRegion ) +void CXnUiEngineImpl::PrepareRunLayoutL() { if ( iLayoutPhase == XnLayoutPhase::ENone ) { iLayoutPhase = XnLayoutPhase::ELayout; - for ( TInt i = 0; i < aDirtyRegion.iDirtyList.Count(); i++ ) - { - CXnNode* dirty( aDirtyRegion.iDirtyList[i] ); + for ( TInt i = 0; i < iDirtyList.Count(); i++ ) + { + CXnNode* dirty( iDirtyList[i] ); // Clear dropped flags recursively SetNodeDroppedL( *dirty, XnNodeLayout::ENone ); @@ -8361,7 +8309,7 @@ // CXnUiEngineImpl::RunLayoutL() // ----------------------------------------------------------------------------- // -TInt CXnUiEngineImpl::RunLayoutL( TXnDirtyRegion& aDirtyRegion, CXnNode& aNode ) +TInt CXnUiEngineImpl::RunLayoutL( CXnNode* aNode ) { TRect clientRect( ClientRect() ); // Move it to 0, 0 @@ -8370,19 +8318,19 @@ RPointerArray< CXnNode > laidOutList; CleanupClosePushL( laidOutList ); - if ( IsNodeDisplayedL( aNode ) ) - { - if ( aNode.ViewNodeImpl() && !aNode.IsLaidOut() ) - { - aNode.SetMarginRect( clientRect ); - aNode.SetBorderRect( clientRect ); - aNode.SetNormalFlowBorderRect( clientRect ); - aNode.SetPaddingRect( clientRect ); - aNode.SetRect( clientRect ); + if ( IsNodeDisplayedL( *aNode ) ) + { + if ( aNode->ViewNodeImpl() && !aNode ->IsLaidOut() ) + { + aNode->SetMarginRect( clientRect ); + aNode->SetBorderRect( clientRect ); + aNode->SetNormalFlowBorderRect( clientRect ); + aNode->SetPaddingRect( clientRect ); + aNode->SetRect( clientRect ); } // Put areas to place - PlaceAreasL( aNode, laidOutList, iLayoutPhase, + PlaceAreasL( *aNode, laidOutList, iLayoutPhase, *iCurrentGraphicsDevice, iHorizontalUnitInPixels, iVerticalUnitInPixels ); } @@ -8396,8 +8344,8 @@ break; case XnLayoutPhase::ELayout: // Layout is now calculated - aDirtyRegion.iRootNode->SetLaidOutL(); - aDirtyRegion.iLayoutControl &= ~XnLayoutControl::EViewDirty; + iCurrentView->SetLaidOutL(); + iLayoutControl &= ~XnLayoutControl::EViewDirty; // Check nodes which dimensions are changed for ( TInt i = 0; i < laidOutList.Count(); i++ ) { @@ -8429,7 +8377,7 @@ if ( adapter->Rect() != rect ) { - AddToRedrawListL( aDirtyRegion, *node, rect ); + AddToRedrawListL( node, rect ); adapter->SetRect( rect ); @@ -8461,91 +8409,49 @@ // CXnUiEngineImpl::RenderUIL() // ----------------------------------------------------------------------------- // -void CXnUiEngineImpl::RenderUIL( CXnNode* aNode ) - { - if( aNode ) - { - TXnDirtyRegion* dirtyRegion = FindDirtyRegionL( *aNode ); - if( dirtyRegion ) - { - RenderL( *dirtyRegion ); - } - } - else - { - CXnViewData* viewData = iViewManager.ActiveAppData().ViewData( *iCurrentView ); - if( viewData ) - { - RPointerArray arr; - CleanupClosePushL( arr ); - - viewData->GetDirtyRegions( arr ); - for( TInt i = 0; i < arr.Count(); i++ ) - { - RenderL( *arr[i] ); - } - CleanupStack::PopAndDestroy( &arr ); - } - } - } - -// ----------------------------------------------------------------------------- -// CXnUiEngineImpl::RenderUIL() -// ----------------------------------------------------------------------------- -// -void CXnUiEngineImpl::RenderL( TXnDirtyRegion& aRegion ) - { - if ( IsLayoutDisabled( aRegion ) ) +void CXnUiEngineImpl::RenderUIL( CXnNode* /*aNode*/ ) + { + if ( IsLayoutDisabled() ) { // Layout is not up-to-date - aRegion.iLayoutControl |= XnLayoutControl::ERenderUI; + iLayoutControl |= XnLayoutControl::ERenderUI; return; } - - TBool belongsToCurrentView( EFalse ); - if( iCurrentView == aRegion.iRootNode ) - { - belongsToCurrentView = ETrue; - } - + #ifdef _XN3_DEBUG_ - TraceTreeL( aRegion.RootNode ); + TraceTreeL(iCurrentView ); #endif __PRINTS("*** CXnUiEngineImpl::RenderUIL ***"); - - CCoeControl* control = aRegion.iControl; - RRegion& redrawRegion = aRegion.iRegion; - - if( redrawRegion.CheckError() ) - { - // Mark tree rendered - aRegion.iRootNode->SetRenderedL(); - // Error occured during dirty set, redraw whole window - control->DrawNow(); + for( TInt i=0; iiControl; + RRegion& redrawRegion = iRedrawRegions[i]->iRegion; - __PRINTS("* CXnUiEngineImpl::RenderUIL - redraw region error -> full redraw ***"); - } - else - { - if( !redrawRegion.IsEmpty() ) - { + if( redrawRegion.CheckError() ) + { // Mark tree rendered - aRegion.iRootNode->SetRenderedL(); + iCurrentView->SetRenderedL(); + // Error occured during dirty set, redraw whole window + control->DrawNow(); + + __PRINTS("* CXnUiEngineImpl::RenderUIL - redraw region error -> full redraw ***"); + } + else + { + if( !redrawRegion.IsEmpty() ) + { + // Mark tree rendered + iCurrentView->SetRenderedL(); + + if ( iAppUiAdapter.EffectManager()->ControlEffectActive( control ) ) + { + // control effect is ongoing, no need to draw control yet + redrawRegion.Clear(); + continue; + } - TBool effectOngoing( EFalse ); - if ( iAppUiAdapter.EffectManager()->ControlEffectActive( control ) && - belongsToCurrentView ) - { - // control effect is ongoing, no need to draw control yet, - // if current view in question - redrawRegion.Clear(); - effectOngoing = ETrue; - } - - if( !effectOngoing ) - { TInt count( redrawRegion.Count() ); if( count > 2 ) @@ -8564,7 +8470,7 @@ { // Draw every dirty area separately TRect redrawRect( redrawRegion[i] ); - + __PRINT( __DBG_FORMAT( "* CXnUiEngineImpl::RenderUIL - redrawing rect iTl.iX: %d, iTl.iY: %d, iBr.iX: %d, iBr.iY: %d" ), redrawRect.iTl.iX, redrawRect.iTl.iY, redrawRect.iBr.iX, redrawRect.iBr.iY ); @@ -8572,23 +8478,20 @@ } } } - } - else - { - __PRINTS("* CXnUiEngineImpl::RenderUIL - nothing to redraw ***"); - } - } + else + { + __PRINTS("* CXnUiEngineImpl::RenderUIL - nothing to redraw ***"); + } + } + + redrawRegion.Clear(); + } + + RefreshMenuL(); + + iLayoutControl &= ~XnLayoutControl::ERenderUI; - redrawRegion.Clear(); - - RefreshMenuL( &aRegion ); - - aRegion.iLayoutControl &= ~XnLayoutControl::ERenderUI; - - if( belongsToCurrentView ) - { - iAppUiAdapter.EffectManager()->UiRendered(); - } + iAppUiAdapter.EffectManager()->UiRendered(); __PRINTS("*** CXnUiEngineImpl::RenderUIL - done ***"); } @@ -8858,6 +8761,10 @@ iControlAdapterList = &iViewManager.Controls(); iCurrentViewControlAdapter = iCurrentView->Control(); + + iDirtyList.Reset(); + + iRedrawRegions.ResetAndDestroy(); // Remove previous menubar and stylus popup node iMenuNode = NULL; @@ -8897,27 +8804,15 @@ } } + ReportScreenDeviceChangeL(); + SetClientRectL( iAppUiAdapter.ClientRect(), EFalse ); RootNode()->SetDirtyL(); ForceRenderUIL(); - TXnDirtyRegion* dirtyRegion = FindDirtyRegionL( *iCurrentView ); - if( dirtyRegion ) - { - dirtyRegion->iDirtyList.Reset(); - dirtyRegion->iLayoutControl &= ~XnLayoutControl::ERefreshMenu; - } - } - -// ----------------------------------------------------------------------------- -// CXnUiEngineImpl::NotifyViewLoadedL() -// ----------------------------------------------------------------------------- -// -void CXnUiEngineImpl::NotifyViewLoadedL( const CXnViewData& aViewData ) - { - ReportScreenDeviceChangedL( aViewData ); + iLayoutControl &= ~XnLayoutControl::ERefreshMenu; } // ----------------------------------------------------------------------------- @@ -8925,20 +8820,10 @@ // ----------------------------------------------------------------------------- // void CXnUiEngineImpl::NotifyWidgetAdditionL( - const CXnPluginData& aPluginData ) - { - ReportScreenDeviceChangedL( aPluginData ); - } - -// ----------------------------------------------------------------------------- -// CXnUiEngineImpl::NotifyViewAdditionL() -// ----------------------------------------------------------------------------- -// -void CXnUiEngineImpl::NotifyViewAdditionL( const CXnViewData& aViewData ) - { - ReportScreenDeviceChangedL( aViewData ); - } - + const CXnPluginData& /*aPluginData*/ ) + { + } + // ----------------------------------------------------------------------------- // CXnUiEngineImpl::DynInitMenuItemL() // ----------------------------------------------------------------------------- @@ -9125,33 +9010,16 @@ // void CXnUiEngineImpl::RefreshMenuL() { - RefreshMenuL( NULL ); - } - -// ----------------------------------------------------------------------------- -// CXnUiEngineImpl::RefreshMenuL -// Refresh current menu -// ----------------------------------------------------------------------------- -// -void CXnUiEngineImpl::RefreshMenuL( TXnDirtyRegion* aDirtyRegion ) - { - TXnDirtyRegion* dirtyRegion = aDirtyRegion; - if( !dirtyRegion ) - { - dirtyRegion = FindDirtyRegionL( *iCurrentView ); + if ( IsLayoutDisabled() ) + { + return; } - if ( IsLayoutDisabled( *dirtyRegion ) ) - { - return; - } - - if ( dirtyRegion && - dirtyRegion->iLayoutControl & XnLayoutControl::ERefreshMenu ) + if ( iLayoutControl & XnLayoutControl::ERefreshMenu ) { if ( iKeyEventDispatcher ) { - dirtyRegion->iLayoutControl &= ~XnLayoutControl::ERefreshMenu; + iLayoutControl &= ~XnLayoutControl::ERefreshMenu; iKeyEventDispatcher->RefreshMenuL(); } } @@ -9164,79 +9032,45 @@ // void CXnUiEngineImpl::AddDirtyNodeL( CXnNode* aNode, TInt aLevel ) { - if ( !aNode ) - { - return; - } + CXnViewData& data( iViewManager.ActiveViewData() ); - if ( aNode == RootNode() ) - { - // Force relayout and redraw from current view - iViewManager.ActiveAppData().PluginData(); - if ( !iCurrentView ) - { - iCurrentView = iViewManager.ViewNode(); - } - - TXnDirtyRegion* dirtyRegion = FindDirtyRegionL( *iCurrentView ); - if( dirtyRegion ) - { - dirtyRegion->iRegion.Clear(); - } - else - { - return; - } - - dirtyRegion->iDirtyList.Reset(); - dirtyRegion->iDirtyList.AppendL( iCurrentView ); - - dirtyRegion->iLayoutControl |= XnLayoutControl::EViewDirty; - iCurrentView->ClearRenderedAndLaidOut(); - - // Add to draw list for redraw - AddToRedrawListL( *dirtyRegion, *iCurrentView ); + if ( !aNode || ( aNode != RootNode() && !data.Plugin( aNode->Namespace() ) ) ) + { + // No node, or node doesn't belong to active view namespace + return; + } + + if ( aNode->Type()->Type() == KMenuBar ) + { + iLayoutControl |= XnLayoutControl::ERefreshMenu; + return; + } + + if ( iLayoutControl & XnLayoutControl::EViewDirty ) + { + // nothing to do + return; + } + + if ( aLevel == XnDirtyLevel::ERender ) + { + if( aNode == RootNode() ) + { + TXnDirtyRegion* dirtyRegion = FindDirtyRegionL( *iCurrentView ); + if( dirtyRegion ) + { + dirtyRegion->iRegion.Clear(); + } + aNode = iCurrentView; + } + + // Add to redraw list + AddToRedrawListL( aNode ); } else { - TXnDirtyRegion* dirtyRegion( FindDirtyRegionL( *aNode ) ); - if( !dirtyRegion ) - { - return; - } - - if ( aNode->Type()->Type() == KMenuBar ) - { - dirtyRegion->iLayoutControl |= XnLayoutControl::ERefreshMenu; - return; - } - - if ( dirtyRegion->iLayoutControl & XnLayoutControl::EViewDirty ) - { - // nothing to do - return; - } - - if ( aLevel == XnDirtyLevel::ERender ) - { - if( aNode == RootNode() ) - { - TXnDirtyRegion* dirtyRegion = FindDirtyRegionL( *iCurrentView ); - if( dirtyRegion ) - { - dirtyRegion->iRegion.Clear(); - } - aNode = iCurrentView; - } - - // Add to redraw list - AddToRedrawListL( *dirtyRegion, *aNode ); - } - else - { - // Add to dirty list for relayout and redraw - AddToDirtyListL( *dirtyRegion, *aNode ); - } + // Add to dirty list for relayout and redraw + AddToDirtyListL( aNode ); } } @@ -9291,6 +9125,10 @@ { HandleSkinChangeL(); } + else if( iCurrentViewControlAdapter ) + { + iCurrentViewControlAdapter->HandleResourceChange( aType ); + } } // ----------------------------------------------------------------------------- @@ -9594,16 +9432,16 @@ // CXnUiEngineImpl::IsLayoutDisabled // ----------------------------------------------------------------------------- // -TBool CXnUiEngineImpl::IsLayoutDisabled( TXnDirtyRegion& aDirtyRegion ) +TBool CXnUiEngineImpl::IsLayoutDisabled() { if ( !iCurrentView ) { return ETrue; } - + TBool retval( EFalse ); - if ( !( aDirtyRegion.iLayoutControl & XnLayoutControl::EIgnoreState ) ) + if ( !( iLayoutControl & XnLayoutControl::EIgnoreState ) ) { if ( iDisableCount > 0 ) { @@ -9619,10 +9457,9 @@ // Mark Control's appearance to be redrawn // ----------------------------------------------------------------------------- // -void CXnUiEngineImpl::AddToRedrawListL( TXnDirtyRegion& aRegion, - CXnNode& aNode, TRect aRect ) +void CXnUiEngineImpl::AddToRedrawListL( CXnNode* aNode, TRect aRect ) { - CXnControlAdapter* aAdapter( aNode.Control() ); + CXnControlAdapter* aAdapter( aNode->Control() ); if( !aAdapter ) { @@ -9632,8 +9469,7 @@ if( aRect != TRect::EUninitialized ) { // This is the new rect which will be set by layout algo - aRegion.iRegion.AddRect( aRect ); - aRegion.iRegion.Tidy(); + AddRedrawRectL( aRect, *aNode ); } TRect rect( aAdapter->Rect() ); @@ -9643,11 +9479,39 @@ // Don't add uninitialized rect return; } - - GrowIfNeeded( &aNode, rect ); - - aRegion.iRegion.AddRect( rect ); - aRegion.iRegion.Tidy(); + + /* + if( aNode->IsStateSet( XnPropertyNames::style::common::KFocus ) ) + { + const TDesC8& name( aNode->DomNode()->Name() ); + + if( name == KPlugin ) + { + rect.Grow( KFocusGrowValue, KFocusGrowValue ); + } + else + { + TRect marginRect( aNode->MarginRect() ); + + CXnNode* parent( aNode->Parent() ); + + for( ; parent; parent = parent->Parent() ) + { + if( parent->DomNode()->Name() == KPlugin ) + { + if( parent->Rect() == marginRect ) + { + rect.Grow( KFocusGrowValue, KFocusGrowValue ); + } + + break; + } + } + } + } + */ + GrowIfNeeded(aNode, rect); + AddRedrawRectL( rect, *aNode ); } // ----------------------------------------------------------------------------- @@ -9655,94 +9519,122 @@ // Mark node to dirty list for relayout // ----------------------------------------------------------------------------- // -void CXnUiEngineImpl::AddToDirtyListL( TXnDirtyRegion& aRegion, CXnNode& aNode ) - { - CXnNode* nodeToRedrawList( &aNode ); - CXnNode* nodeToDirtyList( &aNode ); - - if ( !IsAbsoluteL( aNode ) && !IsNodeTooltip( aNode ) ) - { - // Check adaptives in normal flow - CXnNode* oldest( NULL ); - CXnNode* adaptive( &aNode ); - - if ( !aNode.IsAdaptive( ETrue ) ) - { - adaptive = aNode.Parent(); - } - - for ( ; adaptive && adaptive->IsAdaptive( ETrue ); - adaptive = adaptive->Parent() ) - { - oldest = adaptive; - } - - // Now we have found the oldest adaptive node if present - if ( oldest ) - { - nodeToRedrawList = nodeToDirtyList = adaptive; - } - } - - RPointerArray< CXnNode > dirtyList; - CleanupClosePushL( dirtyList ); - TInt count( aRegion.iDirtyList.Count() ); - TBool found; - - // first, check that aNode's children are not in the dirty array - for ( TInt i = 0; i < count; ++i ) - { - found = EFalse; - CXnNode* candidate( aRegion.iDirtyList[i] ); - - for ( CXnNode* node = candidate->Parent(); node && !found; - node = node->Parent() ) - { - if ( nodeToDirtyList == node ) - { - found = ETrue; - } - } - - if ( !found ) - { - // Put candidate back to list as child is not found - dirtyList.AppendL( candidate ); - } - } - - found = EFalse; - - // second, check that aNode's parent is not in dirty array - for ( TInt i = 0; i < count && !found; ++i ) - { - CXnNode* candidate( aRegion.iDirtyList[i] ); - - for ( CXnNode* node = nodeToDirtyList; node && !found; - node = node->Parent() ) - { - if ( node == candidate ) - { - found = ETrue; - } - } - } - - if ( !found && aRegion.iDirtyList.Find( nodeToDirtyList ) == KErrNotFound ) - { - // Add node to dirty list as parent is neither found - dirtyList.AppendL( nodeToDirtyList ); - nodeToDirtyList->ClearRenderedAndLaidOut(); - - // Add to draw list for redraw - AddToRedrawListL( aRegion, *nodeToRedrawList ); - } - - // finally update the dirty list - aRegion.iDirtyList.Reset(); - aRegion.iDirtyList = dirtyList; - - CleanupStack::Pop( &dirtyList ); +void CXnUiEngineImpl::AddToDirtyListL( CXnNode* aNode ) + { + + if ( aNode ) + { + CXnNode* nodeToRedrawList( aNode ); + CXnNode* nodeToDirtyList( aNode ); + + if ( aNode == RootNode() ) + { + // Force relayout and redraw from current view + iDirtyList.Reset(); + if ( !iCurrentView ) + { + iCurrentView = iViewManager.ViewNode(); + } + iDirtyList.AppendL( iCurrentView ); + TXnDirtyRegion* dirtyRegion = FindDirtyRegionL( *iCurrentView ); + if( dirtyRegion ) + { + dirtyRegion->iRegion.Clear(); + } + iLayoutControl |= XnLayoutControl::EViewDirty; + nodeToDirtyList = nodeToRedrawList = iCurrentView; + nodeToDirtyList->ClearRenderedAndLaidOut(); + + // Add to draw list for redraw + AddToRedrawListL( nodeToRedrawList ); + } + else + { + if ( !IsAbsoluteL( *aNode ) && !IsNodeTooltip( *aNode ) ) + { + // Check adaptives in normal flow + CXnNode* oldest( NULL ); + CXnNode* adaptive( aNode ); + + if ( !aNode->IsAdaptive( ETrue ) ) + { + adaptive = aNode->Parent(); + } + + for ( ; adaptive && adaptive->IsAdaptive( ETrue ); + adaptive = adaptive->Parent() ) + { + oldest = adaptive; + } + + // Now we have found the oldest adaptive node if present + if ( oldest ) + { + nodeToRedrawList = nodeToDirtyList = adaptive; + } + } + + RPointerArray< CXnNode > dirtyList; + CleanupClosePushL( dirtyList ); + TInt count( iDirtyList.Count() ); + TBool found; + + // first, check that aNode's children are not in the dirty array + for ( TInt i = 0; i < count; ++i ) + { + found = EFalse; + CXnNode* candidate( iDirtyList[i] ); + + for ( CXnNode* node = candidate->Parent(); node && !found; + node = node->Parent() ) + { + if ( nodeToDirtyList == node ) + { + found = ETrue; + } + } + + if ( !found ) + { + // Put candidate back to list as child is not found + dirtyList.AppendL( candidate ); + } + } + + found = EFalse; + + // second, check that aNode's parent is not in dirty array + for ( TInt i = 0; i < count && !found; ++i ) + { + CXnNode* candidate( iDirtyList[i] ); + + for ( CXnNode* node = nodeToDirtyList; node && !found; + node = node->Parent() ) + { + if ( node == candidate ) + { + found = ETrue; + } + } + } + + if ( !found && iDirtyList.Find( nodeToDirtyList ) == KErrNotFound ) + { + // Add node to dirty list as parent is neither found + dirtyList.AppendL( nodeToDirtyList ); + nodeToDirtyList->ClearRenderedAndLaidOut(); + + // Add to draw list for redraw + AddToRedrawListL( nodeToRedrawList ); + } + + // finally update the dirty list + iDirtyList.Reset(); + iDirtyList = dirtyList; + + CleanupStack::Pop( &dirtyList ); + } + } } // ----------------------------------------------------------------------------- @@ -9759,13 +9651,7 @@ iClientRect ); iEditMode->SetClientRect( aRect ); - - CXnViewSwitcher* viewSwitcher( iAppUiAdapter.ViewSwitcher() ); - if( viewSwitcher ) - { - viewSwitcher->SizeChanged( aRect ); - } - + if ( aDrawNow ) { RootNode()->SetDirtyL(); @@ -9805,29 +9691,23 @@ // CXnUiEngineImpl::StartLayoutFromL // ----------------------------------------------------------------------------- // -CXnNode* CXnUiEngineImpl::StartLayoutFromL( TXnDirtyRegion& aDirtyRegion ) - { - CXnNode* viewNode( aDirtyRegion.iRootNode ); - if( !viewNode ) - { - return NULL; - } - - if ( aDirtyRegion.iLayoutControl & XnLayoutControl::EViewDirty ) - { - return viewNode; +CXnNode* CXnUiEngineImpl::StartLayoutFromL() + { + if ( iLayoutControl & XnLayoutControl::EViewDirty ) + { + return iCurrentView; } RPointerArray< CXnNode >parentArray; CleanupClosePushL( parentArray ); - TInt dirtyCount = aDirtyRegion.iDirtyList.Count(); + TInt dirtyCount = iDirtyList.Count(); CXnNode* startNode( NULL ); for ( TInt dirtyIndex = 0; dirtyIndex < dirtyCount; dirtyIndex++ ) { - startNode = aDirtyRegion.iDirtyList[dirtyIndex]; - - for ( ;startNode && startNode != viewNode; ) + startNode = iDirtyList[dirtyIndex]; + + for ( ;startNode && startNode != iCurrentView; ) { parentArray.Append( startNode->Parent() ); startNode = startNode->Parent(); @@ -9858,7 +9738,7 @@ CleanupStack::PopAndDestroy( &parentArray ); - return viewNode; + return iCurrentView; } // ----------------------------------------------------------------------------- @@ -9876,14 +9756,7 @@ // void CXnUiEngineImpl::ForceRenderUIL( TBool aLayoutOnly ) { - TXnDirtyRegion* dirtyRegion = FindDirtyRegionL( *iCurrentView ); - if( !dirtyRegion ) - { - return; - } - - dirtyRegion->iLayoutControl |= XnLayoutControl::EIgnoreState; - + iLayoutControl |= XnLayoutControl::EIgnoreState; if ( aLayoutOnly ) { LayoutUIL(); @@ -9893,8 +9766,7 @@ LayoutUIL(); RenderUIL(); } - - dirtyRegion->iLayoutControl &= ~XnLayoutControl::EIgnoreState; + iLayoutControl &= ~XnLayoutControl::EIgnoreState; } // ----------------------------------------------------------------------------- @@ -10042,105 +9914,83 @@ if ( self->iDisableCount == 0 ) { - TRAP_IGNORE( self->EnableRenderUiL() ); - } - } - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -void CXnUiEngineImpl::EnableRenderUiL() - { - CXnViewData* viewData = iViewManager.ActiveAppData().ViewData( *iCurrentView ); - if( viewData ) - { - RPointerArray arr; - CleanupClosePushL( arr ); - - viewData->GetDirtyRegions( arr ); - - for( TInt i = 0; i < arr.Count(); i++ ) - { - TXnDirtyRegion* dirtyRegion = arr[i]; - + TRAP_IGNORE( // Is menu refresh pending? - if ( ( dirtyRegion->iLayoutControl & XnLayoutControl::ERefreshMenu ) && - IsMenuDisplaying() ) + if ( ( self->iLayoutControl & XnLayoutControl::ERefreshMenu ) && + !self->IsMenuDisplaying() ) { // RefreshMenuL will reset the state flag - RefreshMenuL( dirtyRegion ); - } - + self->RefreshMenuL(); + } + // Is layout pending? - if ( dirtyRegion->iLayoutControl & XnLayoutControl::ELayoutUI ) - { - LayoutL( *dirtyRegion ); - } - + if ( self->iLayoutControl & XnLayoutControl::ELayoutUI ) + { + self->LayoutUIL(); + } + // Is render pending? - if ( dirtyRegion->iLayoutControl & XnLayoutControl::ERenderUI ) - { - RenderL( *dirtyRegion ); - } - } - CleanupStack::PopAndDestroy( &arr); - } - } - + if ( self->iLayoutControl & XnLayoutControl::ERenderUI ) + { + self->RenderUIL(); + } + ); + } + } + } + + // ----------------------------------------------------------------------------- // ----------------------------------------------------------------------------- // void CXnUiEngineImpl::ReportScreenDeviceChangeL() - { - // Notify current orientation to all views - RPointerArray< CXnPluginData >& plugins( - iViewManager.ActiveAppData().PluginData() ); - - for( TInt i = 0; i < plugins.Count(); i++ ) - { - ReportScreenDeviceChangedL( *plugins[i] ); - CXnDomNode* domNode( plugins[i]->Node() ); - if( domNode ) - { - CXnNode* node( domNode->LayoutNode() ); - if( node ) - { - node->SetDirtyL(); - } - } - } + { + CXnNode* trigger( BuildScreenDeviceChangeTriggerNodeLC( *iUiEngine ) ); + + // Notify current orientation to iCurrentView + iCurrentView->ReportXuikonEventL( *trigger ); + + // Notify also plugins + RPointerArray plugins = *Plugins(); + for( TInt i=0; i pluginChildren = pluginNode->Children(); + for( TInt ii=0; iiDomNode(); + if( widgetNode && widgetNode->Name() == KWidgetNodeName ) + { + pluginChildren[ii]->ReportXuikonEventL( *trigger ); + } + } + } + + CleanupStack::PopAndDestroy(); // trigger } // ----------------------------------------------------------------------------- // CXnUiEngineImpl::HandlePartialTouchInputL() // ----------------------------------------------------------------------------- -void CXnUiEngineImpl::HandlePartialTouchInputL( CXnNode* aNode, TBool aEnable ) - { - CXnViewData& view( iViewManager.ActiveViewData() ); - - CXnNode* editor( aEnable ? aNode : iSplitScreenState.iPartialScreenEditorNode ); - - CXnPluginData* plugin( view.Plugin( editor ) ); - - if ( !plugin || !editor ) - { - return; - } - - CXnNode* editorplugin( plugin->Owner()->LayoutNode() ); +void CXnUiEngineImpl::HandlePartialTouchInputL( CXnNode& aNode, TBool aEnable ) + { + CXnNode* editorplugin = FindPlugin( aNode ); + if ( !editorplugin ) + { + User::Leave( KErrNotFound ); + } DisableRenderUiLC(); if ( aEnable ) { iSplitScreenState.iPartialScreenOpen = ETrue; - iSplitScreenState.iPartialScreenEditorNode = editor; + iSplitScreenState.iPartialScreenEditorNode = &aNode; // make sure that we always get up event - CXnViewControlAdapter* control = - static_cast< CXnViewControlAdapter* >( view.ViewNode()->Control() ); - + CXnViewControlAdapter* control = static_cast< CXnViewControlAdapter* >( + iViewManager.ActiveViewData().ViewNode()->Control() ); + control->ResetGrabbing(); // Block progression must be bottom-to-top when partial screen is open @@ -10207,22 +10057,11 @@ RootNode()->SetDirtyL(); ForceRenderUIL(); CleanupStack::PopAndDestroy(); - - if ( aEnable ) - { - editor->PluginIfL().ReportTriggerEventL( - KSplitScreenEnabledTrigger, KNullDesC8, KNullDesC8 ); - } - else - { - editor->PluginIfL().ReportTriggerEventL( - KSplitScreenDisabledTrigger, KNullDesC8, KNullDesC8 ); - } - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -CXnNode* CXnUiEngineImpl::WindowOwningNode( CXnNode& aNode ) + } + +// ----------------------------------------------------------------------------- +// ----------------------------------------------------------------------------- +CCoeControl* CXnUiEngineImpl::WindowOwningControl( CXnNode& aNode ) { CXnNode* parent = &aNode; while( parent ) @@ -10233,13 +10072,13 @@ if( parent->ViewNodeImpl() && adapter == iCurrentViewControlAdapter ) { - return parent; + return adapter; } else if( adapter->OwnsWindow() ) { if( !IsNodeTooltip( *parent ) ) { - return parent; + return adapter; } else { @@ -10256,29 +10095,39 @@ // ----------------------------------------------------------------------------- TXnDirtyRegion* CXnUiEngineImpl::FindDirtyRegionL( CXnNode& aNode ) { - CXnNode* node( WindowOwningNode( aNode ) ); - if( !node ) - { - return NULL; - } - - CCoeControl* control( node->Control() ); + CCoeControl* control = WindowOwningControl( aNode ); if( !control ) { return NULL; } - - TXnDirtyRegion* region( NULL ); - CXnViewData* viewData = iViewManager.ActiveAppData().ViewData( *node ); - if( viewData ) - { - region = viewData->DirtyRegionL( *node ); - } - + for( TInt i=0; iiControl == control ) + { + return iRedrawRegions[i]; + } + } + TXnDirtyRegion* region = new (ELeave) TXnDirtyRegion; + CleanupStack::PushL( region ); + region->iControl = control; + iRedrawRegions.AppendL( region ); + CleanupStack::Pop(); return region; } // ----------------------------------------------------------------------------- +// ----------------------------------------------------------------------------- +void CXnUiEngineImpl::AddRedrawRectL( TRect aRect, CXnNode& aNode ) + { + TXnDirtyRegion* dirtyReg = FindDirtyRegionL( aNode ); + if( dirtyReg ) + { + dirtyReg->iRegion.AddRect( aRect ); + dirtyReg->iRegion.Tidy(); + } + } + +// ----------------------------------------------------------------------------- // SetEventDispatcher // ----------------------------------------------------------------------------- void CXnUiEngineImpl::SetEventDispatcher( CXnKeyEventDispatcher* aDispatcher ) @@ -10305,7 +10154,7 @@ // ----------------------------------------------------------------------------- // EnablePartialTouchInput // ----------------------------------------------------------------------------- -void CXnUiEngineImpl::EnablePartialTouchInput( CXnNode* aNode, TBool aEnable ) +void CXnUiEngineImpl::EnablePartialTouchInput( CXnNode& aNode, TBool aEnable ) { if( aEnable && !iSplitScreenState.iPartialScreenOpen || !aEnable && iSplitScreenState.iPartialScreenOpen ) @@ -10381,11 +10230,18 @@ // TBool CXnUiEngineImpl::IsTextEditorActive() { - if( iKeyEventDispatcher ) - { - return iKeyEventDispatcher->IsTextEditorActive(); - } - + if( iSplitScreenState.iPartialScreenOpen ) + { + return ETrue; + } + CXnNode* focusedNode = FocusedNode(); + if( focusedNode ) + { + if( focusedNode->Type()->Type() == KEditorNodeName ) + { + return ETrue; + } + } return EFalse; } diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnuienginepluginif.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnuienginepluginif.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnuienginepluginif.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -173,15 +173,11 @@ node = &( aFocusedNode->Node() ); } - if ( node ) - { - TRAP_IGNORE( node->SetStateWithoutNotificationL( - XnPropertyNames::style::common::KFocus ) ); - } - else - { - TRAP_IGNORE( iUiEngine->SetFocusedNodeL( NULL ) ); - } + TRAP_IGNORE + ( + node->SetStateWithoutNotificationL( + XnPropertyNames::style::common::KFocus ); + ); } // ----------------------------------------------------------------------------- @@ -360,6 +356,17 @@ } // ----------------------------------------------------------------------------- +// TXnUiEnginePluginIf::EnablePartialTouchInput +// +// ----------------------------------------------------------------------------- +// +EXPORT_C void TXnUiEnginePluginIf::EnablePartialTouchInput( + CXnNodePluginIf& aNode, TBool aEnable ) + { + iUiEngine->EnablePartialTouchInput(aNode.Node(), aEnable); + } + +// ----------------------------------------------------------------------------- // TXnUiEnginePluginIf::IsTextEditorActive // // ----------------------------------------------------------------------------- diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnutils.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnutils.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnutils.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -1667,7 +1667,7 @@ // Resolves skin id (major+minor) from SKIN() declaration. // ----------------------------------------------------------------------------- // -EXPORT_C TBool CXnUtils::ResolveSkinItemIDL( const TDesC& aSkinId, TAknsItemID& aItemID ) +TBool CXnUtils::ResolveSkinItemIDL( const TDesC& aSkinId, TAknsItemID& aItemID ) { HBufC* str = aSkinId.AllocL(); TPtr ptrSkin = str->Des(); diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnviewadapter.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnviewadapter.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnviewadapter.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -48,8 +48,6 @@ #include "xneditmode.h" #include "xnrootdata.h" -#include "xnpopupcontroladapter.h" - #include "debug.h" // Constants @@ -559,7 +557,7 @@ // ----------------------------------------------------------------------------- // void CXnViewAdapter::ActivateContainerL( CXnViewData& aContainer, - TBool aEnterEditState, TUid aEffect, TBool aUpdateBg ) + TBool aEnterEditState, TUid aEffect ) { // Returns if the container remains the same and activation is not forced // Otherwise the old container is deactivated and the new is activated @@ -576,17 +574,15 @@ } const CXnViewData& active( iAppUiAdapter.ViewManager().ActiveViewData() ); - - TBool started = EFalse; + CXnEffectManager* mgr( iAppUiAdapter.EffectManager() ); + CleanupStack::PushL( TCleanupItem( CleanupEffect, mgr ) ); - if( aEffect != TUid::Null() ) - { - started = mgr->BeginActivateViewEffect( active, aContainer, aEffect ); - } + TBool started( + mgr->BeginActivateViewEffect( active, aContainer, aEffect ) ); - DeactivateContainerL(); + DeactivateContainerL( EFalse ); // Update iContainer = &aContainer; @@ -638,20 +634,14 @@ adapter->MakeVisible( ETrue ); iAppUiAdapter.ViewManager().NotifyContainerChangedL( aContainer ); - - if( aUpdateBg ) - { - iBgManager->ChangeWallpaper( active, aContainer, !started ); - } + + iBgManager->ChangeWallpaper( active, aContainer, !started ); iAppUiAdapter.UiEngine().RenderUIL(); CleanupStack::PopAndDestroy(); // DisableRenderUiLC - - if( aEffect != TUid::Null() ) - { - mgr->EndActivateViewEffect( active, aContainer, aEffect ); - } + + mgr->EndActivateViewEffect( active, aContainer, aEffect ); CleanupStack::PopAndDestroy(); // cleanupitem @@ -689,8 +679,6 @@ // Deactivate container even though it hasn't changed to close all // popups and other windows ActivateContainerL( *viewData, aEnterEditState ); - - CloseAllPopupsL(); } } @@ -753,7 +741,18 @@ ChangeControlsStateL( EFalse ); CXnNode* node( iContainer->Node()->LayoutNode() ); - + + CXnDomStringPool* sp( node->DomNode()->StringPool() ); + + CXnProperty* prop = CXnProperty::NewL( + XnPropertyNames::style::common::KDisplay, + XnPropertyNames::style::common::display::KNone, + CXnDomPropertyValue::EString, *sp ); + CleanupStack::PushL( prop ); + + node->SetPropertyWithoutNotificationL( prop ); + CleanupStack::Pop( prop ); + if ( !iDeactivate ) { iDeactivate = BuildDeactivateTriggerL( iAppUiAdapter.UiEngine() ); @@ -1009,7 +1008,7 @@ CleanupClosePushL( popups ); iContainer->PopupNodesL( popups ); - + for ( TInt i = 0; i < popups.Count(); i++ ) { CXnProperty* display = CXnProperty::NewL( @@ -1024,26 +1023,7 @@ } CleanupStack::PopAndDestroy( &popups ); - - iEventDispatcher->SetTextEditorActive( NULL, EFalse ); - - CXnNode* popup( iAppUiAdapter.UiEngine().StylusPopupNode() ); - if ( popup ) - { - CXnPopupControlAdapter* control = - static_cast< CXnPopupControlAdapter* >( - popup->Control() ); - - if ( control ) - { - control->HideMenuL(); - } - } } -TBool CXnViewAdapter::IsForegroundAdapter() const - { - return ( iContainer != NULL ); - } // End of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnviewcontroladapter.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnviewcontroladapter.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnviewcontroladapter.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -23,9 +23,9 @@ #include "xnnodepluginif.h" #include "xnnode.h" +#include "xndomdocument.h" #include "xndomnode.h" #include "xnproperty.h" -#include "xnviewswitcher.h" #include "xnviewcontroladapter.h" @@ -73,7 +73,7 @@ // CXnViewControlAdapter* CXnViewControlAdapter::NewL( CXnNodePluginIf& aNode ) { - CXnViewControlAdapter* self = new( ELeave ) CXnViewControlAdapter(); + CXnViewControlAdapter* self = new( ELeave ) CXnViewControlAdapter( aNode ); CleanupStack::PushL( self ); self->ConstructL( aNode ); @@ -126,8 +126,8 @@ // C++ default constructor // ----------------------------------------------------------------------------- // -CXnViewControlAdapter::CXnViewControlAdapter() : - iAppUi( static_cast< CXnAppUiAdapter& >( *iAvkonAppUi ) ) +CXnViewControlAdapter::CXnViewControlAdapter( CXnNodePluginIf& aNode ) + : iNode( aNode ), iAppUi( static_cast< CXnAppUiAdapter& >( *iAvkonAppUi ) ) { } @@ -187,18 +187,9 @@ // void CXnViewControlAdapter::HandlePointerEventL( const TPointerEvent& aPointerEvent ) - { - if ( iForegroundStatus != EBackground && - ( iAppUi.UiEngine().IsPartialInputActive() || // no swipe if partial input active - IsWidgetGestureDest() || // no swipe if widget handles it - iAppUi.ViewSwitcher() == NULL || // no swipe if VS not available - !iAppUi.ViewSwitcher()->ProcessPointerEventL( aPointerEvent ) ) ) // no swipe if event not handled by VS + { + if ( iForegroundStatus != EBackground ) { - if ( IsWidgetGestureDest() && iAppUi.ViewSwitcher() != NULL ) - { - iAppUi.ViewSwitcher()->StopViewSwitchL(); - } - iAppUi.UiEngine().DisableRenderUiLC(); CXnControlAdapter::HandlePointerEventL( aPointerEvent ); diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnviewdata.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnviewdata.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnviewdata.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -33,11 +33,14 @@ #include "ainativeuiplugins.h" #include "xnpanic.h" + #include "debug.h" // Constants _LIT8( KNs, "namespace" ); +// ============================ LOCAL FUNCTIONS ================================ + // ============================ MEMBER FUNCTIONS =============================== // ----------------------------------------------------------------------------- // CXnViewData::NewL() @@ -208,11 +211,6 @@ iLoadError = err; - if( !iLoadError ) - { - TRAP_IGNORE( iManager.NotifyViewLoadedL( *this ) ); - } - return iLoadError; } @@ -321,11 +319,7 @@ // CXnNode* CXnViewData::ViewNode() const { - if( iNode ) - { - return iNode->LayoutNode(); - } - return NULL; + return iNode->LayoutNode(); } // ----------------------------------------------------------------------------- @@ -624,60 +618,4 @@ __PRINTS( "*** CXnViewData::DestroyPublishers - done" ); } -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -TXnDirtyRegion* CXnViewData::DirtyRegionL( CXnNode& aNode ) - { - // First make sure that the given node is "window owning" - CCoeControl* control( aNode.Control() ); - if( !control || !control->OwnsWindow() ) - { - return NULL; - } - - if( iDirtyRegion && iDirtyRegion->iControl == control ) - { - return iDirtyRegion; - } - - // in case of widget extension / popup, a widget may own window - for( TInt i = 0; i < iPluginsData.Count(); i++ ) - { - TXnDirtyRegion* region( iPluginsData[i]->DirtyRegion() ); - if( region && region->iControl == control ) - { - return region; - } - } - - // Region not found, create a new one - CXnPluginData* pluginData( Plugin( &aNode ) ); - if( pluginData ) - { - return pluginData->CreateDirtyRegionL( aNode, *control ); - } - - return NULL; - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -void CXnViewData::GetDirtyRegions( RPointerArray& aList ) - { - if( iDirtyRegion ) - { - aList.Append( iDirtyRegion ); - } - for( TInt i = 0; i < iPluginsData.Count(); i++ ) - { - TXnDirtyRegion* region( iPluginsData[i]->DirtyRegion() ); - if( region ) - { - aList.Append( region ); - } - } - } - // End of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnviewmanager.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnviewmanager.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnviewmanager.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -60,6 +60,7 @@ // Constants _LIT8( KEmptyWidgetUid, "0x2001f47f" ); +_LIT8( KTemplateViewUID, "0x20026f50" ); const TInt KPSCategoryUid( 0x200286E3 ); const TInt KPSCrashCountKey( 1 ); @@ -891,10 +892,27 @@ // Activates the next view // ----------------------------------------------------------------------------- // -void CXnViewManager::ActivateNextViewL() +void CXnViewManager::ActivateNextViewL( TInt /*aEffectId*/ ) { CXnViewData& next( NextViewData() ); - ActivateViewL( next, KGfxContextActivateNextView ); + + if ( !next.Occupied() ) + { + TInt err( next.Load() ); + + if ( err ) + { + HandleErrorNotes( err ); + return; + } + } + + // Activate view + if ( next.Occupied() && !next.Active() ) + { + iAppUiAdapter.ViewAdapter().ActivateContainerL( + next, EFalse, KGfxContextActivateNextView ); + } } // ----------------------------------------------------------------------------- @@ -902,23 +920,13 @@ // Activates the previous view // ----------------------------------------------------------------------------- // -void CXnViewManager::ActivatePreviousViewL() +void CXnViewManager::ActivatePreviousViewL( TInt /*aEffectId*/ ) { CXnViewData& prev( PreviousViewData() ); - ActivateViewL( prev, KGfxContextActivatePrevView ); - } -// ----------------------------------------------------------------------------- -// CXnViewManager::ActivatePreviousViewL() -// Activates the previous view -// ----------------------------------------------------------------------------- -// -void CXnViewManager::ActivateViewL( CXnViewData& aViewData, TUid aEffect, - TBool aUpdateBg ) - { - if ( !aViewData.Occupied() ) + if ( !prev.Occupied() ) { - TInt err( aViewData.Load() ); + TInt err( prev.Load() ); if ( err ) { @@ -928,10 +936,10 @@ } // Activate view - if ( aViewData.Occupied() && !aViewData.Active() ) + if ( prev.Occupied() && !prev.Active() ) { iAppUiAdapter.ViewAdapter().ActivateContainerL( - aViewData, EFalse, aEffect, aUpdateBg ); + prev, EFalse, KGfxContextActivatePrevView ); } } @@ -946,14 +954,11 @@ { return KErrGeneral; } - - // If phone layout is mirrored new view needs to be added to left. Other right. - TInt mirror = AknLayoutUtils::LayoutMirrored() ? 0 : 1; - + // Add new view (template view) to hsps CAddPluginResult* result = iHspsWrapper->AddPluginL( iRootData->ConfigurationId(), aInfo.Uid(), - ViewIndex() + mirror ); + ViewIndex() + 1 ); CleanupStack::PushL( result ); TInt retval( result->Status() ); @@ -982,7 +987,7 @@ TInt index( views.Find( &ActiveViewData() ) ); - views.InsertL( newView, index + mirror ); + views.InsertL( newView, index + 1 ); // Root data owns the new view now CleanupStack::Pop( newView ); @@ -1025,14 +1030,11 @@ return; } - - // If phone layout is mirrored new view needs to be added to left. Other right. - TInt mirror = AknLayoutUtils::LayoutMirrored() ? 0 : 1; - + // Add new view (template view) to hsps CAddPluginResult* result = iHspsWrapper->AddPluginL( - iRootData->ConfigurationId(), iRootData->TemplateViewUid(), - ViewIndex() + mirror ); + iRootData->ConfigurationId(), KTemplateViewUID, + ViewIndex() + 1 ); CleanupStack::PushL( result ); TInt status( result->Status() ); @@ -1068,16 +1070,16 @@ TInt index( views.Find( &ActiveViewData() ) ); - views.InsertL( newView, index + mirror ); + views.InsertL( newView, index + 1 ); // Root data owns the new view now CleanupStack::Pop( newView ); + // Activate view + iAppUiAdapter.ViewAdapter().ActivateContainerL( *newView, ETrue ); + // Inform observers about added view NotifyViewAdditionL( *newView ); - - // Activate view - iAppUiAdapter.ViewAdapter().ActivateContainerL( *newView, ETrue ); } else { @@ -1409,7 +1411,7 @@ UpdateCachesL(); // Schedule remaining views loading - iRootData->LoadRemainingViewsL(); + iRootData->LoadRemainingViews(); } HandleErrorNotes( err ); @@ -1483,7 +1485,7 @@ TRAP_IGNORE( bg.StoreWallpaperL() ); - TRAP_IGNORE( self->NotifyContainerActivatedL( active ) ); + self->NotifyContainerActivatedL( active ); return KErrNone; } @@ -1505,19 +1507,6 @@ } // ----------------------------------------------------------------------------- -// CXnViewManager::NotifyViewLoadedL() -// Notifies view is activated -// ----------------------------------------------------------------------------- -// -void CXnViewManager::NotifyViewLoadedL( const CXnViewData& aViewData ) - { - for ( TInt i = 0; i < iObservers.Count(); i++ ) - { - iObservers[i]->NotifyViewLoadedL( aViewData ); - } - } - -// ----------------------------------------------------------------------------- // CXnViewManager::NotifyViewDeactivatedL() // Notifies view is deactivated // ----------------------------------------------------------------------------- diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnviewswitcher.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnviewswitcher.cpp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,994 +0,0 @@ -/* - * Copyright (c) 2002-2004 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" - * which accompanies this distribution, and is available - * at the URL "http://www.eclipse.org/legal/epl-v10.html". - * - * Initial Contributors: - * Nokia Corporation - initial contribution. - * - * Contributors: - * - * Description: Implementation for wrapper for a box - * - */ - -// System includes -#include -#include - -#include -#include - -#ifdef RD_TACTILE_FEEDBACK -#include -#endif // RD_TACTILE_FEEDBACK - -// User includes -#include "xnappuiadapter.h" -#include "xnuiengine.h" -#include "xnproperty.h" -#include "xnviewmanager.h" -#include "xnviewdata.h" -#include "xndomnode.h" -#include "xnnode.h" -#include "xnviewcontroladapter.h" -#include "xneffectmanager.h" -#include "xnrootdata.h" -#include "xnviewadapter.h" -#include "xnbackgroundmanager.h" - -#include "xnviewswitcher.h" - -// Constants -const TInt KDrawDelay( 25000 ); // 16100 = 62 fps -const TInt KDragTreshold( 30 ); -const TInt KMaxScrollSpeed( 150 ); -const TInt KMinScrollSpeed( 20 ); -const TInt KAnimationDuration( 500000 ); -const TInt KDragOffsetForBackground( 100 ); -const TInt KDragOffsetForPageSwitch( 50 ); - -enum TViewPosition - { - KCurrentView, KNextView, KPreviousView - }; - -// ============================= LOCAL FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -void HideAdapter( CXnControlAdapter* aAdapter ) - { - if( aAdapter ) - { - aAdapter->Window().SetOrdinalPosition( -1 ); - } - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -void ShowAdapter( CXnControlAdapter* aAdapter ) - { - if( aAdapter ) - { - aAdapter->Window().SetOrdinalPosition( 1 ); - } - } - -// ----------------------------------------------------------------------------- -// Changes window position -// ----------------------------------------------------------------------------- -// -void SetWindowPosition( CXnControlAdapter* aAdapter, const TPoint& aPos ) - { - if( aAdapter ) - { - aAdapter->Window().SetPosition( aPos ); - } - } - -// ----------------------------------------------------------------------------- -// Hide/Show control -// ----------------------------------------------------------------------------- -// -void SetVisible( CCoeControl* aControl, TBool aVisible ) - { - if( aControl ) - { - aControl->MakeVisible( aVisible ); - } - } - -// ----------------------------------------------------------------------------- -// ShowNodes -// ----------------------------------------------------------------------------- -// -void ShowNodesL( CXnNode& aNode, TBool aShow ) - { - CXnDomStringPool* sp( aNode.DomNode()->StringPool() ); - - CXnProperty* prop( NULL ); - if( aShow ) - { - prop = CXnProperty::NewL( - XnPropertyNames::style::common::KDisplay, - XnPropertyNames::style::common::display::KBlock, - CXnDomPropertyValue::EString, *sp ); - } - else - { - prop = CXnProperty::NewL( - XnPropertyNames::style::common::KDisplay, - XnPropertyNames::style::common::display::KNone, - CXnDomPropertyValue::EString, *sp ); - } - CleanupStack::PushL( prop ); - - aNode.SetPropertyWithoutNotificationL( prop ); - CleanupStack::Pop( prop ); - } - -// ----------------------------------------------------------------------------- -// IsNodeVisible -// ----------------------------------------------------------------------------- -// -TBool IsNodeVisibleL( CXnNode& aNode ) - { - CXnProperty* displayProp( aNode.DisplayL() ); - - if ( displayProp ) - { - const TDesC8& display( displayProp->StringValue() ); - - if ( display == XnPropertyNames::style::common::display::KBlock ) - { - return ETrue; - } - } - return EFalse; - } - -// ============================ MEMBER FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// CXnViewSwitcher::NewL -// Symbian static 1st phase constructor -// ----------------------------------------------------------------------------- -// -CXnViewSwitcher* CXnViewSwitcher::NewL() - { - CXnViewSwitcher* self = new (ELeave) CXnViewSwitcher(); - - CleanupStack::PushL(self); - self->ConstructL(); - CleanupStack::Pop(self); - - return self; - } - -// ----------------------------------------------------------------------------- -// CXnViewSwitcher::ConstructL -// Symbian 2nd phase constructor can leave. -// ----------------------------------------------------------------------------- -// -void CXnViewSwitcher::ConstructL() - { - iFingerFollowSupported = IsFingerFollowSupportedL(); - iTimer = CPeriodic::NewL( CActive::EPriorityUserInput ); - iViewSwitchState = KViewSwitchIdle; - } - -// ----------------------------------------------------------------------------- -// CXnViewSwitcher::CXnViewSwitcher -// C++ default constructor -// ----------------------------------------------------------------------------- -// -CXnViewSwitcher::CXnViewSwitcher() : - iAppUi(static_cast (*iAvkonAppUi)) - { - } - -// ----------------------------------------------------------------------------- -// CXnViewSwitcher::~CXnViewSwitcher -// C++ destructor -// ----------------------------------------------------------------------------- -// -CXnViewSwitcher::~CXnViewSwitcher() - { - if (iTimer->IsActive()) - { - iTimer->Cancel(); - } - delete iTimer; - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -TBool CXnViewSwitcher::FingerFollowSupported() const - { - return iFingerFollowSupported; - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -TBool CXnViewSwitcher::ProcessPointerEventL(const TPointerEvent& aPointerEvent ) - { - TBool consumed(EFalse); - - if ( FingerFollowSupported() ) - { - TPoint parentPos = aPointerEvent.iParentPosition; - - switch (aPointerEvent.iType) - { - case TPointerEvent::EButton1Down: - { - if ( iViewSwitchState == KViewSwitchBegin || iViewSwitchState - == KViewSwitchIdle ) - { - if (iTimer->IsActive()) - { - iTimer->Cancel(); - } - if( SetupViewsL() ) - { - iViewSwitchState = KViewSwitchBegin; - iStartPosition = parentPos; - iScrollSpeed = KMaxScrollSpeed; - iTickAmount = 0; - iDirection = KCurrentView; - iScrollDistance = 0; - iScrollDirectionDistance = 0; - } - } - else if( iViewSwitchState == KViewSwitchDragOngoing ) - { - consumed = ETrue; - } - else if( iViewSwitchState == KViewSwitchScroll ) - { - consumed = ETrue; - - if( iActivateView == KCurrentView ) - { - if (iTimer->IsActive()) - { - iTimer->Cancel(); - } - - iViewSwitchState = KViewSwitchDragOngoing; - consumed = ETrue; - iViewStartPosition = iViewPosition; - iScrollDistance = 0; - iScrollDirectionDistance = 0; - iStartPosition = parentPos; - - iTimer->Start( 0, KDrawDelay, TCallBack( - TimerCallback, this ) ); - } - else if( iActivateView == KNextView ) - { - if( iCurrentView.iAdapter && iNextView.iAdapter && - iPreviousView.iAdapter ) - { - if (iTimer->IsActive()) - { - iTimer->Cancel(); - } - - iViewSwitchState = KViewSwitchDragOngoing; - iActivateView = KCurrentView; - - if( iPreviousView.iAdapter == iNextView.iAdapter ) - { - iPreviousView = iCurrentView; - iCurrentView = iNextView; - iNextView = iPreviousView; - } - else - { - iPreviousView = iCurrentView; - - iCurrentView = iNextView; - - iNextView.iReadyToDraw = EFalse; - CXnViewData* nextViewData( - ViewData( *iCurrentView.iViewData, KNextView ) ); - CXnNode* nextViewNode( nextViewData->ViewNode() ); - if( nextViewNode ) - { - iNextView.iAdapter = nextViewNode->Control(); - iNextView.iViewData = nextViewData; - iNextView.iBgDrawn = EFalse; - } - } - - iViewStartPosition = iCurrentView.iAdapter->Window().Position(); - iScrollDistance = 0; - iScrollDirectionDistance = 0; - iStartPosition = parentPos; - - iScrollSpeed = KMaxScrollSpeed; - iTickAmount = 0; - iTimer->Start( 0, KDrawDelay, TCallBack( - TimerCallback, this ) ); - } - consumed = ETrue; - } - else if( iActivateView == KPreviousView ) - { - if( iCurrentView.iAdapter && iNextView.iAdapter && - iPreviousView.iAdapter ) - { - if (iTimer->IsActive()) - { - iTimer->Cancel(); - } - - iViewSwitchState = KViewSwitchDragOngoing; - iActivateView = KCurrentView; - - if( iPreviousView.iAdapter == iNextView.iAdapter ) - { - iNextView = iCurrentView; - iCurrentView = iPreviousView; - iPreviousView = iNextView; - } - else - { - iNextView = iCurrentView; - - iCurrentView = iPreviousView; - - iPreviousView.iReadyToDraw = EFalse; - CXnViewData* prevViewData( - ViewData( *iCurrentView.iViewData, KPreviousView ) ); - CXnNode* prevViewNode( prevViewData->ViewNode() ); - if( prevViewNode ) - { - iPreviousView.iAdapter = prevViewNode->Control(); - iPreviousView.iViewData = prevViewData; - iPreviousView.iBgDrawn = EFalse; - } - } - - iViewStartPosition = iCurrentView.iAdapter->Window().Position(); - iScrollDistance = 0; - iScrollDirectionDistance = 0; - iStartPosition = parentPos; - - iScrollSpeed = KMaxScrollSpeed; - iTickAmount = 0; - iTimer->Start( 0, KDrawDelay, TCallBack( - TimerCallback, this ) ); - } - consumed = ETrue; - } - } - } - break; - case TPointerEvent::EDrag: - { - if( iViewSwitchState == KViewSwitchIdle ) - { - consumed = EFalse; - } - else if( iViewSwitchState == KViewSwitchBegin ) - { - TPoint delta = parentPos - iStartPosition; - - if( Abs(delta.iX) > KDragTreshold || Abs(delta.iY) > KDragTreshold ) - { -#ifdef RD_TACTILE_FEEDBACK - MTouchFeedback* feedback( MTouchFeedback::Instance() ); - - if ( feedback ) - { - feedback->InstantFeedback( ETouchFeedbackBasic ); - } -#endif - - iViewSwitchState = KViewSwitchDragOngoing; - iActivateView = KCurrentView; - iViewPosition.iY = iCurrentView.iAdapter->Position().iY; - iViewPosition.iX = 0; - iStartPosition = parentPos; - - StartViewDraggingL(); - - iTimer->Start( 0, KDrawDelay, TCallBack( - TimerCallback, this ) ); - } - consumed = ETrue; - } - else if( iViewSwitchState == KViewSwitchDragOngoing ) - { - iScrollDistance = parentPos.iX - iStartPosition.iX; - consumed = ETrue; - } - else - { - consumed = EFalse; - } - } - break; - case TPointerEvent::EButton1Up: - { - if( iViewSwitchState == KViewSwitchBegin ) - { - iViewSwitchState = KViewSwitchIdle; - } - else if( iViewSwitchState == KViewSwitchDragOngoing ) - { - if (iTimer->IsActive()) - { - iTimer->Cancel(); - } - -#ifdef RD_TACTILE_FEEDBACK -/* - MTouchFeedback* feedback( MTouchFeedback::Instance() ); - - if ( feedback ) - { - feedback->InstantFeedback( ETouchFeedbackBasic ); - } -*/ -#endif - - consumed = ETrue; - - StartViewScrolling(); - iViewSwitchState = KViewSwitchScroll; - } - else if( iViewSwitchState == KViewSwitchScroll ) - { - consumed = ETrue; - } - } - break; - default: - break; - } - } - - return consumed; - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -void CXnViewSwitcher::TouchGesture( TAknTouchGestureFwType& /*aTouchGesture*/ ) - { - } - -// ----------------------------------------------------------------------------- -// CXnViewSwitcher::SizeChanged -// ----------------------------------------------------------------------------- -// -void CXnViewSwitcher::SizeChanged( TRect aRect ) - { - iRect = aRect; - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -TBool CXnViewSwitcher::SetupViewsL() - { - TBool ret = EFalse; - - CXnViewManager& wManager = iAppUi.ViewManager(); - iCurrentView.iViewData = &wManager.ActiveViewData(); - iCurrentView.iAdapter = iCurrentView.iViewData->ViewNode()->Control(); - iCurrentView.iReadyToDraw = ETrue; - iCurrentView.iBgDrawn = ETrue; - - iViewStartPosition = TPoint( 0, iCurrentView.iAdapter->Window().Position().iY ); - - if ( wManager.ViewAmount() > 1 ) - { - ret = ETrue; - - CXnNode* nextViewNode( wManager.NextViewData().ViewNode() ); - if( nextViewNode ) - { - iNextView.iAdapter = nextViewNode->Control(); - iNextView.iViewData = &wManager.NextViewData(); - } - - CXnNode* prevViewNode( wManager.PreviousViewData().ViewNode() ); - if( prevViewNode && prevViewNode == nextViewNode ) - { - // Only 2 views in Homesceern -> previous = next - iPreviousView = iNextView; - } - else if( prevViewNode ) - { - iPreviousView.iAdapter = prevViewNode->Control(); - iPreviousView.iViewData = &wManager.PreviousViewData(); - } - } - return ret; - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -void CXnViewSwitcher::PrepareViewL( CXnViewSwitcher::TViewInformation& aView ) - { - if( !aView.iAdapter || !aView.iViewData ) - { - return; - } - - CXnControlAdapter& adapter = *aView.iAdapter; - RWindow& win( adapter.Window() ); - win.SetOrdinalPosition( -1 ); - adapter.MakeVisible( ETrue ); - - CXnNode* viewNode( aView.iViewData->ViewNode() ); - TBool nodesVisible( IsNodeVisibleL( *viewNode ) ); - if( !nodesVisible ) - { - // Set visible temporarily - ShowNodesL( *viewNode, ETrue ); - } - - iAppUi.ViewAdapter().EnterEditStateL( *aView.iViewData, EFalse ); - - viewNode->UiEngine()->RenderUIL( viewNode ); - aView.iReadyToDraw = ETrue; - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -void CXnViewSwitcher::StartViewDraggingL() - { - // Remove focused node, in order to prevent activate triggers - CXnNode* currentViewNode = - iAppUi.ViewManager().ActiveViewData(). Node()->LayoutNode(); - CXnUiEngine* engine(currentViewNode->UiEngine()); - - CXnNode* focusedNode = engine->FocusedNode(); - if (focusedNode) - { - focusedNode->UnsetStateL(XnPropertyNames::style::common::KPressedDown); - focusedNode->UnsetStateL(XnPropertyNames::style::common::KFocus); - } - - // Send button up to prevent long tapping - TPointerEvent pointerEvent; - pointerEvent.iType = TPointerEvent::EButton1Up; - if ( iCurrentView.iAdapter ) - { - iCurrentView.iAdapter->CXnControlAdapter::HandlePointerEventL( - pointerEvent); - } - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -void CXnViewSwitcher::StartViewScrolling() - { - TInt screenWidth = iCurrentView.iAdapter->Window().Size().iWidth; - - UpdateViewToBeActivated( KDragOffsetForPageSwitch ); - - switch (iActivateView) - { - case KPreviousView: - { - iScrollDistance = screenWidth - iViewPosition.iX; - } - break; - case KNextView: - { - iScrollDistance = -screenWidth - iViewPosition.iX; - } - break; - default: // KCurrentView - { - iScrollDistance = -iViewPosition.iX; - } - break; - } - - TInt minSpeed = Abs( iScrollDistance / ( KAnimationDuration / KDrawDelay ) ); - iScrollSpeed = Abs( iScrollSpeed ); - if( iScrollSpeed < minSpeed ) - { - iScrollSpeed = minSpeed; - } - if( iScrollSpeed < KMinScrollSpeed ) - { - iScrollSpeed = KMinScrollSpeed; - } - if (iTimer->IsActive()) - { - iTimer->Cancel(); - } - - iTimer->Start(KDrawDelay, KDrawDelay, TCallBack( - TimerCallback, this)); - } - - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -void CXnViewSwitcher::ViewSwitchEndedL() - { - iViewSwitchState = KViewSwitchIdle; - - if (iTimer->IsActive()) - { - iTimer->Cancel(); - } - - iViewPosition.iX = 0; - - if ( iCurrentView.iAdapter ) - { - CXnViewManager& wManager( iAppUi.ViewManager() ); - CXnViewData* activeViewData( &wManager.ActiveViewData() ); - - switch( iActivateView ) - { - case KCurrentView: - SetVisible( iNextView.iAdapter, EFalse ); - SetVisible( iPreviousView.iAdapter, EFalse ); - - if( iCurrentView.iViewData && activeViewData != iCurrentView.iViewData ) - { - wManager.ActivateViewL( *iCurrentView.iViewData, TUid::Null(), EFalse ); - } - break; - case KPreviousView: - if ( iPreviousView.iAdapter ) - { - SetVisible( iCurrentView.iAdapter, EFalse ); - if( iPreviousView.iAdapter != iNextView.iAdapter ) - { - SetVisible( iNextView.iAdapter, EFalse ); - } - - CXnViewData* prevViewData( ViewData( *iCurrentView.iViewData, KPreviousView ) ); - if( prevViewData && activeViewData != prevViewData ) - { - wManager.ActivateViewL( *prevViewData, TUid::Null(), EFalse ); - } - } - break; - case KNextView: - if ( iNextView.iAdapter ) - { - SetVisible( iCurrentView.iAdapter, EFalse ); - if( iPreviousView.iAdapter != iNextView.iAdapter ) - { - SetVisible( iPreviousView.iAdapter, EFalse ); - } - - CXnViewData* nextViewData( ViewData( *iCurrentView.iViewData, KNextView ) ); - if( nextViewData && activeViewData != nextViewData ) - { - wManager.ActivateViewL( *nextViewData, TUid::Null(), EFalse ); - } - } - break; - } - - ClearViews(); - } - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -void CXnViewSwitcher::Scroll() - { - TInt scrollStep = iScrollDistance / 1.5; - - if( Abs( scrollStep ) > Abs( iScrollSpeed ) ) - { - scrollStep = ( scrollStep > 0 ) ? iScrollSpeed : -iScrollSpeed; - } - - iViewPosition.iX += scrollStep; - iScrollDistance -= scrollStep; - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -void CXnViewSwitcher::DoScroll() - { - SetWindowPosition( iCurrentView.iAdapter, iViewPosition ); - - if( iViewPosition.iX < 0 && iNextView.iAdapter ) - { - // next view shown - if( !iNextView.iReadyToDraw ) - { - TRAP_IGNORE( PrepareViewL( iNextView ) ); - if( iPreviousView.iAdapter == iNextView.iAdapter ) - { - iPreviousView.iReadyToDraw = ETrue; - } - } - - ShowAdapter( iNextView.iAdapter ); - if( iPreviousView.iAdapter != iNextView.iAdapter ) - { - HideAdapter( iPreviousView.iAdapter ); - } - - TPoint pos( TPoint( iViewPosition.iX + iRect.Width(), iViewPosition.iY ) ); - SetWindowPosition( iNextView.iAdapter, pos ); - } - - else if( iViewPosition.iX > 0 && iPreviousView.iAdapter ) - { - // previous view shown - if( !iPreviousView.iReadyToDraw ) - { - TRAP_IGNORE( PrepareViewL( iPreviousView ) ); - } - - ShowAdapter( iPreviousView.iAdapter ); - if( iPreviousView.iAdapter != iNextView.iAdapter ) - { - HideAdapter( iNextView.iAdapter ); - } - TPoint pos( TPoint( iViewPosition.iX - iRect.Width(), iViewPosition.iY ) ); - SetWindowPosition( iPreviousView.iAdapter, pos ); - } - - else - { - HideAdapter( iPreviousView.iAdapter ); - HideAdapter( iNextView.iAdapter ); - } - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -TInt CXnViewSwitcher::TimerCallback(TAny *aPtr) - { - CXnViewSwitcher* self = reinterpret_cast (aPtr); - - if( self->iViewSwitchState == KViewSwitchDragOngoing ) - { - TInt prevViewPos( self->iViewPosition.iX ); - self->iViewPosition.iX = self->iViewStartPosition.iX + self->iScrollDistance; - self->DoScroll(); - - self->UpdateViewToBeActivated( KDragOffsetForBackground ); - - // Hack for informing NGA to draw. - self->iAppUi.ViewAdapter().BgManager().DrawNow(TRect(0,0,1,1)); - - // Scroll speed is average drag delta between timer callbacks. - self->iTickAmount++; - - TInt scrollDistance = self->iViewPosition.iX - prevViewPos; - - if( ( scrollDistance < 0 && self->iScrollDirectionDistance > 0 ) || - ( scrollDistance > 0 && self->iScrollDirectionDistance < 0 ) ) - { - // Scroll direction has been changed - self->iScrollDirectionDistance = scrollDistance; - self->iScrollSpeed = scrollDistance; - self->iTickAmount = 1; - } - else - { - self->iScrollDirectionDistance += scrollDistance; - self->iScrollSpeed = self->iScrollDistance / self->iTickAmount; - } - - if( scrollDistance < 0 ) - { - self->iDirection = KNextView; - } - else if( scrollDistance > 0 ) - { - self->iDirection = KPreviousView; - } - - return 0; - } - - if ( Abs( self->iScrollDistance ) <= 2 ) - { - TRAP_IGNORE( self->ViewSwitchEndedL() ); - } - else - { - self->Scroll(); - self->DoScroll(); - - // Hack for inforing NGA to draw. - self->iAppUi.ViewAdapter().BgManager().DrawNow(TRect(0,0,1,1)); - } - return 0; - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -TBool CXnViewSwitcher::IsFingerFollowSupportedL() const - { - CRepository* repository = - CRepository::NewL(TUid::Uid(KCRUidActiveIdleLV)); - TBool value(EFalse); - TInt err(repository->Get(KAIFingerFollowSupport, value)); - delete repository; - - return value && (KErrNone == err); - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -CXnViewData* CXnViewSwitcher::ViewData( CXnViewData& aCurrentViewData, - TInt aView ) - { - CXnRootData& rootData = iAppUi.ViewManager().ActiveAppData(); - RPointerArray& rootDataArr = rootData.PluginData(); - - CXnViewData* ret( NULL ); - - TInt viewAmount( rootDataArr.Count() ); - for( TInt i = 0; i < viewAmount; i++ ) - { - CXnViewData* viewData = static_cast( rootDataArr[i] ); - if( &aCurrentViewData == viewData ) - { - if( aView == KNextView ) - { - if( i < viewAmount - 1 ) - { - ret = static_cast( rootDataArr[i + 1] ); - } - else - { - ret = static_cast( rootDataArr[0] ); - } - break; - } - else if( aView == KPreviousView ) - { - if( i == 0 ) - { - ret = static_cast( rootDataArr[viewAmount - 1] ); - } - else - { - ret = static_cast( rootDataArr[i - 1] ); - } - break; - } - } - } - - return ret; - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -void CXnViewSwitcher::ClearViews() - { - TPoint p( 0, iCurrentView.iAdapter->Window().Position().iY ); - SetWindowPosition( iCurrentView.iAdapter, p ); - SetWindowPosition( iPreviousView.iAdapter, p ); - SetWindowPosition( iNextView.iAdapter, p ); - ShowAdapter( iPreviousView.iAdapter ); - ShowAdapter( iNextView.iAdapter ); - ShowAdapter( iCurrentView.iAdapter ); - iCurrentView.iAdapter = NULL; - iCurrentView.iViewData = NULL; - iCurrentView.iReadyToDraw = EFalse; - iCurrentView.iBgDrawn = EFalse; - iNextView.iAdapter = NULL; - iNextView.iViewData = NULL; - iNextView.iReadyToDraw = EFalse; - iNextView.iBgDrawn = EFalse; - iPreviousView.iAdapter = NULL; - iPreviousView.iViewData = NULL; - iPreviousView.iReadyToDraw = EFalse; - iPreviousView.iBgDrawn = EFalse; - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -void CXnViewSwitcher::UpdateViewToBeActivated( TInt aOffset ) - { - if ( iViewPosition.iX > aOffset && iDirection == KPreviousView && - iScrollDirectionDistance > aOffset / 2) - { - if( iActivateView != KPreviousView && - iPreviousView.iViewData && iCurrentView.iViewData ) - { - iActivateView = KPreviousView; - if( !iPreviousView.iBgDrawn ) - { - ChangeBackground( *iCurrentView.iViewData, - *iPreviousView.iViewData ); - iPreviousView.iBgDrawn = ETrue; - iNextView.iBgDrawn = EFalse; - iCurrentView.iBgDrawn = EFalse; - } - } - } - else if ( iViewPosition.iX < -aOffset && iDirection == KNextView && - iScrollDirectionDistance < -aOffset / 2 ) - { - if( iActivateView != KNextView && - iNextView.iViewData && iCurrentView.iViewData ) - { - iActivateView = KNextView; - if( !iNextView.iBgDrawn ) - { - ChangeBackground( *iCurrentView.iViewData, - *iNextView.iViewData ); - iPreviousView.iBgDrawn = EFalse; - iNextView.iBgDrawn = ETrue; - iCurrentView.iBgDrawn = EFalse; - } - } - } - else if( iActivateView != KCurrentView && - iPreviousView.iViewData && iNextView.iViewData && iCurrentView.iViewData ) - { - if( Abs( iScrollDirectionDistance ) > aOffset / 2 ) - { - iActivateView = KCurrentView; - if( !iCurrentView.iBgDrawn ) - { - ChangeBackground( ( iPreviousView.iBgDrawn ) ? *iPreviousView.iViewData : - *iNextView.iViewData, *iCurrentView.iViewData ); - iPreviousView.iBgDrawn = EFalse; - iNextView.iBgDrawn = EFalse; - iCurrentView.iBgDrawn = ETrue; - } - } - } - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -void CXnViewSwitcher::ChangeBackground( CXnViewData& aCurrent, CXnViewData& aNext ) - { - CXnBackgroundManager& bg( iAppUi.ViewAdapter().BgManager() ); - - GfxTransEffect::Begin( &bg, KGfxControlActionBgImgToImgAppear ); - - bg.ChangeWallpaper( aCurrent, aNext, EFalse ); - - GfxTransEffect::SetDemarcation( &bg, bg.Position() ); - GfxTransEffect::End( &bg ); - } - -// ----------------------------------------------------------------------------- -// ----------------------------------------------------------------------------- -// -void CXnViewSwitcher::StopViewSwitchL() - { - ViewSwitchEndedL(); - } - -// End of file diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnwallpaperview.rss --- a/idlehomescreen/xmluirendering/uiengine/src/xnwallpaperview.rss Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnwallpaperview.rss Wed Oct 13 14:18:30 2010 +0300 @@ -66,16 +66,6 @@ } // ---------------------------------------------------- -// r_qtn_hs_wallpaper_out_of_ram -// -// ---------------------------------------------------- -// -RESOURCE TBUF r_qtn_hs_wallpaper_out_of_ram - { - buf = qtn_memlo_ram_out_of_mem; - } - -// ---------------------------------------------------- // r_qtn_hs_drm_protected_image_note // // ---------------------------------------------------- diff -r b01126ce0bec -r ba63c83f4716 idlehomescreen/xmluirendering/uiengine/src/xnwidgetextensionadapter.cpp --- a/idlehomescreen/xmluirendering/uiengine/src/xnwidgetextensionadapter.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/idlehomescreen/xmluirendering/uiengine/src/xnwidgetextensionadapter.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -232,11 +232,6 @@ effectStarted = ETrue; } - if ( aVisible && OwnsWindow() ) - { - Window().SetOrdinalPosition( 0 ); - } - CCoeControl::MakeVisible( aVisible ); if ( effectStarted ) diff -r b01126ce0bec -r ba63c83f4716 menufw/hierarchynavigator/hnengine/inc/hnengine.h --- a/menufw/hierarchynavigator/hnengine/inc/hnengine.h Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/hierarchynavigator/hnengine/inc/hnengine.h Wed Oct 13 14:18:30 2010 +0300 @@ -11,7 +11,7 @@ * * Contributors: * -* Description: +* Description: * */ @@ -36,10 +36,10 @@ /** * @ingroup group_hnengine * Hierarchy Navigator engine - used by Multimedia Menu - * to fetch data models. The most commonly used exported method is TriggerHnEventL, + * to fetch data models. The most commonly used exported method is TriggerHnEventL, * which offers event execution for the framework. This functionality is implemented - * through the MHnEventGenerator interface. The class owns the meta data model ( CHnMdModel ) - * and suite container ( CHnSuiteModelContainer ) to manage them. The engine manages + * through the MHnEventGenerator interface. The class owns the meta data model ( CHnMdModel ) + * and suite container ( CHnSuiteModelContainer ) to manage them. The engine manages * the model by processing model events ( HandleModelEventL ) or reseting the models * ( ResetModelsL ). * @@ -66,18 +66,18 @@ * @since S60 v5.0 * @param aController Controller handler. * @return Fully constructed object. - */ + */ IMPORT_C static CHnEngine* NewLC( MHnControllerInterface& aController ); /** * Standard C++ destructor. - * + * * @since S60 v5.0 - */ + */ ~CHnEngine(); // from CHnInterface - + /** * Fetches and constructs data structres, needed by Multimedia * Menu to display suites. @@ -86,7 +86,7 @@ * @return Filled suite model object from the stack. */ CHnSuiteModel* GetLastSuiteModelL(); - + /** * Fetches and constructs data structres, needed by Multimedia * Menu to display suites. @@ -95,23 +95,23 @@ * @return Filled suite model object from the stack. */ CHnSuiteModel* GetParentSuiteModelL(); - + /** * Get count of suite models on the stack. - * + * * @since S60 v5.0 * @return Count of suite models on the stack. */ virtual TInt GetSuiteModelsCountL(); - + /** * Checks if suite model is loaded. - * + * * @since S60 v5.0 * @return ETrue if suite model is loaded, otherwise EFalse. */ TBool SuiteModelLoadedL( TInt aId ); - + /** * Loads suite hierarchy specified in URI. * @@ -122,7 +122,7 @@ public: // from MHnMdModelEventObserver - + /** * Handle model event. * @@ -131,9 +131,9 @@ * @param aParams Event specific parameters used to perform action. */ TInt HandleModelEventL( const TDesC& aEventName, CLiwGenericParamList& aParams ); - + // from CHnInterface - + /** * Handle back event. * @@ -147,24 +147,24 @@ /** * Loads default root suite - * + * * @since S60 v5.0 * @param aSuiteParams Suite parameters. * @return Status error code. */ IMPORT_C TInt InitializeL( CLiwGenericParamList& aSuiteParams ); - + // from MHnEventGenerator - + /** * Triggers an event inside hierarchy navigator. - * + * * Used by UI to notify hierarchy navigator of its events, * as well as for hierarchy navigator components to notify * the module of certain events (such as OnSuiteLoaded etc). * * @since S60 v5.0 - * @param aHnEventId Internal id of an event (Event names are + * @param aHnEventId Internal id of an event (Event names are * mapped to ids). * @param aRecipientId The id of the recipient item. * @param aEventParameters Event specific parameter. @@ -172,41 +172,41 @@ */ IMPORT_C TInt TriggerHnEventL( const TInt aHnEventId, const TInt aRecipientId, CLiwGenericParamList* aEventParameters = NULL ); - + /** * Splits the source descriptor by a separatos - * + * * @since S60 v5.0 * @param aSource Source descriptor intended to split. * @param aSeparator Separator used to split. - * @return Array of descriptors. + * @return Array of descriptors. */ RPointerArray< HBufC8 > SplitL( const TDesC8& aSource, const TDesC8& aSeparator ); - + /** * Generate param list according to query param. - * + * * @param aUriQuery Descriptor consist of param(s) to split * @param aUriFragment Descriptor containing an uri fragment. - * @param aSuiteName The suite's name. + * @param aSuiteName The suite's name. * @return Filled generic param list. */ CLiwGenericParamList* UriQueryToLiwListLC( const TDesC8& aUriQuery, const TDesC8& aUriFragment, const TDesC8& aSuiteName ); - + /** * Resets MD Model and Suite Container. * * @since S60 v5.0 */ IMPORT_C void ResetModelsL(); - - // from MHnEditModeInterface - + + // from MHnEditModeInterface + /** * Sets edit mode. - * + * * @since S60 v5.0 * @param aEditMode Set edit mode member to false/true. */ @@ -214,12 +214,12 @@ /** * Enables to issue a request to Hn engine. - * + * * @since S60 v5.0 * @param aParam Input Parameters. - * @param aOutput Target list for output. + * @param aOutput Target list for output. */ - IMPORT_C void HandleRequestL( const CLiwGenericParamList& aParam, + IMPORT_C void HandleRequestL( const CLiwGenericParamList& aParam, CLiwGenericParamList* aOutput = NULL); // from MHWRMLightObserver @@ -238,19 +238,19 @@ private: /** * Default constructor. - * + * * @since S60 v5.0 * @param aController Controller handler. */ CHnEngine( MHnControllerInterface& aController ); - + /** * Standard 2nd phase constructor. - * + * * @since S60 v5.0 */ void ConstructL(); - + /** * Handle new suite loaded event. * @@ -286,7 +286,7 @@ * @return Status code. */ TInt HandleSetFocusEventL( const CLiwGenericParamList& aParams ); - + /** * Handles MoveFocusBeforeDelete event. * @@ -296,7 +296,7 @@ */ TInt HandleMoveFocusBeforeDeleteEventL( const CLiwGenericParamList& aParams ); - + /** * Handles RefreshIcons event. * @@ -308,7 +308,7 @@ /** * Handles DisableActionsForItem event. - * + * * @since S60 v5.0 * @param aParams Event specific parameters - contains custom item id * @return Status code. @@ -319,14 +319,14 @@ * Store widget type to repository. * * @since S60 v5.0 - * @param aSuiteName Suite name to that set widget type. + * @param aSuiteName Suite name to that set widget type. * @param aType Widget type to store in repository. * @return Status code. - */ + */ TInt HandleWidgetChangeL( const TDesC& aSuiteName, THnSuiteWidgetType aType ); - - + + /** * Parse URI path component containing Suites to be loaded. * @@ -334,10 +334,10 @@ * @param aUriPath Descriptor URI path which consist of suites' names. * @param aOutput Array on output containes parsed suite names. */ - void ParseSuiteUriPathL( const TDesC8& aUriPath, + void ParseSuiteUriPathL( const TDesC8& aUriPath, CDesC8ArrayFlat& aOutput ); - - + + /** * Checks if only root configuration is loaded. * Used to decide if reloading models is needed. @@ -347,29 +347,29 @@ * otherwise EFalse. */ TBool IsOnlyRootConfLoaded(); - + /** * Resets loaded resources. * * @since S60 5.0 */ void ResetLocalization(); - + /** * Loads suite with given suite name with parameters - * from uri query. + * from uri query. * * @since S60 5.0 - * @param aSuiteName Name of the suite to load. + * @param aSuiteName Name of the suite to load. * @param aUriQuery Descriptor containig parsed part of the uri. * @param aUriFragment Descriptor containig parsed part (fragment) of the uri. * @return Error code when loading suite. */ - TInt LoadSuiteFromUriL( const TDesC8& aSuiteName, + TInt LoadSuiteFromUriL( const TDesC8& aSuiteName, const TDesC8& aUriQuery, const TDesC8& aUriFragment ); - + /** - * Reads highlight position from uri fragment + * Reads highlight position from uri fragment * and sets it on the suite model. * * @since S60 5.0 @@ -387,15 +387,15 @@ /** * Handles loading suite from uri if suites names' are the same. - * + * * @param aNextExists ETrue if the next suite's name exists in uri. - * @param aUri The URI's parameters passed to the suite. + * @param aUri The URI's parameters passed to the suite. */ void HandleTheSameSuitesL( TBool aNextExists, const TDesC8& aParams ); - + /** * Checks if suites have the same names. - * + * * @param aLastSuiteName The last suite's name on the stack. * @param aFirstSuiteName The first suite's name in uri. * @return ETrue if names are equal @@ -404,44 +404,37 @@ /** * Decides whether to hide menu depending on current state and uri parameters - * + * * @param aUri The Uri to parse for exit procedure. * @return ETrue If exit was consumed. */ TBool HandleActionL( const TDesC8& aUri ); - + /** * Loads suites from uri. - * + * * @param aUri The uri to parse */ void LoadSuitesL( const TDesC8& aUri ); - - /** - * Loads item through CR. - * - * @since S60 v5.0 - */ - void LoadItemFromCrL( const TDesC8& aUri ); - + private: // data - + /** * Own - Meta data model. */ CHnMdModel* iMetaDataModel; - + /** * Own - Suite container. */ CHnSuiteModelContainer* iSuiteContainer; - + /** * Not own. - * EikonEnv for displaying popup messages. + * EikonEnv for displaying popup messages. */ CEikonEnv* iEEnv; - + /** * Not own - Suite observer. */ @@ -451,7 +444,7 @@ * Edit mode */ TBool iEditMode; - + /** * Light status observer */ diff -r b01126ce0bec -r ba63c83f4716 menufw/hierarchynavigator/hnengine/src/hnengine.cpp --- a/menufw/hierarchynavigator/hnengine/src/hnengine.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/hierarchynavigator/hnengine/src/hnengine.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -192,7 +192,7 @@ if( !( aSuiteName.Compare( KRoot8 ) ) ) { CLiwGenericParamList* uriParams = - UriQueryToLiwListLC( aUriQuery, aUriFragment, aSuiteName ); + UriQueryToLiwListLC( aUriQuery, aUriFragment, aSuiteName ); CLiwGenericParamList* params = CLiwGenericParamList::NewLC(); params->AppendL( iMetaDataModel->GetSuiteParameters( 0 ) ); params->AppendL( *uriParams ); @@ -205,7 +205,7 @@ else { CLiwGenericParamList* params = - UriQueryToLiwListLC( aUriQuery, aUriFragment, aSuiteName ); + UriQueryToLiwListLC( aUriQuery, aUriFragment, aSuiteName ); HBufC* suiteName = HnConvUtils::Str8ToStrLC( aSuiteName ); params->AppendL( TLiwGenericParam( KNewSuiteParamNameEn, @@ -267,32 +267,27 @@ // --------------------------------------------------------------------------- // EXPORT_C void CHnEngine::LoadSuitesFromUriL( const TDesC8& aUri ) - { - DEBUG(("_MM_:CHnEngine::LoadSuitesFromUriL IN")); - DEBUG8(("_MM_:\tURI: %S",&aUri)); + { + DEBUG(("_MM_:CHnEngine::LoadSuitesFromUriL IN")); + DEBUG8(("_MM_:\tURI: %S",&aUri)); - TBool consumed( EFalse ); + TBool consumed(EFalse); - if( aUri.Find( KSetFocusWithPref ) != KErrNotFound ) - { - LoadFromCrL( aUri ); - consumed = ETrue; - } - else if( aUri.Find( KOpenItemWithPref ) != KErrNotFound ) - { - LoadItemFromCrL( aUri ); - consumed = ETrue; - } + if ( aUri.Find( KSetFocusWithPref ) != KErrNotFound ) + { + LoadFromCrL( aUri ); + consumed = ETrue; + } - if( !consumed ) - { - consumed = HandleActionL( aUri ); - } + if ( !consumed ) + { + consumed = HandleActionL( aUri ); + } - if( !consumed ) - { - LoadSuitesL( aUri ); - } + if ( !consumed ) + { + LoadSuitesL( aUri ); + } DEBUG(("_MM_:CHnEngine::LoadSuitesFromUriL OUT")); } @@ -358,19 +353,19 @@ ret = HandleSetFocusEventL( aParams ); } else if (aEventName == KAppGainForeground ) - { - //force matrix gain foreground + { + //force matrix gain foreground DEBUG(("_MM_:CHnEngine::HandleModelEventL EForegroundGain")); iControllerInterface.NotifyUiRefreshL( EForegroundGain ); ret = KErrNone; - } + } else if (aEventName == KAppGainBackground ) - { - //force matrix gain background + { + //force matrix gain background DEBUG(("_MM_:CHnEngine::HandleModelEventL EBackgroundGain")); iControllerInterface.NotifyUiRefreshL( EBackgroundGain ); ret = KErrNone; - } + } return ret; } @@ -607,41 +602,41 @@ TInt posSuite( 0 ); TInt posItem( 0 ); - TInt64 suiteCustomId( KErrNotFound ); - TInt64 itemCustomId( KErrNotFound ); + TInt64 suiteCustomId( KErrNotFound ); + TInt64 itemCustomId( KErrNotFound ); - // Get suite's and item's custom ids. - const TLiwGenericParam* paramSuiteId = aParams.FindFirst( posSuite, KSuiteCustomId8 ); - const TLiwGenericParam* paramItemId = aParams.FindFirst( posItem, KItemCustomId8 ); + // Get suite's and item's custom ids. + const TLiwGenericParam* paramSuiteId = aParams.FindFirst( posSuite, KSuiteCustomId8 ); + const TLiwGenericParam* paramItemId = aParams.FindFirst( posItem, KItemCustomId8 ); - if ( posSuite >= 0 && posItem >= 0 ) - { - suiteCustomId = paramSuiteId->Value().AsTInt64(); - itemCustomId = paramItemId->Value().AsTInt64(); + if ( posSuite >= 0 && posItem >= 0 ) + { + suiteCustomId = paramSuiteId->Value().AsTInt64(); + itemCustomId = paramItemId->Value().AsTInt64(); - // Get matching suite. - CHnSuiteModel* suiteModel = iSuiteContainer->GetMatchingSuiteModel( suiteCustomId ); + // Get matching suite. + CHnSuiteModel* suiteModel = iSuiteContainer->GetMatchingSuiteModel( suiteCustomId ); - if ( suiteModel ) - { - // If suite is not null, then find matching item model. - TInt index( KErrNotFound ); - CHnItemModel* itemModel = suiteModel->GetMatchingItemModelL( itemCustomId, index ); + if ( suiteModel ) + { + // If suite is not null, then find matching item model. + TInt index( KErrNotFound ); + CHnItemModel* itemModel = suiteModel->GetMatchingItemModelL( itemCustomId, index ); - if ( itemModel ) - { - // If itemModel is not null then set highlight and set highligh - // on matching item. - suiteModel->SetSuiteHighlightL( index ); - iControllerInterface.HandleSuiteEventL( ESuiteHighlightChanged, suiteModel ); - } - else - { - suiteModel->QueueFocus( itemCustomId ); - } - } - } + if ( itemModel ) + { + // If itemModel is not null then set highlight and set highligh + // on matching item. + suiteModel->SetSuiteHighlightL( index ); + iControllerInterface.HandleSuiteEventL( ESuiteHighlightChanged, suiteModel ); + } + else + { + suiteModel->QueueFocus( itemCustomId ); + } + } + } DEBUG(("_MM_:CHnEngine::HandleSetFocusEventL OUT")); return KErrNone; @@ -893,45 +888,18 @@ if ( aSource.Length() > 0 && aSeparator.Length() > 0 ) { TPtrC8 tmpSource = aSource; + TPtrC8 token( KNullDesC8 ); while( ETrue ) { TInt length = tmpSource.Find( aSeparator ); - if( aSeparator == HnLogicalRelations::KParamUid8 - && length != KErrNotFound ) - { - TInt ampPos( KErrNotFound ); - do - { - ampPos = tmpSource.Mid( - length + HnLogicalRelations::KParamUid8().Length() ). - Find( HnLogicalRelations::KLogicalAnd8 ); - if( ampPos >= 0 ) - { - length += (ampPos + HnLogicalRelations::KParamUid8().Length()); - ampPos = 0; - } - else if( (length + HnLogicalRelations::KParamUid8().Length()) - == tmpSource.Length()) - { - length = KErrNotFound; - } - }while( !ampPos ); - } - if ( length >= 0 ) { token.Set( tmpSource.Mid( 0, length ) ); tokens.AppendL( token.AllocL() ); tmpSource.Set( tmpSource.Mid( length + 1 ) ); - if( aSeparator == HnLogicalRelations::KLogicalEqual8 ) - { - token.Set( tmpSource ); - tokens.AppendL( token.AllocL() ); - break; - } } else { @@ -1025,18 +993,18 @@ // --------------------------------------------------------------------------- // void CHnEngine::LoadFromCrL( const TDesC8& aUri ) - { - HBufC8* uriBuf = HBufC8::NewLC( aUri.Length() ); - uriBuf->Des().Copy( aUri ); + { + HBufC8* uriBuf = HBufC8::NewLC( aUri.Length() ); + uriBuf->Des().Copy( aUri ); - TUriParser8 parser; - parser.Parse( *uriBuf ); - User::LeaveIfError( parser.IsSchemeValid() ? KErrNone : KErrPathNotFound ); + TUriParser8 parser; + parser.Parse( *uriBuf ); + User::LeaveIfError( parser.IsSchemeValid() ? KErrNone : KErrPathNotFound ); - const TDesC8& query = parser.Extract( EUriQuery ); - RPointerArray< HBufC8 > params = SplitL( query, HnLogicalRelations::KParamUid8); + const TDesC8& query = parser.Extract( EUriQuery ); + RPointerArray< HBufC8 > params = SplitL( query, HnLogicalRelations::KLogicalAnd8); - TBuf8< KApaMaxAppGroupName + KTimeStampBufferLength + KUidStringLength + 2> item; + TBuf8 item; for( TInt i = 0; i < params.Count(); i++ ) { @@ -1045,40 +1013,41 @@ ASSERT( paramValue.Count() == 2 ); if ( !paramValue[0]->Compare(KMcsAppGroupName8) ) - { - TBuf8< KApaMaxAppGroupName > appgrname; - if( paramValue[1]->Length()<= KApaMaxAppGroupName ) - { - appgrname.Append( *paramValue[1] ); - } + { + TBuf8 appgrname; + if( paramValue[1]->Length()<=KApaMaxAppGroupName ) + { + appgrname.Append( *paramValue[1] ); + } - //get current time - TTime currentTime; - currentTime.HomeTime(); - TDateTime date(currentTime.DateTime()); - item.Format(KCRepTimeFormat, &appgrname , date.Year(), date.Month(), - date.Day(), date.Hour(), date.Minute(), date.Second(), date.MicroSecond()); - } + //get current time + TTime currentTime; + currentTime.HomeTime(); + TDateTime date(currentTime.DateTime()); + item.Format(KCRepTimeFormat, &appgrname , date.Year(), date.Month(), + date.Day(), date.Hour(), date.Minute(), date.Second(), date.MicroSecond()); + } else if ( !paramValue[0]->Compare( KKeyTypeUid ) ) - { - item.Append( KComma8 ); + { + item.Append( KComma8 ); if( paramValue[1]->Length()<=KUidStringLength ) { item.Append( *paramValue[1] ); } - } + } CleanupStack::PopAndDestroy( ¶mValue ); } - TBuf< KApaMaxAppGroupName + KTimeStampBufferLength + KUidStringLength + 2> item1; + TBuf item1; item1.Copy(item); - CRepository *cenRep = CRepository::NewLC( KCRUidMenu ); - cenRep->Set(KMenuShowFolder, item1); - CleanupStack::PopAndDestroy( cenRep ); + CRepository *cenRep = CRepository::NewLC( KCRUidMenu ); + cenRep->Set(KMenuShowFolder, item1); + CleanupStack::PopAndDestroy( cenRep ); params.ResetAndDestroy(); CleanupStack::PopAndDestroy( uriBuf ); - } + + } // --------------------------------------------------------------------------- // // --------------------------------------------------------------------------- @@ -1112,96 +1081,96 @@ // --------------------------------------------------------------------------- // TBool CHnEngine::HandleActionL( const TDesC8& aUri ) - { - TBool exitActionConsumed( EFalse ); + { + TBool exitActionConsumed(EFalse); - HBufC8* uriBuf = HBufC8::NewLC( aUri.Length() ); - uriBuf->Des().Copy( aUri ); + HBufC8* uriBuf = HBufC8::NewLC( aUri.Length() ); + uriBuf->Des().Copy( aUri ); - TUriParser8 parser; + TUriParser8 parser; parser.Parse( *uriBuf ); User::LeaveIfError( parser.IsSchemeValid() ? KErrNone : KErrPathNotFound ); const TDesC8& host8 = parser.Extract( EUriHost ); const TDesC8& query = parser.Extract( EUriQuery ); - RBuf action; + RBuf action; CleanupClosePushL( action ); CLiwGenericParamList* paramsUri = UriQueryToLiwListLC( query, KNullDesC8, KNullDesC8 ); HnLiwUtils::GetStringL( *paramsUri, KActionParams, action ); - if( !action.Compare( KActionExit ) ) - { - RBuf host; - host.CreateL( host8.Length() ); - CleanupClosePushL( host ); - host.Copy( host8 ); - CHnSuiteModel* suiteModel = iSuiteContainer->GetSuiteModel( host ); - TBool exitHideHostNotFound( ETrue ); - if( suiteModel && suiteModel->ExitMode() == EExitModeHide ) - { - exitHideHostNotFound = EFalse; - } + if ( !action.Compare( KActionExit ) ) + { + RBuf host; + host.CreateL( host8.Length() ); + CleanupClosePushL( host ); + host.Copy(host8); + CHnSuiteModel* suiteModel = iSuiteContainer->GetSuiteModel( host ); + TBool exitHideHostNotFound( ETrue ); + if( suiteModel && suiteModel->ExitMode() == EExitModeHide ) + { + exitHideHostNotFound = EFalse; + } - if( exitHideHostNotFound ) - { - //send to foreground - CLiwGenericParamList* pl = CLiwGenericParamList::NewL(); - CleanupStack::PushL( pl ); - HandleModelEventL( KAppGainForeground, *pl ); - CleanupStack::PopAndDestroy( pl ); - } - else - { - //send to background - CLiwGenericParamList* pl = CLiwGenericParamList::NewL(); - CleanupStack::PushL( pl ); - HandleModelEventL( KAppGainBackground, *pl ); - CleanupStack::PopAndDestroy( pl ); - } + if ( exitHideHostNotFound ) + { + //send to foreground + CLiwGenericParamList* pl = CLiwGenericParamList::NewL(); + CleanupStack::PushL( pl ); + HandleModelEventL( KAppGainForeground, *pl ); + CleanupStack::PopAndDestroy( pl ); + } + else + { + //send to background + CLiwGenericParamList* pl = CLiwGenericParamList::NewL(); + CleanupStack::PushL( pl ); + HandleModelEventL( KAppGainBackground, *pl ); + CleanupStack::PopAndDestroy( pl ); + } - if( exitHideHostNotFound && iSuiteContainer->GetLastSuiteModel() == suiteModel ) - { - HandleBackEventL( host, 1 ); - } - else - { - //reset to root + if ( exitHideHostNotFound && iSuiteContainer->GetLastSuiteModel() == suiteModel ) + { + HandleBackEventL( host, 1 ); + } + else + { + //reset to root CLiwGenericParamList* params = CLiwGenericParamList::NewLC(); params->AppendL( iMetaDataModel->GetSuiteParameters( 0 ) ); - ResetModelsL(); + ResetModelsL(); InitializeL( *params ); CleanupStack::PopAndDestroy( params ); - } + } - CleanupStack::PopAndDestroy( &host ); - exitActionConsumed = ETrue; - } + CleanupStack::PopAndDestroy( &host ); + exitActionConsumed = ETrue; + } CleanupStack::PopAndDestroy( paramsUri ); CleanupStack::PopAndDestroy( &action ); CleanupStack::PopAndDestroy( uriBuf ); return exitActionConsumed; - } + } // --------------------------------------------------------------------------- // // --------------------------------------------------------------------------- // void CHnEngine::LoadSuitesL( const TDesC8& aUri ) - { - TBool sendToForeground(EFalse); - HBufC8* uriBuf = HBufC8::NewLC( aUri.Length() ); - uriBuf->Des().Copy( aUri ); + { + TBool sendToForeground(EFalse); + HBufC8* uriBuf = HBufC8::NewLC( aUri.Length() ); + uriBuf->Des().Copy( aUri ); - TUriParser8 parser; - parser.Parse( *uriBuf ); - User::LeaveIfError( parser.IsSchemeValid() ? KErrNone : KErrPathNotFound ); + TUriParser8 parser; + parser.Parse( *uriBuf ); + User::LeaveIfError( parser.IsSchemeValid() ? KErrNone : KErrPathNotFound ); - CDesC8ArrayFlat* suiteNameArray = new( ELeave ) CDesC8ArrayFlat( KDefaultGranularity ) ; - CleanupStack::PushL( suiteNameArray ); + CDesC8ArrayFlat* suiteNameArray = new( ELeave ) CDesC8ArrayFlat( KDefaultGranularity ) ; + CleanupStack::PushL( suiteNameArray ); - const TDesC8& host = parser.Extract( EUriHost ); + const TDesC8& host = parser.Extract( EUriHost ); RBuf8 host8; CleanupClosePushL( host8 ); if (host.Compare( KNullDesC8 )) @@ -1212,19 +1181,19 @@ DEBUG8(( "_MM_:\tURI host part: %S", &host8 )); } - const TDesC8& path = parser.Extract( EUriPath ); - if (path.Compare( KNullDesC8 )) - { - HBufC8* path8 = HBufC8::NewLC( path.Length() ); - path8->Des().Copy( path ); - path8->Des().LowerCase(); - ParseSuiteUriPathL( *path8, *suiteNameArray ); - CleanupStack::PopAndDestroy( path8 ); - } + const TDesC8& path = parser.Extract( EUriPath ); + if (path.Compare( KNullDesC8 )) + { + HBufC8* path8 = HBufC8::NewLC( path.Length() ); + path8->Des().Copy( path ); + path8->Des().LowerCase(); + ParseSuiteUriPathL( *path8, *suiteNameArray ); + CleanupStack::PopAndDestroy( path8 ); + } - TBool suiteExists( EFalse ); - iMetaDataModel->IgnoreEvaluations( ETrue ); - iMetaDataModel->QueueForeground( CHnMdModel::EWhenAnySuiteIsEvaluated ); + TBool suiteExists( EFalse ); + iMetaDataModel->IgnoreEvaluations( ETrue ); + iMetaDataModel->QueueForeground( CHnMdModel::EWhenAnySuiteIsEvaluated ); if( host8.Length() == 0 || ( host8.Length() > 0 && !iMetaDataModel->SuiteModelExistsL( host8 ) ) ) @@ -1233,141 +1202,101 @@ suiteNameArray->AppendL( KRoot8 ); } - for( TInt i = 0; i < suiteNameArray->Count(); ++i ) - { - suiteExists = iMetaDataModel->SuiteModelExistsL( - ( *suiteNameArray )[i] ); - TBool nextExists = i < suiteNameArray->Count() - 1 && - iMetaDataModel->SuiteModelExistsL( ( *suiteNameArray )[i + 1] ); - TBool isLast = ( i == ( suiteNameArray->Count() - 1 ) ); + for( TInt i = 0; i < suiteNameArray->Count(); ++i ) + { + suiteExists = iMetaDataModel->SuiteModelExistsL( + ( *suiteNameArray )[i] ); + TBool nextExists = i < suiteNameArray->Count() - 1 && + iMetaDataModel->SuiteModelExistsL( ( *suiteNameArray )[i + 1] ); + TBool isLast = ( i == ( suiteNameArray->Count() - 1 ) ); - TBool turnOnEvaluation = ( suiteExists && ( !nextExists || isLast ) ); - if( turnOnEvaluation || !suiteExists ) - { - iMetaDataModel->IgnoreEvaluations( EFalse ); - } + TBool turnOnEvaluation = ( suiteExists && ( !nextExists || isLast ) ); + if( turnOnEvaluation || !suiteExists ) + { + iMetaDataModel->IgnoreEvaluations( EFalse ); + } - TInt err( KErrNone ); + TInt err( KErrNone ); - // Ignore loading new suite if the last suite in model is the same - // as first one in the uri. - if ( i == 0 ) - { - if ( SuitesAreTheSameL( iMetaDataModel->GetLastSuite()->SuiteName(), (*suiteNameArray)[i] ) ) - { - HandleTheSameSuitesL( nextExists, parser.Extract( EUriQuery ) ); - sendToForeground = ETrue; - continue; - } - } + // Ignore loading new suite if the last suite in model is the same + // as first one in the uri. + if ( i == 0 ) + { + if ( SuitesAreTheSameL( iMetaDataModel->GetLastSuite()->SuiteName(), (*suiteNameArray)[i] ) ) + { + HandleTheSameSuitesL( nextExists, parser.Extract( EUriQuery ) ); + sendToForeground = ETrue; + continue; + } + } - if( suiteExists ) - { - if (!nextExists) - { - // Tricky: queue foreground so that if the suite is evaluated synchronously - // the foreground will be gained. - iMetaDataModel->QueueForeground( CHnMdModel::EWhenAnySuiteIsEvaluated ); - } - err = LoadSuiteFromUriL( - ( *suiteNameArray )[i], parser.Extract( EUriQuery ), parser.Extract( EUriFragment ) ); - if ( KErrNone == err && !nextExists && iMetaDataModel->IsForegroundQueued() ) - { - // Tricky: if foreground is still queued it means that the suite is evaluated - // asynchronously. Override the previos foreground queue setting with one - // that will be effective only if the last loaded suite is evaluated. - iMetaDataModel->QueueForeground( CHnMdModel::EWhenCurrentTopSuiteIsEvaluated ); - } - if ( err != KErrNone ) - { - sendToForeground = ETrue; - } - } + if( suiteExists ) + { + if (!nextExists) + { + // Tricky: queue foreground so that if the suite is evaluated synchronously + // the foreground will be gained. + iMetaDataModel->QueueForeground( CHnMdModel::EWhenAnySuiteIsEvaluated ); + } + err = LoadSuiteFromUriL( + ( *suiteNameArray )[i], parser.Extract( EUriQuery ), parser.Extract( EUriFragment ) ); + if ( KErrNone == err && !nextExists && iMetaDataModel->IsForegroundQueued() ) + { + // Tricky: if foreground is still queued it means that the suite is evaluated + // asynchronously. Override the previos foreground queue setting with one + // that will be effective only if the last loaded suite is evaluated. + iMetaDataModel->QueueForeground( CHnMdModel::EWhenCurrentTopSuiteIsEvaluated ); + } + if ( err != KErrNone ) + { + sendToForeground = ETrue; + } + } - if( !suiteExists || err != KErrNone || !nextExists ) - { - CHnFilter* filter = CHnFilter::NewLC(); + if( !suiteExists || err != KErrNone || !nextExists ) + { + CHnFilter* filter = CHnFilter::NewLC(); - filter->SetSuiteId( - iSuiteContainer->GetLastSuiteModel()->CustomId() ); + filter->SetSuiteId( + iSuiteContainer->GetLastSuiteModel()->CustomId() ); - filter->SetEvaluateSuiteL( ETrue ); - iMetaDataModel->IgnoreEvaluations( EFalse ); + filter->SetEvaluateSuiteL( ETrue ); + iMetaDataModel->IgnoreEvaluations( EFalse ); - TRAPD( err, iMetaDataModel->EvaluateL( *filter ) ); + TRAPD( err, iMetaDataModel->EvaluateL( *filter ) ); - CleanupStack::PopAndDestroy( filter ); - if( err ) - { - iMetaDataModel->DeleteLastSuite(); - iSuiteContainer->PopSuiteModelL( - HnConvUtils::Str8ToStr( ( *suiteNameArray )[i] )->Des() ); - sendToForeground = ETrue; - } - break; - } - } + CleanupStack::PopAndDestroy( filter ); + if( err ) + { + iMetaDataModel->DeleteLastSuite(); + iSuiteContainer->PopSuiteModelL( + HnConvUtils::Str8ToStr( ( *suiteNameArray )[i] )->Des() ); + sendToForeground = ETrue; + } + break; + } + } - // set highlight only when path is valid! - if( suiteExists ) - { - HighlightPlacementFromUriL( parser.Extract( EUriFragment ) ); - } + // set highlight only when path is valid! + if( suiteExists ) + { + HighlightPlacementFromUriL( parser.Extract( EUriFragment ) ); + } CleanupStack::PopAndDestroy( &host8 ); - CleanupStack::PopAndDestroy( suiteNameArray ); - CleanupStack::PopAndDestroy( uriBuf ); - - // send to foreground - if ( sendToForeground ) - { - CLiwGenericParamList* pl = CLiwGenericParamList::NewL(); - CleanupStack::PushL( pl ); - HandleModelEventL( KAppGainForeground, *pl ); - CleanupStack::PopAndDestroy( pl ); - iMetaDataModel->QueueForeground( CHnMdModel::ENever ); - } - - } -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -void CHnEngine::LoadItemFromCrL( const TDesC8& aUri ) - { - HBufC8* uriBuf = HBufC8::NewLC( aUri.Length() ); - uriBuf->Des().Copy( aUri ); - - TUriParser8 parser; - parser.Parse( *uriBuf ); - User::LeaveIfError( parser.IsSchemeValid() ? KErrNone : KErrPathNotFound ); + CleanupStack::PopAndDestroy( suiteNameArray ); + CleanupStack::PopAndDestroy( uriBuf ); - const TDesC8& query = parser.Extract( EUriQuery ); - - if( query.Compare( KNullDesC8 ) ) - { - TBuf8 item; - RPointerArray paramValue = SplitL( query, - HnLogicalRelations::KLogicalEqual8 ); - CleanupResetAndDestroyPushL( paramValue ); - ASSERT( paramValue.Count() == 2 ); +// send to foreground + if ( sendToForeground ) + { + CLiwGenericParamList* pl = CLiwGenericParamList::NewL(); + CleanupStack::PushL( pl ); + HandleModelEventL( KAppGainForeground, *pl ); + CleanupStack::PopAndDestroy( pl ); + iMetaDataModel->QueueForeground( CHnMdModel::ENever ); + } - if( !paramValue[0]->Compare( KId8 ) ) - { - if( paramValue[1]->Length() <= KUidStringLength ) - { - item.Append( *paramValue[1] ); - } - } - CleanupStack::PopAndDestroy( ¶mValue ); - - TBuf item1; - item1.Copy( item ); - CRepository *cenRep = CRepository::NewLC( KCRUidMenu ); - cenRep->Set( KMenuOpenItem, item1 ); - CleanupStack::PopAndDestroy( cenRep ); - } - CleanupStack::PopAndDestroy( uriBuf ); - } + } // End of file diff -r b01126ce0bec -r ba63c83f4716 menufw/hierarchynavigator/hnmetadatamodel/inc/hnglobals.h --- a/menufw/hierarchynavigator/hnmetadatamodel/inc/hnglobals.h Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/hierarchynavigator/hnmetadatamodel/inc/hnglobals.h Wed Oct 13 14:18:30 2010 +0300 @@ -110,12 +110,7 @@ /** * Has not. */ - _LIT8( KLogicalHasNot8, "HASNOT" ); - - /** - * Uid param for uri. - */ - _LIT8( KParamUid8, "&uid=" ); + _LIT8( KLogicalHasNot8, "HASNOT" ); } /** @@ -292,8 +287,7 @@ _LIT( KPrefMm, "mm://" ); _LIT8( KRootWithPref, "mm://root" ); -_LIT8( KSetFocusWithPref, "mm://!setfocus" ); -_LIT8( KOpenItemWithPref, "mm://!openitem" ); +_LIT8( KSetFocusWithPref, "mm://!setfocus" ); _LIT8( KCRepTimeFormat, "%S,%04d%02d%02d:%02d%02d%02d.%06d" ); // images @@ -433,11 +427,11 @@ // info notes for notifying lack of configuration files _LIT( KDebugNoteDirNotFound, - "Directory containing suite configuration not found!" ); + "Directory containing suite configuration not found!" ); _LIT( KDebugNoteFileNotFound, - "File containing suite configuration not found!" ); + "File containing suite configuration not found!" ); _LIT( KDebugNoteOtherError, - "Loading suite configuration returned error: %d" ); + "Loading suite configuration returned error: %d" ); _LIT8( KStar8, "*" ); @@ -514,8 +508,6 @@ const TUint32 KMenuShowFolder = 0x0000000c; -const TUint32 KMenuOpenItem = 0x0000000e; - const TInt KTimeStampBufferLength = 25; const TInt KUidStringLength = 10; @@ -526,9 +518,9 @@ * Order in which drives are searched for suites. */ const TInt KDriveSearchOrder[] = { EDriveY, EDriveX, EDriveW, EDriveV, EDriveU, - EDriveT, EDriveS, EDriveR, EDriveQ, EDriveP, EDriveO, EDriveN, EDriveM, - EDriveL, EDriveK, EDriveJ, EDriveI, EDriveH, EDriveG, EDriveF, EDriveE, - EDriveD, EDriveC, EDriveB, EDriveA, EDriveZ }; + EDriveT, EDriveS, EDriveR, EDriveQ, EDriveP, EDriveO, EDriveN, EDriveM, + EDriveL, EDriveK, EDriveJ, EDriveI, EDriveH, EDriveG, EDriveF, EDriveE, + EDriveD, EDriveC, EDriveB, EDriveA, EDriveZ }; /** * Type of the widget which displays Suite data @@ -570,10 +562,10 @@ * Custom item ids. */ enum TCustomId - { - ECustomIdFirstItem = -2, - ECustomIdLastItem = -3 - }; + { + ECustomIdFirstItem = -2, + ECustomIdLastItem = -3 + }; /** * Suite's exit mode @@ -588,8 +580,8 @@ * Type of change in items number */ enum TItemsChangeType { - EItemsAdded = 0, - EItemsRemoved + EItemsAdded = 0, + EItemsRemoved }; _LIT8( KExitModeParams, "params:exit" ); diff -r b01126ce0bec -r ba63c83f4716 menufw/hierarchynavigator/hnmetadatamodel/inc/hnmdmodel.h --- a/menufw/hierarchynavigator/hnmetadatamodel/inc/hnmdmodel.h Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/hierarchynavigator/hnmetadatamodel/inc/hnmdmodel.h Wed Oct 13 14:18:30 2010 +0300 @@ -544,11 +544,6 @@ */ CHnSuiteModel* iForegroundTriggeringSuite; - /** - * Repository open item change observer. - */ - CHnRepositoryObserver* iRepositoryOpenItemObserver; - }; #endif // C_HNMDMODEL_H diff -r b01126ce0bec -r ba63c83f4716 menufw/hierarchynavigator/hnmetadatamodel/inc/hnrepositoryobserver.h --- a/menufw/hierarchynavigator/hnmetadatamodel/inc/hnrepositoryobserver.h Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/hierarchynavigator/hnmetadatamodel/inc/hnrepositoryobserver.h Wed Oct 13 14:18:30 2010 +0300 @@ -39,7 +39,7 @@ NONSHARABLE_CLASS( CHnRepositoryObserver ): public CBase, public MCenRepNotifyHandlerCallback - { + { public: /** @@ -98,7 +98,7 @@ */ CCenRepNotifyHandler* iNotifyHandler; - }; + }; /** * Widget Type Repository Observer. @@ -110,7 +110,7 @@ * @ingroup group_hnmetadatamodel */ NONSHARABLE_CLASS( CHnRepositoryWidgetTypeObserver ): public CHnRepositoryObserver - { + { public: /** @@ -164,7 +164,7 @@ * @param aCmnPtrs Common pointers. * @since S60 v5.0 */ - CHnRepositoryWidgetTypeObserver( THnMdCommonPointers* aCmnPtrs ); + CHnRepositoryWidgetTypeObserver( THnMdCommonPointers* aCmnPtrs ); private: @@ -173,23 +173,24 @@ * * @since S60 v5.0 */ - void ConstructL( const TUid aRepositoryUid ); + void ConstructL( const TUid aRepositoryUid ); private: - /** - * Array holding ids of widgets being switched. - * It is used to eliminate double refresh for such suites. - */ - RArray iWidgetSwitches; + /** + * Array holding ids of widgets being switched. + * It is used to eliminate double refresh for such suites. + */ + RArray iWidgetSwitches; - }; + }; NONSHARABLE_CLASS( CHnRepositoryShowFolderObserver ): public CHnRepositoryObserver, - public MLiwNotifyCallback - { + public MLiwNotifyCallback, + public MHnSuiteObserver + { public: /** @@ -200,26 +201,26 @@ virtual ~CHnRepositoryShowFolderObserver(); /** - * Factory function. - * - * @param aCmnPtrs Common pointers. - * @return Repository Observer. - * @since S60 v5.0 - */ - static CHnRepositoryShowFolderObserver* NewL( - THnMdCommonPointers* aCmnPtrs, const TUid aRepositoryUid, - const TUint32 aId); + * Factory function. + * + * @param aCmnPtrs Common pointers. + * @return Repository Observer. + * @since S60 v5.0 + */ + static CHnRepositoryShowFolderObserver* NewL( + THnMdCommonPointers* aCmnPtrs, const TUid aRepositoryUid, + const TUint32 aId); - /** - * Factory function. - * - * @param aCmnPtrs Common pointers. - * @return Repository Observer. - * @since S60 v5.0 - */ - static CHnRepositoryShowFolderObserver* NewLC( - THnMdCommonPointers* aCmnPtrs, const TUid aRepositoryUid, - const TUint32 aId); + /** + * Factory function. + * + * @param aCmnPtrs Common pointers. + * @return Repository Observer. + * @since S60 v5.0 + */ + static CHnRepositoryShowFolderObserver* NewLC( + THnMdCommonPointers* aCmnPtrs, const TUid aRepositoryUid, + const TUint32 aId); /** * Change handler method. @@ -249,6 +250,14 @@ CLiwGenericParamList& aEventParamList, const CLiwGenericParamList& aInParamList); + /** + * From MHnSuiteObserver + */ + virtual void HandleSuiteEventL ( THnCustomSuiteEvent aCustomSuiteEvent, + CHnSuiteModel *aModel ); + + + private: /** @@ -257,7 +266,7 @@ * @param aCmnPtrs Common pointers. * @since S60 v5.0 */ - CHnRepositoryShowFolderObserver( THnMdCommonPointers* aCmnPtrs, TUint32 iId ); + CHnRepositoryShowFolderObserver( THnMdCommonPointers* aCmnPtrs, TUint32 iId ); /** * Extracts the folder name from the CR key. @@ -265,14 +274,14 @@ * @param aNewValue The CR key. * @since S60 v5.0 */ - void ExtractCRKeyShowFolderName( const TDesC& aNewValue ); + void ExtractCRKeyShowFolderName( const TDesC& aNewValue ); - /** - * Request get list for parent folder of an application. - * - * @param aFolderId A parent folder id - * @since S60 v5.0 - */ + /** + * Request get list for parent folder of an application. + * + * @param aFolderId A parent folder id + * @since S60 v5.0 + */ void GetShowFolderL( TUint32 aFolderId ); /** @@ -299,21 +308,21 @@ * * @since S60 v5.0 */ - void ConstructL( const TUid aRepositoryUid ); + void ConstructL( const TUid aRepositoryUid ); private: - /** + /** * Folder application group name. */ - TBuf8< KApaMaxAppGroupName > iCRKeyFolderName; + TBuf8 iCRKeyFolderName; /** * Mcs id for an application item in a folder with a given app group name. */ - TBuf8 iCRKeyFolderItemUid; + TBuf8 iCRKeyFolderItemUid; - /** + /** * Own. * Intance of the service handler. */ @@ -323,124 +332,7 @@ * Flag describing the type of notification. */ TInt iNotifyType; - }; - -/** - * Open item Repository Observer. - * - * It is used to inform hierarchy navigator of changes in the suites repository. - * - * @lib hnmetadatamodel - * @since S60 5.0 - * @ingroup group_hnmetadatamodel - */ -NONSHARABLE_CLASS( CHnRepositoryOpenItemObserver ): - public CHnRepositoryObserver, - public MLiwNotifyCallback - { -public: - - /** - * Default C++ Destructor. - * - * @since S60 v5.0 - */ - virtual ~CHnRepositoryOpenItemObserver(); - - /** - * Factory function. - * - * @param aCmnPtrs Common pointers. - * @return Repository Observer. - * @since S60 v5.0 - */ - static CHnRepositoryOpenItemObserver* NewL( - THnMdCommonPointers* aCmnPtrs, const TUid aRepositoryUid, - const TUint32 aId ); - - /** - * Factory function. - * - * @param aCmnPtrs Common pointers. - * @return Repository Observer. - * @since S60 v5.0 - */ - static CHnRepositoryOpenItemObserver* NewLC( - THnMdCommonPointers* aCmnPtrs, const TUid aRepositoryUid, - const TUint32 aId ); - - /** - * Change handler method. - * It is invoked whenever notifier detects a change in the CR. - * - * @param aId Id of the entry in CR. - * @since S60 v5.0 - */ - void HandleNotifyString( TUint32 aId, const TDesC16& aNewValue ); - - /** - * Change handler method. - * It is invoked whenever notifier detects a change in the CR. - * - * @param aId Id of the entry in CR. - * @since S60 v5.0 - */ - void HandleNotifyStringL( TUint32 aId, const TDesC16& aNewValue ); - - /** - * Handles notifications caused by an asynchronous Execute*CmdL call - * or an event. - * - * @param aCmdId The service command associated to the event. - * @param aEventId Occured event, see LiwCommon.hrh. - * @param aEventParamList Event parameters, if any, as defined per - * each event. - * @param aInParamList Input parameters, if any, given in the - * related HandleCommmandL. - * @return Error code for the callback. - */ - virtual TInt HandleNotifyL( - TInt aCmdId, - TInt aEventId, - CLiwGenericParamList& aEventParamList, - const CLiwGenericParamList& aInParamList); - -private: - - /** - * Defautlt C++ Constructor. - * - * @param aCmnPtrs Common pointers. - * @since S60 v5.0 - */ - CHnRepositoryOpenItemObserver( THnMdCommonPointers* aCmnPtrs, TUint32 iId ); - - /** - * Second stage constructor. - * - * @since S60 v5.0 - */ - void ConstructL( const TUid aRepositoryUid ); - -private: - - /** - * Request get list for an folder. - * - * @param aFolderId A parent folder id - * @since S60 v5.0 - */ - void ShowFolderL( const TDesC16& aFolderId ); - -private: - - /** - * Own. - * Intance of the service handler. - */ - CHnServiceHandler* iServiceHandler; - - }; + }; #endif /*HNREPOSITORYOBSERVER_H_*/ diff -r b01126ce0bec -r ba63c83f4716 menufw/hierarchynavigator/hnmetadatamodel/src/hnmdmodel.cpp --- a/menufw/hierarchynavigator/hnmetadatamodel/src/hnmdmodel.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/hierarchynavigator/hnmetadatamodel/src/hnmdmodel.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -64,7 +64,6 @@ iMode = EMdModeNormal; iRepositoryWidgetTypeObserver = CHnRepositoryWidgetTypeObserver::NewL( &iCmnPtrs, KMatrixRepositoryUid ); iRepositoryShowFolderObserver = CHnRepositoryShowFolderObserver::NewL( &iCmnPtrs, KCRUidMenu, KMenuShowFolder ); - iRepositoryOpenItemObserver = CHnRepositoryOpenItemObserver::NewL( &iCmnPtrs, KCRUidMenu, KMenuOpenItem ); MMPERF(("CHnMetaDataModel::ConstructL - rep. observer ready")); } @@ -112,7 +111,6 @@ { delete iRepositoryWidgetTypeObserver; delete iRepositoryShowFolderObserver; - delete iRepositoryOpenItemObserver; iLoadedSuites.ResetAndDestroy(); delete iXmlModelProvider; delete iLocalization; @@ -249,9 +247,9 @@ // --------------------------------------------------------------------------- // EXPORT_C TBool CHnMdModel::IsForegroundQueued() const - { - return iForegroundQueued; - } + { + return iForegroundQueued; + } // --------------------------------------------------------------------------- // @@ -266,13 +264,13 @@ if ( IsForegroundQueued() && ( !iForegroundTriggeringSuite || iForegroundTriggeringSuite == aJustEvaluatedSuite ) ) - { - CLiwGenericParamList* pl = CLiwGenericParamList::NewL(); - CleanupStack::PushL( pl ); - iCmnPtrs.iModelEventObserver->HandleModelEventL( KAppGainForeground, *pl ); - CleanupStack::PopAndDestroy( pl ); - QueueForeground( ENever ); - } + { + CLiwGenericParamList* pl = CLiwGenericParamList::NewL(); + CleanupStack::PushL( pl ); + iCmnPtrs.iModelEventObserver->HandleModelEventL( KAppGainForeground, *pl ); + CleanupStack::PopAndDestroy( pl ); + QueueForeground( ENever ); + } } // --------------------------------------------------------------------------- @@ -318,11 +316,11 @@ { TInt err( KErrNone ); - RXmlEngDocument xmlDoc; - // Xml model provider takes ownership of xmlDoc. - TRAP( err, iXmlModelProvider->GetModelL( aGenre, xmlDoc ) ); + RXmlEngDocument xmlDoc; + // Xml model provider takes ownership of xmlDoc. + TRAP( err, iXmlModelProvider->GetModelL( aGenre, xmlDoc ) ); - TXmlEngElement element; + TXmlEngElement element; if ( !err ) { element = xmlDoc.DocumentElement().AsElement(); @@ -344,10 +342,10 @@ TInt pos( 0 ); newSuite->GetSuiteParameters().FindFirst( pos, KSuiteName8); if ( pos == KErrNotFound ) - { - newSuite->GetSuiteParameters().AppendL( - TLiwGenericParam(KSuiteName8, TLiwVariant( aGenre ) ) ); - } + { + newSuite->GetSuiteParameters().AppendL( + TLiwGenericParam(KSuiteName8, TLiwVariant( aGenre ) ) ); + } iCmnPtrs.iContainer->PushNewSuiteModelL( newSuite->SuiteName() ); iCmnPtrs.iContainer->GetLastSuiteModel()->GetItemsOrder()-> @@ -357,9 +355,9 @@ iLoadedSuites.AppendL( newSuite ); } else - { - MMPERF(("CHnMdModel::LoadSuiteL - Error TRAPPED!")); - } + { + MMPERF(("CHnMdModel::LoadSuiteL - Error TRAPPED!")); + } return err; } @@ -397,8 +395,8 @@ // --------------------------------------------------------------------------- // TInt CHnMdModel::LoadedSuitesCount() - { - return iLoadedSuites.Count(); - } + { + return iLoadedSuites.Count(); + } diff -r b01126ce0bec -r ba63c83f4716 menufw/hierarchynavigator/hnmetadatamodel/src/hnrepositoryobserver.cpp --- a/menufw/hierarchynavigator/hnmetadatamodel/src/hnrepositoryobserver.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/hierarchynavigator/hnmetadatamodel/src/hnrepositoryobserver.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -227,8 +227,9 @@ { CHnRepositoryObserver::ConstructL( aRepositoryUid ); TInt ret = iRepository->Create( iId, KBlank ); - iNotifyHandler = CCenRepNotifyHandler::NewL( *this, *iRepository, - CCenRepNotifyHandler::EStringKey, iId ); + iNotifyHandler = CCenRepNotifyHandler::NewL( + *this, *iRepository, + CCenRepNotifyHandler::EStringKey, iId ); iNotifyHandler->StartListeningL(); } @@ -272,128 +273,129 @@ //++Show Folder if( aId == iId && aNewValue.Length()) - { + { iNotifyType = 0; - ExtractCRKeyShowFolderName( aNewValue ); + ExtractCRKeyShowFolderName( aNewValue ); - // iCRKeyFolderItemUid can contain mcs id or uid - // in case of uid it will be replaced whith id in HandleNotifyL callback - if( iCRKeyFolderItemUid.Length()>0 ) + // iCRKeyFolderItemUid can contain mcs id or uid + // in case of uid it will be replaced whith id in HandleNotifyL callback + if( iCRKeyFolderItemUid.Length()>0 ) + { + if( iCRKeyFolderItemUid.FindF( KHexPrefix8 )==0 ) + { + iNotifyType |= EAPP_UID; + } + else + { + iNotifyType |= EAPP_ID; + } + } + + CHnMdBaseKey* inDataKey = HnMdKeyFactory::CreateL( + KInData8, KKeyTypeMap, KDefaultParentId8 ); + CleanupStack::PushL( inDataKey ); + + CHnMdBaseKey* filter( NULL ); + HBufC8* id( NULL ); + if ( iCRKeyFolderName.Length()>0 && !( iNotifyType & EAPP_UID ) ) { - if( iCRKeyFolderItemUid.FindF( KHexPrefix8 )==0 ) - { - iNotifyType |= EAPP_UID; - } - else - { - iNotifyType |= EAPP_ID; - } + // app group name is known + // id is optional + id = HnConvUtils::NumToStr8LC( KRootId ); + inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KType8, KKeyTypeString, KMenuFolder8 ) ); + inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KIdParam, KKeyTypeInteger, *id ) ); + inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KRecursiveSearch8, KKeyTypeBoolean, KStringTrue8 ) ); + inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KFlatResult8, KKeyTypeBoolean, KStringTrue8 ) ); + + filter = HnMdKeyFactory::CreateL( + KFilter8, KKeyTypeMap, KStringTrue8 ); + CleanupStack::PushL( filter ); + filter->AddSubKeyL( HnMdKeyFactory::CreateL( KMcsAppGroupName8, KKeyTypeString, iCRKeyFolderName ) ); + filter->AddSubKeyL( HnMdKeyFactory::CreateL( KType8, KKeyTypeString, KMenuFolder8 ) ); + filter->AddSubKeyL( HnMdKeyFactory::CreateL( KHidden8, KKeyTypeBoolean, KStringFalse8 ) ); + } + else if( iNotifyType & EAPP_ID ) + { + // no app group name, id is known + inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KType8, KKeyTypeString, KMenuApplication8 ) ); + inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KIdParam, KKeyTypeInteger, iCRKeyFolderItemUid ) ); + inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KParentOnly8, KKeyTypeBoolean, KStringTrue8 ) ); + } + else if( iNotifyType & EAPP_UID ) + { + // uid is known + // app group name is optional + id = HnConvUtils::NumToStr8LC( KRootId ); + inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KType8, KKeyTypeString, KMenuFolder8 ) ); + inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KIdParam, KKeyTypeInteger, *id ) ); + inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KRecursiveSearch8, KKeyTypeBoolean, KStringTrue8 ) ); + inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KFlatResult8, KKeyTypeBoolean, KStringTrue8 ) ); + + filter = HnMdKeyFactory::CreateL( + KFilter8, KKeyTypeMap, KStringTrue8 ); + CleanupStack::PushL( filter ); + filter->AddSubKeyL( HnMdKeyFactory::CreateL( KUid8, KKeyTypeInteger, iCRKeyFolderItemUid ) ); + filter->AddSubKeyL( HnMdKeyFactory::CreateL( KType8, KKeyTypeString, KMenuApplication8 ) ); + filter->AddSubKeyL( HnMdKeyFactory::CreateL( KHidden8, KKeyTypeBoolean, KStringFalse8 ) ); + } + else + { + // No app group name, no uid. Search for root. + id = HnConvUtils::NumToStr8LC( KRootId ); + inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KType8, KKeyTypeString, KMenuFolder8 ) ); + inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KIdParam, KKeyTypeInteger, *id ) ); + inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KParentOnly8, KKeyTypeBoolean, KStringTrue8 ) ); } - CHnMdBaseKey* inDataKey = HnMdKeyFactory::CreateL( - KInData8, KKeyTypeMap, KDefaultParentId8 ); - CleanupStack::PushL( inDataKey ); - - CHnMdBaseKey* filter( NULL ); - HBufC8* id( NULL ); - if ( iCRKeyFolderName.Length()>0 && !( iNotifyType & EAPP_UID ) ) - { - // app group name is known - // id is optional - id = HnConvUtils::NumToStr8LC( KRootId ); - inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KType8, KKeyTypeString, KMenuFolder8 ) ); - inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KIdParam, KKeyTypeInteger, *id ) ); - inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KRecursiveSearch8, KKeyTypeBoolean, KStringTrue8 ) ); - inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KFlatResult8, KKeyTypeBoolean, KStringTrue8 ) ); + RPointerArray< CHnMdBaseKey > data; + CleanupClosePushL( data ); + data.AppendL( inDataKey ); + if ( filter ) + { + data.AppendL( filter ); + } - filter = HnMdKeyFactory::CreateL( - KFilter8, KKeyTypeMap, KStringTrue8 ); - CleanupStack::PushL( filter ); - filter->AddSubKeyL( HnMdKeyFactory::CreateL( KMcsAppGroupName8, KKeyTypeString, iCRKeyFolderName ) ); - filter->AddSubKeyL( HnMdKeyFactory::CreateL( KType8, KKeyTypeString, KMenuFolder8 ) ); - filter->AddSubKeyL( HnMdKeyFactory::CreateL( KHidden8, KKeyTypeBoolean, KStringFalse8 ) ); - } - else if( iNotifyType & EAPP_ID ) - { - // no app group name, id is known - inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KType8, KKeyTypeString, KMenuApplication8 ) ); - inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KIdParam, KKeyTypeInteger, iCRKeyFolderItemUid ) ); - inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KParentOnly8, KKeyTypeBoolean, KStringTrue8 ) ); - } - else if( iNotifyType & EAPP_UID ) - { - // uid is known - // app group name is optional - id = HnConvUtils::NumToStr8LC( KRootId ); - inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KType8, KKeyTypeString, KMenuFolder8 ) ); - inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KIdParam, KKeyTypeInteger, *id ) ); - inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KRecursiveSearch8, KKeyTypeBoolean, KStringTrue8 ) ); - inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KFlatResult8, KKeyTypeBoolean, KStringTrue8 ) ); + CHnMdBaseKey* serviceData = HnMdKeyFactory::CreateL( + KServiceContentName, KKeyTypeString, KMatrixMenuData ); + CleanupStack::PushL( serviceData ); + + RPointerArray< CHnMdBaseKey> constructor; + CleanupClosePushL( constructor ); + constructor.AppendL( serviceData ); + CLiwGenericParamList* constructorLiw = CLiwGenericParamList::NewLC(); + CLiwGenericParamList* commandLiw = CLiwGenericParamList::NewLC(); + HnLiwUtils::SetGenericParamListL( constructor, *constructorLiw ); + HnLiwUtils::SetGenericParamListL( data, *commandLiw ); + + TBuf8< KMaxLength > interface( KMCSDataSourceInterface8 ); - filter = HnMdKeyFactory::CreateL( - KFilter8, KKeyTypeMap, KStringTrue8 ); - CleanupStack::PushL( filter ); - filter->AddSubKeyL( HnMdKeyFactory::CreateL( KUid8, KKeyTypeInteger, iCRKeyFolderItemUid ) ); - filter->AddSubKeyL( HnMdKeyFactory::CreateL( KType8, KKeyTypeString, KMenuApplication8 ) ); - filter->AddSubKeyL( HnMdKeyFactory::CreateL( KHidden8, KKeyTypeBoolean, KStringFalse8 ) ); - } - else - { - // No app group name, no uid. Search for root. - id = HnConvUtils::NumToStr8LC( KRootId ); - inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KType8, KKeyTypeString, KMenuFolder8 ) ); - inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KIdParam, KKeyTypeInteger, *id ) ); - inDataKey->AddSubKeyL( HnMdKeyFactory::CreateL( KParentOnly8, KKeyTypeBoolean, KStringTrue8 ) ); - } + delete iServiceHandler; + iServiceHandler = NULL; + iServiceHandler = CHnServiceHandler::NewL( + KMCSService8, interface, KCmdGetList8, + EServiceModeAsynchronous, constructorLiw, commandLiw ); - RPointerArray< CHnMdBaseKey > data; - CleanupClosePushL( data ); - data.AppendL( inDataKey ); - if ( filter ) - { - data.AppendL( filter ); - } + CleanupStack::Pop( commandLiw ); + CleanupStack::Pop( constructorLiw ); - CHnMdBaseKey* serviceData = HnMdKeyFactory::CreateL( - KServiceContentName, KKeyTypeString, KMatrixMenuData ); - CleanupStack::PushL( serviceData ); + iServiceHandler->ExecuteL( this ); - RPointerArray< CHnMdBaseKey> constructor; - CleanupClosePushL( constructor ); - constructor.AppendL( serviceData ); - CLiwGenericParamList* constructorLiw = CLiwGenericParamList::NewLC(); - CLiwGenericParamList* commandLiw = CLiwGenericParamList::NewLC(); - HnLiwUtils::SetGenericParamListL( constructor, *constructorLiw ); - HnLiwUtils::SetGenericParamListL( data, *commandLiw ); - - TBuf8< KMaxLength > interface( KMCSDataSourceInterface8 ); - - delete iServiceHandler; - iServiceHandler = NULL; - iServiceHandler = CHnServiceHandler::NewL( - KMCSService8, interface, KCmdGetList8, - EServiceModeAsynchronous, constructorLiw, commandLiw ); - - CleanupStack::Pop( commandLiw ); - CleanupStack::Pop( constructorLiw ); - - iServiceHandler->ExecuteL( this ); - - CleanupStack::PopAndDestroy( &constructor ); - CleanupStack::PopAndDestroy( serviceData ); - CleanupStack::PopAndDestroy( &data ); - if( filter ) - { - CleanupStack::PopAndDestroy( filter ); - } - if( id ) - { - CleanupStack::PopAndDestroy( id ); - } - CleanupStack::PopAndDestroy( inDataKey ); - } + CleanupStack::PopAndDestroy( &constructor ); + CleanupStack::PopAndDestroy( serviceData ); + CleanupStack::PopAndDestroy( &data ); + if( filter ) + { + CleanupStack::PopAndDestroy( filter ); + } + if( id ) + { + CleanupStack::PopAndDestroy( id ); + } + CleanupStack::PopAndDestroy( inDataKey ); + } DEBUG(("_MM_:CHnRepositoryShowFolderObserver::HandleNotifyStringL OUT")); + } // --------------------------------------------------------------------------- @@ -401,91 +403,91 @@ // --------------------------------------------------------------------------- // void CHnRepositoryShowFolderObserver::ExtractCRKeyShowFolderName( const TDesC& aNewValue ) - { - DEBUG(( "_MM_:CHnRepositoryShowFolderObserver::ExtractCRKeyShowFolderName IN" )); - iCRKeyFolderName.Copy( KBlank ); - iCRKeyFolderItemUid.Copy( KBlank ); + { + DEBUG(( "_MM_:CHnRepositoryShowFolderObserver::ExtractCRKeyShowFolderName IN" )); + iCRKeyFolderName.Copy( KBlank ); + iCRKeyFolderItemUid.Copy( KBlank ); - int keyValueLength = aNewValue.Length(); - if( keyValueLength ) - { - TApaAppGroupName folder; - TBuf tempBuf; - TBuf timeStamp; + int keyValueLength = aNewValue.Length(); + if( keyValueLength ) + { + TApaAppGroupName folder; + TBuf tempBuf; + TBuf timeStamp; - TInt ret = aNewValue.Find( KComma ); - if( ( ret == KErrNotFound ) || ( ret == ( keyValueLength - 1 ) ) ) - { - DEBUG(( "_MM_:CHnRepositoryShowFolderObserver::ExtractCRKeyShowFolderName (bad CR key value input) OUT" )); - return; //bad CR key value input - } - if( ret > KApaMaxAppGroupName ) - { - return; - } - folder.Copy( aNewValue.Left( ret ) ); - if( aNewValue.Length() - ret > tempBuf.MaxLength() ) - { - return; - } - tempBuf.Copy( aNewValue.Mid( ret + 1 ) ); + TInt ret = aNewValue.Find( KComma ); + if( (ret == KErrNotFound )|| ( ret == ( keyValueLength-1 ) ) ) + { + DEBUG(( "_MM_:CHnRepositoryShowFolderObserver::ExtractCRKeyShowFolderName (bad CR key value input) OUT" )); + return; //bad CR key value input + } + if( ret>KApaMaxAppGroupName ) + { + return; + } + folder.Copy(aNewValue.Left(ret)); + if( aNewValue.Length()-ret > tempBuf.MaxLength() ) + { + return; + } + tempBuf.Copy(aNewValue.Mid( ret + 1 ) ); - TInt posUid = tempBuf.Find( KComma ); - if( KErrNotFound != posUid ) - { - if( posUid > KTimeStampBufferLength ) - { - return; - } - timeStamp.Copy( tempBuf.Left( posUid ) ); - if( tempBuf.Length() - ( posUid + 1 ) > KUidStringLength ) - { - return; - } - iCRKeyFolderItemUid.Copy( tempBuf.Mid( posUid + 1 ) ); - } - else - { - if( tempBuf.Length() > KTimeStampBufferLength ) - { - return; - } - timeStamp.Copy( tempBuf ); - } + TInt posUid = tempBuf.Find( KComma ); + if ( KErrNotFound != posUid ) + { + if( posUid>KTimeStampBufferLength ) + { + return; + } + timeStamp.Copy( tempBuf.Left(posUid) ); + if( tempBuf.Length()-(posUid+1) > KUidStringLength ) + { + return; + } + iCRKeyFolderItemUid.Copy( tempBuf.Mid( posUid + 1 ) ); + } + else + { + if( tempBuf.Length()>KTimeStampBufferLength ) + { + return; + } + timeStamp.Copy( tempBuf ); + } - TTime currentTime; - currentTime.HomeTime(); - TTimeIntervalSeconds interval; + TTime currentTime; + currentTime.HomeTime(); + TTimeIntervalSeconds interval; - TTime timeStampTime; - ret = timeStampTime.Set( timeStamp ); + TTime timeStampTime; + ret = timeStampTime.Set(timeStamp); - if( ret == KErrGeneral ) - { - DEBUG(( "_MM_:CHnRepositoryShowFolderObserver::ExtractCRKeyShowFolderName (bad timestamp) OUT" )); - return; // bad time stamp value - } + if(ret == KErrGeneral ) + { + DEBUG(( "_MM_:CHnRepositoryShowFolderObserver::ExtractCRKeyShowFolderName (bad timestamp) OUT" )); + return; // bad time stamp value + } - ret = currentTime.SecondsFrom( timeStampTime, interval ); + ret = currentTime.SecondsFrom( timeStampTime, interval ); - if( interval.Int() < 0 ) - {//negative timestamp is set ahead of current time...! - DEBUG(( "_MM_:CHnRepositoryShowFolderObserver::ExtractCRKeyShowFolderName (negative interval) OUT" )); - return; - } + if( interval.Int() < 0 ) + {//negative timestamp is set ahead of current time...! + DEBUG(( "_MM_:CHnRepositoryShowFolderObserver::ExtractCRKeyShowFolderName (negative interval) OUT" )); + return; + } - if( ( interval.Int() ) > KTimeStampCutOff ) - {//positive timestamp but more than 5 seconds - DEBUG(( "_MM_:CHnRepositoryShowFolderObserver::ExtractCRKeyShowFolderName (more than 5 seconds) OUT" )); - return; - } - else - { - iCRKeyFolderName.Copy( folder ); - } - } - DEBUG(( "_MM_:CHnRepositoryShowFolderObserver::ExtractCRKeyShowFolderName OUT" )); - } + if(( interval.Int()) > KTimeStampCutOff ) + {//positive timestamp but more than 5 seconds + DEBUG(( "_MM_:CHnRepositoryShowFolderObserver::ExtractCRKeyShowFolderName (more than 5 seconds) OUT" )); + return; + } + else + { + iCRKeyFolderName.Copy(folder); + } + } + DEBUG(( "_MM_:CHnRepositoryShowFolderObserver::ExtractCRKeyShowFolderName OUT" )); + } // --------------------------------------------------------------------------- // @@ -545,6 +547,7 @@ // void CHnRepositoryShowFolderObserver::GetShowFolderGroupNameL() { + CHnMdBaseKey* inDataKey = HnMdKeyFactory::CreateL( KInData8, KKeyTypeMap, KDefaultParentId8 ); CleanupStack::PushL( inDataKey ); @@ -608,13 +611,13 @@ // --------------------------------------------------------------------------- // TInt CHnRepositoryShowFolderObserver::HandleNotifyL( - TInt /*aCmdId*/, - TInt aEventId, - CLiwGenericParamList& aEventParamList, - const CLiwGenericParamList& /*aInParamList*/) - { - DEBUG(("_MM_:CHnRepositoryShowFolderObserver::HandleNotifyL IN")); - if( aEventId == KLiwEventCanceled ) + TInt /*aCmdId*/, + TInt aEventId, + CLiwGenericParamList& aEventParamList, + const CLiwGenericParamList& /*aInParamList*/) + { + DEBUG(("_MM_:CHnRepositoryShowFolderObserver::HandleNotifyL IN")); + if( aEventId == KLiwEventCanceled ) { return KErrNotFound; } @@ -729,6 +732,7 @@ if ( iCmnPtrs->iContainer->GetLastSuiteModel()->CustomId() != varId.AsTInt64() ) { iCmnPtrs->iModelEventObserver->HandleModelEventL( KNewSuiteLoadedMdEvent, *paramList ); + iCmnPtrs->iContainer->GetLastSuiteModel()->RegisterSuiteObserverL( this ); iCmnPtrs->iModel->QueueForeground( CHnMdModel::EWhenCurrentTopSuiteIsEvaluated ); } else @@ -765,252 +769,37 @@ CleanupStack::PopAndDestroy( &varId ); } - DEBUG(("_MM_:CHnRepositoryShowFolderObserver::HandleNotifyL OUT")); - return KErrNone; - } - -// class CHnRepositoryOpenItemObserver -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -CHnRepositoryOpenItemObserver * CHnRepositoryOpenItemObserver::NewL( - THnMdCommonPointers* aCmnPtrs, const TUid aRepositoryUid, const TUint32 aId ) - { - CHnRepositoryOpenItemObserver * self = CHnRepositoryOpenItemObserver::NewLC( - aCmnPtrs, aRepositoryUid, aId ); - CleanupStack::Pop(self); - return self; - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -CHnRepositoryOpenItemObserver * CHnRepositoryOpenItemObserver::NewLC( - THnMdCommonPointers* aCmnPtrs, const TUid aRepositoryUid, const TUint32 aId ) - { - CHnRepositoryOpenItemObserver * self = new (ELeave) CHnRepositoryOpenItemObserver( - aCmnPtrs, aId ); - CleanupStack::PushL(self); - self->ConstructL( aRepositoryUid ); - return self; - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -void CHnRepositoryOpenItemObserver::ConstructL( const TUid aRepositoryUid ) - { - CHnRepositoryObserver::ConstructL( aRepositoryUid ); - TInt ret = iRepository->Create( iId, KBlank ); - iNotifyHandler = CCenRepNotifyHandler::NewL( *this, *iRepository, - CCenRepNotifyHandler::EStringKey, iId ); - iNotifyHandler->StartListeningL(); - } - - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -CHnRepositoryOpenItemObserver::CHnRepositoryOpenItemObserver( - THnMdCommonPointers* aCmnPtrs, TUint32 aId ) : - CHnRepositoryObserver( aCmnPtrs, aId ) - { - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -CHnRepositoryOpenItemObserver::~CHnRepositoryOpenItemObserver() - { - iRepository->Delete( iId ); - delete iServiceHandler; - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -void CHnRepositoryOpenItemObserver::HandleNotifyString( - TUint32 aId, const TDesC16& aNewValue ) - { - TRAP_IGNORE( HandleNotifyStringL( aId, aNewValue ) ); - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -void CHnRepositoryOpenItemObserver::HandleNotifyStringL( - TUint32 aId, const TDesC16& aNewValue ) - { - DEBUG(("_MM_:CHnRepositoryOpenItemObserver::HandleNotifyStringL IN")); - DEBUG(("\tID: %d : %S", aId, &aNewValue)); - - // Open item - if( aId == iId && aNewValue.Length()) - { - ShowFolderL( aNewValue ); - } - } + DEBUG(("_MM_:CHnRepositoryShowFolderObserver::HandleNotifyL OUT")); + return KErrNone; + } // --------------------------------------------------------------------------- // // --------------------------------------------------------------------------- // -TInt CHnRepositoryOpenItemObserver::HandleNotifyL( - TInt /*aCmdId*/, - TInt aEventId, - CLiwGenericParamList& aEventParamList, - const CLiwGenericParamList& /*aInParamList*/) - { - DEBUG(("_MM_:CHnRepositoryOpenItemObserver::HandleNotifyL IN")); - if( aEventId == KLiwEventCanceled ) - { - return KErrNotFound; - } - else - { - TInt pos( 0 ); - const TLiwGenericParam* first = aEventParamList.FindFirst( - pos, KReturnValue8() ); - if( pos == KErrNotFound ) - { - return KErrNotFound; - } - - TInt count = first->Value().AsList()->Count(); - if( count == 0 ) - { - return KErrNotFound; - } - - TLiwVariant varId; - varId.PushL(); - TLiwVariant varAppGroupName; - varAppGroupName.PushL(); - TLiwVariant varSuiteName; - varSuiteName.PushL(); - TLiwVariant varChildrenCount; - varChildrenCount.PushL(); +void CHnRepositoryShowFolderObserver::HandleSuiteEventL ( THnCustomSuiteEvent aCustomSuiteEvent, + CHnSuiteModel *aModel ) + { - HnLiwUtils::GetVariantL( aEventParamList, KIdPath8, 0, varId ); - HnLiwUtils::GetVariantL( aEventParamList, KAppGroupNamePath8, 0, varAppGroupName ); - HnLiwUtils::GetVariantL( aEventParamList, KTitleNamePath8, 0, varSuiteName ); - HnLiwUtils::GetVariantL( aEventParamList, KChildrenCountPath8, 0, varChildrenCount ); - - CLiwGenericParamList* paramList = CLiwGenericParamList::NewL(); - CleanupStack::PushL( paramList ); - - CLiwDefaultMap* map = CLiwDefaultMap::NewLC(); - - paramList->AppendL( TLiwGenericParam( KSuiteName8, TLiwVariant( - KFolderSuite ) ) ); - - map->InsertL( KSuiteName8, varSuiteName ); - map->InsertL( KFolderId8, varId ); - map->InsertL( KRemoveLocked8, TLiwVariant( KStringFalse8 ) ); - map->InsertL( KParentFolderId8, varId ); - map->InsertL( KTmpParentFolderId8, varId ); - map->InsertL( KMcsAppGroupName8, varAppGroupName ); - - paramList->AppendL( TLiwGenericParam( KParams8, TLiwVariant( map ) ) ); - - CleanupStack::PopAndDestroy( map ); - - while( iCmnPtrs->iModel->LoadedSuitesCount() > 1 ) + if ( aCustomSuiteEvent == ESuiteModelInitialized && iCRKeyFolderItemUid.Length() > 0 ) + { + if (iCRKeyFolderItemUid.Length() > 0 ) { - CHnMdSuite* suite = iCmnPtrs->iModel->GetLastSuite(); - iCmnPtrs->iContainer->PopSuiteModelL( suite->SuiteName() ); - iCmnPtrs->iModel->DeleteLastSuite(); - } - - if( iCmnPtrs->iContainer->GetLastSuiteModel()->CustomId() - != varId.AsTInt64() ) - { - iCmnPtrs->iModelEventObserver->HandleModelEventL( - KNewSuiteLoadedMdEvent, *paramList ); - iCmnPtrs->iModel->QueueForeground( - CHnMdModel::EWhenCurrentTopSuiteIsEvaluated ); + TLex8 lex( iCRKeyFolderItemUid ); + TInt64 id (0); + TInt err = lex.Val( id ); + TInt focus( KErrNotFound ); + // If suite is not null, then find matching item model. + CHnItemModel* itemModel = aModel->GetMatchingItemModelL( id, focus ); + aModel->SetSuiteHighlightL( focus ); } - else - { - iCmnPtrs->iContainer->GetLastSuiteModel()->NotifyObserversL( - ESuiteModelInitialized ); - CLiwGenericParamList* paramList = CLiwGenericParamList::NewL(); - CleanupStack::PushL( paramList ); - iCmnPtrs->iModelEventObserver->HandleModelEventL( - KAppGainForeground, *paramList ); - CleanupStack::PopAndDestroy( paramList ); - } - - iRepository->Set( iId, KBlank ); // reset key repository to empty string - - CleanupStack::PopAndDestroy( paramList ); - CleanupStack::PopAndDestroy( &varChildrenCount ); - CleanupStack::PopAndDestroy( &varSuiteName ); - CleanupStack::PopAndDestroy( &varAppGroupName ); - CleanupStack::PopAndDestroy( &varId ); - } - - DEBUG(("_MM_:CHnRepositoryOpenItemObserver::HandleNotifyL OUT")); - return KErrNone; - } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -void CHnRepositoryOpenItemObserver::ShowFolderL( const TDesC16& aFolderId ) - { - CHnMdBaseKey* inDataKey = HnMdKeyFactory::CreateL( - KInData8, KKeyTypeMap, KDefaultParentId8 ); - CleanupStack::PushL( inDataKey ); - inDataKey->AddSubKeyL( - HnMdKeyFactory::CreateL( KType8, KKeyTypeString, KMenuFolder8 ) ); - inDataKey->AddSubKeyL( - HnMdKeyFactory::CreateL( KIdParam, KKeyTypeInteger, aFolderId ) ); - inDataKey->AddSubKeyL( - HnMdKeyFactory::CreateL( KParentOnly8, KKeyTypeBoolean, KStringTrue8 ) ); - - RPointerArray< CHnMdBaseKey > data; - CleanupClosePushL( data ); - data.Append( inDataKey ); - - CHnMdBaseKey* serviceData = HnMdKeyFactory::CreateL( - KServiceContentName, KKeyTypeString, KMatrixMenuData ); - CleanupStack::PushL( serviceData ); - - RPointerArray< CHnMdBaseKey> constructor; - CleanupClosePushL( constructor ); - constructor.Append( serviceData ); - CLiwGenericParamList* constructorLiw = CLiwGenericParamList::NewLC(); - CLiwGenericParamList* commandLiw = CLiwGenericParamList::NewLC(); - HnLiwUtils::SetGenericParamListL( constructor, *constructorLiw ); - HnLiwUtils::SetGenericParamListL( data, *commandLiw ); - - TBuf8< KMaxLength > interface( KMCSDataSourceInterface8 ); - - delete iServiceHandler; - iServiceHandler = NULL; - iServiceHandler = CHnServiceHandler::NewL( - KMCSService8, interface, KCmdGetList8, - EServiceModeAsynchronous, constructorLiw, commandLiw ); - - CleanupStack::Pop( commandLiw ); - CleanupStack::Pop( constructorLiw ); - - iServiceHandler->ExecuteL( this ); - - CleanupStack::PopAndDestroy( &constructor ); - CleanupStack::PopAndDestroy( serviceData ); - CleanupStack::PopAndDestroy( &data ); - CleanupStack::PopAndDestroy( inDataKey ); - - } + iCRKeyFolderItemUid.Copy( KBlank ); + aModel->UnregisterSuiteObserver( this ); + CLiwGenericParamList* pl = CLiwGenericParamList::NewL(); + CleanupStack::PushL( pl ); + iCmnPtrs->iModelEventObserver->HandleModelEventL( KAppGainForeground, *pl ); + CleanupStack::PopAndDestroy( pl ); + } + } // End of File diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/matrixmenu/help/data/xhtml.zip Binary file menufw/menufwui/matrixmenu/help/data/xhtml.zip has changed diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/matrixmenu/inc/mmappui.h --- a/menufw/menufwui/matrixmenu/inc/mmappui.h Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/matrixmenu/inc/mmappui.h Wed Oct 13 14:18:30 2010 +0300 @@ -12,7 +12,7 @@ * Contributors: * * Description: Application UI class -* Version : %version: MM_83.1.2.1.23.1.24 % << Don't touch! Updated by Synergy at check-out. +* Version : %version: MM_83.1.2.1.23.1.21 % << Don't touch! Updated by Synergy at check-out. * */ @@ -372,8 +372,7 @@ enum TExitKeyType { EExitKeyApplication, - EExitKeyRed, - ECommingFromBackground + EExitKeyRed }; /** @@ -1012,10 +1011,10 @@ */ TBool iHasFocus; - /** + /** * ETrue if Matrix is hidden from TS which is used on startup. */ - TBool isHiddenFromFS; + TBool isHiddenFromFS; /** * Own. diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/matrixmenu/src/mmappui.cpp --- a/menufw/menufwui/matrixmenu/src/mmappui.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/matrixmenu/src/mmappui.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -12,8 +12,8 @@ * Contributors: * * Description: Application UI class -* Version : %version: MM_176.1.28.1.87 % << Don't touch! Updated by Synergy at check-out. -* Version : %version: MM_176.1.28.1.87 % << Don't touch! Updated by Synergy at check-out. +* Version : %version: MM_176.1.28.1.83 % << Don't touch! Updated by Synergy at check-out. +* Version : %version: MM_176.1.28.1.83 % << Don't touch! Updated by Synergy at check-out. * */ @@ -106,8 +106,8 @@ iIsKastorEffectStarted = EFalse; StartLayoutSwitchFullScreen( AknTransEffect::EApplicationStart ); + RefreshUiPanesL( ETrue ); Cba()->MakeVisible( EFalse ); - StatusPane()->MakeVisible( EFalse ); StatusPane()->SwitchLayoutL( R_AVKON_STATUS_PANE_LAYOUT_USUAL ); iDummyTemplateLib = CMmTemplateLibrary::NewL(); @@ -340,7 +340,7 @@ iCurrentContainer->MakeVisible( EFalse ); iDummyContainer->DrawNow(); } - CleanupForExitL( ECommingFromBackground ); + CleanupForExitL( EExitKeyApplication ); User::LeaveIfError( iCoeEnv->WsSession().SetWindowGroupOrdinalPosition( CEikonEnv::Static()->RootWin().Identifier(), 0 ) ); iAppkeyHandler->StartL(); @@ -494,6 +494,11 @@ MMPERF(("CMmAppUi::HandleBackCommandL - START")); DEBUG16(("\t_Mm_:current genre: %S",&iCurrentSuiteModel->SuiteName())); + iDummyContainer->MakeVisible( ETrue ); + RefreshUiPanesL( ETrue ); + iCurrentContainer->MakeVisible( EFalse ); + iDummyContainer->DrawNow(); + iHNInterface->HandleBackEventL( iCurrentSuiteModel->SuiteName() ); MMPERF(("CMmAppUi::HandleBackCommandL - DONE")); @@ -1018,6 +1023,7 @@ if ( IsEditMode() ) { + TInt modelId = iCurrentSuiteModel->IdByIndex( aModelItemIndex ); if (modelId != KErrNotFound) { @@ -1817,11 +1823,6 @@ aWidgetContainer && iCurrentContainer->IsHighlightVisible() && iCurrentContainer->WidgetType() != aWidgetContainer->WidgetType(); - - if( iCurrentContainer && !highlightVisibleBefore ) - { - iCurrentContainer->SetHighlightVisibilityL( EFalse ); - } HandleWidgetChangeRefreshL( aWidgetContainer ); @@ -2376,6 +2377,7 @@ // void CMmAppUi::HandleSuiteModelInitializedL( CHnSuiteModel* aModel ) { + StatusPane()->MakeVisible( ETrue ); Cba()->MakeVisible( ETrue ); if ( aModel == iHNInterface->GetLastSuiteModelL() ) @@ -2494,47 +2496,27 @@ iCurrentContainer->CancelDragL( EFalse ); SetEditModeL( EFalse ); } - - THnSuiteWidgetType widgetType = iCurrentContainer - ? iCurrentContainer->WidgetType() : EUnspecified; - + // reset model - revert to root if current view is not a suite view CHnSuiteModel* model = iHNInterface->GetLastSuiteModelL(); - - TBool commingFromBackground( aExitKey == ECommingFromBackground ); - - if( model && ( aExitKey == EExitKeyApplication || commingFromBackground ) ) + if ( model && aExitKey == EExitKeyApplication ) { TBool topSuiteIsBeingEvaluated = !model->GetItemsOrder()->IsSuiteReadyToShow(); TBool topSuiteChanged = ResetToRootL(); model = NULL; // ResetToRootL might have deleted the model TBool presentationChangeExpected = topSuiteChanged || topSuiteIsBeingEvaluated; - - - TBool mustDrawImmediately = !presentationChangeExpected - || !iDummyContainer->IsVisible() || commingFromBackground; - if( iCurrentContainer ) - { - if( commingFromBackground ) - { - //do not draw the widget if the previous widget type is diffenernt than the current one - mustDrawImmediately &= ( widgetType - == iCurrentContainer->WidgetType() ); + TBool mustDrawImmediately = + !presentationChangeExpected || !iDummyContainer->IsVisible(); - iCurrentContainer->SetWidgetCommingFromBackground( ETrue ); - } - - if( mustDrawImmediately ) - { - DEBUG(("\t_Mm_:Top item index reset")); - iCurrentContainer->ResetWidgetPosition(); - iCurrentContainer->Widget()->UpdateScrollBarsL(); - iCurrentContainer->MakeVisible( ETrue ); - iCurrentContainer->DrawNow(); - iCurrentContainer->SetWidgetCommingFromBackground( EFalse ); - } + if ( iCurrentContainer && mustDrawImmediately ) + { + DEBUG(("\t_Mm_:Top item index reset")); + iCurrentContainer->ResetWidgetPosition(); + iCurrentContainer->Widget()->UpdateScrollBarsL(); + iCurrentContainer->MakeVisible( ETrue ); + iCurrentContainer->DrawNow(); } } @@ -2621,7 +2603,6 @@ if( !succeeded ) { - StartLayoutSwitchFullScreen( AknTransEffect::EApplicationExit ); ShowHomescreenL( EExitReally ); } } @@ -2823,11 +2804,7 @@ ResetContainerMapToRootL(); if( iCurrentContainer ) { - const TInt FirstItemIndex = 0; - iCurrentContainer->GetSuiteModelL()->SetSuiteHighlightL( FirstItemIndex ); - iMakeHightlightedItemFullyVisible = ETrue; iCurrentContainer->ResetWidgetPosition(); - iCurrentContainer->SetEditModeL( EFalse ); AddToStackL( iCurrentContainer ); } RefreshUiPanesL( ETrue ); @@ -3058,22 +3035,23 @@ isHiddenFromFS = EFalse; } - if( iCurrentContainer && iCurrentSuiteModel ) - { - iCurrentContainer->HandleForegroundGainedL(); - iDummyContainer->MakeVisible( EFalse ); - iCurrentContainer->MakeVisible( ETrue ); - RefreshUiPanesL(); - } - if( iSkinChangeNeeded && !iSkinChangeInProgress ) - { - MAknsSkinInstance* skinInstance = AknsUtils::SkinInstance(); - if( skinInstance && !skinInstance->IsUpdateInProgress() ) - { - RefreshIconsL(); - } - } + if (iCurrentContainer && iCurrentSuiteModel ) + { + iCurrentContainer->HandleForegroundGainedL(); + iDummyContainer->MakeVisible( EFalse ); + iCurrentContainer->MakeVisible( ETrue ); + RefreshUiPanesL(); } + if (iSkinChangeNeeded && !iSkinChangeInProgress) + { + MAknsSkinInstance* skinInstance = AknsUtils::SkinInstance(); + if (skinInstance && !skinInstance->IsUpdateInProgress()) + { + RefreshIconsL(); + + } + } + } // --------------------------------------------------------------------------- // diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/bwins/mmwidgetsu.def --- a/menufw/menufwui/mmwidgets/bwins/mmwidgetsu.def Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/mmwidgets/bwins/mmwidgetsu.def Wed Oct 13 14:18:30 2010 +0300 @@ -40,5 +40,4 @@ ?AllowMove@CMmWidgetContainer@@QBEHXZ @ 39 NONAME ; int CMmWidgetContainer::AllowMove(void) const ?SetTriggerMoveItemL@CMmWidgetContainer@@QAEXHPAVCLiwGenericParamList@@@Z @ 40 NONAME ; void CMmWidgetContainer::SetTriggerMoveItemL(int, class CLiwGenericParamList *) ?SetExDialogOpened@CMmWidgetContainer@@QAEXH@Z @ 41 NONAME ; void CMmWidgetContainer::SetExDialogOpened(int) - ?SetWidgetCommingFromBackground@CMmWidgetContainer@@UAEXH@Z @ 42 NONAME ; void CMmWidgetContainer::SetWidgetCommingFromBackground(int) diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/data/grid/lct/akn_logical_template_3_vga.xml --- a/menufw/menufwui/mmwidgets/data/grid/lct/akn_logical_template_3_vga.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,47 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/eabi/mmwidgetsu.def --- a/menufw/menufwui/mmwidgets/eabi/mmwidgetsu.def Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/mmwidgets/eabi/mmwidgetsu.def Wed Oct 13 14:18:30 2010 +0300 @@ -41,5 +41,4 @@ _ZN18CMmWidgetContainer19SetTriggerMoveItemLEiP20CLiwGenericParamList @ 40 NONAME _ZNK18CMmWidgetContainer9AllowMoveEv @ 41 NONAME _ZN18CMmWidgetContainer17SetExDialogOpenedEi @ 42 NONAME - _ZN18CMmWidgetContainer30SetWidgetCommingFromBackgroundEi @ 43 NONAME diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/group/bld.inf --- a/menufw/menufwui/mmwidgets/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/mmwidgets/group/bld.inf Wed Oct 13 14:18:30 2010 +0300 @@ -12,7 +12,7 @@ * Contributors: * * Description: Build information file for project mmwidgets -* Version : %version: 8.1.3.1.9 % << Don't touch! Updated by Synergy at check-out. +* Version : %version: 8.1.3.1.8 % << Don't touch! Updated by Synergy at check-out. * */ @@ -26,54 +26,78 @@ ../rom/mmwidgets.iby CORE_APP_LAYER_IBY_EXPORT_PATH(mmwidgets.iby) // list exports -../data/list/custom/akn_single_large_graphic_pane.xml Z:/resource/list/custom/akn_single_large_graphic_pane.xml -../data/list/custom/akn_logical_template_1.xml Z:/resource/list/custom/akn_logical_template_1.xml -../data/list/custom/akn_logical_template_2.xml Z:/resource/list/custom/akn_logical_template_2.xml -../data/list/custom/akn_logical_template_3.xml Z:/resource/list/custom/akn_logical_template_3.xml -../data/list/custom/akn_logical_template_4.xml Z:/resource/list/custom/akn_logical_template_4.xml -../data/list/custom/akn_logical_template_5.xml Z:/resource/list/custom/akn_logical_template_5.xml -../data/list/custom/akn_logical_template_6.xml Z:/resource/list/custom/akn_logical_template_6.xml -../data/list/custom/akn_logical_template_7.xml Z:/resource/list/custom/akn_logical_template_7.xml -../data/list/custom/akn_logical_template_8.xml Z:/resource/list/custom/akn_logical_template_8.xml -../data/list/custom/akn_logical_template_10.xml Z:/resource/list/custom/akn_logical_template_10.xml -../data/list/custom/akn_logical_template_11.xml Z:/resource/list/custom/akn_logical_template_11.xml -../data/list/custom/akn_logical_template_12.xml Z:/resource/list/custom/akn_logical_template_12.xml -../data/list/custom/akn_logical_template_13.xml Z:/resource/list/custom/akn_logical_template_13.xml +../data/list/custom/akn_single_large_graphic_pane.xml Z:/resource/list/custom/akn_single_large_graphic_pane.xml + +../data/list/custom/akn_logical_template_1.xml Z:/resource/list/custom/akn_logical_template_1.xml + +../data/list/custom/akn_logical_template_2.xml Z:/resource/list/custom/akn_logical_template_2.xml + +../data/list/custom/akn_logical_template_3.xml Z:/resource/list/custom/akn_logical_template_3.xml + +../data/list/custom/akn_logical_template_4.xml Z:/resource/list/custom/akn_logical_template_4.xml + +../data/list/custom/akn_logical_template_5.xml Z:/resource/list/custom/akn_logical_template_5.xml + +../data/list/custom/akn_logical_template_6.xml Z:/resource/list/custom/akn_logical_template_6.xml + +../data/list/custom/akn_logical_template_7.xml Z:/resource/list/custom/akn_logical_template_7.xml + +../data/list/custom/akn_logical_template_8.xml Z:/resource/list/custom/akn_logical_template_8.xml + +../data/list/custom/akn_logical_template_10.xml Z:/resource/list/custom/akn_logical_template_10.xml + +../data/list/custom/akn_logical_template_11.xml Z:/resource/list/custom/akn_logical_template_11.xml + +../data/list/custom/akn_logical_template_12.xml Z:/resource/list/custom/akn_logical_template_12.xml + +../data/list/custom/akn_logical_template_13.xml Z:/resource/list/custom/akn_logical_template_13.xml // grid exports -../data/grid/custom/akn_single_large_graphic_pane.xml Z:/resource/grid/custom/akn_single_large_graphic_pane.xml -../data/grid/custom/akn_logical_template_1.xml Z:/resource/grid/custom/akn_logical_template_1.xml -../data/grid/custom/akn_logical_template_2.xml Z:/resource/grid/custom/akn_logical_template_2.xml -../data/grid/custom/akn_logical_template_3.xml Z:/resource/grid/custom/akn_logical_template_3.xml -../data/grid/custom/akn_logical_template_4.xml Z:/resource/grid/custom/akn_logical_template_4.xml +../data/grid/custom/akn_single_large_graphic_pane.xml Z:/resource/grid/custom/akn_single_large_graphic_pane.xml + +../data/grid/custom/akn_logical_template_1.xml Z:/resource/grid/custom/akn_logical_template_1.xml + +../data/grid/custom/akn_logical_template_2.xml Z:/resource/grid/custom/akn_logical_template_2.xml + +../data/grid/custom/akn_logical_template_3.xml Z:/resource/grid/custom/akn_logical_template_3.xml + +../data/grid/custom/akn_logical_template_4.xml Z:/resource/grid/custom/akn_logical_template_4.xml + +//lct exports +../data/list/lct/akn_list_single_hc_apps_pane.xml Z:/resource/list/lct/akn_list_single_hc_apps_pane.xml + +../data/list/lct/akn_single_large_graphic_pane.xml Z:/resource/list/lct/akn_single_large_graphic_pane.xml + +../data/list/lct/akn_logical_template_1.xml Z:/resource/list/lct/akn_logical_template_1.xml -//lct list exports -../data/list/lct/akn_list_single_hc_apps_pane.xml Z:/resource/list/lct/akn_list_single_hc_apps_pane.xml -../data/list/lct/akn_single_large_graphic_pane.xml Z:/resource/list/lct/akn_single_large_graphic_pane.xml -../data/list/lct/akn_logical_template_1.xml Z:/resource/list/lct/akn_logical_template_1.xml -../data/list/lct/akn_logical_template_2.xml Z:/resource/list/lct/akn_logical_template_2.xml -../data/list/lct/akn_logical_template_3.xml Z:/resource/list/lct/akn_logical_template_3.xml -../data/list/lct/akn_logical_template_4.xml Z:/resource/list/lct/akn_logical_template_4.xml -../data/list/lct/akn_logical_template_5.xml Z:/resource/list/lct/akn_logical_template_5.xml -../data/list/lct/akn_logical_template_6.xml Z:/resource/list/lct/akn_logical_template_6.xml -../data/list/lct/akn_logical_template_6a.xml Z:/resource/list/lct/akn_logical_template_6a.xml -../data/list/lct/akn_logical_template_7.xml Z:/resource/list/lct/akn_logical_template_7.xml -../data/list/lct/akn_logical_template_8.xml Z:/resource/list/lct/akn_logical_template_8.xml -../data/list/lct/akn_logical_template_12.xml Z:/resource/list/lct/akn_logical_template_12.xml +../data/list/lct/akn_logical_template_2.xml Z:/resource/list/lct/akn_logical_template_2.xml + +../data/list/lct/akn_logical_template_3.xml Z:/resource/list/lct/akn_logical_template_3.xml + +../data/list/lct/akn_logical_template_4.xml Z:/resource/list/lct/akn_logical_template_4.xml + +../data/list/lct/akn_logical_template_5.xml Z:/resource/list/lct/akn_logical_template_5.xml + +../data/list/lct/akn_logical_template_6.xml Z:/resource/list/lct/akn_logical_template_6.xml -//lct grid exports -../data/grid/lct/akn_logical_template_3_vga.xml Z:/resource/grid/lct/akn_logical_template_3_vga.xml -../data/grid/lct/akn_logical_template_3.xml Z:/resource/grid/lct/akn_logical_template_3.xml +../data/list/lct/akn_logical_template_6a.xml Z:/resource/list/lct/akn_logical_template_6a.xml + +../data/list/lct/akn_logical_template_7.xml Z:/resource/list/lct/akn_logical_template_7.xml +../data/list/lct/akn_logical_template_8.xml Z:/resource/list/lct/akn_logical_template_8.xml + +../data/list/lct/akn_logical_template_12.xml Z:/resource/list/lct/akn_logical_template_12.xml + +../data/grid/lct/akn_logical_template_3.xml Z:/resource/grid/lct/akn_logical_template_3.xml ../inc/mmdraganddropobserver.h |../../../inc/mmdraganddropobserver.h -../inc/mmlongtapobserver.h |../../../inc/mmlongtapobserver.h +../inc/mmlongtapobserver.h |../../../inc/mmlongtapobserver.h ../inc/mmkeyeventobserver.h |../../../inc/mmkeyeventobserver.h ../inc/mmwidgetobserver.h |../../../inc/mmwidgetobserver.h ../inc/mmwidgetcontainer.h |../../../inc/mmwidgetcontainer.h ../inc/mmvisibilityobserver.h |../../../inc/mmvisibilityobserver.h ../inc/mmtemplatelibrary.h |../../../inc/mmtemplatelibrary.h -../inc/mmwidgetsconstants.h |../../../inc/mmwidgetsconstants.h +../inc/mmwidgetsconstants.h |../../../inc/mmwidgetsconstants.h PRJ_MMPFILES mmwidgets.mmp diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/inc/mmdraweranimator.h --- a/menufw/menufwui/mmwidgets/inc/mmdraweranimator.h Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/mmwidgets/inc/mmdraweranimator.h Wed Oct 13 14:18:30 2010 +0300 @@ -12,7 +12,7 @@ * Contributors: * * Description: CMmDrawerAnimator declaration -* Version : %version: MM_17.1.11 % << Don't touch! Updated by Synergy at check-out. +* Version : %version: MM_17.1.10 % << Don't touch! Updated by Synergy at check-out. * */ @@ -160,8 +160,8 @@ * and end in the EDrag floating item position, when item had been start drag. * * @since S60 v5.0 - * @param aDraggedIndex Draged item index to be animated. - * @param aPoint End position of animated item. + * @param aDraggedIndex Draged item index to be animated. + * @param aPoint End position of animated item. */ void AnimateDragItemStartL( TInt aDraggedIndex, TPoint aPoint ); @@ -239,6 +239,11 @@ TTimeIntervalMicroSeconds iDelay; /** + * Last redraw time + */ + TTime iLastRedrawTime; + + /** * Effects api. */ MAknListBoxTfx *iTransTfx; diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/inc/mmgrid.h --- a/menufw/menufwui/mmwidgets/inc/mmgrid.h Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/mmwidgets/inc/mmgrid.h Wed Oct 13 14:18:30 2010 +0300 @@ -12,7 +12,7 @@ * Contributors: * * Description: CMmGrid declaration -* Version : %version: MM_32.1.26 % << Don't touch! Updated by Synergy at check-out. +* Version : %version: MM_32.1.25 % << Don't touch! Updated by Synergy at check-out. * */ @@ -397,6 +397,25 @@ void ProcessScrollEventL( CEikScrollBar* aScrollBar, TEikScrollEvent aEventType ); + /** + * Handles periodic events from @c iRedrawTimer. + * Such events are generated at equal time intervals while + * the view is being scrolled using the scrollbar. + * This function typically calls @c ProcessScrollEventL, + * which actually scrolls the view and causes a redraw. + */ + void HandleRedrawTimerEventL(); + +private: + /** + * Callback function for @c iRedrawTimer. + * It simply calls @c HandleRedrawTimerEventL and returns 0. + * + * @param aPtr A pointer to CMmGrid object. + * @return 0 (always). + */ + static TInt RedrawTimerCallback( TAny* aPtr ); + private: /** * Grid model. @@ -453,6 +472,26 @@ */ TPoint iButton1DownPos; + /** + * ETrue if the view is being scrolled with the scrollbar. + */ + TBool iScrollbarThumbIsBeingDragged; + + /** + * Stores the number of scrollbar events that were ignored. + * It is only used while scrolling the view using scrollbar, + * in such situation the scroll events that this object receives + * are ignored, and actual scrolling is done only when + * iRedrawTimer completes. + */ + TInt iSkippedScrollbarEventsCount; + + /** + * A timer that initiates redraws at certain time intervals. + * It is used to refresh the view while scrolling with + * the scrollbar. + */ + CPeriodic* iRedrawTimer; }; #endif // C_MMGRID_H diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/inc/mmgridcontainer.h --- a/menufw/menufwui/mmwidgets/inc/mmgridcontainer.h Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/mmwidgets/inc/mmgridcontainer.h Wed Oct 13 14:18:30 2010 +0300 @@ -12,7 +12,7 @@ * Contributors: * * Description: CMmGridContainer declaration -* Version : %version: MM_29.1.15 % << Don't touch! Updated by Synergy at check-out. +* Version : %version: MM_29.1.14 % << Don't touch! Updated by Synergy at check-out. * */ @@ -212,11 +212,6 @@ * @return ETrue if visible, EFalse otherwise. */ TBool ItemIsVisible( TInt aItemIndex ) const; - - /** - * Sets a proper flag if the widget is brought to foreground. - */ - virtual void SetWidgetCommingFromBackground( TBool /*aCommingFromBackground*/ ); private: /** diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/inc/mmlistbox.h --- a/menufw/menufwui/mmwidgets/inc/mmlistbox.h Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/mmwidgets/inc/mmlistbox.h Wed Oct 13 14:18:30 2010 +0300 @@ -12,7 +12,7 @@ * Contributors: * * Description: CMmListBox -* Version : %version: MM_22.1.19 % << Don't touch! Updated by Synergy at check-out. +* Version : %version: MM_22.1.17 % << Don't touch! Updated by Synergy at check-out. * */ @@ -23,7 +23,7 @@ #include #include #include -#include +#include class CMmListBoxModel; class CMmListBoxItemDrawer; @@ -41,47 +41,47 @@ * @ingroup group_mmwidgets */ NONSHARABLE_CLASS( CMmListBox ) : public CEikFormattedCellListBoxTypedef - { + { public: /** * Two-phased constructor. - * + * * @since S60 v3.0 * @param aParent Parent control. * @param aFlags Flags. - * @param aTemplateLibrary Template library for drawer. + * @param aTemplateLibrary Template library for drawer. * @return List box. */ static CMmListBox* NewL( const CCoeControl* aParent, TInt aFlags, CMmTemplateLibrary* aTemplateLibrary ); - + /** * Two-phased constructor. - * + * * @since S60 v3.0 * @param aParent Parent control. * @param aFlags Flags. - * @param aTemplateLibrary Template library for drawer. + * @param aTemplateLibrary Template library for drawer. * @return List box. */ static CMmListBox* NewLC( const CCoeControl* aParent, TInt aFlags, CMmTemplateLibrary* aTemplateLibrary ); - + /** - * Destructor. - * - * @since S60 v3.0 - */ - virtual ~CMmListBox(); - - /** + * Destructor. + * + * @since S60 v3.0 + */ + virtual ~CMmListBox(); + + /** * Gets the listbox model. * * @since S60 v3.0 * @return Listbox model. */ - CMmListBoxModel * MmModel(); - + CMmListBoxModel * MmModel(); + /** * Sets the listbox model. * @@ -97,43 +97,43 @@ * @return Listbox view. */ CListBoxView* MakeViewClassInstanceL(); - - /** + + /** * Creates the item drawer for listbox. - * - * @param aTemplateLibrary Template library for drawer. + * + * @param aTemplateLibrary Template library for drawer. * @since S60 v3.0 */ void CreateItemDrawerL( CMmTemplateLibrary* aTemplateLibrary ); - - /** + + /** * Sets the flag. - * + * * @since S60 v3.0 * @param aFlag Avkon list flag */ void SetListFlag( TInt aFlag ); - - /** + + /** * Clears the flag. - * + * * @since S60 v3.0 * @param aFlag Avkon list flag */ void ClearListFlag( TInt aFlag ); - + public: // from base class CCoeControl. /** - * From CCoeControl. + * From CCoeControl. * Handles pointer events. - * + * * @since S60 v3.0 * @param aPointerEvent Pointer event. */ - void HandlePointerEventL( const TPointerEvent& aPointerEvent ); - + void HandlePointerEventL( const TPointerEvent& aPointerEvent ); + /** * From base class. * @@ -141,9 +141,9 @@ * @param aKeyEvent Key event. * @param aType Event code. */ - TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, + TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType ); - + /** * Adjusts the given rectangle. * @@ -152,28 +152,28 @@ * @return Error code. */ TInt AdjustRectHeightToWholeNumberOfItems( TRect& aRect ) const; - + /** * Sets item drawer and view background context. * * @since S60 v3.0 * @param aBgContext Background context. */ - void SetItemDrawerAndViewBgContext( + void SetItemDrawerAndViewBgContext( CAknsBasicBackgroundControlContext * aBgContext ); - + /** * Updates scrollbar. * * @since S60 v3.0 */ void UpdateScrollBarsL(); - + /** * Special version of Update scrollbar that never calls DrawNow() */ void UpdateScrollBarsNoRedrawL(); - + /** * Checks if all items fit in view rectangle. * @@ -181,7 +181,7 @@ * @return Do all items fit in view rectangle. */ TBool AllItemsFitInViewRect(); - + /** * Handles scrollbar visibility change. * @@ -189,7 +189,7 @@ * @return Is redraw needed. */ TBool HandleScrollbarVisibilityChangeL(); - + /** * Sets marquee adapter. * @@ -197,7 +197,7 @@ * @param aAdapter Marquee adapter. */ void SetMarqueeAdapter( CMmMarqueeAdapter* aAdapter ); - + /** * Notifies that marquee is being drawn. * @@ -205,76 +205,76 @@ * @param aIsMarqueeBeingDrawn Is marquee being drawn. */ void SetMarqueeDrawing( TBool aIsMarqueeBeingDrawn ); - + /** * Handles item removal. redraws view, updates scrollbar. * * @since S60 v3.0 */ void HandleItemRemovalL(); - + /** * Redraws items in view if it is necessary. * * @since S60 v3.0 * @param aPreviousCurrent Previously current item index. * @param aCurrent Current item index. - * + * * @return true if anything was drawn. */ - TBool RedrawIfNecessary( TInt aPreviousCurrent, TInt aCurrent ); - - /** - * Overridden from base class to allow for drawing scrollbar - * background in mirrored layout. - * - * @param aRect clipping rect - */ - void Draw(const TRect& aRect) const; - - /** + TBool RedrawIfNecessary( TInt aPreviousCurrent, TInt aCurrent ); + + /** + * Overridden from base class to allow for drawing scrollbar + * background in mirrored layout. + * + * @param aRect clipping rect + */ + void Draw(const TRect& aRect) const; + + /** * Draws the listbox view. * * @since S60 v5.0 */ - void DrawView(); - + void DrawView(); + /** * Set the vertical item offset; * @param aOffset The offset to set to the widget. - * + * * @since S60 v5.0 */ void SetVerticalItemOffset( TInt aOffset ); /** * Gets the current widget vertical item offset. - * + * * @since S60 v5.0 * @return The current widget vertical item offset. */ TInt VerticalItemOffset() const; - + /** * Simply sets the item height members in widget and view. */ void SetItemHeight( TInt aItemHeight ); - + /** * Updates scrollbar thumbs. */ void UpdateScrollBarThumbs(); - + /** * Counts the number of component controls which this component owns. - */ + */ TInt CountComponentControls() const; - + /** * Disables/enables child component (scrollbar) drawing. */ void SetDisableChildComponentDrawing( TBool aDisable ); - + /** * Handles scrolling event. * @@ -282,51 +282,51 @@ * @param aScrollBar Scrollbar being scrolled. * @param aEventType Type of scrollbar event. */ - void HandleScrollEventL( CEikScrollBar* aScrollBar, + void HandleScrollEventL( CEikScrollBar* aScrollBar, TEikScrollEvent aEventType ); - + private: /** * Default constructor. - * + * * @since S60 v3.0 */ - CMmListBox(); - + CMmListBox(); + /** * 2nd phase constructor. - * + * * @since S60 v3.0 * @param aParent Parent control. * @param aFlags Flags. - * @param aTemplateLibrary Template library for drawer. + * @param aTemplateLibrary Template library for drawer. */ - void ConstructL( const CCoeControl* aParent, TInt aFlags, + void ConstructL( const CCoeControl* aParent, TInt aFlags, CMmTemplateLibrary* aTemplateLibrary ); - + /** * Handles pointer events when edit mode is enabled. - * + * * This method is only called during edit mode. It selectively passes * only some of the pointer events to CAknGrid::HandlePointerEventL * in order to disable flicking and panning. - * + * * @param aPointerEvent pointer event */ void HandlePointerEventInEditModeL( const TPointerEvent& aPointerEvent ); - + /** * Scrolls the view if pointer is close to the top/bottom edge. - * + * * This method is used only when edit mode is active. In a way it * brings back the focus based scrolling behavior that was present * in CAknGrid before ODE scrolling was introduced. */ void HandleScrollingInEditMode( const TPointerEvent& aPointerEvent ); - + /** * Checks if pointer position is within the scroll-triggering area. - * + * * @param aPointerEvent pointer event * @return true if pointer above the top scrolling threshold. */ @@ -335,88 +335,120 @@ /** * Checks if pointer position is within the scroll-triggering area. - * + * * @param aPointerEvent pointer event * @return true if pointer below the bottom scrolling threshold. */ TBool IsPointerInBottomScrollingThreshold( const TPointerEvent& aPointerEvent ) const; - + /** * Scrolls the view if the pointer is near top/bottom edge of the screen. - * + * * Assumes that current item index is the index of the item under the * pointer. The time value returned is based on the distance of the pointer * from the top/bottom edge of the grid view (this makes the scrolling speed * dependent of how close the pointer is to the edge). * If there is no need to continue scrolling because the beginning/end of * the list has already been reached, 0 is returned. - * + * * @param aPointerEvent pointer event * @return time to wait before calling this method again (in microseconds) * or 0 if already at the beginning/end of the list */ TInt ScrollIfNeeded( const TPointerEvent& aPointerEvent ); - - /** - * Minimal scrolling (setting top item index and vertical offset) with - * boundary checking and WITHOUT redrawing. - * - * @param aDistanceInPixels Distance to scroll. - */ - void ScrollWithoutRedraw( TInt aDistanceInPixels ); - + /** * Ensures that elements are drawn correctly when mirrored layout is * used and scrollbar is visible by shifting ViewRect to the right. */ void FixViewForMirroredLayout(); - + /** * Redraws the background under the vertical scrollbar in mirrored layout. - * + * * The reason such method is needed is that view rectangle is shifted * to the right in mirrored layout and does not cover the scrollbar * area. In normal (non-mirrored) mode this method does nothing. */ void RedrawScrollbarBackground() const; - + /** * Does actual handling of scroll events. - * + * * @param aScrollBar Scrollbar being scrolled. * @param aEventType Type of scrollbar event. */ - void ProcessScrollEventL( CEikScrollBar* aScrollBar, + void ProcessScrollEventL( CEikScrollBar* aScrollBar, TEikScrollEvent aEventType ); - + + /** + * Handles periodic events from @c iRedrawTimer. + * Such events are generated at equal time intervals while + * the view is being scrolled using the scrollbar. + * This function typically calls @c ProcessScrollEventL, + * which actually scrolls the view and causes a redraw. + */ + void HandleRedrawTimerEventL(); + +private: + /** + * Callback function for @c iRedrawTimer. + * It simply calls @c HandleRedrawTimerEventL and returns 0. + * + * @param aPtr A pointer to CMmListBox object. + * @return 0 (always). + */ + static TInt RedrawTimerCallback( TAny* aPtr ); + private: // Data /** * Item drawer. */ CMmListBoxItemDrawer* iMmDrawer; - + /** * Multimedia Menu model. */ - CMmListBoxModel* iMmModel; + CMmListBoxModel* iMmModel; /** * marquee adapter. */ - CMmMarqueeAdapter* iMarqueeAdapter; + CMmMarqueeAdapter* iMarqueeAdapter; /** * Blocks scrollbar drawing. When this flag is set scrollbars components - * are blocked in the CountComponentControls() method; + * are blocked in the CountComponentControls() method; */ - TBool iDisableChildComponentDrawing; - - /** + TBool iDisableChildComponentDrawing; + + /** * This member is only used in edit mode to store the position of the pointer * during EButton1Down event. */ TPoint iButton1DownPos; - }; - + + /** + * ETrue if the view is being scrolled with the scrollbar. + */ + TBool iScrollbarThumbIsBeingDragged; + + /** + * Stores the number of scrollbar events that were ignored. + * It is only used while scrolling the view using scrollbar, + * in such situation the scroll events that this object receives + * are ignored, and actual scrolling is done only when + * iRedrawTimer completes. + */ + TInt iSkippedScrollbarEventsCount; + + /** + * A timer that initiates redraws at certain time intervals. + * It is used to refresh the view while scrolling with + * the scrollbar. + */ + CPeriodic* iRedrawTimer; + }; + #endif // MMLISTBOX_H diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/inc/mmlistboxcontainer.h --- a/menufw/menufwui/mmwidgets/inc/mmlistboxcontainer.h Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/mmwidgets/inc/mmlistboxcontainer.h Wed Oct 13 14:18:30 2010 +0300 @@ -12,7 +12,7 @@ * Contributors: * * Description: CMmListBoxContainer -* Version : %version: MM_21.1.11 % << Don't touch! Updated by Synergy at check-out. +* Version : %version: MM_21.1.10 % << Don't touch! Updated by Synergy at check-out. * */ @@ -166,13 +166,6 @@ */ THnSuiteWidgetType WidgetType(); - /** - * Sets a proper flag if the widget is brought to foreground. - * - * @param aCommingFromBackground indicates whether the widget is brought to foreground. - */ - virtual void SetWidgetCommingFromBackground( TBool aCommingFromBackground ); - public: /** * Draws the widget view. @@ -196,7 +189,7 @@ * @return The current widget vertical item offset. */ virtual TInt VerticalItemOffset() const; - + protected: // from CMmWidgetContainer /** diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/inc/mmlistboxview.h --- a/menufw/menufwui/mmwidgets/inc/mmlistboxview.h Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/mmwidgets/inc/mmlistboxview.h Wed Oct 13 14:18:30 2010 +0300 @@ -12,7 +12,7 @@ * Contributors: * * Description: -* Version : %version: MM_12.1.10 % << Don't touch! Updated by Synergy at check-out. +* Version : %version: MM_12.1.9 % << Don't touch! Updated by Synergy at check-out. * */ @@ -187,13 +187,6 @@ * @return */ TInt ModelItemsCount(); - - /** - * Sets a proper flag if the list is brought to foreground. - * - * @param aCommingFromBackground indicates whether the list is brought to foreground. - */ - void SetListCommingFromBackground(TBool aCommingFromBackground); private: @@ -230,14 +223,7 @@ * @since S60 v3.0 * @param aIndex Current Item index. */ - void SetPreviouslyDrawnCurrentItemIndex( TBool aIndex ); - - /** - * Gets the flag indicating if the list is being brought to foreground. - * @return Last item index. - */ - TBool GetListCommingFromBackground() const; - + void SetPreviouslyDrawnCurrentItemIndex( TBool aIndex ); private: @@ -250,11 +236,6 @@ * When ETrue, disables ScrollToMakeItemVisible method. */ TBool iScrollToItemDisabled; - - /** - * When ETrue the list is being brought from background - */ - TBool iListCommingFromBackground; }; #endif // MMLISTBOXVIEW_H diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/inc/mmwidgetcontainer.h --- a/menufw/menufwui/mmwidgets/inc/mmwidgetcontainer.h Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/mmwidgets/inc/mmwidgetcontainer.h Wed Oct 13 14:18:30 2010 +0300 @@ -12,7 +12,7 @@ * Contributors: * * Description: -* Version : %version: MM_48.1.46 % << Don't touch! Updated by Synergy at check-out. +* Version : %version: MM_48.1.43 % << Don't touch! Updated by Synergy at check-out. * */ @@ -697,11 +697,6 @@ * Widget position cache. */ TMmWidgetPosition WidgetPositionCache() const; - - /** - * Sets a proper flag if the widget is brought to foreground. - */ - IMPORT_C virtual void SetWidgetCommingFromBackground( TBool /*aCommingFromBackground*/ ); public: // from MMmVisibilityObserver @@ -1081,10 +1076,6 @@ */ TBool iHighlightVisibleBeforeLongTap; - /** - * ETrue if widget highlight must be reset. - */ - TBool iResetHighlight; }; #endif // MMMWIDGETCONTAINER_H diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/inc/mmwidgetsconstants.h --- a/menufw/menufwui/mmwidgets/inc/mmwidgetsconstants.h Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/mmwidgets/inc/mmwidgetsconstants.h Wed Oct 13 14:18:30 2010 +0300 @@ -12,7 +12,7 @@ * Contributors: * * Description: Constants for the matrixmenu -* Version : %version: 33.1.16 % << Don't touch! Updated by Synergy at check-out. +* Version : %version: 33.1.14 % << Don't touch! Updated by Synergy at check-out. * */ @@ -27,138 +27,121 @@ * Grid constants' namespace. */ namespace MmGrid - { - /** - * X component of the 4x3 layout. - */ - const TInt K4By3LayoutX = 4; + { + /** + * X component of the 4x3 layout. + */ + const TInt K4By3LayoutX = 4; - /** - * Y component of the 4x3 layout. - */ - const TInt K4By3LayoutY = 3; + /** + * Y component of the 4x3 layout. + */ + const TInt K4By3LayoutY = 3; - /** - * X component of the 3x4 layout. - */ + /** + * X component of the 3x4 layout. + */ - const TInt K3By4LayoutX = 3; + const TInt K3By4LayoutX = 3; - /** - * Y component of the 3x4 layout. - */ - const TInt K3By4LayoutY = 4; + /** + * Y component of the 3x4 layout. + */ + const TInt K3By4LayoutY = 4; - /** - * X component of the 4x5 layout. - */ - const TInt K4By5LayoutX = 4; + /** + * X component of the 4x5 layout. + */ + const TInt K4By5LayoutX = 4; - /** - * Y component of the 5x4 layout. - */ - const TInt K4By5LayoutY = 5; + /** + * Y component of the 5x4 layout. + */ + const TInt K4By5LayoutY = 5; - /** - * X component of the 5x4 layout. - */ - const TInt K5By4LayoutX = 5; + /** + * X component of the 5x4 layout. + */ + const TInt K5By4LayoutX = 5; - /** - * Y component of the 5x4 layout. - */ - const TInt K5By4LayoutY = 4; + /** + * Y component of the 5x4 layout. + */ + const TInt K5By4LayoutY = 4; - /** - * Below this value, default highlight in 3x4 grid - * is set up on the first item. Otherwize, on the default - * highlight. - */ - const TInt K3By4Threshold( 5 ); + /** + * Below this value, default highlight in 3x4 grid + * is set up on the first item. Otherwize, on the default + * highlight. + */ + const TInt K3By4Threshold(5); - /** - * Below this value, default highlight in 4x3 grid - * is set up on the first item. Otherwize, on the default - * highlight. - */ - const TInt K4By3Threshold( 6 ); + /** + * Below this value, default highlight in 4x3 grid + * is set up on the first item. Otherwize, on the default + * highlight. + */ + const TInt K4By3Threshold(6); - /** - * Below this value, default highlight in 5x4 grid - * is set up on the first item. Otherwize, on the default - * highlight. - */ - const TInt K5By4Threshold( 8 ); + /** + * Below this value, default highlight in 5x4 grid + * is set up on the first item. Otherwize, on the default + * highlight. + */ + const TInt K5By4Threshold(8); - /** - * Below this value, default highlight in 4x5 grid - * is set up on the first item. Otherwize, on the default - * highlight. - */ - const TInt K4By5Threshold( 10 ); + /** + * Below this value, default highlight in 4x5 grid + * is set up on the first item. Otherwize, on the default + * highlight. + */ + const TInt K4By5Threshold(10); - /** - * Default highlight in 3x4 grid. - */ - const TInt K3By4DefaultHighlight( 4 ); + /** + * Default highlight in 3x4 grid. + */ + const TInt K3By4DefaultHighlight(4); - /** - * Default highlight in 4x3 grid. - */ - const TInt K4By3DefaultHighlight( 5 ); + /** + * Default highlight in 4x3 grid. + */ + const TInt K4By3DefaultHighlight(5); - /** - * Default highlight in 5x4 grid. - */ - const TInt K5By4DefaultHighlight( 7 ); + /** + * Default highlight in 5x4 grid. + */ + const TInt K5By4DefaultHighlight(7); - /** - * Default highlight in 4x5 grid. - */ - const TInt K4By5DefaultHighlight( 8 ); + /** + * Default highlight in 4x5 grid. + */ + const TInt K4By5DefaultHighlight(8); - /** - * Number of rows in portrait/non-zoom mode; - */ - const TInt KRowsPortraitZoomNormal( 4 ); + /** + * Number of rows in portrait/non-zoom mode; + */ + const TInt KRowsPortraitZoomNormal(4); - /** - * Number of columns in landscape/non-zoom mode; - */ - const TInt KColsPortraitZoomNormal( 3 ); + /** + * Number of columns in landscape/non-zoom mode; + */ + const TInt KColsPortraitZoomNormal(3); - /** - * Number of rows in portrait/non-zoom mode; - */ - const TInt KRowsLandscapeZoomNormal( 3 ); + /** + * Number of rows in portrait/non-zoom mode; + */ + const TInt KRowsLandscapeZoomNormal(3); - /** - * Number of columns in landscape/non-zoom mode; - */ - const TInt KColsLandscapeZoomNormal( 4 ); + /** + * Number of columns in landscape/non-zoom mode; + */ + const TInt KColsLandscapeZoomNormal(4); /** * Focus based scrolling item threshold for grid. */ const TReal KFocusScrollingThreshold( 0.27 ); - - /** - * Scrolling step (in pixels) for grid. - */ - const TInt KScrollingStep( 10 ); - - /** - * Determines the speed of focus-based scrolling in edit mode. - * Minimal delay of scrolling in the grid layout. - */ - const TInt KEditModeScrollingGridMinDelay( 2000 ); - - /** - * Determines the speed of focus-based scrolling in edit mode. - * Maximal delay of scrolling in the grid layout. - */ - const TInt KEditModeScrollingGridMaxDelay( 30000 ); - } + } /** * Listbox constants' namespace. @@ -180,30 +163,13 @@ * Focus based scrolling item threshold for list. */ const TReal KFocusScrollingThreshold( 0.55 ); - - /** - * Scrolling step (in pixels) for listbox. - */ - const TInt KScrollingStep( 10 ); - - /** - * Determines the speed of focus-based scrolling in edit mode. - * Minimal delay of scrolling in the listbox layout. - */ - const TInt KEditModeScrollingListBoxMinDelay( 4000 ); - - /** - * Determines the speed of focus-based scrolling in edit mode. - * Maximal delay of scrolling in the listbox layout. - */ - const TInt KEditModeScrollingListBoxMaxDelay( 30000 ); } /** * Drag and drop related constants. */ namespace MmEffects - { + { /** * Threshold for items shift. */ @@ -253,27 +219,33 @@ * Time between two butto repeat events. */ const TInt KDragRepeatRespawn( 2 ); + + /** + * Determines the speed of focus-based scrolling in edit mode. + */ + const TInt KEditModeScrollingDelayFactor = 4000; } /** * Templates' related constants. */ namespace MmTemplateContants - { - /** - * If a custom (non LCT) template is used, this is - * its default scrollbar width. - */ - const TInt KCustomTemplateScrolbarWidth( 25 ); + { + /** + * If a custom (non LCT) template is used, this is + * its default scrollbar width. + */ + const TInt KCustomTemplateScrolbarWidth (25); - const TInt KTemplateChildTextLength( 64 ); + const TInt KTemplateChildTextLength (64); - const TInt KSubCellsCount( 6 ); + const TInt KSubCellsCount (6); - const TInt KItemSubCellsText( 300 ); + const TInt KItemSubCellsText (300); - const TInt KMoveIndicatorStartingPos( 32 ); - } + const TInt KMoveIndicatorStartingPos ( 32 ); + + } /** * Shortcut constants. @@ -298,13 +270,13 @@ } namespace MmMarqueeConstants - { - const TInt KTextTrimmingThreshold( 80 ); - const TInt KClippingBufLength( 80 ); - const TInt KLoops( 1 ); - const TInt KScrollAmount( 6 ); - const TInt KScrollDelay( 1000000 ); - } + { + const TInt KTextTrimmingThreshold (80); + const TInt KClippingBufLength (80); + const TInt KLoops (1); + const TInt KScrollAmount (6); + const TInt KScrollDelay (1000000); + } /** * Matrix Template Library panic notice. */ @@ -476,4 +448,10 @@ */ const TInt KDragTreshold = 18; +/** + * The interval between redraws when scrolling using the scrollbar. + * This will give us nice ~30 fps. + */ +const TInt KScrollingRedrawInterval = 33333; + #endif // MMWIDGETSCONSTANTS_H diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/rom/mmwidgets.iby --- a/menufw/menufwui/mmwidgets/rom/mmwidgets.iby Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/mmwidgets/rom/mmwidgets.iby Wed Oct 13 14:18:30 2010 +0300 @@ -21,51 +21,45 @@ #include -file=ABI_DIR\BUILD_DIR\mmwidgets.dll SHARED_LIB_DIR\mmwidgets.dll +file=ABI_DIR\BUILD_DIR\mmwidgets.dll SHARED_LIB_DIR\mmwidgets.dll -data=\epoc32\data\z\resource\list\custom\akn_single_large_graphic_pane.xml resource\list\custom\akn_single_large_graphic_pane.xml -data=\epoc32\data\z\resource\list\custom\akn_logical_template_1.xml resource\list\custom\akn_logical_template_1.xml -data=\epoc32\data\z\resource\list\custom\akn_logical_template_2.xml resource\list\custom\akn_logical_template_2.xml -data=\epoc32\data\z\resource\list\custom\akn_logical_template_3.xml resource\list\custom\akn_logical_template_3.xml -data=\epoc32\data\z\resource\list\custom\akn_logical_template_4.xml resource\list\custom\akn_logical_template_4.xml -data=\epoc32\data\z\resource\list\custom\akn_logical_template_5.xml resource\list\custom\akn_logical_template_5.xml -data=\epoc32\data\z\resource\list\custom\akn_logical_template_6.xml resource\list\custom\akn_logical_template_6.xml -data=\epoc32\data\z\resource\list\custom\akn_logical_template_7.xml resource\list\custom\akn_logical_template_7.xml -data=\epoc32\data\z\resource\list\custom\akn_logical_template_8.xml resource\list\custom\akn_logical_template_8.xml -data=\epoc32\data\z\resource\list\custom\akn_logical_template_10.xml resource\list\custom\akn_logical_template_10.xml -data=\epoc32\data\z\resource\list\custom\akn_logical_template_11.xml resource\list\custom\akn_logical_template_11.xml -data=\epoc32\data\z\resource\list\custom\akn_logical_template_12.xml resource\list\custom\akn_logical_template_12.xml -data=\epoc32\data\z\resource\list\custom\akn_logical_template_13.xml resource\list\custom\akn_logical_template_13.xml +data=\epoc32\data\z\resource\list\custom\akn_single_large_graphic_pane.xml resource\list\custom\akn_single_large_graphic_pane.xml +data=\epoc32\data\z\resource\list\custom\akn_logical_template_1.xml resource\list\custom\akn_logical_template_1.xml +data=\epoc32\data\z\resource\list\custom\akn_logical_template_2.xml resource\list\custom\akn_logical_template_2.xml +data=\epoc32\data\z\resource\list\custom\akn_logical_template_3.xml resource\list\custom\akn_logical_template_3.xml +data=\epoc32\data\z\resource\list\custom\akn_logical_template_4.xml resource\list\custom\akn_logical_template_4.xml +data=\epoc32\data\z\resource\list\custom\akn_logical_template_5.xml resource\list\custom\akn_logical_template_5.xml +data=\epoc32\data\z\resource\list\custom\akn_logical_template_6.xml resource\list\custom\akn_logical_template_6.xml +data=\epoc32\data\z\resource\list\custom\akn_logical_template_7.xml resource\list\custom\akn_logical_template_7.xml +data=\epoc32\data\z\resource\list\custom\akn_logical_template_8.xml resource\list\custom\akn_logical_template_8.xml +data=\epoc32\data\z\resource\list\custom\akn_logical_template_10.xml resource\list\custom\akn_logical_template_10.xml +data=\epoc32\data\z\resource\list\custom\akn_logical_template_11.xml resource\list\custom\akn_logical_template_11.xml +data=\epoc32\data\z\resource\list\custom\akn_logical_template_12.xml resource\list\custom\akn_logical_template_12.xml +data=\epoc32\data\z\resource\list\custom\akn_logical_template_13.xml resource\list\custom\akn_logical_template_13.xml -data=\epoc32\data\z\resource\grid\custom\akn_single_large_graphic_pane.xml resource\grid\custom\akn_single_large_graphic_pane.xml -data=\epoc32\data\z\resource\grid\custom\akn_logical_template_1.xml resource\grid\custom\akn_logical_template_1.xml -data=\epoc32\data\z\resource\grid\custom\akn_logical_template_2.xml resource\grid\custom\akn_logical_template_2.xml -data=\epoc32\data\z\resource\grid\custom\akn_logical_template_3.xml resource\grid\custom\akn_logical_template_3.xml -data=\epoc32\data\z\resource\grid\custom\akn_logical_template_4.xml resource\grid\custom\akn_logical_template_4.xml +data=\epoc32\data\z\resource\grid\custom\akn_single_large_graphic_pane.xml resource\grid\custom\akn_single_large_graphic_pane.xml +data=\epoc32\data\z\resource\grid\custom\akn_logical_template_1.xml resource\grid\custom\akn_logical_template_1.xml +data=\epoc32\data\z\resource\grid\custom\akn_logical_template_2.xml resource\grid\custom\akn_logical_template_2.xml +data=\epoc32\data\z\resource\grid\custom\akn_logical_template_3.xml resource\grid\custom\akn_logical_template_3.xml +data=\epoc32\data\z\resource\grid\custom\akn_logical_template_4.xml resource\grid\custom\akn_logical_template_4.xml //lct exports -data=\epoc32\data\z\resource\list\lct\akn_list_single_hc_apps_pane.xml resource\list\lct\akn_list_single_hc_apps_pane.xml -data=\epoc32\data\z\resource\list\lct\akn_single_large_graphic_pane.xml resource\list\lct\akn_single_large_graphic_pane.xml -data=\epoc32\data\z\resource\list\lct\akn_logical_template_1.xml resource\list\lct\akn_logical_template_1.xml -data=\epoc32\data\z\resource\list\lct\akn_logical_template_2.xml resource\list\lct\akn_logical_template_2.xml -data=\epoc32\data\z\resource\list\lct\akn_logical_template_3.xml resource\list\lct\akn_logical_template_3.xml -data=\epoc32\data\z\resource\list\lct\akn_logical_template_4.xml resource\list\lct\akn_logical_template_4.xml -data=\epoc32\data\z\resource\list\lct\akn_logical_template_5.xml resource\list\lct\akn_logical_template_5.xml -data=\epoc32\data\z\resource\list\lct\akn_logical_template_6.xml resource\list\lct\akn_logical_template_6.xml -data=\epoc32\data\z\resource\list\lct\akn_logical_template_6a.xml resource\list\lct\akn_logical_template_6a.xml -data=\epoc32\data\z\resource\list\lct\akn_logical_template_7.xml resource\list\lct\akn_logical_template_7.xml -data=\epoc32\data\z\resource\list\lct\akn_logical_template_8.xml resource\list\lct\akn_logical_template_8.xml -data=\epoc32\data\z\resource\list\lct\akn_logical_template_12.xml resource\list\lct\akn_logical_template_12.xml +data=\epoc32\data\z\resource\list\lct\akn_list_single_hc_apps_pane.xml resource\list\lct\akn_list_single_hc_apps_pane.xml +data=\epoc32\data\z\resource\list\lct\akn_single_large_graphic_pane.xml resource\list\lct\akn_single_large_graphic_pane.xml +data=\epoc32\data\z\resource\list\lct\akn_logical_template_1.xml resource\list\lct\akn_logical_template_1.xml +data=\epoc32\data\z\resource\list\lct\akn_logical_template_2.xml resource\list\lct\akn_logical_template_2.xml +data=\epoc32\data\z\resource\list\lct\akn_logical_template_3.xml resource\list\lct\akn_logical_template_3.xml +data=\epoc32\data\z\resource\list\lct\akn_logical_template_4.xml resource\list\lct\akn_logical_template_4.xml +data=\epoc32\data\z\resource\list\lct\akn_logical_template_5.xml resource\list\lct\akn_logical_template_5.xml +data=\epoc32\data\z\resource\list\lct\akn_logical_template_6.xml resource\list\lct\akn_logical_template_6.xml +data=\epoc32\data\z\resource\list\lct\akn_logical_template_6a.xml resource\list\lct\akn_logical_template_6a.xml +data=\epoc32\data\z\resource\list\lct\akn_logical_template_7.xml resource\list\lct\akn_logical_template_7.xml +data=\epoc32\data\z\resource\list\lct\akn_logical_template_8.xml resource\list\lct\akn_logical_template_8.xml +data=\epoc32\data\z\resource\list\lct\akn_logical_template_12.xml resource\list\lct\akn_logical_template_12.xml - -#if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) - data=\epoc32\data\z\resource\grid\lct\akn_logical_template_3_vga.xml resource\grid\lct\akn_logical_template_3.xml -#else - data=\epoc32\data\z\resource\grid\lct\akn_logical_template_3.xml resource\grid\lct\akn_logical_template_3.xml -#endif - +data=\epoc32\data\z\resource\grid\lct\akn_logical_template_3.xml resource\grid\lct\akn_logical_template_3.xml #endif // MATRIXWIDGETS_IBY diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/src/mmdraweranimator.cpp --- a/menufw/menufwui/mmwidgets/src/mmdraweranimator.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/mmwidgets/src/mmdraweranimator.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -12,7 +12,7 @@ * Contributors: * * Description: - * Version : %version: MM_45 % << Don't touch! Updated by Synergy at check-out. + * Version : %version: MM_44 % << Don't touch! Updated by Synergy at check-out. * */ @@ -141,10 +141,6 @@ refreshRect.BoundingRect( beforeRect ); refreshRect.BoundingRect( afterRect ); } - if( current.GetFloatingItemType() == EPostDragRefreshItem ) - { - iDrawer.RemoveFloatingItem( i-- ); - } } const TInt highlightedItemIndex = iDrawer.Widget()->View()->CurrentItemIndex(); if( iLastNotedHighlight != highlightedItemIndex ) diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/src/mmgrid.cpp --- a/menufw/menufwui/mmwidgets/src/mmgrid.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/mmwidgets/src/mmgrid.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -12,7 +12,7 @@ * Contributors: * * Description: -* Version : %version: MM_108 % << Don't touch! Updated by Synergy at check-out. +* Version : %version: MM_106 % << Don't touch! Updated by Synergy at check-out. * */ @@ -51,6 +51,7 @@ // CMmGrid::~CMmGrid() { + delete iRedrawTimer; } // ----------------------------------------------------------------------------- @@ -215,18 +216,35 @@ void CMmGrid::HandleScrollEventL( CEikScrollBar* aScrollBar, TEikScrollEvent aEventType ) { - if ( aEventType == EEikScrollThumbDragVert ) + if ( aEventType == EEikScrollThumbDragVert && !iScrollbarThumbIsBeingDragged ) { + iScrollbarThumbIsBeingDragged = ETrue; static_cast( View()->ItemDrawer() )->EnableCachedDataUse( ETrue ); + iRedrawTimer->Start( KScrollingRedrawInterval, KScrollingRedrawInterval, + TCallBack( &CMmGrid::RedrawTimerCallback, static_cast( this ) ) ); } else if ( aEventType == EEikScrollThumbReleaseVert ) { + iScrollbarThumbIsBeingDragged = EFalse; static_cast( View()->ItemDrawer() )->EnableCachedDataUse( EFalse ); + // The view will be redrawn with cache disabled when ProcessScrollEventL + // calls the base class's HandleScrollEventL method -- no need to + // explicitly redraw the view. + iRedrawTimer->Cancel(); } + + if ( !iScrollbarThumbIsBeingDragged ) + { ProcessScrollEventL( aScrollBar, aEventType ); } + else + { + __ASSERT_DEBUG( aEventType == EEikScrollThumbDragVert, User::Invariant() ); + ++iSkippedScrollbarEventsCount; + } + } // ----------------------------------------------------------------------------- // Clearing ELeftDownInViewRect flag before invoking the base class @@ -361,12 +379,12 @@ // void CMmGrid::ScrollWithoutRedraw( TInt distanceInPixels ) { - CAknGridView* view = static_cast ( iView ); + CAknGridView* view = static_cast( iView ); const TInt rowHeight = ItemHeight(); const TInt numOfCols = view->NumberOfColsInView(); const TInt itemCount = iModel->NumberOfItems(); TInt totalNumberOfRows = itemCount / numOfCols; - if( itemCount % numOfCols ) + if ( itemCount % numOfCols ) { ++totalNumberOfRows; } @@ -378,8 +396,8 @@ desiredViewPosition += distanceInPixels; const TInt viewPositionMin = 0; - const TInt viewPositionMax = Max( 0, ( totalNumberOfRows * rowHeight ) - - view->ViewRect().Height() ); + const TInt viewPositionMax = + Max( 0, ( totalNumberOfRows * rowHeight ) - view->ViewRect().Height() ); desiredViewPosition = Min( desiredViewPosition, viewPositionMax ); desiredViewPosition = Max( desiredViewPosition, viewPositionMin ); @@ -398,45 +416,47 @@ // TInt CMmGrid::ScrollIfNeeded( const TPointerEvent& aPointerEvent ) { + CAknGridView* view = static_cast( View() ); TInt nextScrollDelay = 0; TBool readyForScrolling = iMmDrawer->GetAnimator()->IsReadyForNewAnimation() - && iMmDrawer->GetFloatingItemCount() != 0; + && iMmDrawer->GetFloatingItemCount() != 0; - if( IsPointerInTopScrollingThreshold( aPointerEvent ) ) - { - // scroll up - TInt startPos = MmGrid::KFocusScrollingThreshold * TReal( - View()->ItemSize().iHeight ); - TInt diff = Max( 1, Min( aPointerEvent.iPosition.iY - - Rect().iTl.iY, startPos ) ); - nextScrollDelay = ( (TReal) diff / (TReal) startPos ) - * ( MmGrid::KEditModeScrollingGridMaxDelay - - MmGrid::KEditModeScrollingGridMinDelay ) - + MmGrid::KEditModeScrollingGridMinDelay; - - if( readyForScrolling ) + if ( IsPointerInTopScrollingThreshold( aPointerEvent ) ) + { + // scroll up by one row + TInt newCurrentItemIndex = CurrentItemIndex() - view->NumberOfColsInView(); + if ( newCurrentItemIndex < 0 ) { - ScrollWithoutRedraw( -MmGrid::KScrollingStep ); + newCurrentItemIndex = CurrentItemIndex(); } - } - else if( IsPointerInBottomScrollingThreshold( aPointerEvent ) ) - { - // scroll down - TInt startPos = MmGrid::KFocusScrollingThreshold * TReal( - View()->ItemSize().iHeight ); - TInt diff = Max( 1, Min( Rect().iBr.iY - - aPointerEvent.iPosition.iY, startPos ) ); - nextScrollDelay = ( (TReal) diff / (TReal) startPos ) - * ( MmGrid::KEditModeScrollingGridMaxDelay - - MmGrid::KEditModeScrollingGridMinDelay ) - + MmGrid::KEditModeScrollingGridMinDelay; + + nextScrollDelay = MmEffects::KEditModeScrollingDelayFactor * + Max( 1, aPointerEvent.iPosition.iY - Rect().iTl.iY ); - if( readyForScrolling ) - { - ScrollWithoutRedraw( MmGrid::KScrollingStep ); - } - } + if ( readyForScrolling ) + { + ScrollWithoutRedraw( -iItemHeight ); + View()->SetCurrentItemIndex( newCurrentItemIndex ); + } + } + else if ( IsPointerInBottomScrollingThreshold( aPointerEvent) ) + { + TInt newCurrentItemIndex = CurrentItemIndex() + view->NumberOfColsInView(); + if ( newCurrentItemIndex > iModel->NumberOfItems() - 1 ) + { + newCurrentItemIndex = CurrentItemIndex(); + } + + nextScrollDelay = MmEffects::KEditModeScrollingDelayFactor * + Max( 1, Rect().iBr.iY - aPointerEvent.iPosition.iY ); + + if ( readyForScrolling ) + { + ScrollWithoutRedraw( iItemHeight ); + View()->SetCurrentItemIndex( newCurrentItemIndex ); + } + } return nextScrollDelay; } @@ -581,6 +601,7 @@ } DoSetupLayoutL(); + iRedrawTimer = CPeriodic::NewL( EPriorityRealTime ); } // ----------------------------------------------------------------------------- @@ -940,6 +961,33 @@ // // ----------------------------------------------------------------------------- // +void CMmGrid::HandleRedrawTimerEventL() + { + if ( iSkippedScrollbarEventsCount ) + { + ProcessScrollEventL( ScrollBarFrame()->VerticalScrollBar(), + EEikScrollThumbDragVert ); + } + iSkippedScrollbarEventsCount = 0; + } + +// ----------------------------------------------------------------------------- +// +// ----------------------------------------------------------------------------- +// +TInt CMmGrid::RedrawTimerCallback( TAny* aPtr ) + { + CMmGrid* self = static_cast( aPtr ); + TRAP_IGNORE( self->HandleRedrawTimerEventL() ); + // Do not bother returning a meaningful error code, CPeriodic will ignore it + // anyway. + return 0; + } + +// ----------------------------------------------------------------------------- +// +// ----------------------------------------------------------------------------- +// void CMmGrid::SetVerticalItemOffset(TInt aOffset) { static_cast (View())->SetItemOffsetInPixels(aOffset); diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/src/mmgridcontainer.cpp --- a/menufw/menufwui/mmwidgets/src/mmgridcontainer.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/mmwidgets/src/mmgridcontainer.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -12,8 +12,8 @@ * Contributors: * * Description: -* Version : %version: MM_77 % << Don't touch! Updated by Synergy at check-out. -* Version : %version: MM_77 % << Don't touch! Updated by Synergy at check-out. +* Version : %version: MM_76 % << Don't touch! Updated by Synergy at check-out. +* Version : %version: MM_76 % << Don't touch! Updated by Synergy at check-out. * */ @@ -400,14 +400,5 @@ return isVisible; } -// ----------------------------------------------------------------------------- -// -// ----------------------------------------------------------------------------- -// -void CMmGridContainer::SetWidgetCommingFromBackground( TBool /*aCommingFromBackground*/) - { - } - // End of File - diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/src/mmlistbox.cpp --- a/menufw/menufwui/mmwidgets/src/mmlistbox.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/mmwidgets/src/mmlistbox.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -58,6 +58,7 @@ // CMmListBox::~CMmListBox() { + delete iRedrawTimer; } // ----------------------------------------------------------------------------- @@ -119,6 +120,7 @@ iItemDrawer->SetDrawMark(EFalse); CEikListBox::ConstructL(aParent,aFlags); iMmDrawer->SetView( this ); + iRedrawTimer = CPeriodic::NewL( EPriorityRealTime ); } // ----------------------------------------------------------------------------- @@ -232,68 +234,53 @@ // // ----------------------------------------------------------------------------- // -void CMmListBox::ScrollWithoutRedraw( TInt distanceInPixels ) - { - // desired view position relative to the first item in list (always positive) - TInt desiredViewPosition = ItemHeight() * TopItemIndex() - VerticalItemOffset(); - desiredViewPosition += distanceInPixels; - - const TInt viewPositionMax = Max( 0, ( iModel->NumberOfItems() - * ItemHeight() ) - iView->ViewRect().Height() ); - - desiredViewPosition = Min( desiredViewPosition, viewPositionMax ); - desiredViewPosition = Max( desiredViewPosition, 0 ); - - ASSERT( desiredViewPosition >= 0 ); - - SetTopItemIndex( desiredViewPosition / ItemHeight() ); - SetVerticalItemOffset( -( desiredViewPosition % ItemHeight() ) ); - } - -// ----------------------------------------------------------------------------- -// -// ----------------------------------------------------------------------------- -// TInt CMmListBox::ScrollIfNeeded( const TPointerEvent& aPointerEvent ) { TInt nextScrollDelay = 0; - TBool readyForScrolling = iMmDrawer->GetAnimator()->IsReadyForNewAnimation() - && iMmDrawer->GetFloatingItemCount() != 0; + TBool readyForScrolling = + iMmDrawer->GetAnimator()->IsReadyForNewAnimation() + && iMmDrawer->GetFloatingItemCount() != 0; - if( IsPointerInTopScrollingThreshold( aPointerEvent ) ) + if ( IsPointerInTopScrollingThreshold( aPointerEvent ) ) + { + // scroll up by one row + TInt newCurrentItemIndex = CurrentItemIndex() - 1; + + if ( newCurrentItemIndex >= 0 ) + { + nextScrollDelay = MmEffects::KEditModeScrollingDelayFactor * + Max( 1, aPointerEvent.iPosition.iY - Rect().iTl.iY ); + if (readyForScrolling) { - // scroll up - TInt startPos = MmListBox::KFocusScrollingThreshold * TReal( - View()->ItemSize().iHeight ); - TInt diff = Max( 1, Min( aPointerEvent.iPosition.iY - - Rect().iTl.iY, startPos ) ); - nextScrollDelay = ( (TReal) diff / (TReal) startPos ) - * ( MmListBox::KEditModeScrollingListBoxMaxDelay - - MmListBox::KEditModeScrollingListBoxMinDelay ) - + MmListBox::KEditModeScrollingListBoxMinDelay; - if( readyForScrolling ) - { - ScrollWithoutRedraw( -MmListBox::KScrollingStep ); - } + View()->VScrollTo( View()->CalcNewTopItemIndexSoItemIsVisible( + newCurrentItemIndex ) ); + View()->SetCurrentItemIndex( newCurrentItemIndex ); + UpdateScrollBarThumbs(); } - else if( IsPointerInBottomScrollingThreshold( aPointerEvent ) ) + } + } + else if ( IsPointerInBottomScrollingThreshold( aPointerEvent) ) + { + // scroll down by one row + TInt lastItemIndex = iModel->NumberOfItems() - 1; + TInt newCurrentItemIndex = CurrentItemIndex() + 1; + + + if ( newCurrentItemIndex <= lastItemIndex ) + { + nextScrollDelay = MmEffects::KEditModeScrollingDelayFactor * + Max( 1, Rect().iBr.iY - aPointerEvent.iPosition.iY ); + + if (readyForScrolling) { - // scroll down - TInt startPos = MmListBox::KFocusScrollingThreshold * TReal( - View()->ItemSize().iHeight ); - TInt diff = Max( 1, Min( Rect().iBr.iY - - aPointerEvent.iPosition.iY, startPos ) ); - nextScrollDelay = ( (TReal) diff / (TReal) startPos ) - * ( MmListBox::KEditModeScrollingListBoxMaxDelay - - MmListBox::KEditModeScrollingListBoxMinDelay ) - + MmListBox::KEditModeScrollingListBoxMinDelay; - - if( readyForScrolling ) - { - ScrollWithoutRedraw( MmListBox::KScrollingStep ); - } + View()->VScrollTo( View()->CalcNewTopItemIndexSoItemIsVisible( + newCurrentItemIndex ) ); + View()->SetCurrentItemIndex( newCurrentItemIndex ); + UpdateScrollBarThumbs(); } + } + } return nextScrollDelay; } @@ -402,6 +389,33 @@ // // ----------------------------------------------------------------------------- // +void CMmListBox::HandleRedrawTimerEventL() + { + if ( iSkippedScrollbarEventsCount ) + { + ProcessScrollEventL( ScrollBarFrame()->VerticalScrollBar(), + EEikScrollThumbDragVert ); + } + iSkippedScrollbarEventsCount = 0; + } + +// ----------------------------------------------------------------------------- +// +// ----------------------------------------------------------------------------- +// +TInt CMmListBox::RedrawTimerCallback( TAny* aPtr ) + { + CMmListBox* self = static_cast( aPtr ); + TRAP_IGNORE( self->HandleRedrawTimerEventL() ); + // Do not bother returning a meaningful error code, CPeriodic will ignore it + // anyway. + return 0; + } + +// ----------------------------------------------------------------------------- +// +// ----------------------------------------------------------------------------- +// TKeyResponse CMmListBox::OfferKeyEventL( const TKeyEvent& aKeyEvent,TEventCode aType ) { @@ -942,17 +956,34 @@ void CMmListBox::HandleScrollEventL( CEikScrollBar* aScrollBar, TEikScrollEvent aEventType ) { - if ( aEventType == EEikScrollThumbDragVert ) + if ( aEventType == EEikScrollThumbDragVert && !iScrollbarThumbIsBeingDragged ) { + iScrollbarThumbIsBeingDragged = ETrue; static_cast( View()->ItemDrawer() )->EnableCachedDataUse( ETrue ); + iRedrawTimer->Start( KScrollingRedrawInterval, KScrollingRedrawInterval, + TCallBack( &CMmListBox::RedrawTimerCallback, static_cast( this ) ) ); } else if ( aEventType == EEikScrollThumbReleaseVert ) { + iScrollbarThumbIsBeingDragged = EFalse; static_cast( View()->ItemDrawer() )->EnableCachedDataUse( EFalse ); + // The view will be redrawn with cache disabled when ProcessScrollEventL + // calls the base class's HandleScrollEventL method -- no need to + // explicitly redraw the view. + iRedrawTimer->Cancel(); } - ProcessScrollEventL( aScrollBar, aEventType ); + + if ( !iScrollbarThumbIsBeingDragged ) + { + ProcessScrollEventL( aScrollBar, aEventType ); + } + else + { + __ASSERT_DEBUG( aEventType == EEikScrollThumbDragVert, User::Invariant() ); + ++iSkippedScrollbarEventsCount; + } } // End of file diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/src/mmlistboxcontainer.cpp --- a/menufw/menufwui/mmwidgets/src/mmlistboxcontainer.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/mmwidgets/src/mmlistboxcontainer.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -12,7 +12,7 @@ * Contributors: * * Description: -* Version : %version: MM_67 % << Don't touch! Updated by Synergy at check-out. +* Version : %version: MM_66 % << Don't touch! Updated by Synergy at check-out. * */ @@ -35,7 +35,6 @@ #include "mmtemplatelibrary.h" #include "mmpostevaluationprocessor.h" #include "mmdraweranimator.h" -#include "mmlistboxview.h" // ============================ MEMBER FUNCTIONS =============================== @@ -328,16 +327,4 @@ { iListBox->UpdateScrollBarThumbs(); } - -//---------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -void CMmListBoxContainer::SetWidgetCommingFromBackground( - TBool aCommingFromBackground ) - { - CMmListBoxView* view = static_cast ( Widget()->View() ); - view->SetListCommingFromBackground( aCommingFromBackground ); - } - // End of File diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/src/mmlistboxitemdrawer.cpp --- a/menufw/menufwui/mmwidgets/src/mmlistboxitemdrawer.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/mmwidgets/src/mmlistboxitemdrawer.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -342,7 +342,7 @@ iZoomIconIndex = tempZoomIconIndex; } } - else if( type != EPostDragRefreshItem ) + else { iFloatingItems.Remove( i ); } diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/src/mmlistboxview.cpp --- a/menufw/menufwui/mmwidgets/src/mmlistboxview.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/mmwidgets/src/mmlistboxview.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -12,7 +12,7 @@ * Contributors: * * Description: - * Version : %version: MM_56 % << Don't touch! Updated by Synergy at check-out. + * Version : %version: MM_55 % << Don't touch! Updated by Synergy at check-out. * */ @@ -81,7 +81,6 @@ void CMmListBoxView::ConstructL () { iPreviouslyDrawnCurrentItemIndex = KErrNotFound; - iListCommingFromBackground = EFalse; } // ----------------------------------------------------------------------------- @@ -248,9 +247,8 @@ view->UpdateAverageItemHeight (); CMmListBoxModel* model = static_cast< CMmListBoxModel* > ( iModel ); - if( model && model->GetSuiteModel() - && !model->GetSuiteModel()->GetItemsOrder()->IsSuiteReadyToShow() - && !GetListCommingFromBackground() ) + if ( model && model->GetSuiteModel() + && !model->GetSuiteModel()->GetItemsOrder()->IsSuiteReadyToShow() ) { return; } @@ -632,23 +630,4 @@ iScrollToItemDisabled = aDisable; } -// ----------------------------------------------------------------------------- -// -// ----------------------------------------------------------------------------- -// -TBool CMmListBoxView::GetListCommingFromBackground() const - { - return iListCommingFromBackground; - } - -// ----------------------------------------------------------------------------- -// -// ----------------------------------------------------------------------------- -// -void CMmListBoxView::SetListCommingFromBackground( - TBool aCommingFromBackground ) - { - iListCommingFromBackground = aCommingFromBackground; - } - // End of file diff -r b01126ce0bec -r ba63c83f4716 menufw/menufwui/mmwidgets/src/mmwidgetcontainer.cpp --- a/menufw/menufwui/mmwidgets/src/mmwidgetcontainer.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menufwui/mmwidgets/src/mmwidgetcontainer.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -12,7 +12,7 @@ * Contributors: * * Description: -* Version : %version: MM_71.1.17.1.75 % << Don't touch! Updated by Synergy at check-out. +* Version : %version: MM_71.1.17.1.70.2.1 % << Don't touch! Updated by Synergy at check-out. * */ @@ -111,8 +111,7 @@ , iRecipientId( KErrNotFound ) , iEventParameters( NULL ) , iDialogOpened( EFalse ) - , iHighlightVisibleBeforeLongTap( EFalse ) - , iResetHighlight( EFalse ) + , iHighlightVisibleBeforeLongTap( EFalse ) { iWidgetPositionCache.iValid = EFalse; } @@ -216,8 +215,8 @@ { iDraggedIndex = KErrNotFound; } - iItemRelativeTapPoint = aPointerEvent.iPosition - - iWidget->View()->ItemPos( iDraggedIndex ); + iItemRelativeTapPoint = aPointerEvent.iPosition - iWidget->View()->ItemPos( + iDraggedIndex ); } // ----------------------------------------------------------------------------- @@ -314,7 +313,7 @@ { iDragAndDropObserver->HandleDragOverL( GetHighlight() ); } - + TPoint centerPoint( aPointerEvent.iPosition ); if( WidgetType() == EGridWidget ) { // move item's TL corner by half width/height to center item horizontally. @@ -327,7 +326,7 @@ // move item's L of corner by half height to center item horizontally. centerPoint.iY -= ( iWidget->View()->ItemSize( highlight ).iHeight / 2 ); } - + if( !tooFast ) { TSize itemSize = iWidget->View()->ItemSize( highlight ); @@ -678,16 +677,6 @@ HandleButtonDownL( aPointerEvent ); iDragAndDropObserver->HandleDragStartL( GetHighlight() ); } - else if( IsNoItemDragged() && ( aPointerEvent.iType - == TPointerEvent::EButton1Up ) ) - { - iWidget->View()->ItemDrawer()->SetFlags( - CListItemDrawer::ESingleClickDisabledHighlight ); - TInt highlight = GetHighlight(); - CListBoxView* view = Widget()->View(); - Widget()->DrawNow( TRect( view->ItemPos( highlight ), - view->ItemSize( highlight ) ) ); - } else if( ( aPointerEvent.iType == TPointerEvent::EDrag || aPointerEvent.iType == TPointerEvent::EButtonRepeat ) && iDraggedIndex != KErrNotFound ) @@ -1154,9 +1143,9 @@ if( resp == EKeyWasNotConsumed ) { - resp = iWidget->OfferKeyEventL( aKeyEvent, aType ); + resp = iWidget->OfferKeyEventL( aKeyEvent, aType ); } - + if( iKeyEventObserver ) { resp = iKeyEventObserver->HandleKeyPressedL( aKeyEvent, aType ); @@ -1176,7 +1165,7 @@ SetHighlightVisibilityL( ETrue ); SetDefaultHighlightL( ETrue ); - HandleForegroundGainedL(); + HandleForegroundGainedL(); } } return resp; @@ -1744,9 +1733,7 @@ iWidgetPositionCache.iValid = EFalse; iWidgetPositionCache.iHighlightedItemId = KErrNotFound; Widget()->SetTopItemIndex( 0 ); - Widget()->View()->SetCurrentItemIndex( 0 ); SetVerticalItemOffset( 0 ); - iResetHighlight = ETrue; } // --------------------------------------------------------------------------- @@ -1890,12 +1877,11 @@ // EXPORT_C TBool CMmWidgetContainer::ScrollToItemL( TInt aIndex ) { - TBool scrollConsumed( EFalse ); + TInt scrollConsumed( EFalse ); if( aIndex >= 0 && aIndex <= NumberOfItems() ) { scrollConsumed = AlignBottomOfViewL(); - if ( ( !scrollConsumed || iResetHighlight ) - && Widget()->View()->ItemIsPartiallyVisible(aIndex) ) + if ( !scrollConsumed && Widget()->View()->ItemIsPartiallyVisible(aIndex)) { // the case when the item is partially visible at top or // bottom of screen. The view is scrolled the offset to @@ -1911,6 +1897,7 @@ ScrollInPixelsL( offset ); scrollConsumed = ETrue; } + } else if( !Widget()->View()->ItemIsVisible( aIndex ) ) { @@ -1920,7 +1907,6 @@ AlignBottomOfViewL(); scrollConsumed = ETrue; } - iResetHighlight = EFalse; } return scrollConsumed; } @@ -2083,14 +2069,4 @@ iListBoxObserver->HandleListBoxEventL( aListBox, aEventType ); } } - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -EXPORT_C void CMmWidgetContainer::SetWidgetCommingFromBackground( TBool /*aCommingFromBackground*/) - { - // this method must not be implemented. Change and implement only descended methods. - } - //End of file diff -r b01126ce0bec -r ba63c83f4716 menufw/menusuites/foldersuite/data/matrixmenudata.xml --- a/menufw/menusuites/foldersuite/data/matrixmenudata.xml Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menusuites/foldersuite/data/matrixmenudata.xml Wed Oct 13 14:18:30 2010 +0300 @@ -160,37 +160,23 @@ mask_id="16405" param="messaging:audiomsg"/> - - - - - - - + param="logs:dialed" + icon_skin_minor_id="0x1a00" + icon_skin_major_id="0x100056c6"/> diff -r b01126ce0bec -r ba63c83f4716 menufw/menusuites/foldersuite/data/matrixmenudata_vga.xml --- a/menufw/menusuites/foldersuite/data/matrixmenudata_vga.xml Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,431 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r b01126ce0bec -r ba63c83f4716 menufw/menusuites/foldersuite/group/bld.inf --- a/menufw/menusuites/foldersuite/group/bld.inf Wed Sep 15 12:00:00 2010 +0300 +++ b/menufw/menusuites/foldersuite/group/bld.inf Wed Oct 13 14:18:30 2010 +0300 @@ -42,11 +42,7 @@ #ifdef _MATRIX_MENU_INCLUDE_TEST_CONTENT ../data/matrixmenudatatestcontent.xml Z:/private/200113DD/content/matrixmenudata.xml #else -// #if defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) || defined (FF_LAYOUT_480_640_TOUCH_VGA4) || defined (FF_LAYOUT_640_480_TOUCH_VGA4) -// ../data/matrixmenudata_vga.xml Z:/private/200113DD/content/matrixmenudata.xml -// #else ../data/matrixmenudata.xml Z:/private/200113DD/content/matrixmenudata.xml -// #endif #endif ../data/matrixmenudata.dtd Z:/private/200113DD/content/01/matrixmenudata.dtd diff -r b01126ce0bec -r ba63c83f4716 menufw/menusuites/foldersuite/loc/matrixmenudata.loc Binary file menufw/menusuites/foldersuite/loc/matrixmenudata.loc has changed diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/contextengine/tsfswpreviewprovider/inc/tspreviewobserver.h --- a/taskswitcher/contextengine/tsfswpreviewprovider/inc/tspreviewobserver.h Wed Sep 15 12:00:00 2010 +0300 +++ b/taskswitcher/contextengine/tsfswpreviewprovider/inc/tspreviewobserver.h Wed Oct 13 14:18:30 2010 +0300 @@ -61,7 +61,7 @@ * @param aWgId Window group id of the application * @param aClockwise marks direction of the rotation (ETrue - clockwise, EFalse - counter clockwise) */ - virtual void HandleFswPpApplicationBitmapRotation( TInt aWgId, TInt aFbsHandle, TBool aClockwise ) = 0; + virtual void HandleFswPpApplicationBitmapRotation( TInt aWgId, TBool aClockwise ) = 0; }; #endif // TSPREVIEWOBSERVER_H diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/contextengine/tsfswpreviewprovider/src/tspropertylistener.cpp --- a/taskswitcher/contextengine/tsfswpreviewprovider/src/tspropertylistener.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/taskswitcher/contextengine/tsfswpreviewprovider/src/tspropertylistener.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -71,14 +71,12 @@ } case EOperationBitmapRotation90: { - iObs.HandleFswPpApplicationBitmapRotation( iWgId, - iFbsBitmapId, ETrue ); + iObs.HandleFswPpApplicationBitmapRotation( iWgId, ETrue ); break; } case EOperationBitmapRotation270: { - iObs.HandleFswPpApplicationBitmapRotation( iWgId, - iFbsBitmapId, EFalse ); + iObs.HandleFswPpApplicationBitmapRotation( iWgId, EFalse ); break; } default: diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/contextengine/tsfswpreviewprovider/wsplugin/inc/previewprovidercrp.h --- a/taskswitcher/contextengine/tsfswpreviewprovider/wsplugin/inc/previewprovidercrp.h Wed Sep 15 12:00:00 2010 +0300 +++ b/taskswitcher/contextengine/tsfswpreviewprovider/wsplugin/inc/previewprovidercrp.h Wed Oct 13 14:18:30 2010 +0300 @@ -117,7 +117,7 @@ /* * Allocate resources and take screenshot */ - void ScreenshotL( TBool aRotation ); + void ScreenshotL(); /** * Takes the screenshot. @@ -144,7 +144,7 @@ /** * Notifies the PreviewProviderClient when screenshot is ready for copying. */ - void ScaleCompleteL( const CFbsBitmap& aBitmap, TBool aRotation ); + void ScaleCompleteL(const CFbsBitmap& aBitmap); /** * Notifies the PreviewProviderClient when an application has been exited. @@ -152,6 +152,11 @@ void UnregisterComplete( TInt aWgId ); /** + * Notifies the PreviewProviderClient that specific bitmap needs rotation. + */ + void BitmapRotationNeeded( TInt aWgId, TBool aClockwise ); + + /** * Uses window server front buffer to create a screenshot. * @param aFront preallocated destination bitmap * @param aFront Front buffer. diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/contextengine/tsfswpreviewprovider/wsplugin/src/previewprovidercrp.cpp --- a/taskswitcher/contextengine/tsfswpreviewprovider/wsplugin/src/previewprovidercrp.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/taskswitcher/contextengine/tsfswpreviewprovider/wsplugin/src/previewprovidercrp.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -33,7 +33,7 @@ // CONSTANTS const TInt KImpId( 0x20016BEC ); -const TInt64 KMinTimeForOrientationSwitch = 500000; // 0.5 second +const TInt KMinTimeForOrientationSwitch = 1; // 1 second // -------------------------------------------------------------------------- // CPreviewProviderCRP::CreateL @@ -126,7 +126,7 @@ iScreenshotMode = static_cast( in.ReadInt32L() ); break; case NPreviewMsg::ETakePreview: - ScreenshotL( FALSE ); + ScreenshotL(); break; case NPreviewMsg::EAckPreviewReady: RemoveScreenshot( in.ReadInt32L() ); @@ -172,18 +172,21 @@ { TTime currTime; currTime.HomeTime(); - TTimeIntervalMicroSeconds micSecondsFrom = currTime.MicroSecondsFrom( iScreenChangedTime ); - if ( micSecondsFrom.Int64() > KMinTimeForOrientationSwitch ) + TTimeIntervalSeconds secondsFrom; + TInt err = currTime.SecondsFrom( iScreenChangedTime, secondsFrom ); + if ( err != KErrNone || secondsFrom.Int() > KMinTimeForOrientationSwitch ) { if ( iLastWgIdRedraw ) { - TRAP_IGNORE( ScreenshotL( FALSE ) ); + TRAP_IGNORE( ScreenshotL() ); } } else { // Reset time to allow screenshot taking on next wg change iScreenChangedTime = 0; + // Order screenshot rotation + BitmapRotationNeeded( iPrevId?iPrevId:iPrevReg, iClockwiseRot ); } iPrevReg = 0; } @@ -195,9 +198,7 @@ iScreenChangedTime.HomeTime(); if ( iLastWgIdRedraw ) { - TRAP_IGNORE( - ScreenshotL( TRUE ); - ); + TRAP_IGNORE( ScreenshotL() ); } } else if ( aEvent.Type() == TWservCrEvent::EScreenDrawing ) @@ -212,22 +213,13 @@ // CPreviewProviderCRP::ScaleComplete // -------------------------------------------------------------------------- // -void CPreviewProviderCRP::ScaleCompleteL( const CFbsBitmap& aBitmap, - TBool aRotation ) +void CPreviewProviderCRP::ScaleCompleteL( const CFbsBitmap& aBitmap ) { TSLOG_CONTEXT( ScaleComplete, TSLOG_LOCAL ); TSLOG_IN(); - TInt msgType = NPreviewMsg::EPreviewReady; - if ( aRotation ) - { - msgType = iClockwiseRot ? - NPreviewMsg::EBitmapRotationNeeded90 : - NPreviewMsg::EBitmapRotationNeeded270; - } - const TInt msg[] = { - msgType, + NPreviewMsg::EPreviewReady, iPrevId?iPrevId:iPrevReg, aBitmap.Handle() }; @@ -260,6 +252,28 @@ TSLOG_OUT(); } + +// -------------------------------------------------------------------------- +// CPreviewProviderCRP::BitmapRotationNeeded +// -------------------------------------------------------------------------- +// +void CPreviewProviderCRP::BitmapRotationNeeded( TInt aWgId, TBool aClockwise ) + { + TSLOG_CONTEXT( BitmapRotationNeeded, TSLOG_LOCAL ); + TSLOG_IN(); + + const TInt msg[] = { + aClockwise ? NPreviewMsg::EBitmapRotationNeeded90 : NPreviewMsg::EBitmapRotationNeeded270, + aWgId, + 0 + }; + TPckgC buf(msg); + SendMessage(buf); + + TSLOG_OUT(); + } + + // -------------------------------------------------------------------------- // CPreviewProviderCRP::Register // -------------------------------------------------------------------------- @@ -299,12 +313,12 @@ // CPreviewProviderCRP::ScreenShotL // -------------------------------------------------------------------------- // -void CPreviewProviderCRP::ScreenshotL( TBool aRotation ) +void CPreviewProviderCRP::ScreenshotL() { CFbsBitmap* screenshot = new (ELeave)CFbsBitmap(); CleanupStack::PushL( screenshot ); ScreenshotL( *screenshot ); - ScaleCompleteL( *screenshot, aRotation ); + ScaleCompleteL( *screenshot ); iScreenshots.InsertL( screenshot, iScreenshots.Count() ); CleanupStack::Pop( screenshot ); CheckOverflow(); diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/contextengine/tsfswserver/engine/inc/tsfswdatalist.h --- a/taskswitcher/contextengine/tsfswserver/engine/inc/tsfswdatalist.h Wed Sep 15 12:00:00 2010 +0300 +++ b/taskswitcher/contextengine/tsfswserver/engine/inc/tsfswdatalist.h Wed Oct 13 14:18:30 2010 +0300 @@ -148,11 +148,11 @@ * @return parent wg id or KErrNotFound if there is no parent */ TInt FindMostTopParentWgId( TInt aWgId ); - + /** - * Remove all screenshots from hidden apps, they are not used. + * Checks whether window group id was used by contained data. */ - void RemoveHiddenAppsScrenshotsL(); + TBool CheckForWgIdUsage( TInt aWgId ); private: /** diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/contextengine/tsfswserver/engine/inc/tsfswengine.h --- a/taskswitcher/contextengine/tsfswserver/engine/inc/tsfswengine.h Wed Sep 15 12:00:00 2010 +0300 +++ b/taskswitcher/contextengine/tsfswserver/engine/inc/tsfswengine.h Wed Oct 13 14:18:30 2010 +0300 @@ -140,8 +140,7 @@ // from MTsFastSwapPreviewObserver void HandleFswPpApplicationChange( TInt aWgId, TInt aFbsHandle ); void HandleFswPpApplicationUnregistered( TInt aWgId ); - void HandleFswPpApplicationBitmapRotation( TInt aWgId, - TInt aFbsHandle, TBool aClockwise ); + void HandleFswPpApplicationBitmapRotation( TInt aWgId, TBool aClockwise ); void RotateL( CFbsBitmap& aBitmap, TInt aWgId, TBool aClockwise ); diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/contextengine/tsfswserver/engine/src/tsfswdatalist.cpp --- a/taskswitcher/contextengine/tsfswserver/engine/src/tsfswdatalist.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/taskswitcher/contextengine/tsfswserver/engine/src/tsfswdatalist.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -836,28 +836,28 @@ } // -------------------------------------------------------------------------- -// CTsFswDataList::RemoveScreenshotFromParent +// CTsFswDataList::CheckForWgIdUsage // -------------------------------------------------------------------------- // -void CTsFswDataList::RemoveHiddenAppsScrenshotsL() +TBool CTsFswDataList::CheckForWgIdUsage( TInt aWgId ) { - RArray hiddenWgIds; - THashMapIter iter( iScreenshots ); - while ( const TInt* wgIdkey = iter.NextKey() ) + // check the dirty flag and refresh if needed + if ( iTaskListDirty ) { - TInt wgId = *wgIdkey; - TBool hidden = HiddenApps()->IsHiddenL( AppUidForWgIdL( wgId), - iWsSession, wgId ); - if( hidden ) + TRAP_IGNORE ( CollectTasksL(); ); + // clear dirty flag + SetDirty(EFalse); + } + TBool used( EFalse ); + TInt count = iData.Count(); + for (TInt i = 0; i < count; i++ ) + { + if( iData[i]->WgId() == aWgId ) { - hiddenWgIds.Append( wgId ); + used = ETrue; + break; } } - for ( TInt i = 0; i < hiddenWgIds.Count(); i++) - { - RemoveScreenshot( hiddenWgIds[i] ); - } - hiddenWgIds.Reset(); + return used; } - // end of file diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/contextengine/tsfswserver/engine/src/tsfswengine.cpp --- a/taskswitcher/contextengine/tsfswserver/engine/src/tsfswengine.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/taskswitcher/contextengine/tsfswserver/engine/src/tsfswengine.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -364,7 +364,6 @@ void CTsFswEngine::HiddenAppListUpdated() { UpdateTaskList(); - TRAP_IGNORE( iDataList->RemoveHiddenAppsScrenshotsL(); ) } // -------------------------------------------------------------------------- @@ -490,15 +489,11 @@ wgId = aWgId; } TInt err = iDataList->AppUidForWgId( wgId, appUid ); - TBool hidden = EFalse; - TRAP_IGNORE( - hidden = iDataList->HiddenApps()->IsHiddenL( appUid, iWsSession, aWgId) ); - if ( err || - KTsCameraUid == appUid || - hidden ) + TBool exists = iDataList->CheckForWgIdUsage( wgId ); + if ( err || appUid == KTsCameraUid || !exists ) { - // Dont't assign screenshot to camera app or hidden app - TSLOG0( TSLOG_LOCAL, "Screenshot for camera or hidden app - ignore" ); + // Dont't assign screenshot to camera app + TSLOG0( TSLOG_LOCAL, "Screenshot for camera - ignore" ); iPreviewProvider->AckPreview(aFbsHandle); TSLOG_OUT(); return; @@ -535,14 +530,11 @@ // Callback from CTsFastSwapPreviewProvider // -------------------------------------------------------------------------- // -void CTsFswEngine::HandleFswPpApplicationBitmapRotation( TInt aWgId, - TInt aFbsHandle, TBool aClockwise ) +void CTsFswEngine::HandleFswPpApplicationBitmapRotation( TInt aWgId, TBool aClockwise ) { TSLOG_CONTEXT( HandleFswPpApplicationBitmapRotation, TSLOG_LOCAL ); TSLOG1_IN( "aWgId = %d", aWgId ); - HandleFswPpApplicationChange( aWgId, aFbsHandle ); - CFbsBitmap** bmp = iDataList->FindScreenshot(aWgId); if ( bmp ) @@ -596,8 +588,13 @@ // Update task list iRotaTasks.Remove(idx); } - - if ( aError == KErrNone ) + TInt wgId = iDataList->FindMostTopParentWgId(aWgId); + if ( wgId == KErrNotFound ) + { + wgId = aWgId; + } + TBool exists = iDataList->CheckForWgIdUsage( wgId ); + if ( aError == KErrNone && exists ) { StoreScreenshot(aWgId, aBitmap); } diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/taskswitcherui/taskswitcherapp/group/tsapp.mmp --- a/taskswitcher/taskswitcherui/taskswitcherapp/group/tsapp.mmp Wed Sep 15 12:00:00 2010 +0300 +++ b/taskswitcher/taskswitcherui/taskswitcherapp/group/tsapp.mmp Wed Oct 13 14:18:30 2010 +0300 @@ -20,9 +20,7 @@ #include #include "../inc/tsuid.hrh" -#ifndef WINSCW - EPOCHEAPSIZE 0x100000 0xa00000 // 1 Mb - 10 Mb -#endif +EPOCHEAPSIZE 0x100000 0xa00000 // 1 Mb - 10 Mb EPOCSTACKSIZE 0x5000 // 20KB TARGET taskswitcher.exe @@ -39,7 +37,6 @@ SOURCE tstaskswitcher.cpp SOURCE tsappview.cpp SOURCE tsfastswaparea.cpp -SOURCE tsfastswapareautils.cpp SOURCE tsfastswapgrid.cpp SOURCE tsdevicestate.cpp SOURCE tseventcontroler.cpp @@ -84,7 +81,6 @@ LIBRARY akntouchgesturefw.lib LIBRARY aknphysics.lib LIBRARY touchfeedback.lib -LIBRARY bitmaptransforms.lib DEBUGLIBRARY flogger.lib diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/taskswitcherui/taskswitcherapp/inc/tsappui.h --- a/taskswitcher/taskswitcherui/taskswitcherapp/inc/tsappui.h Wed Sep 15 12:00:00 2010 +0300 +++ b/taskswitcher/taskswitcherui/taskswitcherapp/inc/tsappui.h Wed Oct 13 14:18:30 2010 +0300 @@ -45,6 +45,9 @@ public: enum { + //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + //TODO make maping to NGA transition id + //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ENoneTransition = 0, EForegroundTransition = 3, EBackgroundTransition = 4, @@ -211,13 +214,6 @@ * Currently it recognises only camera app as multimedia app. */ TBool IsUnderlyingAppMultimediaL(); - - /** - * Obtain aplication id by it's window group Id. - * - * @return TUid aplication id. - */ - TUid GetAppIdL( TInt aWgId ); private: diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/taskswitcherui/taskswitcherapp/inc/tsfastswaparea.h --- a/taskswitcher/taskswitcherui/taskswitcherapp/inc/tsfastswaparea.h Wed Sep 15 12:00:00 2010 +0300 +++ b/taskswitcher/taskswitcherui/taskswitcherapp/inc/tsfastswaparea.h Wed Oct 13 14:18:30 2010 +0300 @@ -34,8 +34,6 @@ class CTsEventControler; class MTsDataChangeObserver; class CAknLongTapAnimation; -class CTsFastSwapAreaExtension; -class CAknPointerEventSuppressor; /** * Taskswitcher Fast Swap area UI. @@ -182,13 +180,6 @@ void HandleListBoxEventL(CEikListBox* aListBox, TListBoxEvent aEventType); public: - - enum TsFastSwapAreaGridData { - EMaxItemsOnScreen = 1, - EGridItemWidth, - EGridItemGap - }; - /** * Implements drag gesture handling * @see MTsEventControlerObserver @@ -238,21 +229,6 @@ */ TBool WgOnTaskList( TInt aWgId ); - /** - * Returns full grid view size. - */ - TSize GridWorldSize(); - - /** - * Retrieves number of items in grid - */ - TInt GridItemCount(); - - /** - * Returnes value of the requested grid data - */ - TInt GetGridItemData( TsFastSwapAreaGridData aDataType ); - public: // from CCoeControl TInt CountComponentControls() const; @@ -286,26 +262,23 @@ * Switches to another application. */ void SwitchToApp( TInt aWgId, const TUid& aUid ); - - /** - * Update and prepare data for grid. - */ - void GetContentForGrid(); /** - * Obtain actual data from server. - */ - void GetContentL(); + * Makes a copy of the given bitmap. + * Also scaled to the given size, but maintains aspect ratio, + * so the size of the returned bitmap may be less then aSize. + */ + CFbsBitmap* CopyBitmapL( TInt aFbsHandle, TSize aSize ); + + /** + * Called from HandleFswContentChanged. + */ + void HandleFswContentChangedL(); /** - * Prepare the content from iArray to be shown on the screen. + * Shows the content from iArray on the screen. */ - void RenderContentL( ); - - /** - * Prepare bitmap for item. - */ - CGulIcon* CreateItemIconLC( CTsFswEntry* aEntry, TBool aIsScreenshot ); + void RenderContentL( TBool aSuppressAnimation = EFalse ); /** * Creates the ganes grid control. @@ -323,6 +296,11 @@ * @param aItemCount number of items in grid */ void LayoutGridViewL( TInt aItemCount ); + + /** + * Returns rectangles for fast swap area controls + */ + void GetFastSwapAreaRects( RArray& aRects ); /** * Creates a stylus popup instance (iPopup) if not yet done. @@ -342,6 +320,22 @@ void NotifyChange(); /** + * Retrieves and returns size for image graphics. + */ + TSize PreferredImageSize(); + + /** + * Retrieves number of items in grid + */ + TInt GridItemCount(); + + /** + * Calculates the correct size if aspect ratio needs to be preserved. + */ + TSize CalculateSizePreserveRatio(const TSize& aTargetAreaSize, + const TSize& aSourceSize); + + /** * Selects next item in grid */ void SelectNextItem(); @@ -356,6 +350,11 @@ void CenterItem( TInt aRedrawDelay); /** + * Returns full grid view size. + */ + TSize GridWorldSize(); + + /** * Updates grid, called for manual grid scroll update * * @param aForceRedraw if set to ETrue - redraw will be forced @@ -370,12 +369,53 @@ TSize ViewSize(); /** + * Returns the position of the given item inside grid world rect. + * Returns point in the middle of the view rectangle. + * + * @param aItemIdx index of the item for which calculation will be done + */ + TPoint ItemViewPosition( TInt aItemIdx ); + + /** + * Returns index of the shown item, based on the logical + * position of the grids view. Item that is closest to the + * middle of screen is returned. + * + * @param aViewPos grids view position. This must be point in + * the middle of the view rectangle + * @return index of the item + */ + TInt ViewToVisibleItem( const TPoint aViewPos ); + + /** + * Launches increasing pop-up feedback. + */ + void LaunchPopupFeedback(); + + /** * Show highlight when disabled and * consume EEventKeyUp that follows after event that swiched on the highlight. */ TKeyResponse ShowHighlightOnKeyEvent(const TKeyEvent& aKeyEvent, TEventCode aType); /** + * Returns current screen orientation: + * + * @return 1 if landscape, 0 if portait + */ + TInt GetCurrentScreenOrientation(); + + /** + * Retrieves variety value, based on current screen resolution. + * + * @param aVariety result of the function, 0 value means portrait + * value of 1 indicates landscape + * @return ETrue if screen resolution differs from vale returned by + * layout meta data functions. + */ + TBool GetVariety( TInt& aVariety ); + + /** * Cancels long tap animation. */ void CancelLongTapAnimation( TBool aDisablePopup = ETrue ); @@ -389,19 +429,11 @@ */ TBool LongTapAnimForPos( const TPoint& aHitPoint ); - /** - * Count grid rectangle based on given item position - */ - TRect CountCenteredGridRect( TPoint aItemPosition); - private: // Data // parent control CCoeControl& iParent; - // utility helper class - CTsFastSwapAreaExtension* iFastSwapExt; - // device state // not own CTsDeviceState& iDeviceState; @@ -453,8 +485,6 @@ // Key event handling TBool iConsumeEvent; TBool iKeyEvent; - CAknPointerEventSuppressor* iEventSupressor; - TBool iSupressDrag; // App closing handling RArray iIsClosing; @@ -465,10 +495,6 @@ CAknLongTapAnimation* iLongTapAnimation; CTsFastSwapTimer* iLongTapAnimationTimer; TBool iLongTapAnimationRunning; - - // Screenshot handling - RArray iPrevScreenshots; - RArray iPrevWgIds; }; #endif // TSFASTSWAPAREA_H diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/taskswitcherui/taskswitcherapp/inc/tsfastswapareautils.h --- a/taskswitcher/taskswitcherui/taskswitcherapp/inc/tsfastswapareautils.h Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,231 +0,0 @@ -/* -* Copyright (c) 2008 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Fast swap area utilities classes - * -*/ - -#ifndef TSFASTSWAPAREAUTILS_H_ -#define TSFASTSWAPAREAUTILS_H_ - -#include - -// Forwar class declarations -class CEikonEnv; -class TAknLayoutRect; -class CTsFastSwapTimer; -class CTsFastSwapArea; -class CTsFastSwapGrid; -class CTsFswEntry; -class CBitmapScaler; -class CTsFastSwapAreaExtension; - - -/** - * Interface for observing timer class. - */ -class MTsFastSwapTimerObserver - { -public: - /** - * Called when timer is completed - */ - virtual void TimerCompletedL( CTsFastSwapTimer* aSource ) = 0; - }; - - - -/** - * Timer class for handling timed events - */ -class CTsFastSwapTimer : public CTimer - { -public: - // Constructor - CTsFastSwapTimer( MTsFastSwapTimerObserver& aObserver ); - // Destructor - ~CTsFastSwapTimer(); - // 2nd phase constructor - void ConstructL(); - -private: // From CTimer - void RunL(); - -private: // Data - MTsFastSwapTimerObserver* iObserver; // not own - }; - - - -/** - * Asynchronous class for handling screenshots loading - * and rescaling to achieve better quality. - */ -class CTsBitmapScaleTask : public CActive - { -public: - CTsBitmapScaleTask( CTsFastSwapAreaExtension& aObserver ); - ~CTsBitmapScaleTask(); - void StartLD( CFbsBitmap* aSourceBitmap, - CFbsBitmap* aTargetBitmap ); -private: - void RunL(); - void DoCancel(); -private: - // Data - CTsFastSwapAreaExtension& iObserver; - CBitmapScaler* iScaler; // owned - CFbsBitmap* iSourceBmp; // owned - }; - - - -/** - * Utility class containg methods for fast swap area handling. - */ -class CTsFastSwapAreaExtension: public CBase - { - -public: - - /** - * Two-phase constructor. - * - * @param aRect Area where fast swap info & list should draw itself. - * @param aParent Parent CoeControl. - */ - static CTsFastSwapAreaExtension* NewL( CTsFastSwapArea& aFastSwapArea, - CEikonEnv& aEnv); - - /** - * @copydoc NewL - */ - static CTsFastSwapAreaExtension* NewLC( CTsFastSwapArea& aFastSwapArea, - CEikonEnv& aEnv ); - - /** - * Destructor. - */ - ~CTsFastSwapAreaExtension(); - -private: - - /** - * @copydoc NewL - */ - void ConstructL(); - - /** - * C++ constructor. - */ - CTsFastSwapAreaExtension( CTsFastSwapArea& aFastSwapArea, - CEikonEnv& aEnv ); - -public: - - /** - * Returns current screen orientation: - * - * @return 1 if landscape, 0 if portait - */ - TInt GetCurrentScreenOrientation(); - - /** - * Retrieves variety value, based on current screen resolution. - * - * @param aVariety result of the function, 0 value means portrait - * value of 1 indicates landscape - * @return ETrue if screen resolution differs from vale returned by - * layout meta data functions. - */ - TBool GetVariety( TInt& aVariety ); - - /** - * Returns rectangles for fast swap area controls - */ - void GetFastSwapAreaRects( RArray& aRects ); - - /** - * Returns the position of the given item inside grid world rect. - * Returns point in the middle of the view rectangle. - * - * @param aItemIdx index of the item for which calculation will be done - */ - TPoint ItemViewPosition( TInt aItemIdx ); - - /** - * Returns index of the shown item, based on the logical - * position of the grids view. Item that is closest to the - * middle of screen is returned. - * - * @param aViewPos grids view position. This must be point in - * the middle of the view rectangle - * @return index of the item - */ - TInt ViewToVisibleItem( const TPoint aViewPos ); - - /** - * Launches increasing pop-up feedback. - */ - void LaunchPopupFeedback(); - - /** - * Retrieves and returns size for image graphics. - */ - TSize PreferredImageSize(); - - /** - * Calculates the correct size if aspect ratio needs to be preserved. - */ - TSize CalculateSizePreserveRatio(const TSize& aTargetAreaSize, - const TSize& aSourceSize); - - /** - * Makes a copy of the given bitmap. - * Also scaled to the given size, but maintains aspect ratio, - * so the size of the returned bitmap may be less then aSize. - */ - CFbsBitmap* CopyBitmapL( TInt aFbsHandle, TSize aSize, TBool aIsScreenshot ); - - /** - * Duplicates handle to bitmap. - */ - CFbsBitmap* DuplicateBitmapLC( TInt aFbsHandle ); - - /** - * Duplicates handle to bitmap. - */ - void ScaleBitmapL( CFbsBitmap* aSourceBitmap, - CFbsBitmap* aTargetBitmap ); - - /** - * Cancels ongoing scale tasks - */ - void CancelScaleTasks(); - - /** - * Callback for updating task list. - */ - void ScaleFinished( CTsBitmapScaleTask* iFinishedTask ); - -private: // Data - - CTsFastSwapArea& iFastSwapArea; - - CEikonEnv& iEnv; - - RPointerArray iScaleTasks; - - }; - -#endif /* TSFASTSWAPAREAUTILS_H_ */ diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/taskswitcherui/taskswitcherapp/inc/tsfastswapgrid.h --- a/taskswitcher/taskswitcherui/taskswitcherapp/inc/tsfastswapgrid.h Wed Sep 15 12:00:00 2010 +0300 +++ b/taskswitcher/taskswitcherui/taskswitcherapp/inc/tsfastswapgrid.h Wed Oct 13 14:18:30 2010 +0300 @@ -22,9 +22,9 @@ #include #include #include "tsdevicestate.h" -#include "tsfastswapareautils.h" class CAknsFrameBackgroundControlContext; +class CTsFastSwapTimer; /** * Observer for handling fast swap grid events @@ -42,6 +42,16 @@ }; +class MTsFastSwapTimerObserver + { +public: + /** + * Called when timer is completed + */ + virtual void TimerCompletedL( CTsFastSwapTimer* aSource ) = 0; + }; + + /** * Avkon grid implementing custom item drawer */ @@ -365,4 +375,25 @@ }; + +/** + * Timer class for handling highlight bevaiour + */ +class CTsFastSwapTimer : public CTimer + { +public: + // Constructor + CTsFastSwapTimer( MTsFastSwapTimerObserver& aObserver ); + // Destructor + ~CTsFastSwapTimer(); + // 2nd phase constructor + void ConstructL(); + +private: // From CTimer + void RunL(); + +private: // Data + MTsFastSwapTimerObserver* iObserver; // not own + }; + #endif /* TSFASTSWAPGRID_H_ */ diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/taskswitcherui/taskswitcherapp/src/tsappui.cpp --- a/taskswitcher/taskswitcherui/taskswitcherapp/src/tsappui.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/taskswitcher/taskswitcherui/taskswitcherapp/src/tsappui.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -155,7 +155,6 @@ iApplicationTask.SetWgId( iWg.Identifier() ); // And finally, go to background. - iForeground = ETrue; MoveAppToBackground( ENoneTransition ); iEikonEnv->RootWin().SetOrdinalPosition(-1, ECoeWinPriorityNeverAtFront); @@ -179,7 +178,7 @@ // Perform the first phase of two phase construction // ----------------------------------------------------------------------------- // -CTsAppUi::CTsAppUi(): iForeground( EFalse ), +CTsAppUi::CTsAppUi(): iForeground( ETrue ), iApplicationTask( iCoeEnv->WsSession() ) { // no implementation required @@ -192,7 +191,7 @@ // CTsAppUi::~CTsAppUi() { - if( iAppView && GfxTransEffect::IsRegistered( iAppView ) ) + if( GfxTransEffect::IsRegistered( iAppView ) ) { GfxTransEffect::Deregister(iAppView); @@ -266,7 +265,6 @@ TUint aSubCom ) { const TDesC8* ptr = reinterpret_cast(iAppView); - GfxTransEffect::AbortFullScreen(); GfxTransEffect::Abort(iAppView); GfxTransEffect::Begin( iAppView, aTranstionId ); GfxTransEffect::SetDemarcation( iAppView, iAppView->Rect() ); @@ -298,7 +296,6 @@ { // App start animation const TDesC8* ptr = reinterpret_cast(iAppView); - GfxTransEffect::AbortFullScreen(); GfxTransEffect::Abort(iAppView); TInt groupId = GfxTransEffect::BeginGroup(); GfxTransEffect::BeginFullScreen( @@ -536,8 +533,6 @@ // TInt CTsAppUi::GoToBackgroundTimerCallback( TAny* aParam ) { - TSLOG_STATIC_CONTEXT( GoToBackgroundTimerCallback, TSLOG_LOCAL, RThread().Id() ); - TSLOG_IN(); CTsAppUi* self = static_cast( aParam ); if ( self->iGoToBackgroundTimer ) { @@ -550,7 +545,7 @@ // Notify self->HandleSwitchToBackgroundEvent(); - TSLOG_OUT(); + return 0; } @@ -584,8 +579,6 @@ TSLOG_CONTEXT( MoveAppToForeground, TSLOG_LOCAL ); TSLOG_IN(); - TRAP_IGNORE( iUnderAppWgId = WgIdOfUnderlyingAppL(EFalse) ); - iUiStarted = ETrue; // Request window server to bring our application @@ -628,8 +621,7 @@ { iForeground = EFalse; SetTaskswitcherStateProperty( KTaskswitcherBackgroundValue ); - - iAppView->MakeVisible( EFalse ); + // notify view iAppView->HandleSwitchToBackgroundEvent(); @@ -803,16 +795,12 @@ void CTsAppUi::HandleWsEventL(const TWsEvent& aEvent, CCoeControl* aDestination) { - TSLOG_CONTEXT( CTsAppUi::HandleWsEventL, TSLOG_LOCAL ); CAknAppUi::HandleWsEventL(aEvent, aDestination); TInt eventType = aEvent.Type(); if ( eventType == EEventWindowGroupListChanged ) { TInt wgId = WgIdOfUnderlyingAppL(EFalse); - TSLOG2( TSLOG_INFO, "WgIdOfUnderlyingAppL: %d appId: %d", - wgId, GetAppIdL( wgId ).iUid ); if ( iForeground && - wgId && wgId != iUnderAppWgId && !iAppView->AppCloseInProgress(iUnderAppWgId) && !iAppView->WgOnTaskList(wgId) ) @@ -825,7 +813,6 @@ } iUnderAppWgId = wgId; } - TSLOG_OUT(); } @@ -835,19 +822,12 @@ // TInt CTsAppUi::WgIdOfUnderlyingAppL( TBool aIgnoreParentChild ) { - TSLOG_CONTEXT( CTsAppUi::WgIdOfUnderlyingAppL, TSLOG_LOCAL ); TInt retVal(0); TInt underlyingWg = CheckForUnderlyingHiddenAppsL(); if ( !underlyingWg ) { - TApaTaskList taskList(iEikonEnv->WsSession()); + TApaTaskList taskList( iEikonEnv->WsSession() ); underlyingWg = taskList.FindByPos(0).WgId(); - if ( !(GetAppIdL(underlyingWg).iUid) ) - { - TSLOG1 (TSLOG_INFO, "Incorrect underlying window group: %d.", underlyingWg ); - TSLOG0 (TSLOG_INFO, "No association to appId, nor special handling for underlying hidden apps.Change return value into 0."); - underlyingWg = 0; - } } if ( aIgnoreParentChild ) @@ -859,7 +839,6 @@ TInt parentWg = GetTopParentWg( underlyingWg ); retVal = parentWg ? parentWg : underlyingWg; } - TSLOG_OUT(); return retVal; } @@ -930,7 +909,10 @@ TInt underlyingWg(allWgIds[0].iId); CleanupStack::PopAndDestroy(&allWgIds); - TUid appUid = GetAppIdL( underlyingWg ); + CApaWindowGroupName* windowName = + CApaWindowGroupName::NewLC( iEikonEnv->WsSession(), underlyingWg ); + TUid appUid = windowName->AppUid(); + CleanupStack::PopAndDestroy( windowName ); if( appUid == KTsCameraUid || appUid == KTsTelephoneUid ) { @@ -950,7 +932,10 @@ TApaTaskList taskList( iEikonEnv->WsSession() ); TInt underlyingWg = taskList.FindByPos(0).WgId(); - TUid appUid = GetAppIdL( underlyingWg ); + CApaWindowGroupName* windowName = + CApaWindowGroupName::NewLC( iEikonEnv->WsSession(), underlyingWg ); + TUid appUid = windowName->AppUid(); + CleanupStack::PopAndDestroy( windowName ); if ( appUid == KTsCameraUid ) { retVal = ETrue; @@ -969,18 +954,4 @@ return iDelayedForegroundInProgress; } -// ----------------------------------------------------------------------------- -// CTsAppUi::GetAppIdL -// ----------------------------------------------------------------------------- -// -TUid CTsAppUi::GetAppIdL( TInt aWgId ) - { - TUid retVal; - CApaWindowGroupName* windowName = - CApaWindowGroupName::NewLC( iEikonEnv->WsSession(), aWgId ); - retVal = windowName->AppUid(); - CleanupStack::PopAndDestroy( windowName ); - return retVal; - } - // End of file diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/taskswitcherui/taskswitcherapp/src/tsappview.cpp --- a/taskswitcher/taskswitcherui/taskswitcherapp/src/tsappview.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/taskswitcher/taskswitcherui/taskswitcherapp/src/tsappview.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -205,18 +205,9 @@ bgTport.LayoutRect( iViewRect, AknLayoutScalable_Apps::bg_popup_window_pane_cp01( variety ) ); iBgContextOuterRect = bgTport.Rect(); - if( iBgContextOuterRect == iViewRect ) - { - //full screen - iBgContextInnerRect = iBgContextOuterRect; - } - else - { - bgTport.LayoutRect( iBgContextOuterRect, - AknLayoutScalable_Avkon:: - aid_inside_area_window_primary( variety ) ); - iBgContextInnerRect = bgTport.Rect(); - } + bgTport.LayoutRect( iBgContextOuterRect, + AknLayoutScalable_Avkon::aid_inside_area_window_primary( variety ) ); + iBgContextInnerRect = bgTport.Rect(); TSLOG4( TSLOG_INFO, "outer rect for popup = %d %d %d %d", iBgContextOuterRect.iTl.iX, iBgContextOuterRect.iTl.iY, iBgContextOuterRect.iBr.iX, iBgContextOuterRect.iBr.iY ); @@ -252,6 +243,7 @@ iAppsHeading->ConstructL( KNullDesC() ); iAppsHeading->SetLayout( CAknPopupHeadingPane::EListHeadingPane ); + //TODO: check why we need to set rect (set already in contructL) iFastSwapArea->SetRect( rects[1] ); // cannot be before iAppsHeading constructL iAppsHeading->SetRect( rects[0] ); diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/taskswitcherui/taskswitcherapp/src/tsfastswaparea.cpp --- a/taskswitcher/taskswitcherui/taskswitcherapp/src/tsfastswaparea.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/taskswitcher/taskswitcherui/taskswitcherapp/src/tsfastswaparea.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -28,11 +28,12 @@ #include #include #include +#include +#include +#include #include -#include #include "tsfastswaparea.h" -#include "tsfastswapareautils.h" #include "tsapplogging.h" #include "tsfswclient.h" #include "tsappui.h" @@ -57,7 +58,6 @@ const TInt KAppKeyTypeLong = 2; const TInt KLayoutItemCount = 4; -const TInt KLayoutItemGap = 0; const TInt KRedrawTime = 250000; // 0.25 sec const TInt KRedrawTimeForLayoutSwitch = 700000; // 0.7 sec @@ -66,17 +66,12 @@ const TInt KOrientationSwitchTime = 1000000; // 1 sec const TInt KLongTapAnimationInitTime = 150000; // 0.15 sec const TInt KLongTapAnimationTimeout = 1000000; // 1 sec -const TInt KPointerEventSuppressorMaxTapDuration = 400000; // 0.4 sec -const TInt KPointerEventSuppressorMaxTapMoveWidth = 3; -const TInt KPointerEventSuppressorMaxTapMoveHeight = 8; const TInt KMaxGranularity = 4; const TUid KTsMenuUid = { 0x101f4cd2 }; const TUid KTsHomescreenUid = { 0x102750f0 }; - - // ----------------------------------------------------------------------------- // CTsFastSwapArea::NewL // ----------------------------------------------------------------------------- @@ -114,9 +109,7 @@ CTsDeviceState& aDeviceState, CTsEventControler& aEventHandler) : iParent(aParent), iDeviceState(aDeviceState), iEvtHandler(aEventHandler), - iGridItemGap(KLayoutItemGap), iIgnoreLayoutSwitch(EFalse), - iSupressDrag(EFalse),iWidgetClosingCount(0), - iLongTapAnimationRunning(EFalse) + iIgnoreLayoutSwitch(EFalse), iWidgetClosingCount(0), iLongTapAnimationRunning(EFalse) { // no implementation required } @@ -138,10 +131,6 @@ delete iOrientationSignalTimer; delete iLongTapAnimation; delete iLongTapAnimationTimer; - delete iFastSwapExt; - iPrevScreenshots.Close(); - iPrevWgIds.Close(); - delete iEventSupressor; } // ----------------------------------------------------------------------------- @@ -154,9 +143,6 @@ SetRect( aRect ); - // Create utility class - iFastSwapExt = CTsFastSwapAreaExtension::NewL( *this, *iEikonEnv ); - // setup grid ReCreateGridL(); @@ -189,12 +175,6 @@ iActivateOnPointerRelease = TPoint(); iHandlePointerCandidate = EFalse; - iEventSupressor = CAknPointerEventSuppressor::NewL(); - TSize maxTapMove(KPointerEventSuppressorMaxTapMoveWidth, - KPointerEventSuppressorMaxTapMoveHeight ); - iEventSupressor->SetMaxTapMove(maxTapMove); - iEventSupressor->SetMaxTapDuration(KPointerEventSuppressorMaxTapDuration); - ActivateL(); } @@ -261,34 +241,25 @@ // void CTsFastSwapArea::LayoutGridL() { - TSLOG_CONTEXT( CTsFastSwapArea::LayoutGridL, TSLOG_LOCAL ); - TSLOG_IN(); - RArray rects; CleanupClosePushL(rects); rects.ReserveL(KLayoutItemCount); - iFastSwapExt->GetFastSwapAreaRects(rects); + GetFastSwapAreaRects(rects); TAknLayoutRect gridAppPane = rects[0]; TAknLayoutRect gridItem = rects[1]; TAknLayoutRect gridImage = rects[2]; - + TAknLayoutRect gridNextItem = rects[3]; CleanupStack::PopAndDestroy(&rects); - TPoint position = iFastSwapExt->ItemViewPosition( SelectedIndex() ); - iGrid->SetRect( CountCenteredGridRect( position ) ); - - - - CTsAppUi* appUi = static_cast(iEikonEnv->AppUi()); + iGrid->SetRect(gridAppPane.Rect()); TInt variety; - TBool disable = iFastSwapExt->GetVariety(variety); + TBool disable = GetVariety(variety); if ( disable ) { - TRAP_IGNORE(appUi->RequestPopUpL()); + TRAP_IGNORE(static_cast(iEikonEnv->AppUi())->RequestPopUpL()); } variety = Layout_Meta_Data::IsLandscapeOrientation() ? 1 : 0; // double check to avoid layout panic - TSLOG1( TSLOG_INFO, "variety %d", variety ); TAknLayoutScalableParameterLimits gridParams = AknLayoutScalable_Apps::cell_tport_appsw_pane_ParamLimits( variety ); @@ -319,6 +290,14 @@ iGrid->ItemDrawer()->FormattedCellData()->SetSubCellColorsL(1, colors); iGrid->SetStrokeColors(textColor, highlightTextColor); + if ( AknLayoutUtils::LayoutMirrored() ) + { + iGridItemGap = gridItem.Rect().iTl.iX - gridNextItem.Rect().iBr.iX; + } + else + { + iGridItemGap = gridNextItem.Rect().iTl.iX - gridItem.Rect().iBr.iX; + } iMaxItemsOnScreen = Rect().Width() / gridItem.Rect().Width(); if ( iMaxItemsOnScreen > 1 ) { @@ -330,6 +309,7 @@ } } iGridItemWidth = gridItem.Rect().Width(); + // Update item drawer iGrid->UpdateItemDrawerLayoutDataL(); @@ -338,10 +318,8 @@ if ( disable ) { - TRAP_IGNORE(appUi->DisablePopUpL()); + TRAP_IGNORE(static_cast(iEikonEnv->AppUi())->DisablePopUpL()); } - - TSLOG_OUT(); } @@ -354,7 +332,7 @@ RArray rects; CleanupClosePushL(rects); rects.ReserveL(KLayoutItemCount); - iFastSwapExt->GetFastSwapAreaRects(rects); + GetFastSwapAreaRects(rects); TAknLayoutRect gridItem = rects[1]; CleanupStack::PopAndDestroy(&rects); if ( aItemCount ) @@ -383,6 +361,48 @@ } } + +// -------------------------------------------------------------------------- +// CTsFastSwapArea::GetFastSwapAreaRects +// -------------------------------------------------------------------------- +// +void CTsFastSwapArea::GetFastSwapAreaRects( RArray& aRects ) + { + TAknLayoutRect gridAppPane; + TAknLayoutRect gridItem; + TAknLayoutRect gridImage; + TAknLayoutRect gridNextItem; + + TInt variety; + TBool disable = GetVariety(variety); + if ( disable ) + { + TRAP_IGNORE(static_cast(iEikonEnv->AppUi())->RequestPopUpL()); + } + variety = Layout_Meta_Data::IsLandscapeOrientation() ? 1 : 0; // double check to avoid layout panic + + gridAppPane.LayoutRect( Rect(), + AknLayoutScalable_Apps::tport_appsw_pane( variety ) ); + aRects.Append(gridAppPane); + + gridItem.LayoutRect( gridAppPane.Rect(), + AknLayoutScalable_Apps::cell_tport_appsw_pane( variety, 0, 0 ) ); + aRects.Append(gridItem); + + gridImage.LayoutRect( gridItem.Rect(), + AknLayoutScalable_Apps::cell_tport_appsw_pane_g1( variety ) ); + aRects.Append(gridImage); + gridNextItem.LayoutRect( gridAppPane.Rect(), + AknLayoutScalable_Apps::cell_tport_appsw_pane_cp03( variety ) ); + aRects.Append(gridNextItem); + + if ( disable ) + { + TRAP_IGNORE(static_cast(iEikonEnv->AppUi())->DisablePopUpL()); + } + } + + // -------------------------------------------------------------------------- // CTsFastSwapArea::Setup // -------------------------------------------------------------------------- @@ -534,7 +554,7 @@ } // Orientation update - iPrevScreenOrientation = iFastSwapExt->GetCurrentScreenOrientation(); + iPrevScreenOrientation = GetCurrentScreenOrientation(); iOrientationSignalTimer->Cancel(); iOrientationSignalTimer->After(KOrientationSwitchTime); } @@ -604,31 +624,8 @@ { TSLOG_CONTEXT( HandleFswContentChanged, TSLOG_LOCAL ); TSLOG_IN(); - - //prepare grid with current content from fastswap server - GetContentForGrid(); - // draw - UpdateGrid( ETrue, ETrue ); - // notify observer, if present - NotifyChange(); - - TSLOG_OUT(); - } -// -------------------------------------------------------------------------- -// CTsFastSwapArea::GetContentForGrid -// -------------------------------------------------------------------------- -// -void CTsFastSwapArea::GetContentForGrid() - { - TSLOG_CONTEXT( GetContentForGrid, TSLOG_LOCAL ); - TSLOG_IN(); - TRAPD( err, - // get current content from fastswap server - GetContentL(); - // prepare grid content - RenderContentL(); - ) + TRAPD( err, HandleFswContentChangedL() ); if ( err != KErrNone ) { TSLOG1( TSLOG_INFO, "leave occured: %d", err ); @@ -638,23 +635,25 @@ } // -------------------------------------------------------------------------- -// CTsFastSwapArea::GetContentL +// CTsFastSwapArea::HandleFswContentChangedL // -------------------------------------------------------------------------- // -void CTsFastSwapArea::GetContentL() +void CTsFastSwapArea::HandleFswContentChangedL() { - TSLOG_CONTEXT( GetContentL, TSLOG_LOCAL ); + TSLOG_CONTEXT( HandleFswContentChangedL, TSLOG_LOCAL ); TSLOG_IN(); + + // get current content from fastswap server iFSClient->GetContentL( iArray ); - - #ifdef _DEBUG + +#ifdef _DEBUG for ( TInt i = 0, ie = iArray.Count(); i != ie; ++i ) { CTsFswEntry* e = iArray[i]; const TDesC& name( e->AppName() ); TSLOG4( TSLOG_INFO, "[%d]: %d %d %S", i, e->WgId(), e->AppUid(), &name ); } - #endif +#endif // Update closing widget count if necessary if ( iWidgetClosingCount ) @@ -669,6 +668,13 @@ } iWidgetClosingCount = widgetCount; } + + // draw + RenderContentL(); + + // notify observer, if present + NotifyChange(); + TSLOG_OUT(); } @@ -676,16 +682,13 @@ // CTsFastSwapArea::RenderContentL // -------------------------------------------------------------------------- // -void CTsFastSwapArea::RenderContentL( ) +void CTsFastSwapArea::RenderContentL( TBool aSuppressAnimation ) { TSLOG_CONTEXT( RenderContentL, TSLOG_LOCAL ); TSLOG_IN(); _LIT(KSeparator, "\t"); - // Cancel ongoing scaling - iFastSwapExt->CancelScaleTasks(); - CArrayPtr* iconArray = new ( ELeave ) CAknIconArray( KMaxGranularity ); CleanupStack::PushL( iconArray ); CDesCArrayFlat* textArray = new ( ELeave ) CDesCArrayFlat( KMaxGranularity ); @@ -694,17 +697,10 @@ CleanupClosePushL(closeItemArray); RArray strokeItemArray; CleanupClosePushL(strokeItemArray); - RArray screenshotList; - CleanupClosePushL(screenshotList); - RArray wgIdList; - CleanupClosePushL(wgIdList); // Update view based on number of items LayoutGridViewL( iArray.Count() ); - CArrayPtr* oldIconArray = - iGrid->ItemDrawer()->FormattedCellData()->IconArray(); - for ( TInt i = 0; i < iArray.Count(); ++i ) { const TDesC& appName( iArray[i]->AppName() ); @@ -717,16 +713,19 @@ formAppName.Append(appName); textArray->AppendL(formAppName); CleanupStack::PopAndDestroy(&formAppName); - + TSize sz = PreferredImageSize(); + // take the screenshot or appicon+mask and make a copy and scale + CFbsBitmap* bitmap = 0; TInt h = iArray[i]->ScreenshotHandle(); TSLOG2( TSLOG_INFO, "'%S' screenshot handle %d", &appName, h ); - TBool isScreenshot( ETrue ); + TInt maskh = 0; + CFbsBitmap* mask = 0; if ( !h ) { // No screenshot, take app icon h = iArray[i]->AppIconBitmapHandle(); - isScreenshot = EFalse; + maskh = iArray[i]->AppIconMaskHandle(); TSLOG1( TSLOG_INFO, "using appicon, handle = %d", h ); } else @@ -735,36 +734,29 @@ strokeItemArray.AppendL(i); } __ASSERT_DEBUG( h, User::Invariant() ); - - // check screenshot - if it exists already, use it - // so there is no unnecessary scaling performed - CGulIcon* icon = CreateItemIconLC( iArray[i], isScreenshot ); + bitmap = CopyBitmapL( h, sz ); + CleanupStack::PushL( bitmap ); + if ( maskh ) + { + mask = CopyBitmapL( maskh, sz ); + } + CleanupStack::PushL( mask ); + + CGulIcon* icon = CGulIcon::NewL( bitmap, mask ); + CleanupStack::PushL(icon); iconArray->AppendL(icon); - CleanupStack::Pop( icon ); //icon + CleanupStack::Pop( 3, bitmap ); // mask, bitmap, icon - screenshotList.AppendL( h ); - wgIdList.AppendL( iArray[i]->WgId() ); - // Check if item can be closed if ( CanClose(i) && AknLayoutUtils::PenEnabled() ) { closeItemArray.AppendL(i); } } - // Update screenshot list - iPrevScreenshots.Reset(); - iPrevWgIds.Reset(); - for ( TInt i = 0; - i < screenshotList.Count() && i < wgIdList.Count(); i++ ) - { - iPrevScreenshots.AppendL( screenshotList[i] ); - iPrevWgIds.AppendL( wgIdList[i] ); - } - CleanupStack::PopAndDestroy( &wgIdList ); - CleanupStack::PopAndDestroy( &screenshotList ); - // Setup grid iGrid->Model()->SetItemTextArray(textArray); + CArrayPtr* oldIconArray = + iGrid->ItemDrawer()->FormattedCellData()->IconArray(); if(oldIconArray) { delete oldIconArray; @@ -793,91 +785,38 @@ { iGrid->SetCurrentDataIndex( GridItemCount() - 1 ); } + UpdateGrid( ETrue, !aSuppressAnimation ); + TSLOG_OUT(); } // -------------------------------------------------------------------------- -// CTsFastSwapArea::CreateItemIconLC +// CTsFastSwapArea::CopyBitmapL +// Copy and scale. // -------------------------------------------------------------------------- // -CGulIcon* CTsFastSwapArea::CreateItemIconLC( CTsFswEntry* aEntry, - TBool aIsScreenshot ) +CFbsBitmap* CTsFastSwapArea::CopyBitmapL( TInt aFbsHandle, TSize aSize ) { - TSize sz = iFastSwapExt->PreferredImageSize(); - CArrayPtr* oldIconArray = - iGrid->ItemDrawer()->FormattedCellData()->IconArray(); - - CFbsBitmap* bitmap = NULL; - CFbsBitmap* mask = NULL; - - TInt h = 0; - TInt maskh = 0; - if ( aIsScreenshot ) - { - h = aEntry->ScreenshotHandle(); - } - else - { - h = aEntry->AppIconBitmapHandle(); - maskh = aEntry->AppIconMaskHandle(); - } - - TInt idx = iPrevScreenshots.Find( h ); - TInt wgIdIdx = iPrevWgIds.Find( aEntry->WgId() ); - - if ( idx != KErrNotFound && idx == wgIdIdx - && oldIconArray && idx < oldIconArray->Count() ) - { - CGulIcon* existingIcon = oldIconArray->At( idx ); - if ( existingIcon->Bitmap() ) - { - bitmap = iFastSwapExt->DuplicateBitmapLC( - existingIcon->Bitmap()->Handle() ); - if ( existingIcon->Mask() ) - { - maskh = existingIcon->Mask()->Handle(); - mask = iFastSwapExt->DuplicateBitmapLC( maskh ); - } - } - } - else if ( idx == KErrNotFound && wgIdIdx != KErrNotFound - && oldIconArray && wgIdIdx < oldIconArray->Count() ) - { - CGulIcon* existingIcon = oldIconArray->At( wgIdIdx ); - if ( existingIcon->Bitmap() - && !existingIcon->Mask() ) - { - bitmap = iFastSwapExt->DuplicateBitmapLC( - existingIcon->Bitmap()->Handle() ); - CFbsBitmap* source = iFastSwapExt->DuplicateBitmapLC( h ); - iFastSwapExt->ScaleBitmapL( source, bitmap ); - CleanupStack::Pop( source ); - } - } - - // create bitmap for grid item - if ( !bitmap ) - { - bitmap = iFastSwapExt->CopyBitmapL( h, sz, aIsScreenshot ); - CleanupStack::PushL( bitmap ); - } - if ( !mask && maskh ) - { - mask = iFastSwapExt->CopyBitmapL( maskh, sz, EFalse ); - CleanupStack::PushL( mask ); - } - else if ( !mask ) - { - CleanupStack::PushL( mask ); - } - - CGulIcon* icon = CGulIcon::NewL( bitmap, mask ); - CleanupStack::Pop( 2, bitmap ); - CleanupStack::PushL( icon ); - return icon; + CFbsBitmap* ret = new (ELeave) CFbsBitmap(); + CleanupStack::PushL( ret ); + + CFbsBitmap* bmp = new (ELeave) CFbsBitmap(); + CleanupStack::PushL( bmp ); + User::LeaveIfError( bmp->Duplicate( aFbsHandle ) ); + + // do not always use aSize, preserving the aspect ratio is quite + // important when showing app icons instead of screenshots + TSize sz = CalculateSizePreserveRatio( aSize, bmp->SizeInPixels() ); + User::LeaveIfError( ret->Create( sz, bmp->DisplayMode() ) ); + + AknIconUtils::ScaleBitmapL( sz, ret, bmp ); + + CleanupStack::PopAndDestroy( bmp ); + CleanupStack::Pop( ret ); + + return ret; } - // -------------------------------------------------------------------------- // CTsFastSwapArea::CountComponentControls // -------------------------------------------------------------------------- @@ -952,22 +891,19 @@ iGrid->ShowHighlight(); } - //prepare grid with current content from fastswap server - GetContentForGrid(); - //restore default selection - RestoreSelectedIndex(); - // draw - UpdateGrid( ETrue, EFalse ); - // notify observer, if present - NotifyChange(); + // get the current task list + HandleFswContentChanged(); // and then start listening for changes iFSClient->Subscribe( *this ); + RestoreSelectedIndex(); + UpdateGrid(EFalse, EFalse); + iRedrawTimer->Cancel(); iRedrawTimer->After(KRedrawTime); // give feedback - iFastSwapExt->LaunchPopupFeedback(); + LaunchPopupFeedback(); iPrevAppCount = iArray.Count(); @@ -1113,11 +1049,9 @@ // void CTsFastSwapArea::HandlePointerEventL( const TPointerEvent& aPointerEvent ) { - TBool supressed = iEventSupressor->SuppressPointerEvent( aPointerEvent ); iKeyEvent = EFalse; if(aPointerEvent.iType == TPointerEvent::EButton1Down) { - iSupressDrag = EFalse; iHandlePointerCandidate = ETrue; iTapEvent = aPointerEvent; iGrid->EnableAknEventHandling(EFalse); @@ -1130,25 +1064,15 @@ iLongTapAnimationTimer->After(KLongTapAnimationInitTime); } } - else if( aPointerEvent.iType == TPointerEvent::EDrag ) - { - iSupressDrag = supressed; - } else if ( aPointerEvent.iType == TPointerEvent::EButton1Up ) { CancelLongTapAnimation( EFalse ); if( iActivateOnPointerRelease != TPoint() ) { iHandlePointerCandidate = ETrue; - TapL( iActivateOnPointerRelease ); + TapL(iActivateOnPointerRelease); iActivateOnPointerRelease = TPoint(); } - else if( iSupressDrag ) - { - iSupressDrag = EFalse; - iHandlePointerCandidate = ETrue; - TapL( iTapEvent.iParentPosition ); - } } } @@ -1277,7 +1201,7 @@ } else if ( aSource == iOrientationSignalTimer ) { - TInt currentOrientation = iFastSwapExt->GetCurrentScreenOrientation(); + TInt currentOrientation = GetCurrentScreenOrientation(); if ( currentOrientation != iPrevScreenOrientation ) { // Order layout change @@ -1351,7 +1275,7 @@ { static_cast(iEikonEnv->AppUi())->RequestPopUpL(); // give feedback - iFastSwapExt->LaunchPopupFeedback(); + LaunchPopupFeedback(); // save index for later use & show popup iAppIndexForPopup = aIndex; iPopup->SetPosition( aPoint, CAknStylusPopUpMenu::EPositionTypeLeftBottom ); @@ -1393,6 +1317,24 @@ } // ----------------------------------------------------------------------------- +// CTsFastSwapArea::PreferredImageSize +// ----------------------------------------------------------------------------- +// +TSize CTsFastSwapArea::PreferredImageSize() + { + TAknLayoutRect gridImage; + TRAP_IGNORE( + RArray rects; + CleanupClosePushL(rects); + rects.ReserveL(KLayoutItemCount); + GetFastSwapAreaRects(rects); + gridImage = rects[2]; + CleanupStack::PopAndDestroy(&rects); + ); + return gridImage.Rect().Size(); + } + +// ----------------------------------------------------------------------------- // CTsFastSwapArea::GridItemCount // ----------------------------------------------------------------------------- // @@ -1401,32 +1343,6 @@ return iGrid->Model()->ItemTextArray()->MdcaCount(); } - -// ----------------------------------------------------------------------------- -// CTsFastSwapArea::GridItemCount -// ----------------------------------------------------------------------------- -// -TInt CTsFastSwapArea::GetGridItemData( TsFastSwapAreaGridData aDataType ) - { - TInt retVal; - switch ( aDataType ) - { - case EMaxItemsOnScreen: - retVal = iMaxItemsOnScreen; - break; - case EGridItemWidth: - retVal = iGridItemWidth; - break; - case EGridItemGap: - retVal = iGridItemGap; - break; - default: - retVal = KErrArgument; - break; - } - return retVal; - } - // ----------------------------------------------------------------------------- // CTsFastSwapArea::HandleListBoxEventL // ----------------------------------------------------------------------------- @@ -1455,6 +1371,25 @@ } } +// -------------------------------------------------------------------------- +// CTsFastSwapArea::CalculateSizePreserveRatio +// -------------------------------------------------------------------------- +// +TSize CTsFastSwapArea::CalculateSizePreserveRatio( + const TSize& aTargetAreaSize, + const TSize& aSourceSize ) + { + const TReal + resizedAspectRatio(aTargetAreaSize.iWidth/(TReal)aTargetAreaSize.iHeight); + const TReal + orginalAspectRatio(aSourceSize.iWidth/(TReal)aSourceSize.iHeight); + //this condition avoid empty margins ( bigger output ). to realy fit area change it + const TReal scaleFactor = + ( orginalAspectRatio > resizedAspectRatio ) ? + (aTargetAreaSize.iHeight /(TReal)aSourceSize.iHeight) ://scale by height + (aTargetAreaSize.iWidth /(TReal)aSourceSize.iWidth) ;//scale by width + return TSize(aSourceSize.iWidth * scaleFactor, aSourceSize.iHeight * scaleFactor); + } // -------------------------------------------------------------------------- // CTsFastSwapArea::SelectNextItem @@ -1486,7 +1421,7 @@ { if( iMaxItemsOnScreen < GridItemCount() ) { - TInt visibleItem = iFastSwapExt->ViewToVisibleItem( ViewPos() ); + TInt visibleItem = ViewToVisibleItem( ViewPos() ); if(iKeyEvent) { visibleItem = SelectedIndex(); @@ -1527,7 +1462,7 @@ // void CTsFastSwapArea::UpdateGrid( TBool aForceRedraw, TBool aAnimate ) { - TPoint targetPoint = iFastSwapExt->ItemViewPosition( SelectedIndex() ); + TPoint targetPoint = ItemViewPosition( SelectedIndex() ); if ( aForceRedraw || targetPoint.iX != ViewPos().iX ) { if ( aAnimate ) @@ -1593,7 +1528,17 @@ if ( aDrawNow ) { - TRect gridViewRect = CountCenteredGridRect( aPoint ); + TInt currentXPos = aPoint.iX; + currentXPos -= Rect().Width() / 2; + TRect gridViewRect = Rect(); + gridViewRect.iTl.iX = -currentXPos; + // Take edge offset into account + gridViewRect.iTl.iX += Rect().iTl.iX; + if(GridItemCount() && GridItemCount() <= iMaxItemsOnScreen) + { + // Center view + gridViewRect.iTl.iX += ( Rect().Width() - GridItemCount() * iGridItemWidth ) / 2; + } //iParent.DrawDeferred(); iGrid->DrawDeferred(); iGrid->SetRect( gridViewRect ); @@ -1656,10 +1601,6 @@ { iActivateOnPointerRelease = aPoint; } - else - { - iSupressDrag = EFalse; - } iGrid->ShowHighlight(); DrawNow(); } @@ -1705,7 +1646,7 @@ } // ----------------------------------------------------------------------------- -// CTsFastSwapArea::ViewPos +// CTsFastSwapArea::ViewSize // ----------------------------------------------------------------------------- // TPoint CTsFastSwapArea::ViewPos() const @@ -1723,6 +1664,211 @@ return retVal; } +// ----------------------------------------------------------------------------- +// CTsFastSwapArea::ItemPosition +// ----------------------------------------------------------------------------- +// +TPoint CTsFastSwapArea::ItemViewPosition( TInt aItemIdx ) + { + TPoint retVal = Rect().iTl; + if ( aItemIdx < 0 ) + { + // No items + retVal.iX = 0; + } + else if ( aItemIdx == 0 ) + { + // First item + if( AknLayoutUtils::LayoutMirrored() ) + { + if ( GridItemCount() > iMaxItemsOnScreen ) + { + retVal.iX = GridWorldSize().iWidth - Rect().Width(); + } + else + { + retVal.iX = 0; + } + } + else // normal layout + { + retVal.iX = 0; + } + } + else if ( aItemIdx == GridItemCount() - 1 ) + { + // Last item selected + if( AknLayoutUtils::LayoutMirrored() ) + { + retVal.iX = 0; + } + else // normal layout + { + if ( GridItemCount() > iMaxItemsOnScreen ) + { + retVal.iX = GridWorldSize().iWidth - Rect().Width(); + } + else + { + retVal.iX = 0; + } + } + } + else + { + // Middle item + TInt screenMiddleItemOffset = ( Rect().Width() - iGridItemWidth ) / 2; + if( AknLayoutUtils::LayoutMirrored() ) + { + retVal.iX = iGridItemWidth * ( GridItemCount() - 1 - aItemIdx ) - screenMiddleItemOffset; + retVal.iX += ( GridItemCount() - 1 - aItemIdx ) * iGridItemGap; + } + else // normal layout + { + retVal.iX = iGridItemWidth * aItemIdx - screenMiddleItemOffset; + retVal.iX += iGridItemGap * aItemIdx; + } + if ( retVal.iX < 0 ) + { + retVal.iX = 0; + } + else if ( retVal.iX + Rect().Width() > GridWorldSize().iWidth ) + { + retVal.iX = GridWorldSize().iWidth - Rect().Width(); + } + } + + // Return middle of the view rectangle + retVal.iX += Rect().Width() / 2; + + return retVal; + } + +// ----------------------------------------------------------------------------- +// CTsFastSwapArea::ViewToVisibleItem +// ----------------------------------------------------------------------------- +// +TInt CTsFastSwapArea::ViewToVisibleItem( const TPoint aViewPos ) + { + TInt retVal(0); + TPoint absViewPos = aViewPos; + absViewPos.iX -= Rect().Width() / 2; + if ( absViewPos.iX < 0 ) + { + if ( AknLayoutUtils::LayoutMirrored() ) + { + // View crossed left border of grid world rect, last item selected + retVal = GridItemCount() - 1; + } + else // normal layout + { + // View crossed left border of grid world rect, first item selected + retVal = 0; + } + } + else if ( absViewPos.iX + Rect().Width() > GridWorldSize().iWidth ) + { + if ( AknLayoutUtils::LayoutMirrored() ) + { + // View crossed right border of grid world rect, first item selected + retVal = 0; + } + else // normal layout + { + // View crossed right border of grid world rect, last item selected + retVal = GridItemCount() - 1; + } + } + else + { + TInt retItemPosX(0); + TInt offsetCheck = GridWorldSize().iWidth; + // View inside of grid world rect + for ( TInt i = 0 ; i < GridItemCount(); i++ ) + { + TInt itemPosX = ItemViewPosition( i ).iX; + TInt offset = aViewPos.iX - itemPosX; + if ( Abs( offset ) <= offsetCheck ) + { + offsetCheck = Abs( offset ); + retVal = i; + retItemPosX = itemPosX; + } + else + { + break; + } + } + // Check if item is fully visible. If not + // return next one if possible + if ( retItemPosX - iGridItemWidth / 2 < absViewPos.iX && + retVal + 1 < GridItemCount() ) + { + retVal++; + } + } + + return retVal; + } + + +// ----------------------------------------------------------------------------- +// CTsFastSwapArea::LaunchPopupFeedback +// ----------------------------------------------------------------------------- +// +void CTsFastSwapArea::LaunchPopupFeedback() + { + if ( AknLayoutUtils::PenEnabled() ) + { + MTouchFeedback* feedback = MTouchFeedback::Instance(); + if ( feedback ) + { + TTouchLogicalFeedback fbLogicalType = ETouchFeedbackPopUp; + if ( CAknTransitionUtils::TransitionsEnabled( + AknTransEffect::EComponentTransitionsOff ) ) + { + fbLogicalType = ETouchFeedbackIncreasingPopUp; + } + feedback->InstantFeedback( this, + fbLogicalType, + ETouchFeedbackVibra, + TPointerEvent() ); + } + } + } + + +// ----------------------------------------------------------------------------- +// CTsFastSwapArea::GetCurrentScreenOrientation +// ----------------------------------------------------------------------------- +// +TInt CTsFastSwapArea::GetCurrentScreenOrientation() + { + TPixelsAndRotation availableRect; + iEikonEnv->ScreenDevice()->GetDefaultScreenSizeAndRotation(availableRect); + return availableRect.iPixelSize.iWidth > availableRect.iPixelSize.iHeight; + } + + +// ----------------------------------------------------------------------------- +// CTsFastSwapArea::GetVariety +// ----------------------------------------------------------------------------- +// +TBool CTsFastSwapArea::GetVariety( TInt& aVariety ) + { + aVariety = Layout_Meta_Data::IsLandscapeOrientation() ? 1 : 0; + TBool foreground = static_cast(iEikonEnv->AppUi())->IsForeground(); + if ( foreground ) + { + TInt screenOrientation = GetCurrentScreenOrientation(); + if ( aVariety != screenOrientation ) + { + aVariety = screenOrientation; + return ETrue; + } + } + return EFalse; + } // ----------------------------------------------------------------------------- // CTsFastSwapArea::IsAppClosing @@ -1778,7 +1924,6 @@ { retVal = ETrue; } - iPrevAppCount = appCount; return retVal; } @@ -1823,24 +1968,4 @@ return EFalse; } -// ----------------------------------------------------------------------------- -// CTsFastSwapArea::CountCenteredGridRect -// ----------------------------------------------------------------------------- -// -TRect CTsFastSwapArea::CountCenteredGridRect( TPoint aItemPosition) - { - TInt currentXPos = aItemPosition.iX; - currentXPos -= Rect().Width() / 2; - TRect gridViewRect = Rect(); - gridViewRect.iTl.iX = -currentXPos; - // Take edge offset into account - gridViewRect.iTl.iX += Rect().iTl.iX; - if(GridItemCount() && GridItemCount() <= iMaxItemsOnScreen) - { - // Center view - gridViewRect.iTl.iX += ( Rect().Width() - GridItemCount() * iGridItemWidth ) / 2; - } - return gridViewRect; - } - // End of file diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/taskswitcherui/taskswitcherapp/src/tsfastswapareautils.cpp --- a/taskswitcher/taskswitcherui/taskswitcherapp/src/tsfastswapareautils.cpp Wed Sep 15 12:00:00 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,592 +0,0 @@ -/* -* Copyright (c) 2008 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" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Taskswitcher Fast Swap area UI - * -*/ - -#include -#include -#include -#include -#include -#include -#include -#include - - -#include "tsfastswapareautils.h" -#include "tsfastswaparea.h" -#include "tsappui.h" -#include "tsfswentry.h" - - -const TInt KLayoutItemCount = 4; - - /* ================================================================================ - * CTsFastSwapTimer - * ================================================================================ - */ - -// ----------------------------------------------------------------------------- -// CTsFastSwapTimer::CTsFastSwapTimer -// ----------------------------------------------------------------------------- -// -CTsFastSwapTimer::CTsFastSwapTimer( MTsFastSwapTimerObserver& aObserver ) -: CTimer( EPriorityStandard ), - iObserver( &aObserver ) - { - } - - -// ----------------------------------------------------------------------------- -// CTsFastSwapTimer::CTsGridHighlightTimer -// ----------------------------------------------------------------------------- -// -CTsFastSwapTimer::~CTsFastSwapTimer() - { - Cancel(); - } - - -// ----------------------------------------------------------------------------- -// CTsFastSwapTimer::ConstructL -// ----------------------------------------------------------------------------- -// -void CTsFastSwapTimer::ConstructL() - { - CTimer::ConstructL(); - CActiveScheduler::Add( this ); - } - - -// ----------------------------------------------------------------------------- -// CTsFastSwapTimer::CTsGridHighlightTimer -// ----------------------------------------------------------------------------- -// -void CTsFastSwapTimer::RunL() - { - iObserver->TimerCompletedL(this); - } - - - -/* ================================================================================ - * CTsBitmapScaleTask - * ================================================================================ - */ - -// ----------------------------------------------------------------------------- -// CTsBitmapScaleTask:: -// ----------------------------------------------------------------------------- -// -CTsBitmapScaleTask::CTsBitmapScaleTask( CTsFastSwapAreaExtension& aObserver ) -: CActive(EPriorityStandard), - iObserver( aObserver ) - { - CActiveScheduler::Add( this ); - } - - -// ----------------------------------------------------------------------------- -// CTsBitmapScaleTask:: -// ----------------------------------------------------------------------------- -// -CTsBitmapScaleTask::~CTsBitmapScaleTask() - { - Cancel(); - delete iScaler; - delete iSourceBmp; - } - - -// ----------------------------------------------------------------------------- -// CTsBitmapScaleTask:: -// ----------------------------------------------------------------------------- -// -void CTsBitmapScaleTask::StartLD( CFbsBitmap* aSourceBitmap, - CFbsBitmap* aTargetBitmap ) - { - if ( !iScaler ) - { - iSourceBmp = aSourceBitmap; - iScaler = CBitmapScaler::NewL(); - iScaler->Scale( &iStatus, *aSourceBitmap, *aTargetBitmap ); - SetActive(); - } - } - - -// ----------------------------------------------------------------------------- -// CTsBitmapScaleTask:: -// ----------------------------------------------------------------------------- -// -void CTsBitmapScaleTask::RunL() - { - iObserver.ScaleFinished( this ); - delete this; - } - - -// ----------------------------------------------------------------------------- -// CTsBitmapScaleTask:: -// ----------------------------------------------------------------------------- -// -void CTsBitmapScaleTask::DoCancel() - { - iScaler->Cancel(); - } - - -/* ================================================================================ - * CTsFastSwapAreaExtension - * ================================================================================ - */ - -// ----------------------------------------------------------------------------- -// CTsFastSwapAreaExtension::NewL -// ----------------------------------------------------------------------------- -// -CTsFastSwapAreaExtension* CTsFastSwapAreaExtension::NewL( CTsFastSwapArea& aFastSwapArea, - CEikonEnv& aEnv ) - { - CTsFastSwapAreaExtension* self = CTsFastSwapAreaExtension::NewLC( - aFastSwapArea, aEnv ); - CleanupStack::Pop( self ); - return self; - } - - -// ----------------------------------------------------------------------------- -// CTsFastSwapAreaExtension::NewLC -// ----------------------------------------------------------------------------- -// -CTsFastSwapAreaExtension* CTsFastSwapAreaExtension::NewLC( CTsFastSwapArea& aFastSwapArea, - CEikonEnv& aEnv ) - { - CTsFastSwapAreaExtension* self = new (ELeave) CTsFastSwapAreaExtension( - aFastSwapArea, aEnv ); - CleanupStack::PushL( self ); - self->ConstructL(); - return self; - } - - -// ----------------------------------------------------------------------------- -// CTsFastSwapAreaExtension::~CTsFastSwapAreaExtension -// ----------------------------------------------------------------------------- -// -CTsFastSwapAreaExtension::~CTsFastSwapAreaExtension() - { - iScaleTasks.ResetAndDestroy(); - } - - -// ----------------------------------------------------------------------------- -// CTsFastSwapAreaExtension::ConstructL -// ----------------------------------------------------------------------------- -// -void CTsFastSwapAreaExtension::ConstructL() - { - } - - -// ----------------------------------------------------------------------------- -// CTsFastSwapAreaExtension::CTsFastSwapAreaExtension -// ----------------------------------------------------------------------------- -// -CTsFastSwapAreaExtension::CTsFastSwapAreaExtension( CTsFastSwapArea& aFastSwapArea, - CEikonEnv& aEnv ) -: iFastSwapArea( aFastSwapArea ), - iEnv( aEnv ) - { - } - -// ----------------------------------------------------------------------------- -// CTsFastSwapAreaExtension::GetCurrentScreenOrientation -// ----------------------------------------------------------------------------- -// -TInt CTsFastSwapAreaExtension::GetCurrentScreenOrientation() - { - TPixelsAndRotation availableRect; - iEnv.ScreenDevice()->GetDefaultScreenSizeAndRotation(availableRect); - return availableRect.iPixelSize.iWidth > availableRect.iPixelSize.iHeight; - } - - -// ----------------------------------------------------------------------------- -// CTsFastSwapAreaExtension::GetVariety -// ----------------------------------------------------------------------------- -// -TBool CTsFastSwapAreaExtension::GetVariety( TInt& aVariety ) - { - aVariety = Layout_Meta_Data::IsLandscapeOrientation() ? 1 : 0; - TBool foreground = static_cast(iEnv.AppUi())->IsForeground(); - if ( foreground ) - { - TInt screenOrientation = GetCurrentScreenOrientation(); - if ( aVariety != screenOrientation ) - { - aVariety = screenOrientation; - return ETrue; - } - } - return EFalse; - } - - -// -------------------------------------------------------------------------- -// CTsFastSwapAreaExtension::GetFastSwapAreaRects -// -------------------------------------------------------------------------- -// -void CTsFastSwapAreaExtension::GetFastSwapAreaRects( RArray& aRects ) - { - TAknLayoutRect gridAppPane; - TAknLayoutRect gridItem; - TAknLayoutRect gridImage; - TInt variety; - TBool disable = GetVariety(variety); - if ( disable ) - { - TRAP_IGNORE(static_cast(iEnv.AppUi())->RequestPopUpL()); - } - variety = Layout_Meta_Data::IsLandscapeOrientation() ? 1 : 0; // double check to avoid layout panic - gridAppPane.LayoutRect( iFastSwapArea.Rect(), - AknLayoutScalable_Apps::tport_appsw_pane_g1( variety ) ); - aRects.Append(gridAppPane); - - gridItem.LayoutRect( gridAppPane.Rect(), - AknLayoutScalable_Apps::cell_tport_appsw_pane( variety, 0, 0 ) ); - aRects.Append(gridItem); - - gridImage.LayoutRect( gridItem.Rect(), - AknLayoutScalable_Apps::cell_tport_appsw_pane_g1( variety ) ); - aRects.Append(gridImage); - - if ( disable ) - { - TRAP_IGNORE(static_cast(iEnv.AppUi())->DisablePopUpL()); - } - } - - -// ----------------------------------------------------------------------------- -// CTsFastSwapAreaExtension::ItemPosition -// ----------------------------------------------------------------------------- -// -TPoint CTsFastSwapAreaExtension::ItemViewPosition( TInt aItemIdx ) - { - TPoint retVal = iFastSwapArea.Rect().iTl; - TInt maxItemsOnScreen = iFastSwapArea.GetGridItemData( CTsFastSwapArea::EMaxItemsOnScreen ); - TInt gridItemWidth = iFastSwapArea.GetGridItemData( CTsFastSwapArea::EGridItemWidth ); - TInt gridItemGap = iFastSwapArea.GetGridItemData( CTsFastSwapArea::EGridItemGap ); - - if ( aItemIdx < 0 ) - { - // No items - retVal.iX = 0; - } - else if ( aItemIdx == 0 ) - { - // First item - if( AknLayoutUtils::LayoutMirrored() ) - { - if ( iFastSwapArea.GridItemCount() > maxItemsOnScreen ) - { - retVal.iX = iFastSwapArea.GridWorldSize().iWidth - iFastSwapArea.Rect().Width(); - } - else - { - retVal.iX = 0; - } - } - else // normal layout - { - retVal.iX = 0; - } - } - else if ( aItemIdx == iFastSwapArea.GridItemCount() - 1 ) - { - // Last item selected - if( AknLayoutUtils::LayoutMirrored() ) - { - retVal.iX = 0; - } - else // normal layout - { - if ( iFastSwapArea.GridItemCount() > maxItemsOnScreen ) - { - retVal.iX = iFastSwapArea.GridWorldSize().iWidth - iFastSwapArea.Rect().Width(); - } - else - { - retVal.iX = 0; - } - } - } - else - { - // Middle item - TInt screenMiddleItemOffset = ( iFastSwapArea.Rect().Width() - gridItemWidth ) / 2; - if( AknLayoutUtils::LayoutMirrored() ) - { - retVal.iX = gridItemWidth * ( iFastSwapArea.GridItemCount() - 1 - aItemIdx ) - screenMiddleItemOffset; - retVal.iX += ( iFastSwapArea.GridItemCount() - 1 - aItemIdx ) * gridItemGap; - } - else // normal layout - { - retVal.iX = gridItemWidth * aItemIdx - screenMiddleItemOffset; - retVal.iX += gridItemGap * aItemIdx; - } - if ( retVal.iX < 0 ) - { - retVal.iX = 0; - } - // aligin to grid end edge in case - // (item's position + draw area) extends over grid area and - // (all items cover more than grid area or penultimate item) - else if ( retVal.iX + iFastSwapArea.Rect().Width() > iFastSwapArea.GridWorldSize().iWidth && - (iFastSwapArea.GridWorldSize().iWidth > gridItemWidth * iFastSwapArea.GridItemCount() || - (aItemIdx > 1 && aItemIdx == iFastSwapArea.GridItemCount() - 2 )) ) - { - retVal.iX = iFastSwapArea.GridWorldSize().iWidth - iFastSwapArea.Rect().Width(); - } - } - - // Return middle of the view rectangle - retVal.iX += iFastSwapArea.Rect().Width() / 2; - - return retVal; - } - - -// ----------------------------------------------------------------------------- -// CTsFastSwapAreaExtension::ViewToVisibleItem -// ----------------------------------------------------------------------------- -// -TInt CTsFastSwapAreaExtension::ViewToVisibleItem( const TPoint aViewPos ) - { - TInt retVal(0); - TPoint absViewPos = aViewPos; - absViewPos.iX -= iFastSwapArea.Rect().Width() / 2; - if ( absViewPos.iX < 0 ) - { - if ( AknLayoutUtils::LayoutMirrored() ) - { - // View crossed left border of grid world rect, last item selected - retVal = iFastSwapArea.GridItemCount() - 1; - } - else // normal layout - { - // View crossed left border of grid world rect, first item selected - retVal = 0; - } - } - else if ( absViewPos.iX + iFastSwapArea.Rect().Width() > iFastSwapArea.GridWorldSize().iWidth ) - { - if ( AknLayoutUtils::LayoutMirrored() ) - { - // View crossed right border of grid world rect, first item selected - retVal = 0; - } - else // normal layout - { - // View crossed right border of grid world rect, last item selected - retVal = iFastSwapArea.GridItemCount() - 1; - } - } - else - { - TInt retItemPosX(0); - TInt offsetCheck = iFastSwapArea.GridWorldSize().iWidth; - // View inside of grid world rect - for ( TInt i = 0 ; i < iFastSwapArea.GridItemCount(); i++ ) - { - TInt itemPosX = ItemViewPosition( i ).iX; - TInt offset = aViewPos.iX - itemPosX; - if ( Abs( offset ) <= offsetCheck ) - { - offsetCheck = Abs( offset ); - retVal = i; - retItemPosX = itemPosX; - } - else - { - break; - } - } - // Check if item is fully visible. If not - // return next one if possible - TInt gridItemWidth = iFastSwapArea.GetGridItemData( CTsFastSwapArea::EGridItemWidth ); - if ( retItemPosX - gridItemWidth / 2 < absViewPos.iX && - retVal + 1 < iFastSwapArea.GridItemCount() ) - { - retVal++; - } - } - - return retVal; - } - - -// ----------------------------------------------------------------------------- -// CTsFastSwapAreaExtension::LaunchPopupFeedback -// ----------------------------------------------------------------------------- -// -void CTsFastSwapAreaExtension::LaunchPopupFeedback() - { - if ( AknLayoutUtils::PenEnabled() ) - { - MTouchFeedback* feedback = MTouchFeedback::Instance(); - if ( feedback ) - { - TTouchLogicalFeedback fbLogicalType = ETouchFeedbackPopUp; - if ( CAknTransitionUtils::TransitionsEnabled( - AknTransEffect::EComponentTransitionsOff ) ) - { - fbLogicalType = ETouchFeedbackIncreasingPopUp; - } - feedback->InstantFeedback( &iFastSwapArea, - fbLogicalType, - ETouchFeedbackVibra, - TPointerEvent() ); - } - } - } - - -// ----------------------------------------------------------------------------- -// CTsFastSwapAreaExtension::PreferredImageSize -// ----------------------------------------------------------------------------- -// -TSize CTsFastSwapAreaExtension::PreferredImageSize() - { - TAknLayoutRect gridImage; - TRAP_IGNORE( - RArray rects; - CleanupClosePushL(rects); - rects.ReserveL(KLayoutItemCount); - GetFastSwapAreaRects(rects); - gridImage = rects[2]; - CleanupStack::PopAndDestroy(&rects); - ); - return gridImage.Rect().Size(); - } - -// -------------------------------------------------------------------------- -// CTsFastSwapAreaExtension::CalculateSizePreserveRatio -// -------------------------------------------------------------------------- -// -TSize CTsFastSwapAreaExtension::CalculateSizePreserveRatio( - const TSize& aTargetAreaSize, - const TSize& aSourceSize ) - { - const TReal - resizedAspectRatio(aTargetAreaSize.iWidth/(TReal)aTargetAreaSize.iHeight); - const TReal - orginalAspectRatio(aSourceSize.iWidth/(TReal)aSourceSize.iHeight); - //this condition avoid empty margins ( bigger output ). to realy fit area change it - const TReal scaleFactor = - ( orginalAspectRatio > resizedAspectRatio ) ? - (aTargetAreaSize.iHeight /(TReal)aSourceSize.iHeight) ://scale by height - (aTargetAreaSize.iWidth /(TReal)aSourceSize.iWidth) ;//scale by width - return TSize(aSourceSize.iWidth * scaleFactor, aSourceSize.iHeight * scaleFactor); - } - - -// -------------------------------------------------------------------------- -// CTsFastSwapAreaExtension::CopyBitmapL -// Copy and scale. -// -------------------------------------------------------------------------- -// -CFbsBitmap* CTsFastSwapAreaExtension::CopyBitmapL( TInt aFbsHandle, TSize aSize, TBool aIsScreenshot ) - { - CFbsBitmap* ret = new (ELeave) CFbsBitmap(); - CleanupStack::PushL( ret ); - - CFbsBitmap* bmp = DuplicateBitmapLC( aFbsHandle ); - - // First scale using normal method, to show "draft" screenshots. - // Do not always use aSize, preserving the aspect ratio is quite - // important when showing app icons instead of screenshots - TSize sz = CalculateSizePreserveRatio( aSize, bmp->SizeInPixels() ); - User::LeaveIfError( ret->Create( sz, bmp->DisplayMode() ) ); - AknIconUtils::ScaleBitmapL( sz, ret, bmp ); - - // Second, if it is screenshot, perform quality improvement scaling - if ( aIsScreenshot ) - { - ScaleBitmapL( bmp, ret ); - CleanupStack::Pop( bmp ); - } - else - { - CleanupStack::PopAndDestroy( bmp ); - } - - CleanupStack::Pop( ret ); - return ret; - } - -// -------------------------------------------------------------------------- -// CTsFastSwapAreaExtension::DuplicateBitmapL -// -------------------------------------------------------------------------- -// -CFbsBitmap* CTsFastSwapAreaExtension::DuplicateBitmapLC( TInt aFbsHandle ) - { - CFbsBitmap* bmp = new (ELeave) CFbsBitmap(); - CleanupStack::PushL( bmp ); - User::LeaveIfError( bmp->Duplicate( aFbsHandle ) ); - return bmp; - } - -// -------------------------------------------------------------------------- -// CTsFastSwapAreaExtension::ScaleBitmapL -// -------------------------------------------------------------------------- -// -void CTsFastSwapAreaExtension::ScaleBitmapL( CFbsBitmap* aSourceBitmap, - CFbsBitmap* aTargetBitmap ) - { - CTsBitmapScaleTask* rotaTask = new (ELeave) CTsBitmapScaleTask( *this ); - CleanupStack::PushL( rotaTask ); - iScaleTasks.AppendL( rotaTask ); - rotaTask->StartLD( aSourceBitmap, aTargetBitmap ); - // ownership of bmp transferred - CleanupStack::Pop( rotaTask ); - } - -// -------------------------------------------------------------------------- -// CTsFastSwapAreaExtension::CancelScaleTasks -// -------------------------------------------------------------------------- -// -void CTsFastSwapAreaExtension::CancelScaleTasks() - { - iScaleTasks.ResetAndDestroy(); - } - - -// -------------------------------------------------------------------------- -// CTsFastSwapAreaExtension::ScaleFinished -// -------------------------------------------------------------------------- -// -void CTsFastSwapAreaExtension::ScaleFinished( CTsBitmapScaleTask* iFinishedTask ) - { - TInt task = iScaleTasks.Find( iFinishedTask ); - if ( task != KErrNotFound ) - { - iScaleTasks.Remove( task ); - } - iFastSwapArea.DrawDeferred(); - } - - // End of file diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/taskswitcherui/taskswitcherapp/src/tsfastswapgrid.cpp --- a/taskswitcher/taskswitcherui/taskswitcherapp/src/tsfastswapgrid.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/taskswitcher/taskswitcherui/taskswitcherapp/src/tsfastswapgrid.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -515,14 +515,16 @@ EMbmAvkonQgn_indi_button_preview_close_mask )); + TAknLayoutRect gridAppPane; TAknLayoutRect gridItem; TAknLayoutRect gridImage; TAknLayoutRect gridCloseButton; TAknLayoutRect gridCloseIcon; TInt variety = Layout_Meta_Data::IsLandscapeOrientation() ? 1 : 0; - - TRect source = Rect(); - gridItem.LayoutRect( source, + TRect source = iParent ? iParent->Rect() : Rect(); + gridAppPane.LayoutRect( source, + AknLayoutScalable_Apps::tport_appsw_pane( variety ) ); + gridItem.LayoutRect( gridAppPane.Rect(), AknLayoutScalable_Apps::cell_tport_appsw_pane( variety, 0, 0 ) ); gridImage.LayoutRect( gridItem.Rect(), AknLayoutScalable_Apps::cell_tport_appsw_pane_g1( variety ) ); @@ -863,5 +865,53 @@ retVal.iBr.iY -= iCloseButtonRect.iBr.iY - iCloseIconRect.iBr.iY; return retVal; } - + + + + /* ================================================================================ + * CTsGridHighlightTimer + * ================================================================================ + */ + +// ----------------------------------------------------------------------------- +// CTsGridHighlightTimer::CTsGridHighlightTimer +// ----------------------------------------------------------------------------- +// +CTsFastSwapTimer::CTsFastSwapTimer( MTsFastSwapTimerObserver& aObserver ) +: CTimer( EPriorityStandard ), + iObserver( &aObserver ) + { + } + + +// ----------------------------------------------------------------------------- +// CTsGridHighlightTimer::CTsGridHighlightTimer +// ----------------------------------------------------------------------------- +// +CTsFastSwapTimer::~CTsFastSwapTimer() + { + Cancel(); + } + + +// ----------------------------------------------------------------------------- +// CTsGridHighlightTimer::ConstructL +// ----------------------------------------------------------------------------- +// +void CTsFastSwapTimer::ConstructL() + { + CTimer::ConstructL(); + CActiveScheduler::Add( this ); + } + + +// ----------------------------------------------------------------------------- +// CTsGridHighlightTimer::CTsGridHighlightTimer +// ----------------------------------------------------------------------------- +// +void CTsFastSwapTimer::RunL() + { + iObserver->TimerCompletedL(this); + } + // End of file diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/taskswitcherui/taskswitcherapp/src/tsphysicsengine.cpp --- a/taskswitcher/taskswitcherui/taskswitcherapp/src/tsphysicsengine.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/taskswitcher/taskswitcherui/taskswitcherapp/src/tsphysicsengine.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -72,7 +72,7 @@ void CTsPhysicsEngine::ConstructL(MAknPhysicsObserver& aPhysicObserver, CCoeControl& aViewControl) { - iPhysics = CAknPhysics::NewL(aPhysicObserver, &aViewControl); + iPhysics = CAknPhysics::NewL(aPhysicObserver, &aViewControl);//TODO: iTaskswitcherPhysics = CTsPhysics::NewL(aPhysicObserver); } diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/taskswitcherui/taskswitcherappecom/group/tsappecom.mmp --- a/taskswitcher/taskswitcherui/taskswitcherappecom/group/tsappecom.mmp Wed Sep 15 12:00:00 2010 +0300 +++ b/taskswitcher/taskswitcherui/taskswitcherappecom/group/tsappecom.mmp Wed Oct 13 14:18:30 2010 +0300 @@ -44,7 +44,6 @@ LIBRARY ecom.lib LIBRARY apgrfx.lib LIBRARY cone.lib -LIBRARY apparc.lib DEBUGLIBRARY flogger.lib diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/taskswitcherui/taskswitcherappecom/inc/tsappecom.h --- a/taskswitcher/taskswitcherui/taskswitcherappecom/inc/tsappecom.h Wed Sep 15 12:00:00 2010 +0300 +++ b/taskswitcher/taskswitcherui/taskswitcherappecom/inc/tsappecom.h Wed Oct 13 14:18:30 2010 +0300 @@ -21,7 +21,6 @@ #include #include -#include /** * Taskswitcher ecom plugin which is loaded by AknCapServer as an alternate Fast @@ -103,28 +102,7 @@ * Defines the P&S property. */ void DefineTaskswitcherStateProperty(); - - /** - * Checks if Task Switcher is running. - */ - TBool IsTaskSwitcherStarted(); - - /** - * Starts Task Switche app by calling StartTaskSwitcherL. - * - * @return KErrNone if succesful or error code. - */ - TInt StartTaskSwitcher(); - - /** - * Starts Task Switche app. - * - * @return KErrNone if succesful or error code. - */ - TInt StartTaskSwitcherL(); - -private: - RApaLsSession iApaLsSession; + }; #endif // TSAPPECOM_H diff -r b01126ce0bec -r ba63c83f4716 taskswitcher/taskswitcherui/taskswitcherappecom/src/tsappecom.cpp --- a/taskswitcher/taskswitcherui/taskswitcherappecom/src/tsappecom.cpp Wed Sep 15 12:00:00 2010 +0300 +++ b/taskswitcher/taskswitcherui/taskswitcherappecom/src/tsappecom.cpp Wed Oct 13 14:18:30 2010 +0300 @@ -74,7 +74,6 @@ TSLOG_IN(); DefineTaskswitcherStateProperty(); - User::LeaveIfError( iApaLsSession.Connect() ); TSLOG_OUT(); } @@ -86,7 +85,6 @@ // CTsEcomPlugin::~CTsEcomPlugin() { - iApaLsSession.Close(); } // --------------------------------------------------------------------------- @@ -190,11 +188,18 @@ TSLOG_CONTEXT( CTsEcomPlugin::IsReady, TSLOG_LOCAL ); TSLOG_IN(); - TBool ret = ETrue; + TBool ret = EFalse; + CEikonEnv* eikonEnv = CEikonEnv::Static(); - if( !IsTaskSwitcherStarted() ) + if ( eikonEnv ) { - ret = (KErrNone == StartTaskSwitcher()) ? ETrue : EFalse; + TApaTaskList taskList( eikonEnv->WsSession() ); + TApaTask task = taskList.FindApp( KTaskswitcherAppUidValue ); + + if ( task.Exists() ) + { + ret = ETrue; + } } TSLOG1_OUT( "IsReady returns: %d", ret ); @@ -244,72 +249,4 @@ TSLOG_OUT(); } -// ----------------------------------------------------------------------------- -// CTsEcomPlugin::IsTaskSwitcherStarted -// ----------------------------------------------------------------------------- -// -TBool CTsEcomPlugin::IsTaskSwitcherStarted() - { - TSLOG_CONTEXT( CTsEcomPlugin::IsTaskSwitcherStarted, TSLOG_LOCAL ); - TSLOG_IN(); - - TBool ret(EFalse); - CEikonEnv* eikonEnv = CEikonEnv::Static(); - if ( eikonEnv ) - { - TApaTaskList taskList( eikonEnv->WsSession() ); - TApaTask task = taskList.FindApp( KTaskswitcherAppUidValue ); - if ( task.Exists() ) - { - ret = ETrue; - } - } - TSLOG1( TSLOG_INFO, "TaskSwitcherStarted: %d", ret); - TSLOG_OUT(); - return ret; - } - -// ----------------------------------------------------------------------------- -// CTsEcomPlugin::StartTaskSwitcher -// ----------------------------------------------------------------------------- -// -TInt CTsEcomPlugin::StartTaskSwitcher() - { - TInt ret(0); - TRAPD(err, ret = StartTaskSwitcherL() ); - if( KErrNone != err ) - { - ret = err; - } - return ret; - } - -// ----------------------------------------------------------------------------- -// CTsEcomPlugin::StartTaskSwitcherL -// ----------------------------------------------------------------------------- -// -TInt CTsEcomPlugin::StartTaskSwitcherL() - { - TSLOG_CONTEXT( CTsEcomPlugin::StartTaskSwitcher, TSLOG_LOCAL ); - TSLOG_IN(); - TInt ret(KErrNone); - - TApaAppInfo appInfo; - TApaAppCapabilityBuf capabilityBuf; - ret = iApaLsSession.GetAppInfo( appInfo, KTaskswitcherAppUidValue ); - if ( !ret ) - { - TFileName appName = appInfo.iFullName; - CApaCommandLine* cmdLine = CApaCommandLine::NewLC(); - cmdLine->SetExecutableNameL( appName ); - cmdLine->SetCommandL( EApaCommandRun ); - ret = iApaLsSession.StartApp( *cmdLine ); - CleanupStack::PopAndDestroy( cmdLine ); - } - - TSLOG1( TSLOG_INFO, "RApaLsSession::StartApp returned with: %d", ret ); - TSLOG_OUT(); - return ret; - } - // End of file