--- a/idlehomescreen/data/qhd_tch/desktop_20026f4f/hsps/00/manifest.dat Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/desktop_20026f4f/hsps/00/manifest.dat Fri Mar 12 15:41:49 2010 +0200
@@ -25,7 +25,7 @@
<!-- Name of the localization files -->
<filedtd>desktopconfiguration.dtd</filedtd>
- <multiinstance>2</multiinstance>
+ <multiinstance>unlimited</multiinstance>
<description>&qtn_desktop_configuration_desc;</description>
<filelogo>skin(270501603 9361):mif(icon.mif 16384 16385)</filelogo>
--- a/idlehomescreen/data/qhd_tch/desktop_20026f4f/loc/desktopconfiguration.loc Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/desktop_20026f4f/loc/desktopconfiguration.loc Fri Mar 12 15:41:49 2010 +0200
@@ -22,7 +22,7 @@
#define qtn_desktop_configuration_name "Shortcuts"
// d: Shortcut widget description
-// l: listrow_wgtman_pane_t2
+// l: wgtman_list_pane_t1
// w:
// r: TB9.2
#define qtn_desktop_configuration_desc "Quick access to your favorite applications from Home Screen."
--- a/idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/37/onerow.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/37/onerow.css Fri Mar 12 15:41:49 2010 +0200
@@ -21,6 +21,7 @@
padding-left:8px;
padding-right:8px;
font-line-space: 15;
+ direction: ltr;
text-align: right;
text-overflow-mode: wrap;
max-line-amount: 2;
--- a/idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/50/onerow.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/50/onerow.css Fri Mar 12 15:41:49 2010 +0200
@@ -21,6 +21,7 @@
padding-left:8px;
padding-right:8px;
font-line-space: 15;
+ direction: ltr;
text-align: right;
text-overflow-mode: wrap;
max-line-amount: 2;
--- a/idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/57/onerow.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/57/onerow.css Fri Mar 12 15:41:49 2010 +0200
@@ -21,6 +21,7 @@
padding-left:8px;
padding-right:8px;
font-line-space: 15;
+ direction: ltr;
text-align: right;
text-overflow-mode: wrap;
max-line-amount: 2;
--- a/idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/94/onerow.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/onerow_2001f480/xuikon/94/onerow.css Fri Mar 12 15:41:49 2010 +0200
@@ -21,6 +21,7 @@
padding-left:8px;
padding-right:8px;
font-line-space: 15;
+ direction: ltr;
text-align: right;
text-overflow-mode: wrap;
max-line-amount: 2;
--- a/idlehomescreen/data/qhd_tch/profile_2001cb7c/group/bld.inf Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/profile_2001cb7c/group/bld.inf Fri Mar 12 15:41:49 2010 +0200
@@ -23,8 +23,7 @@
//********************************************************
../hsps/00/manifest.dat /epoc32/data/Z/resource/homescreen/profile_2001cb7c/hsps/manifest.dat
../hsps/00/widgetconfiguration.xml /epoc32/data/Z/resource/homescreen/profile_2001cb7c/hsps/widgetconfiguration.xml
-// waiting for localization from platform
-//../hsps/00/profileconfiguration.dtd /epoc32/data/Z/resource/homescreen/profile_2001cb7c/hsps/profileconfiguration.dtd
+../hsps/00/profileconfiguration.dtd /epoc32/data/Z/resource/homescreen/profile_2001cb7c/hsps/profileconfiguration.dtd
../xuikon/00/profile.dat /epoc32/data/Z/resource/homescreen/profile_2001cb7c/xuikon/profile_2001cb7c.dat
../xuikon/00/profile.css /epoc32/data/Z/resource/homescreen/profile_2001cb7c/xuikon/profile.css
@@ -45,8 +44,7 @@
//*****************************
// export localizable loc files (engineering versions)
../loc/profilewidget.loc APP_LAYER_LOC_EXPORT_PATH(profilewidget.loc)
-// waiting for localization from platform
-//../loc/profileconfiguration.loc APP_LAYER_LOC_EXPORT_PATH(profileconfiguration.loc)
+../loc/profileconfiguration.loc APP_LAYER_LOC_EXPORT_PATH(profileconfiguration.loc)
// Support for S60 builds
//***********************
@@ -61,6 +59,7 @@
START EXTENSION tools/dtd
OPTION SWITCH_LOC_FILE_NAME profile_2001cb7c
OPTION DTD_TYPE widget
+OPTION LOC_FOLDERS yes
END
--- a/idlehomescreen/data/qhd_tch/profile_2001cb7c/hsps/00/manifest.dat Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/profile_2001cb7c/hsps/00/manifest.dat Fri Mar 12 15:41:49 2010 +0200
@@ -14,22 +14,17 @@
<configurationuid>0x2001cb7c</configurationuid>
- <!-- Name of the localization files
- waiting for localization from platform
<filedtd>profileconfiguration.dtd</filedtd>
+
<fullname>&qtn_profile_configuration_name;</fullname>
- <description>&qtn_profile_configuration_desc;</description>
- -->
-
- <!-- description -->
- <fullname>profilename waits loc</fullname>
<shortname>profile</shortname>
<version>1.0</version>
+ <!-- description -->
+ <description>&qtn_profile_configuration_desc;</description>
+
<!-- configuration -->
<filexml>widgetconfiguration.xml</filexml>
-
- <description>profiledesc waits localization from platform</description>
<filelogo>skin(270501603 9360):mif(icon.mif 16384 16385)</filelogo>
<!-- Locale specific resources -->
--- a/idlehomescreen/data/qhd_tch/profile_2001cb7c/hsps/00/widgetconfiguration.xml Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/profile_2001cb7c/hsps/00/widgetconfiguration.xml Fri Mar 12 15:41:49 2010 +0200
@@ -1,9 +1,5 @@
<configuration>
<control>
- <settings>
- <item id="profilewidget" name="ContentSource">
- <property name="removable" value="false"/>
- </item>
- </settings>
+ <settings/>
</control>
</configuration>
--- a/idlehomescreen/data/qhd_tch/profile_2001cb7c/loc/profileconfiguration.loc Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/profile_2001cb7c/loc/profileconfiguration.loc Fri Mar 12 15:41:49 2010 +0200
@@ -23,7 +23,7 @@
#define qtn_profile_configuration_name "Time & profile"
// d: profile widget description
-// l: listrow_wgtman_pane_t2
+// l: wgtman_list_pane_t1
// w:
// r: TB9.2
#define qtn_profile_configuration_desc "Quick access to time, date and change profile."
\ No newline at end of file
--- a/idlehomescreen/data/qhd_tch/profile_2001cb7c/rom/profilewidget_customer.iby Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/profile_2001cb7c/rom/profilewidget_customer.iby Fri Mar 12 15:41:49 2010 +0200
@@ -23,6 +23,7 @@
// Enabled by DTD-localization tools, language specific
data=ZPRIVATE\200159c0\install\profile_2001cb7c\xuikon\00\profile.o0000 \private\200159c0\install\profile_2001cb7c\xuikon\00\profile.o0000
+data=ZPRIVATE\200159c0\install\profile_2001cb7c\hsps\00\profileconfiguration.dtd \private\200159c0\install\profile_2001cb7c\hsps\00\profileconfiguration.dtd
#endif // __LAYOUT_360_640_TOUCH || __LAYOUT_640_360_TOUCH
--- a/idlehomescreen/data/qhd_tch/profile_2001cb7c/rom/profilewidget_resources.iby Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/profile_2001cb7c/rom/profilewidget_resources.iby Fri Mar 12 15:41:49 2010 +0200
@@ -23,6 +23,7 @@
data=ZPRIVATE\200159c0\install\profile_2001cb7c\xuikon\00\profile.o0000 \private\200159c0\install\profile_2001cb7c\xuikon\00\profile.o0000
data=ZPRIVATE\200159c0\install\profile_2001cb7c\hsps\00\icon.mif \private\200159c0\install\profile_2001cb7c\hsps\00\icon.mif
+data=ZPRIVATE\200159c0\install\profile_2001cb7c\hsps\00\profileconfiguration.dtd \private\200159c0\install\profile_2001cb7c\hsps\00\profileconfiguration.dtd
#endif // __LAYOUT_360_640_TOUCH || __LAYOUT_640_360_TOUCH
Binary file idlehomescreen/data/qhd_tch/root_2001f482/conf/root2001f482.confml has changed
--- a/idlehomescreen/data/qhd_tch/root_2001f482/hsps/00/rootconfiguration.xml Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/root_2001f482/hsps/00/rootconfiguration.xml Fri Mar 12 15:41:49 2010 +0200
@@ -1,14 +1,12 @@
-<configuration>
- <!-- name = localized name e.g. "classic theme" -->
- <control>
- <plugins>
- <plugin uid="0x2001f48b"/>
- <plugin uid="0x2001f48b"/>
- <plugin uid="0x2001f48b"/>
- <plugin uid="0x2001f48b"/>
- <plugin uid="0x2001f48b"/>
- <plugin uid="0x2001f48b"/>
- </plugins>
- <settings/>
- </control>
+<?xml version="1.0" encoding="UTF-8"?>
+
+<configuration max_child="3" xmlns:xi="http://www.w3.org/2001/xinclude">
+ <control>
+ <plugins>
+ <plugin uid="0x2001f48b" locking_status="locked"/>
+ <plugin uid="0x20026f50" locking_status="none"/>
+ <plugin uid="0x20026f50" locking_status="none"/>
+ </plugins>
+ <settings/>
+ </control>
</configuration>
--- a/idlehomescreen/data/qhd_tch/templateview_20026f50/hsps/00/templateviewconfiguration.xml Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/templateview_20026f50/hsps/00/templateviewconfiguration.xml Fri Mar 12 15:41:49 2010 +0200
@@ -1,22 +1,23 @@
-<configuration>
- <control>
- <settings>
- <item id="hs_qhd_tch_templateview">
- <property name="use_empty_widget" value="true"/>
- </item>
- <item id="wallpaper">
- <property name="path" value=""/>
- </item>
- </settings>
- <plugins>
- <plugin uid="0x2001cb7c"/>
- <plugin uid="0x2001f47f"/>
- <plugin uid="0x2001f47f"/>
- <plugin uid="0x2001f47f"/>
- <plugin uid="0x2001f47f"/>
- <plugin uid="0x2001f47f"/>
- </plugins>
- <settings/>
- </control>
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration max_child="6" xmlns:xi="http://www.w3.org/2001/xinclude">
+ <control>
+ <settings>
+ <item id="hs_qhd_tch_templateview">
+ <property name="use_empty_widget" value="true"/>
+ </item>
+ <item id="wallpaper">
+ <property name="path" value=""/>
+ </item>
+ </settings>
+ <plugins>
+ <plugin uid="0x2001f47f" bundle_id="0" template_id="0" locking_status="none"/>
+ <plugin uid="0x2001f47f" bundle_id="0" template_id="0" locking_status="none"/>
+ <plugin uid="0x2001f47f" bundle_id="0" template_id="0" locking_status="none"/>
+ <plugin uid="0x2001f47f" bundle_id="0" template_id="0" locking_status="none"/>
+ <plugin uid="0x2001f47f" bundle_id="0" template_id="0" locking_status="none"/>
+ <plugin uid="0x2001f47f" bundle_id="0" template_id="0" locking_status="none"/>
+ </plugins>
+ <settings/>
+ </control>
</configuration>
--- a/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/00/templateview.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/00/templateview.css Fri Mar 12 15:41:49 2010 +0200
@@ -11,7 +11,7 @@
box#plugins_container
{
direction: ltr;
- block-progression: tb;
+ block-progression: rl;
padding-top: 3px;
}
@@ -29,11 +29,6 @@
nav-index: appearance;
}
-plugin:edit
-{
- background-color:"SKIN(270501603 8582)";
-}
-
image.widget_indication
{
display: none;
--- a/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/00/templateview.xml Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/00/templateview.xml Fri Mar 12 15:41:49 2010 +0200
@@ -132,7 +132,6 @@
<menuitemgrouping>
<!-- These items are shown when content is visible -->
<menuitemgroup id="Menu/NormalMode">
- <property name="hs_widget_catalog"/>
<property name="hs_edit_widgets"/>
<property name="hs_set_online"/>
<property name="hs_set_offline"/>
--- a/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/37/templateview.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/37/templateview.css Fri Mar 12 15:41:49 2010 +0200
@@ -11,7 +11,7 @@
box#plugins_container
{
direction: rtl;
- block-progression: tb;
+ block-progression: rl;
padding-top: 3px;
}
@@ -23,18 +23,12 @@
margin-bottom: 4px;
margin-right: 5px;
margin-left: 5px;
- background-color: "SKIN(268458534 9916)";
_s60-longtap: true;
nav-index: appearance;
}
-plugin:edit
-{
- background-color:"SKIN(270501603 8582)";
-}
-
image.widget_indication
{
display: none;
--- a/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/50/templateview.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/50/templateview.css Fri Mar 12 15:41:49 2010 +0200
@@ -11,7 +11,7 @@
box#plugins_container
{
direction: rtl;
- block-progression: tb;
+ block-progression: rl;
padding-top: 3px;
}
@@ -23,18 +23,12 @@
margin-bottom: 4px;
margin-right: 5px;
margin-left: 5px;
- background-color: "SKIN(268458534 9916)";
_s60-longtap: true;
nav-index: appearance;
}
-plugin:edit
-{
- background-color:"SKIN(270501603 8582)";
-}
-
image.widget_indication
{
display: none;
--- a/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/57/templateview.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/57/templateview.css Fri Mar 12 15:41:49 2010 +0200
@@ -11,7 +11,7 @@
box#plugins_container
{
direction: rtl;
- block-progression: tb;
+ block-progression: rl;
padding-top: 3px;
}
@@ -23,18 +23,12 @@
margin-bottom: 4px;
margin-right: 5px;
margin-left: 5px;
- background-color: "SKIN(268458534 9916)";
_s60-longtap: true;
nav-index: appearance;
}
-plugin:edit
-{
- background-color:"SKIN(270501603 8582)";
-}
-
image.widget_indication
{
display: none;
--- a/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/94/templateview.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/templateview_20026f50/xuikon/94/templateview.css Fri Mar 12 15:41:49 2010 +0200
@@ -11,7 +11,7 @@
box#plugins_container
{
direction: rtl;
- block-progression: tb;
+ block-progression: rl;
padding-top: 3px;
}
@@ -23,18 +23,12 @@
margin-bottom: 4px;
margin-right: 5px;
margin-left: 5px;
- background-color: "SKIN(268458534 9916)";
_s60-longtap: true;
nav-index: appearance;
}
-plugin:edit
-{
- background-color:"SKIN(270501603 8582)";
-}
-
image.widget_indication
{
display: none;
--- a/idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/37/threerows.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/37/threerows.css Fri Mar 12 15:41:49 2010 +0200
@@ -25,6 +25,7 @@
{
padding-left:8px;
padding-right:8px;
+ direction: ltr;
text-align: right;
font-family: EAknLogicalFontSecondaryFont;
font-size: 23px;
--- a/idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/50/threerows.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/50/threerows.css Fri Mar 12 15:41:49 2010 +0200
@@ -25,6 +25,7 @@
{
padding-left:8px;
padding-right:8px;
+ direction: ltr;
text-align: right;
font-family: EAknLogicalFontSecondaryFont;
font-size: 23px;
--- a/idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/57/threerows.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/57/threerows.css Fri Mar 12 15:41:49 2010 +0200
@@ -25,6 +25,7 @@
{
padding-left:8px;
padding-right:8px;
+ direction: ltr;
text-align: right;
font-family: EAknLogicalFontSecondaryFont;
font-size: 23px;
--- a/idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/94/threerows.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/threerows_2001f486/xuikon/94/threerows.css Fri Mar 12 15:41:49 2010 +0200
@@ -25,6 +25,7 @@
{
padding-left:8px;
padding-right:8px;
+ direction: ltr;
text-align: right;
font-family: EAknLogicalFontSecondaryFont;
font-size: 23px;
--- a/idlehomescreen/data/qhd_tch/threetextrows_2001f487/xuikon/37/threetextrows.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/threetextrows_2001f487/xuikon/37/threetextrows.css Fri Mar 12 15:41:49 2010 +0200
@@ -2,6 +2,7 @@
{
padding-left:8px;
padding-right:8px;
+ direction: ltr;
text-align: right;
font-family: EAknLogicalFontSecondaryFont;
font-size: 23px;
--- a/idlehomescreen/data/qhd_tch/threetextrows_2001f487/xuikon/50/threetextrows.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/threetextrows_2001f487/xuikon/50/threetextrows.css Fri Mar 12 15:41:49 2010 +0200
@@ -2,6 +2,7 @@
{
padding-left:8px;
padding-right:8px;
+ direction: ltr;
text-align: right;
font-family: EAknLogicalFontSecondaryFont;
font-size: 23px;
--- a/idlehomescreen/data/qhd_tch/threetextrows_2001f487/xuikon/57/threetextrows.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/threetextrows_2001f487/xuikon/57/threetextrows.css Fri Mar 12 15:41:49 2010 +0200
@@ -2,6 +2,7 @@
{
padding-left:8px;
padding-right:8px;
+ direction: ltr;
text-align: right;
font-family: EAknLogicalFontSecondaryFont;
font-size: 23px;
--- a/idlehomescreen/data/qhd_tch/threetextrows_2001f487/xuikon/94/threetextrows.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/threetextrows_2001f487/xuikon/94/threetextrows.css Fri Mar 12 15:41:49 2010 +0200
@@ -2,6 +2,7 @@
{
padding-left:8px;
padding-right:8px;
+ direction: ltr;
text-align: right;
font-family: EAknLogicalFontSecondaryFont;
font-size: 23px;
--- a/idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/37/tworows.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/37/tworows.css Fri Mar 12 15:41:49 2010 +0200
@@ -26,6 +26,7 @@
padding-right:8px;
padding-left:8px;
padding-top:8px;
+ direction: ltr;
text-align: right;
font-family: EAknLogicalFontSecondaryFont;
font-size: 23px;
--- a/idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/50/tworows.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/50/tworows.css Fri Mar 12 15:41:49 2010 +0200
@@ -26,6 +26,7 @@
padding-right:8px;
padding-left:8px;
padding-top:8px;
+ direction: ltr;
text-align: right;
font-family: EAknLogicalFontSecondaryFont;
font-size: 23px;
--- a/idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/57/tworows.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/57/tworows.css Fri Mar 12 15:41:49 2010 +0200
@@ -26,6 +26,7 @@
padding-right:8px;
padding-left:8px;
padding-top:8px;
+ direction: ltr;
text-align: right;
font-family: EAknLogicalFontSecondaryFont;
font-size: 23px;
--- a/idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/94/tworows.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/tworows_2001f488/xuikon/94/tworows.css Fri Mar 12 15:41:49 2010 +0200
@@ -26,6 +26,7 @@
padding-right:8px;
padding-left:8px;
padding-top:8px;
+ direction: ltr;
text-align: right;
font-family: EAknLogicalFontSecondaryFont;
font-size: 23px;
Binary file idlehomescreen/data/qhd_tch/view_2001f48b/conf/view2001f48b.confml has changed
--- a/idlehomescreen/data/qhd_tch/view_2001f48b/hsps/00/viewconfiguration.xml Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/view_2001f48b/hsps/00/viewconfiguration.xml Fri Mar 12 15:41:49 2010 +0200
@@ -1,22 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration max_child="6" xmlns:xi="http://www.w3.org/2001/xinclude">
-<control>
-<settings>
-<item id="hs_qhd_tch_view">
-<property name="use_empty_widget" value="true"/>
-</item>
-<item id="wallpaper">
-<property name="path" value=" "/>
-</item>
-</settings>
-<plugins>
-<plugin uid="0x2001CB7C" bundle_id="0" template_id="0" locking_status="none"/>
-<plugin uid="0x20026f4f" bundle_id="0" template_id="0" locking_status="none"/>
-<plugin uid="0x10207c18" bundle_id="0" template_id="0" locking_status="none"/>
-<plugin uid="0x2001f481" bundle_id="0" template_id="0" locking_status="none"/>
-<plugin uid="0x2001f47f" bundle_id="0" template_id="0" locking_status="none"/>
-<plugin uid="0x2001f47f" bundle_id="0" template_id="0" locking_status="none"/>
-</plugins>
-</control>
+ <control>
+ <settings>
+ <item id="hs_qhd_tch_view">
+ <property name="use_empty_widget" value="true"/>
+ </item>
+ <item id="wallpaper">
+ <property name="path" value=""/>
+ </item>
+ </settings>
+ <plugins>
+ <plugin uid="0x2001cb7c" bundle_id="0" template_id="0" locking_status="locked"/>
+ <plugin uid="0x20026f4f" bundle_id="0" template_id="0" locking_status="none"/>
+ <plugin uid="0x10207c18" bundle_id="0" template_id="0" locking_status="none"/>
+ <plugin uid="0x2001f481" bundle_id="0" template_id="0" locking_status="none"/>
+ <plugin uid="0x2001f47f" bundle_id="0" template_id="0" locking_status="none"/>
+ <plugin uid="0x2001f47f" bundle_id="0" template_id="0" locking_status="none"/>
+ </plugins>
+ <settings/>
+ </control>
</configuration>
--- a/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/00/View.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/00/View.css Fri Mar 12 15:41:49 2010 +0200
@@ -11,7 +11,7 @@
box#plugins_container
{
direction: ltr;
- block-progression: tb;
+ block-progression: rl;
padding-top: 3px;
}
@@ -29,11 +29,6 @@
nav-index: appearance;
}
-plugin:edit
-{
- background-color:"SKIN(270501603 8582)";
-}
-
image.widget_indication
{
display: none;
--- a/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/00/View.xml Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/00/View.xml Fri Mar 12 15:41:49 2010 +0200
@@ -132,7 +132,6 @@
<menuitemgrouping>
<!-- These items are shown when content is visible -->
<menuitemgroup id="Menu/NormalMode">
- <property name="hs_widget_catalog"/>
<property name="hs_edit_widgets"/>
<property name="hs_set_online"/>
<property name="hs_set_offline"/>
--- a/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/37/View.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/37/View.css Fri Mar 12 15:41:49 2010 +0200
@@ -11,7 +11,7 @@
box#plugins_container
{
direction: rtl;
- block-progression: tb;
+ block-progression: rl;
padding-top: 3px;
}
@@ -27,11 +27,6 @@
nav-index: appearance;
}
-plugin:edit
-{
- background-color:"SKIN(270501603 8582)";
-}
-
image.widget_indication
{
display: none;
--- a/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/50/View.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/50/View.css Fri Mar 12 15:41:49 2010 +0200
@@ -11,7 +11,7 @@
box#plugins_container
{
direction: rtl;
- block-progression: tb;
+ block-progression: rl;
padding-top: 3px;
}
@@ -27,11 +27,6 @@
nav-index: appearance;
}
-plugin:edit
-{
- background-color:"SKIN(270501603 8582)";
-}
-
image.widget_indication
{
display: none;
--- a/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/57/View.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/57/View.css Fri Mar 12 15:41:49 2010 +0200
@@ -11,7 +11,7 @@
box#plugins_container
{
direction: rtl;
- block-progression: tb;
+ block-progression: rl;
padding-top: 3px;
}
@@ -27,11 +27,6 @@
nav-index: appearance;
}
-plugin:edit
-{
- background-color:"SKIN(270501603 8582)";
-}
-
image.widget_indication
{
display: none;
--- a/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/94/View.css Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/data/qhd_tch/view_2001f48b/xuikon/94/View.css Fri Mar 12 15:41:49 2010 +0200
@@ -11,7 +11,7 @@
box#plugins_container
{
direction: rtl;
- block-progression: tb;
+ block-progression: rl;
padding-top: 3px;
}
@@ -27,11 +27,6 @@
nav-index: appearance;
}
-plugin:edit
-{
- background-color:"SKIN(270501603 8582)";
-}
-
image.widget_indication
{
display: none;
Binary file idlehomescreen/data/qhd_tch/view_200286e4/conf/view200286e4.confml has changed
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e4/conf/view200286e4.gcfml Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,138 @@
+<file xmlns="http://www.s60.com/xml/genconfml/1" name="viewconfiguration.xml" target="\private\200159c0\install\view_200286e4\hsps\00\">
+ <setting ref="HomescreenPlugins/MaxWidgets"/>
+ <setting ref="HomescreenPlugins/UseEmptyWidgets"/>
+ <setting ref="HomescreenPlugins/ItemIdEmptyWidgets"/>
+ <setting ref="HomescreenPlugins/PropertyEmptyWidgets"/>
+ <setting ref="HomescreenPlugins/Background"/>
+ <setting ref="HomescreenPlugins/BackGroundPath"/>
+ <setting ref="HomescreenPlugins/ItemIdWallpaper"/>
+ <setting ref="HomescreenPlugins/ItemIdSlideshow"/>
+ <setting ref="HomescreenPlugins/WallpaperPropertyName"/>
+ <setting ref="HomescreenPlugins/SlideshowPropertyName"/>
+ <setting ref="HomescreenPlugins/Shortcut1ItemId"/>
+ <setting ref="HomescreenPlugins/Shortcut1ItemName"/>
+ <setting ref="HomescreenPlugins/Shortcut2ItemId"/>
+ <setting ref="HomescreenPlugins/Shortcut2ItemName"/>
+ <setting ref="HomescreenPlugins/Shortcut3ItemId"/>
+ <setting ref="HomescreenPlugins/Shortcut3ItemName"/>
+ <setting ref="HomescreenPlugins/Shortcut4ItemId"/>
+ <setting ref="HomescreenPlugins/Shortcut4ItemName"/>
+ <setting ref="HomescreenPlugins/ShortcutPropertyNameType"/>
+ <setting ref="HomescreenPlugins/ShortcutPropertyNameUid"/>
+ <setting ref="HomescreenPlugins/Plugins"/>
+ <xsl:stylesheet version="1.0"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:xi="http://www.w3.org/2001/xinclude">
+ <xsl:output method="xml" indent="yes" encoding="UTF-8"/>
+ <xsl:template match="configuration/data">
+ <configuration>
+ <xsl:attribute name="max_child"><xsl:value-of select="HomescreenPlugins/MaxWidgets"/></xsl:attribute>
+ <control>
+ <settings>
+ <item>
+ <xsl:attribute name="id"><xsl:value-of select="HomescreenPlugins/ItemIdEmptyWidgets"/></xsl:attribute>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="HomescreenPlugins/PropertyEmptyWidgets"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="HomescreenPlugins/UseEmptyWidgets"/></xsl:attribute>
+ </property>
+ </item>
+ <xsl:choose>
+ <xsl:when test="HomescreenPlugins/Background = 1">
+ <item>
+ <xsl:attribute name="id"><xsl:value-of select="HomescreenPlugins/ItemIdWallpaper"/></xsl:attribute>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="HomescreenPlugins/WallpaperPropertyName"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="HomescreenPlugins/BackGroundPath"/></xsl:attribute>
+ </property>
+ </item>
+ </xsl:when>
+ <xsl:when test="HomescreenPlugins/Background = 2">
+ <item>
+ <xsl:attribute name="id"><xsl:value-of select="HomescreenPlugins/ItemIdSlideshow"/></xsl:attribute>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="HomescreenPlugins/SlideshowPropertyName"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="HomescreenPlugins/BackGroundPath"/></xsl:attribute>
+ </property>
+ </item>
+ </xsl:when>
+ <xsl:otherwise>
+ </xsl:otherwise>
+ </xsl:choose>
+ </settings>
+ <plugins>
+ <xsl:for-each select="HomescreenPlugins/Plugins">
+ <plugin>
+ <xsl:attribute name="uid"><xsl:value-of select="Uid"/></xsl:attribute>
+ <xsl:attribute name="bundle_id"><xsl:value-of select="BundleIdentifier"/></xsl:attribute>
+ <xsl:attribute name="template_id"><xsl:value-of select="TemplateIdentifier"/></xsl:attribute>
+ <xsl:attribute name="locking_status"><xsl:value-of select="LockingStatus"/></xsl:attribute>
+ <xsl:if test="ShortcutWidget = 1">
+ <intial_settings>
+ <settings>
+ <xsl:if test="Customize1Shortcut = 1">
+ <item>
+ <xsl:attribute name="id"><xsl:value-of select="Shortcut1ItemId"/></xsl:attribute>
+ <xsl:attribute name="name"><xsl:value-of select="Shortcut1ItemName"/></xsl:attribute>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="ShortcutPropertyNameType"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="Shortcut1Type"/></xsl:attribute>
+ </property>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="ShortcutPropertyNameUid"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="Shortcut1Uid"/></xsl:attribute>
+ </property>
+ </item>
+ </xsl:if>
+ <xsl:if test="Customize2Shortcut = 1">
+ <item>
+ <xsl:attribute name="id"><xsl:value-of select="Shortcut2ItemId"/></xsl:attribute>
+ <xsl:attribute name="name"><xsl:value-of select="Shortcut2ItemName"/></xsl:attribute>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="ShortcutPropertyNameType"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="Shortcut2Type"/></xsl:attribute>
+ </property>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="ShortcutPropertyNameUid"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="Shortcut2Uid"/></xsl:attribute>
+ </property>
+ </item>
+ </xsl:if>
+ <xsl:if test="Customize3Shortcut = 1">
+ <item>
+ <xsl:attribute name="id"><xsl:value-of select="Shortcut3ItemId"/></xsl:attribute>
+ <xsl:attribute name="name"><xsl:value-of select="Shortcut3ItemName"/></xsl:attribute>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="ShortcutPropertyNameType"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="Shortcut3Type"/></xsl:attribute>
+ </property>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="ShortcutPropertyNameUid"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="Shortcut3Uid"/></xsl:attribute>
+ </property>
+ </item>
+ </xsl:if>
+ <xsl:if test="Customize4Shortcut = 1">
+ <item>
+ <xsl:attribute name="id"><xsl:value-of select="Shortcut4ItemId"/></xsl:attribute>
+ <xsl:attribute name="name"><xsl:value-of select="Shortcut4ItemName"/></xsl:attribute>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="ShortcutPropertyNameType"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="Shortcut4Type"/></xsl:attribute>
+ </property>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="ShortcutPropertyNameUid"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="Shortcut4Uid"/></xsl:attribute>
+ </property>
+ </item>
+ </xsl:if>
+ </settings>
+ </intial_settings>
+ </xsl:if>
+ </plugin>
+ </xsl:for-each>
+ </plugins>
+ </control>
+ </configuration>
+ </xsl:template>
+ </xsl:stylesheet>
+</file>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e4/group/bld.inf Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,77 @@
+/*
+* 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 <platform_paths.hrh>
+
+PRJ_PLATFORMS
+DEFAULT
+
+PRJ_EXPORTS
+// Support for productization and Carbide.Ui customization
+//********************************************************
+../hsps/00/manifest.dat /epoc32/data/Z/resource/homescreen/view_200286e4/hsps/manifest.dat
+../hsps/00/viewconfiguration.xml /epoc32/data/Z/resource/homescreen/view_200286e4/hsps/viewconfiguration.xml
+
+../xuikon/00/View.dat /epoc32/data/Z/resource/homescreen/view_200286e4/xuikon/view_200286e4.dat
+../xuikon/00/View.css /epoc32/data/Z/resource/homescreen/view_200286e4/xuikon/view.css
+../xuikon/00/View.xml /epoc32/data/Z/resource/homescreen/view_200286e4/xuikon/view.xml
+../xuikon/00/View.dtd /epoc32/data/Z/resource/homescreen/view_200286e4/xuikon/view.dtd
+
+// Arabic languages
+//*****************
+../xuikon/37/View.css /epoc32/data/Z/resource/homescreen/view_200286e4/xuikon/37/view.css
+../xuikon/50/View.css /epoc32/data/Z/resource/homescreen/view_200286e4/xuikon/50/view.css
+../xuikon/57/View.css /epoc32/data/Z/resource/homescreen/view_200286e4/xuikon/57/view.css
+../xuikon/94/View.css /epoc32/data/Z/resource/homescreen/view_200286e4/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/view200286e4.confml APP_LAYER_CONFML(view200286e4.confml)
+//../conf/view200286e4.gcfml APP_LAYER_GCFML(view200286e4.gcfml)
+
+// Support for S60 localization
+//*****************************
+#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(view_200286e4_resources.iby)
+../rom/view_customer.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(view_200286e4_customer.iby)
+../rom/view_variant.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(view_200286e4_variant.iby)
+../rom/view.iby CORE_APP_LAYER_IBY_EXPORT_PATH(view_200286e4.iby)
+
+
+// Dtd-localization
+//*****************
+PRJ_EXTENSIONS
+START EXTENSION tools/dtd
+OPTION SWITCH_LOC_FILE_NAME view_200286e4
+OPTION DTD_TYPE widget
+END
+
+
+PRJ_MMPFILES
+
+PRJ_TESTMMPFILES
+
+// End of File
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e4/hsps/00/manifest.dat Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,59 @@
+<?xml version="1.0"?>
+
+<package version="1.0">
+
+
+
+ <family>qhd_tch</family>
+
+
+
+ <type>view</type>
+
+
+
+ <!-- interface uid -->
+
+ <interfaceuid>0x2001f48a</interfaceuid>
+
+
+
+ <!-- vendor uid -->
+
+ <provideruid>0x101fb657</provideruid>
+
+
+
+ <!-- configuration uid -->
+
+ <configurationuid>0x200286e4</configurationuid>
+
+
+
+ <!-- description -->
+
+ <fullname>&qtn_view_200286e4_name;</fullname>
+
+ <shortname>ai3_view2</shortname>
+
+ <version>1.0</version>
+
+
+
+ <!-- configuration -->
+
+ <filexml>viewconfiguration.xml</filexml>
+
+
+
+ <!-- Locale specific resources -->
+
+ <localization>
+
+ <fileresource>view.o0000</fileresource>
+
+ </localization>
+
+
+
+</package>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e4/hsps/00/viewconfiguration.xml Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<configuration max_child="6" xmlns:xi="http://www.w3.org/2001/xinclude">
+<control>
+<settings>
+<item id="hs_qhd_tch_view">
+<property name="use_empty_widget" value="true"/>
+</item>
+<item id="wallpaper">
+<property name="path" value=" "/>
+</item>
+</settings>
+<plugins>
+<plugin uid="0x2001CB7C" bundle_id="0" template_id="0" locking_status="none"/>
+<plugin uid="0x20026f4f" bundle_id="0" template_id="0" locking_status="none"/>
+<plugin uid="0x10207c18" bundle_id="0" template_id="0" locking_status="none"/>
+<plugin uid="0x2001f481" bundle_id="0" template_id="0" locking_status="none"/>
+<plugin uid="0x2001f47f" bundle_id="0" template_id="0" locking_status="none"/>
+<plugin uid="0x2001f47f" bundle_id="0" template_id="0" locking_status="none"/>
+</plugins>
+</control>
+</configuration>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e4/loc/View.loc Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,268 @@
+/*
+* 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: Options
+// l: control_pane_t1/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: control_pane_t1/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: control_pane_t1/opt7
+// w:
+// r: TB9.2
+#define text_softkey_search "Search"
+
+// d: Options
+// l: control_pane_t1/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: control_pane_t1/opt7
+// w:
+// r: TB9.2
+#define text_softkey_select "Select"
+
+// d: Cancel
+// l: control_pane_t1/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: control_pane_t1/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"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e4/rom/view.iby Fri Mar 12 15:41:49 2010 +0200
@@ -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:
+* View widget HSPS-plugin IBY file.
+*
+*/
+
+#ifndef __AI3VIEW_200286E4_IBY__
+#define __AI3VIEW_200286E4_IBY__
+
+#if defined(__LAYOUT_360_640_TOUCH) || defined(__LAYOUT_640_360_TOUCH)
+
+// Enabled by DTD-localization tools
+data=ZPRIVATE\200159c0\install\view_200286e4\hsps\00\manifest.dat \private\200159c0\install\view_200286e4\hsps\00\manifest.dat
+
+#endif // __LAYOUT_360_640_TOUCH || __LAYOUT_640_360_TOUCH
+
+#endif // __AI3VIEW_200286E4_IBY__
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e4/rom/view_customer.iby Fri Mar 12 15:41:49 2010 +0200
@@ -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:
+* View widget HSPS-plugin language specific IBY file.
+*
+*/
+
+#ifndef __AI3VIEW_200286E4_CUSTOMER_IBY__
+#define __AI3VIEW_200286E4_CUSTOMER_IBY__
+
+#if defined(__LAYOUT_360_640_TOUCH) || defined(__LAYOUT_640_360_TOUCH)
+
+// Enabled by DTD-localization tools, language specific
+data=ZPRIVATE\200159c0\install\view_200286e4\xuikon\00\view.o0000 \private\200159c0\install\view_200286e4\xuikon\00\view.o0000
+
+#endif // __LAYOUT_360_640_TOUCH || __LAYOUT_640_360_TOUCH
+
+#endif // __AI3VIEW_2001F48B_CUSTOMER_IBY__
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e4/rom/view_resources.iby Fri Mar 12 15:41:49 2010 +0200
@@ -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:
+* View widget HSPS-plugin language specific IBY file.
+*
+*/
+
+#ifndef __AI3VIEW_200286E4_RESOURCES_IBY__
+#define __AI3VIEW_200286E4_RESOURCES_IBY__
+
+#if defined(__LAYOUT_360_640_TOUCH) || defined(__LAYOUT_640_360_TOUCH)
+
+// Enabled by DTD-localization tools, language specific
+data=ZPRIVATE\200159c0\install\view_200286e4\xuikon\00\view.o0000 \private\200159c0\install\view_200286e4\xuikon\00\view.o0000
+
+#endif // __LAYOUT_360_640_TOUCH || __LAYOUT_640_360_TOUCH
+
+#endif // __AI3VIEW_2001F48B_RESOURCES_IBY__
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e4/rom/view_variant.iby Fri Mar 12 15:41:49 2010 +0200
@@ -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:
+* View widget HSPS-plugin variant specific IBY file.
+*
+*/
+
+#ifndef __AI3VIEW_200286E4_VARIANT_IBY__
+#define __AI3VIEW_200286E4_VARIANT_IBY__
+
+#if defined(__LAYOUT_360_640_TOUCH) || defined(__LAYOUT_640_360_TOUCH)
+
+// Enabled by variation tools, variant specific
+data=ZPRIVATE\200159c0\install\view_200286e4\hsps\00\viewconfiguration.xml \private\200159c0\install\view_200286e4\hsps\00\viewconfiguration.xml
+
+#endif // __LAYOUT_360_640_TOUCH || __LAYOUT_640_360_TOUCH
+
+#endif // __AI3VIEW_2001F48B_VARIANT_IBY__
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/00/View.css Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,89 @@
+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: rl;
+ padding-top: 3px;
+}
+
+plugin.plugins
+{
+ height: 82px;
+ width: 312px;
+
+ margin-bottom: 4px;
+ margin-right: 5px;
+ margin-left: 5px;
+
+ _s60-longtap: true;
+
+ nav-index: appearance;
+}
+
+plugin:edit
+{
+ background-color:"SKIN(270501603 8582)";
+}
+
+image.widget_indication
+{
+ display: none;
+ position: absolute;
+
+ left: auto;
+ right: 3px;
+ top: 5px;
+
+ height: 26px;
+ width: 26px;
+
+ path: "SKIN(270501603 9252)";
+ _s60-aspect-ratio: preserve;
+ z-index: 2;
+}
+
+image.widget_indication:edit
+{
+ display: block;
+}
+
+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;
+}
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/00/View.dat Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,13 @@
+<?xml version="1.0"?>
+<data>
+ <AppUid>E029CF57</AppUid>
+ <Provideruid>101FB657</Provideruid>
+ <ThemeUid>11001234</ThemeUid>
+ <ThemeFullName>DemoView</ThemeFullName>
+ <ThemeShortName>view</ThemeShortName>
+ <ThemeVersion>1.0</ThemeVersion>
+ <FileXML>view.xml</FileXML>
+ <FileCSS>view.css</FileCSS>
+ <FileDTD>view.dtd</FileDTD>
+
+</data>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/00/View.dtd Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,428 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+============================================================================
+<FileName: "View.dtd">
+<PartOf : "AI3">
+
+<FileDescription: "Localization strings for AI3">
+<FileVersion : >
+
+<Copyright:
+"Copyright (c) 2005 Nokia Corporation.
+This material, including documentation and any related
+computer programs, is protected by copyright controlled by
+Nokia Corporation. All rights are reserved. Copying,
+including reproducing, storing, adapting or translating, any
+or all of this material requires the prior written consent of
+Nokia Corporation. This material also contains confidential
+information which may not be disclosed to others without the
+prior written consent of Nokia Corporation.">
+============================================================================
+-->
+
+<!--
+qtn_options_help.attributes
+qtn_options_help.layout "list_single_pane_t1_cp2"
+qtn_options_help.release "TB9.2"
+qtn_options_help.description "Help"
+qtn_options_help.grammar "Help"
+qtn_options_help.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_options_help "Help">
+
+<!--
+qtn_msk_open.attributes
+qtn_msk_open.layout "control_pane_t1/opt7"
+qtn_msk_open.release "TB9.2"
+qtn_msk_open.description "Open"
+qtn_msk_open.grammar "Open"
+qtn_msk_open.parents "control_pane"
+-->
+<!ENTITY qtn_msk_open "Open">
+
+<!--
+text_softkey_done.attributes
+text_softkey_done.layout "control_pane_t1/opt7"
+text_softkey_done.release "TB9.2"
+text_softkey_done.description "Done"
+text_softkey_done.grammar "Done"
+text_softkey_done.parents "control_pane"
+-->
+<!ENTITY text_softkey_done "Done">
+
+<!--
+qtn_options_open.attributes
+qtn_options_open.layout "list_single_pane_t1_cp2"
+qtn_options_open.release "TB9.2"
+qtn_options_open.description "Open"
+qtn_options_open.grammar "Open"
+qtn_options_open.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_options_open "Open">
+
+<!--
+text_softkey_back.attributes
+text_softkey_back.layout "control_pane_t1/opt7"
+text_softkey_back.release "TB9.2"
+text_softkey_back.description "Back text for SK2"
+text_softkey_back.parents "control_pane"
+-->
+<!ENTITY text_softkey_back "Back">
+
+<!--
+shortcut_EmptyCaption.attributes
+shortcut_EmptyCaption.layout "control_pane_t1/opt7"
+shortcut_EmptyCaption.release "TB9.2"
+shortcut_EmptyCaption.description "Empty shortcut"
+shortcut_EmptyCaption.parents "list_ai2_gene_pane"
+-->
+<!ENTITY shortcut_EmptyCaption " ">
+
+<!--
+qtn_hs_add_page.attributes
+qtn_hs_add_page.layout "list_single_pane_t1_cp2"
+qtn_hs_add_page.release "TB9.2"
+qtn_hs_add_page.description "Add page"
+qtn_hs_add_page.grammar "Add page"
+qtn_hs_add_page.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_add_page "Add page">
+
+<!--
+qtn_options_select_widget.attributes
+qtn_options_select_widget.layout "list_single_pane_t1_cp2"
+qtn_options_select_widget.release "TB9.2"
+qtn_options_select_widget.description "Select"
+qtn_options_select_widget.grammar "Select"
+qtn_options_select_widget.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_options_select_widget "Select">
+
+<!--
+qtn_hs_add_widget.attributes
+qtn_hs_add_widget.layout "list_single_pane_t1_cp2"
+qtn_hs_add_widget.release "TB9.2"
+qtn_hs_add_widget.description "Add content"
+qtn_hs_add_widget.grammar "Add content"
+qtn_hs_add_widget.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_add_widget "Add content">
+
+<!--
+qtn_hs_widget_catalog.attributes
+qtn_hs_widget_catalog.layout "list_single_pane_t1_cp2"
+qtn_hs_widget_catalog.release "TB9.2"
+qtn_hs_widget_catalog.description "Widget catalog"
+qtn_hs_widget_catalog.grammar "Widget catalog"
+qtn_hs_widget_catalog.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_widget_catalog "Widget catalog">
+
+<!--
+text_softkey_search.attributes
+text_softkey_search.layout "control_pane_t1/opt7"
+text_softkey_search.release "TB9.2"
+text_softkey_search.description "Search"
+text_softkey_search.grammar "Search"
+text_softkey_search.parents "control_pane"
+-->
+<!ENTITY text_softkey_search "Search">
+
+<!--
+text_softkey_options.attributes
+text_softkey_options.layout "control_pane_t1/opt7"
+text_softkey_options.release "TB9.2"
+text_softkey_options.description "Options"
+text_softkey_options.grammar "Options"
+text_softkey_options.parents "control_pane"
+-->
+<!ENTITY text_softkey_options "Options">
+
+<!--
+qtn_hs_refresh_widget.attributes
+qtn_hs_refresh_widget.layout "list_single_pane_t1_cp2/opt3"
+qtn_hs_refresh_widget.release "TB9.2"
+qtn_hs_refresh_widget.description "Refresh"
+qtn_hs_refresh_widget.grammar "Refresh"
+qtn_hs_refresh_widget.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_refresh_widget "Refresh">
+
+<!--
+qtn_hs_refresh_one_widget.attributes
+qtn_hs_refresh_one_widget.layout "list_single_popup_submenu_pane_t1"
+qtn_hs_refresh_one_widget.release "TB9.2"
+qtn_hs_refresh_one_widget.description "One"
+qtn_hs_refresh_one_widget.grammar "One"
+qtn_hs_refresh_one_widget.parents "list_single_popup_submenu_pane"
+-->
+<!ENTITY qtn_hs_refresh_one_widget "One">
+
+<!--
+qtn_hs_refresh_all_widgets.attributes
+qtn_hs_refresh_all_widgets.layout "list_single_popup_submenu_pane_t1"
+qtn_hs_refresh_all_widgets.release "TB9.2"
+qtn_hs_refresh_all_widgets.description "All"
+qtn_hs_refresh_all_widgets.grammar "All"
+qtn_hs_refresh_all_widgets.parents "list_single_popup_submenu_pane"
+-->
+<!ENTITY qtn_hs_refresh_all_widgets "All">
+
+<!--
+qtn_hs_remove_widget.attributes
+qtn_hs_remove_widget.layout "list_single_pane_t1_cp2"
+qtn_hs_remove_widget.release "TB9.2"
+qtn_hs_remove_widget.description "Remove content"
+qtn_hs_remove_widget.grammar "Remove content"
+qtn_hs_remove_widget.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_remove_widget "Remove content">
+
+<!--
+qtn_hs_hide_widgets.attributes
+qtn_hs_hide_widgets.layout "list_single_pane_t1_cp2"
+qtn_hs_hide_widgets.release "TB9.2"
+qtn_hs_hide_widgets.description "Hide the content"
+qtn_hs_hide_widgets.grammar "Hide the content"
+qtn_hs_hide_widgets.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_hide_widgets "Hide the content">
+
+<!--
+qtn_hs_edit_content.attributes
+qtn_hs_edit_content.layout "list_single_pane_t1_cp2"
+qtn_hs_edit_content.release "TB9.2"
+qtn_hs_edit_content.description "Edit contents"
+qtn_hs_edit_content.grammar "Edit contents"
+qtn_hs_edit_content.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_edit_content "Edit content">
+
+<!--
+qtn_hs_change_wallpaper.attributes
+qtn_hs_change_wallpaper.layout "list_single_pane_t1_cp2"
+qtn_hs_change_wallpaper.release "TB9.2"
+qtn_hs_change_wallpaper.description "Change Wallpaper"
+qtn_hs_change_wallpaper.grammar "Change Wallpaper"
+qtn_hs_change_wallpaper.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_change_wallpaper "Change Wallpaper">
+
+<!--
+qtn_hs_change_shortcut_settings.attributes
+qtn_hs_change_shortcut_settings.layout "list_single_pane_t1_cp2"
+qtn_hs_change_shortcut_settings.release "TB9.2"
+qtn_hs_change_shortcut_settings.description "Change Shortcut Settings"
+qtn_hs_change_shortcut_settings.grammar "Change Shortcut Settings"
+qtn_hs_change_shortcut_settings.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_change_shortcut_settings "Change Shortcut Settings">
+
+<!--
+qtn_hs_widget_settings.attributes
+qtn_hs_widget_settings.layout "list_single_pane_t1_cp2"
+qtn_hs_widget_settings.release "TB9.2"
+qtn_hs_widget_settings.description "Widget settings"
+qtn_hs_widget_settings.grammar "Widget settings"
+qtn_hs_widget_settings.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_widget_settings "Widget settings">
+
+<!--
+qtn_hs_show_widgets.attributes
+qtn_hs_show_widgets.layout "list_single_pane_t1_cp2"
+qtn_hs_show_widgets.release "TB9.2"
+qtn_hs_show_widgets.description "Show widgets"
+qtn_hs_show_widgets.grammar "Show widgets"
+qtn_hs_show_widgets.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_show_widgets "Show the content">
+
+<!--
+qtn_hs_change_page.attributes
+qtn_hs_change_page.layout "list_single_pane_t1_cp2"
+qtn_hs_change_page.release "TB9.2"
+qtn_hs_change_page.description "Change Home screen page"
+qtn_hs_change_page.grammar "Change Home screen page"
+qtn_hs_change_page.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_change_page "Change Home screen page">
+
+<!--
+qtn_msk_change.attributes
+qtn_msk_change.layout "control_pane_t1/opt7"
+qtn_msk_change.release "TB9.2"
+qtn_msk_change.description "Change"
+qtn_msk_change.grammar "Change"
+qtn_msk_change.parents "control_pane"
+-->
+<!ENTITY qtn_msk_change "Change">
+
+<!--
+qtn_hs_show_profiles.attributes
+qtn_hs_show_profiles.layout "list_single_pane_t1_cp2"
+qtn_hs_show_profiles.release "TB9.2"
+qtn_hs_show_profiles.description "Show all profiles"
+qtn_hs_show_profiles.grammar "Show all profiles"
+qtn_hs_show_profiles.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_show_profiles "Show all profiles">
+
+<!--
+qtn_set_right_idle_softkey.attributes
+qtn_set_right_idle_softkey.layout "list_single_pane_t1_cp2"
+qtn_set_right_idle_softkey.release "TB9.2"
+qtn_set_right_idle_softkey.description "Right selection key"
+qtn_set_right_idle_softkey.grammar "Right selection key"
+qtn_set_right_idle_softkey.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_set_right_idle_softkey "Right selection key">
+
+<!--
+text_softkey_select.attributes
+text_softkey_select.layout "control_pane_t1/opt7"
+text_softkey_select.release "TB9.2"
+text_softkey_select.description "Select"
+text_softkey_select.grammar "Select"
+text_softkey_select.parents "control_pane"
+-->
+<!ENTITY text_softkey_select "Select">
+
+<!--
+text_softkey_cancel.attributes
+text_softkey_cancel.layout "control_pane_t1/opt7"
+text_softkey_cancel.release "TB9.2"
+text_softkey_cancel.description "Cancel"
+text_softkey_cancel.grammar "Cancel"
+text_softkey_cancel.parents "control_pane"
+-->
+<!ENTITY text_softkey_cancel "Cancel">
+
+<!--
+qtn_hs_online.attributes
+qtn_hs_online.layout "list_single_pane_t1_cp2"
+qtn_hs_online.release "TB9.2"
+qtn_hs_online.description "Online"
+qtn_hs_online.grammar "Online"
+qtn_hs_online.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_online "Switch Home to online">
+
+<!--
+qtn_hs_offline.attributes
+qtn_hs_offline.layout "list_single_pane_t1_cp2"
+qtn_hs_offline.release "TB9.2"
+qtn_hs_offline.description "Offline"
+qtn_hs_offline.grammar "Offline"
+qtn_hs_offline.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_offline "Switch Home to offline">
+
+<!--
+qtn_hs_longtap_settings.attributes
+qtn_hs_longtap_settings.layout "list_single_touch_menu_pane_t1"
+qtn_hs_longtap_settings.release "TB9.2"
+qtn_hs_longtap_settings.description "String which is shown in long tap menu of Home screen if tapped widget has settings."
+qtn_hs_longtap_settings.parents "control_pane"
+-->
+<!ENTITY qtn_hs_longtap_settings "Settings">
+
+<!--
+qtn_hs_longtap_remove_element.attributes
+qtn_hs_longtap_remove_element.layout "list_single_touch_menu_pane_t1"
+qtn_hs_longtap_remove_element.release "TB9.2"
+qtn_hs_longtap_remove_element.description "String which is shown in long tap menu of Home screen if tapped some widget which is removable."
+qtn_hs_longtap_remove_element.parents "control_pane"
+-->
+<!ENTITY qtn_hs_longtap_remove_element "Remove">
+
+<!--
+qtn_hs_longtap_add.attributes
+qtn_hs_longtap_add.layout "list_single_touch_menu_pane_t1"
+qtn_hs_longtap_add.release "TB9.2"
+qtn_hs_longtap_add.description "String which is shown in long tap menu of Home screen if tapped empty space in home screen."
+qtn_hs_longtap_add.parents "control_pane"
+-->
+<!ENTITY qtn_hs_longtap_add "Add content">
+
+<!--
+qtn_hs_change_longtap_wallpaper.attributes
+qtn_hs_change_longtap_wallpaper.layout "list_single_touch_menu_pane_t1"
+qtn_hs_change_longtap_wallpaper.release "TB9.2"
+qtn_hs_change_longtap_wallpaper.description "String which is shown in long tap menu of Home screen."
+qtn_hs_change_longtap_wallpaper.parents "control_pane"
+-->
+<!ENTITY qtn_hs_change_longtap_wallpaper "Change wallpaper">
+
+<!--
+qtn_hs_download_new_widgets.attributes
+qtn_hs_download_new_widgets.layout "list_single_pane_t1_cp2"
+qtn_hs_download_new_widgets.release "TB9.2"
+qtn_hs_download_new_widgets.description "User can download new HS widgets String is visible in add content list query"
+qtn_hs_download_new_widgets.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_download_new_widgets "Download">
+
+<!--
+qtn_hs_edit_replace.attributes
+qtn_hs_edit_replace.layout "list_single_touch_menu_pane_t1"
+qtn_hs_edit_replace.release "TB9.2"
+qtn_hs_edit_replace.description "Changes focused widget"
+qtn_hs_edit_replace.parents ""
+-->
+<!ENTITY qtn_hs_edit_replace "Replace">
+
+<!--
+qtn_hs_page_options_delete.attributes
+qtn_hs_page_options_delete.layout "list_single_pane_t1_cp2"
+qtn_hs_page_options_delete.release "TB9.2"
+qtn_hs_page_options_delete.description "deletes current home screen page"
+qtn_hs_page_options_delete.parents ""
+-->
+<!ENTITY qtn_hs_page_options_delete "Delete page">
+
+<!--
+qtn_hs_page_options_new.attributes
+qtn_hs_page_options_new.layout "list_single_pane_t1_cp2"
+qtn_hs_page_options_new.release "TB9.2"
+qtn_hs_page_options_new.description "creates new home screen page"
+qtn_hs_page_options_new.parents ""
+-->
+<!ENTITY qtn_hs_page_options_new "New page">
+
+<!--
+qtn_hs_title_editing_view.attributes
+qtn_hs_title_editing_view.layout "title_pane_t2"
+qtn_hs_title_editing_view.release "TB9.2"
+qtn_hs_title_editing_view.description "view title in editing mode"
+qtn_hs_title_editing_view.parents ""
+-->
+<!ENTITY qtn_hs_title_editing_view "Editing view">
+
+<!--
+text_softkey_call.attributes
+text_softkey_call.layout "control_pane_t1/opt7"
+text_softkey_call.release "TB9.2"
+text_softkey_call.description "RSK caption call inactive"
+text_softkey_call.parents ""
+-->
+<!ENTITY text_softkey_call "Call">
+
+<!--
+qtn_hs_edit_widget_catalog.attributes
+qtn_hs_edit_widget_catalog.layout "list_single_pane_t1_cp2"
+qtn_hs_edit_widget_catalog.release "TB9.2"
+qtn_hs_edit_widget_catalog.description "Added new option menu item to Edit mode for opening the widget catalog"
+qtn_hs_edit_widget_catalog.grammar "Widget Catalog"
+qtn_hs_edit_widget_catalog.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_edit_widget_catalog "Widget Catalog">
+
+<!--
+qtn_hs_page_edit_options_delete.attributes
+qtn_hs_page_edit_options_delete.layout "list_single_pane_t1_cp2"
+qtn_hs_page_edit_options_delete.release "TB9.2"
+qtn_hs_page_edit_options_delete.description "Deletes the current Home screen page and focus goes to the next available Home screen page in Edit mode"
+qtn_hs_page_edit_options_delete.parents ""
+-->
+<!ENTITY qtn_hs_page_edit_options_delete "Delete page">
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/00/View.xml Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,296 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE xmluiml SYSTEM "View.dtd">
+<xmluiml xmlns="http://www.series60.com/xml/xmluiml/1" version="1.0">
+ <view id="hs_qhd_tch_view">
+ <actions>
+ <action>
+ <!-- End key -->
+ <trigger name="keyevent">
+ <property name="scancode" value="197"/> ><!-- End key -->
+ <property name="eventtype" value="1"/>
+ </trigger>
+ <!-- dismiss if edit mode active -->
+ <event name="system/reportexiteditmode"/>
+ </action>
+ <action>
+ <trigger name="editmode" value="enter"/>
+ <event name="system/set">
+ <property name="name" value="focusable"/>
+ <property name="value" value="true"/>
+ <property name="type" value="string"/>
+ <property name="class" value="plugins"/>
+ </event>
+ <event name="system/seteditmode">
+ <property name="id" value="hs_popup_open_hold"/>
+ <property name="class" value="widget_indication"/>
+ </event>
+ </action>
+ <action>
+ <trigger name="editmode" value="exit"/>
+ <event name="system/set">
+ <property name="name" value="focusable"/>
+ <property name="value" value="false"/>
+ <property name="type" value="string"/>
+ <property name="class" value="plugins"/>
+ </event>
+ <event name="system/reseteditmode">
+ <property name="id" value="hs_popup_open_hold"/>
+ <property name="class" value="widget_indication"/>
+ </event>
+ </action>
+ <action>
+ <trigger name="swipe" direction="left" conditional="true"/>
+ <event name="system/activatenextview" effectid="1003"/>
+ </action>
+ <action>
+ <trigger name="swipe" direction="right" conditional="true"/>
+ <event name="system/activatepreviousview" effectid="1004"/>
+ </action>
+ <action>
+ <trigger name="screendevicechange" reason="portrait"/>
+ <event name="system/set">
+ <property name="name" value="padding-left"/>
+ <property name="value" value="17px"/>
+ <property name="type" value="numeric"/>
+ <property name="id" value="plugins_container"/>
+ </event>
+ <event name="system/set">
+ <property name="name" value="padding-right"/>
+ <property name="value" value="17px"/>
+ <property name="type" value="numeric"/>
+ <property name="id" value="plugins_container"/>
+ </event>
+ </action>
+ <action>
+ <trigger name="screendevicechange" reason="landscape"/>
+ <event name="system/set">
+ <property name="name" value="padding-left"/>
+ <property name="value" value="0px"/>
+ <property name="type" value="numeric"/>
+ <property name="id" value="plugins_container"/>
+ </event>
+ <event name="system/set">
+ <property name="name" value="padding-right"/>
+ <property name="value" value="0px"/>
+ <property name="type" value="numeric"/>
+ <property name="id" value="plugins_container"/>
+ </event>
+ </action>
+ </actions>
+
+ <!-- Plugins in this view -->
+ <box id="plugins_container">
+ <plugin id="plugin1" class="plugins" actionshandler="plugin_actions">
+ <image class="widget_indication" />
+ </plugin>
+ <plugin id="plugin2" class="plugins" actionshandler="plugin_actions">
+ <image class="widget_indication" />
+ </plugin>
+ <plugin id="plugin3" class="plugins" actionshandler="plugin_actions">
+ <image class="widget_indication" />
+ </plugin>
+ <plugin id="plugin4" class="plugins" actionshandler="plugin_actions">
+ <image class="widget_indication" />
+ </plugin>
+ <plugin id="plugin5" class="plugins" actionshandler="plugin_actions">
+ <image class="widget_indication" />
+ </plugin>
+ <plugin id="plugin6" class="plugins" actionshandler="plugin_actions">
+ <image class="widget_indication" />
+ </plugin>
+ </box>
+
+ <!-- plugins' actions handler -->
+ <actionshandler id="plugin_actions">
+ <actions>
+ <action>
+ <trigger id="hs_popup_open_hold" name="hold" conditional="true" />
+ <event name="system/reportentereditmode" effectid="1005"/>
+ </action>
+ </actions>
+ </actionshandler>
+
+ <!-- Avkon stylus popup menu is not layout capable -->
+ <styluspopup id="hs_popup_menu" display="none">
+ <!-- menuitems controlled by widgets' <menuextension> -->
+ <widgetmenuitem id="hs_popup_widget_settings" source="hs_widget_menuitem_settings" label="&qtn_hs_longtap_settings;" />
+ <widgetmenuitem id="hs_popup_widget_general_1" source="hs_widget_general_stylus_popup_1"/>
+ <widgetmenuitem id="hs_popup_widget_general_2" source="hs_widget_general_stylus_popup_2"/>
+ <!--<widgetmenuitem id="hs_popup_widget_refresh" source="hs_widget_menuitem_refresh" label="Refresh" />-->
+ <!-- "Remove" item initialized in runtime to check whether popup is on top of widget -->
+ <dynmenuitem id="hs_popup_remove_widget" type="hs_remove_widget" label="&qtn_hs_longtap_remove_element;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="system/removefocusedwidget"/>
+ </action>
+ </actions>
+ </dynmenuitem>
+ </styluspopup>
+ <menubar id="hs_menubar">
+ <!-- menu item grouping table is traversed through in run-time always when options menu is launched. -->
+ <menuitemgrouping>
+ <!-- These items are shown when content is visible -->
+ <menuitemgroup id="Menu/NormalMode">
+ <property name="hs_edit_widgets"/>
+ <property name="hs_set_online"/>
+ <property name="hs_set_offline"/>
+ <property name="hs_add_view"/>
+ <property name="hs_remove_view"/>
+ </menuitemgroup>
+ <!-- These items are shown in edit mode, if not otherwise changed in the declaration -->
+ <menuitemgroup id="Menu/EditMode">
+ <property name="hs_widget_catalog"/>
+ <property name="hs_remove_widget"/>
+ <property name="hs_widget_settings"/>
+ <property name="hs_widget_general_1"/>
+ <property name="hs_widget_general_2"/>
+ <property name="hs_add_view"/>
+ <property name="hs_remove_view"/>
+ <property name="hs_change_wallpaper"/>
+ </menuitemgroup>
+ <!-- These items are always shown, if not otherwise changed in the declaration -->
+ <menuitemgroup id="Menu/AlwaysShown">
+ <property name="hs_show_help"/>
+ </menuitemgroup>
+ </menuitemgrouping>
+ <menu id="hs_options_menu">
+ <menuitem id="hs_widget_catalog" label="&qtn_hs_widget_catalog;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="system/runaddwidgetquery"/>
+ </action>
+ </actions>
+ </menuitem>
+ <!-- menuitems controlled by widgets' <menuextension> element -->
+ <widgetmenuitem id="hs_widget_settings" source="hs_widget_menuitem_settings" label="&qtn_hs_widget_settings;"/>
+ <widgetmenuitem id="hs_widget_general_1" source="hs_widget_general_options_menu_1"/>
+ <widgetmenuitem id="hs_widget_general_2" source="hs_widget_general_options_menu_2"/>
+ <dynmenuitem id="hs_remove_widget" type="hs_remove_widget" label="&qtn_hs_remove_widget;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="system/removefocusedwidget"/>
+ </action>
+ </actions>
+ </dynmenuitem>
+ <!--<widgetmenuitem id="hs_widget_refresh" source="hs_widget_menuitem_refresh" label="&qtn_hs_refresh_widget;" />-->
+ <menuitem id="hs_edit_widgets" label="&qtn_hs_edit_content;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="system/reportentereditmode" effectid="1005"/>
+ </action>
+ </actions>
+ </menuitem>
+ <menuitem id="hs_change_wallpaper" label="&qtn_hs_change_wallpaper;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <!--Wallpaper-->
+ <event name="system/setwallpaper"/>
+ </action>
+ </actions>
+ </menuitem>
+ <dynmenuitem id="hs_add_view" type="hs_add_view" label="&qtn_hs_page_options_new;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="system/addview" effectid="1009"/>
+ </action>
+ </actions>
+ </dynmenuitem>
+ <dynmenuitem id="hs_remove_view" type="hs_remove_view" label="&qtn_hs_page_options_delete;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="system/removeview" effectid="1010"/>
+ </action>
+ </actions>
+ </dynmenuitem>
+ <dynmenuitem id="hs_set_online" type="hs_online" label="&qtn_hs_online;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="EventHandler/SetOnline"/>
+ </action>
+ </actions>
+ </dynmenuitem>
+ <dynmenuitem id="hs_set_offline" type="hs_offline" label="&qtn_hs_offline;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="EventHandler/SetOffline"/>
+ </action>
+ </actions>
+ </dynmenuitem>
+ <menuitem id="hs_show_help" label="&qtn_options_help;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="EventHandler/ShowHelp"/>
+ </action>
+ </actions>
+ </menuitem>
+ </menu>
+ <softkey id="lsk" type="left" label="&text_softkey_options;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="system/trydisplayingmenu">
+ <property name="id" value="hs_options_menu"/>
+ </event>
+ </action>
+ </actions>
+ </softkey>
+ <softkey id="rsk" type="right" mode="mode_callinactive" label="&text_softkey_call;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="EventHandler/ActivateView" uid="0x100058B3" viewid="0x10282D81" messageid="0x1"/>
+ </action>
+ <action>
+ <trigger name="hold"/>
+ <!-- Voice command-->
+ <event name="EventHandler/LaunchApp" uid="0x101F8543"/>
+ </action>
+ </actions>
+ </softkey>
+ <softkey id="rsk_incall" type="right" mode="mode_callactive" label="&text_softkey_back;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="EventHandler/ActivatePhoneView" />
+ </action>
+ </actions>
+ </softkey>
+ <softkey id="rsk_done" type="right" mode="mode_edit" label="&text_softkey_done;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="system/reportexiteditmode" effectid="1006"/>
+ </action>
+ </actions>
+ </softkey>
+ <softkey id="msk_ltr" type="middle" label=""> <!--TODO: Remove label when MSK icon available-->
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="system/activatenextview" effectid="1003"/>
+ </action>
+ </actions>
+ <!--image id="switcher_icon"/-->
+ </softkey>
+ <softkey id="msk_rtl" type="middle" label=""> <!--TODO: Remove label when MSK icon available-->
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="system/activatepreviousview" effectid="1004"/>
+ </action>
+ </actions>
+ <!--image id="switcher_icon"/-->
+ </softkey>
+ </menubar>
+ </view>
+</xmluiml>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/37/View.css Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,86 @@
+view
+{
+ direction: ltr;
+ block-progression: tb;
+ background-image: wallpaper;
+ swipe: true;
+
+ _s60-status-pane-layout: widescreen-flat-3softkeys;
+}
+
+box#plugins_container
+{
+ direction: rtl;
+ block-progression: rl;
+ padding-top: 3px;
+}
+
+plugin.plugins
+{
+ height: 82px;
+ width: 312px;
+
+ margin-bottom: 4px;
+ margin-right: 5px;
+ margin-left: 5px;
+ _s60-longtap: true;
+ nav-index: appearance;
+}
+
+plugin:edit
+{
+ background-color:"SKIN(270501603 8582)";
+}
+
+image.widget_indication
+{
+ display: none;
+ position: absolute;
+
+ right: auto;
+ left: 3px;
+ top: 5px;
+
+ height: 26px;
+ width: 26px;
+
+ path: "SKIN(270501603 9252)";
+ _s60-aspect-ratio: preserve;
+ z-index: 2;
+}
+
+image.widget_indication:edit
+{
+ display: block;
+}
+
+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;
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/50/View.css Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,86 @@
+view
+{
+ direction: ltr;
+ block-progression: tb;
+ background-image: wallpaper;
+ swipe: true;
+
+ _s60-status-pane-layout: widescreen-flat-3softkeys;
+}
+
+box#plugins_container
+{
+ direction: rtl;
+ block-progression: rl;
+ padding-top: 3px;
+}
+
+plugin.plugins
+{
+ height: 82px;
+ width: 312px;
+
+ margin-bottom: 4px;
+ margin-right: 5px;
+ margin-left: 5px;
+ _s60-longtap: true;
+ nav-index: appearance;
+}
+
+plugin:edit
+{
+ background-color:"SKIN(270501603 8582)";
+}
+
+image.widget_indication
+{
+ display: none;
+ position: absolute;
+
+ right: auto;
+ left: 3px;
+ top: 5px;
+
+ height: 26px;
+ width: 26px;
+
+ path: "SKIN(270501603 9252)";
+ _s60-aspect-ratio: preserve;
+ z-index: 2;
+}
+
+image.widget_indication:edit
+{
+ display: block;
+}
+
+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;
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/57/View.css Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,86 @@
+view
+{
+ direction: ltr;
+ block-progression: tb;
+ background-image: wallpaper;
+ swipe: true;
+
+ _s60-status-pane-layout: widescreen-flat-3softkeys;
+}
+
+box#plugins_container
+{
+ direction: rtl;
+ block-progression: rl;
+ padding-top: 3px;
+}
+
+plugin.plugins
+{
+ height: 82px;
+ width: 312px;
+
+ margin-bottom: 4px;
+ margin-right: 5px;
+ margin-left: 5px;
+ _s60-longtap: true;
+ nav-index: appearance;
+}
+
+plugin:edit
+{
+ background-color:"SKIN(270501603 8582)";
+}
+
+image.widget_indication
+{
+ display: none;
+ position: absolute;
+
+ right: auto;
+ left: 3px;
+ top: 5px;
+
+ height: 26px;
+ width: 26px;
+
+ path: "SKIN(270501603 9252)";
+ _s60-aspect-ratio: preserve;
+ z-index: 2;
+}
+
+image.widget_indication:edit
+{
+ display: block;
+}
+
+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;
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e4/xuikon/94/View.css Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,86 @@
+view
+{
+ direction: ltr;
+ block-progression: tb;
+ background-image: wallpaper;
+ swipe: true;
+
+ _s60-status-pane-layout: widescreen-flat-3softkeys;
+}
+
+box#plugins_container
+{
+ direction: rtl;
+ block-progression: rl;
+ padding-top: 3px;
+}
+
+plugin.plugins
+{
+ height: 82px;
+ width: 312px;
+
+ margin-bottom: 4px;
+ margin-right: 5px;
+ margin-left: 5px;
+ _s60-longtap: true;
+ nav-index: appearance;
+}
+
+plugin:edit
+{
+ background-color:"SKIN(270501603 8582)";
+}
+
+image.widget_indication
+{
+ display: none;
+ position: absolute;
+
+ right: auto;
+ left: 3px;
+ top: 5px;
+
+ height: 26px;
+ width: 26px;
+
+ path: "SKIN(270501603 9252)";
+ _s60-aspect-ratio: preserve;
+ z-index: 2;
+}
+
+image.widget_indication:edit
+{
+ display: block;
+}
+
+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;
+}
Binary file idlehomescreen/data/qhd_tch/view_200286e5/conf/view200286e5.confml has changed
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e5/conf/view200286e5.gcfml Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,138 @@
+<file xmlns="http://www.s60.com/xml/genconfml/1" name="viewconfiguration.xml" target="\private\200159c0\install\view_200286e5\hsps\00\">
+ <setting ref="HomescreenPlugins/MaxWidgets"/>
+ <setting ref="HomescreenPlugins/UseEmptyWidgets"/>
+ <setting ref="HomescreenPlugins/ItemIdEmptyWidgets"/>
+ <setting ref="HomescreenPlugins/PropertyEmptyWidgets"/>
+ <setting ref="HomescreenPlugins/Background"/>
+ <setting ref="HomescreenPlugins/BackGroundPath"/>
+ <setting ref="HomescreenPlugins/ItemIdWallpaper"/>
+ <setting ref="HomescreenPlugins/ItemIdSlideshow"/>
+ <setting ref="HomescreenPlugins/WallpaperPropertyName"/>
+ <setting ref="HomescreenPlugins/SlideshowPropertyName"/>
+ <setting ref="HomescreenPlugins/Shortcut1ItemId"/>
+ <setting ref="HomescreenPlugins/Shortcut1ItemName"/>
+ <setting ref="HomescreenPlugins/Shortcut2ItemId"/>
+ <setting ref="HomescreenPlugins/Shortcut2ItemName"/>
+ <setting ref="HomescreenPlugins/Shortcut3ItemId"/>
+ <setting ref="HomescreenPlugins/Shortcut3ItemName"/>
+ <setting ref="HomescreenPlugins/Shortcut4ItemId"/>
+ <setting ref="HomescreenPlugins/Shortcut4ItemName"/>
+ <setting ref="HomescreenPlugins/ShortcutPropertyNameType"/>
+ <setting ref="HomescreenPlugins/ShortcutPropertyNameUid"/>
+ <setting ref="HomescreenPlugins/Plugins"/>
+ <xsl:stylesheet version="1.0"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:xi="http://www.w3.org/2001/xinclude">
+ <xsl:output method="xml" indent="yes" encoding="UTF-8"/>
+ <xsl:template match="configuration/data">
+ <configuration>
+ <xsl:attribute name="max_child"><xsl:value-of select="HomescreenPlugins/MaxWidgets"/></xsl:attribute>
+ <control>
+ <settings>
+ <item>
+ <xsl:attribute name="id"><xsl:value-of select="HomescreenPlugins/ItemIdEmptyWidgets"/></xsl:attribute>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="HomescreenPlugins/PropertyEmptyWidgets"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="HomescreenPlugins/UseEmptyWidgets"/></xsl:attribute>
+ </property>
+ </item>
+ <xsl:choose>
+ <xsl:when test="HomescreenPlugins/Background = 1">
+ <item>
+ <xsl:attribute name="id"><xsl:value-of select="HomescreenPlugins/ItemIdWallpaper"/></xsl:attribute>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="HomescreenPlugins/WallpaperPropertyName"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="HomescreenPlugins/BackGroundPath"/></xsl:attribute>
+ </property>
+ </item>
+ </xsl:when>
+ <xsl:when test="HomescreenPlugins/Background = 2">
+ <item>
+ <xsl:attribute name="id"><xsl:value-of select="HomescreenPlugins/ItemIdSlideshow"/></xsl:attribute>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="HomescreenPlugins/SlideshowPropertyName"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="HomescreenPlugins/BackGroundPath"/></xsl:attribute>
+ </property>
+ </item>
+ </xsl:when>
+ <xsl:otherwise>
+ </xsl:otherwise>
+ </xsl:choose>
+ </settings>
+ <plugins>
+ <xsl:for-each select="HomescreenPlugins/Plugins">
+ <plugin>
+ <xsl:attribute name="uid"><xsl:value-of select="Uid"/></xsl:attribute>
+ <xsl:attribute name="bundle_id"><xsl:value-of select="BundleIdentifier"/></xsl:attribute>
+ <xsl:attribute name="template_id"><xsl:value-of select="TemplateIdentifier"/></xsl:attribute>
+ <xsl:attribute name="locking_status"><xsl:value-of select="LockingStatus"/></xsl:attribute>
+ <xsl:if test="ShortcutWidget = 1">
+ <intial_settings>
+ <settings>
+ <xsl:if test="Customize1Shortcut = 1">
+ <item>
+ <xsl:attribute name="id"><xsl:value-of select="Shortcut1ItemId"/></xsl:attribute>
+ <xsl:attribute name="name"><xsl:value-of select="Shortcut1ItemName"/></xsl:attribute>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="ShortcutPropertyNameType"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="Shortcut1Type"/></xsl:attribute>
+ </property>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="ShortcutPropertyNameUid"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="Shortcut1Uid"/></xsl:attribute>
+ </property>
+ </item>
+ </xsl:if>
+ <xsl:if test="Customize2Shortcut = 1">
+ <item>
+ <xsl:attribute name="id"><xsl:value-of select="Shortcut2ItemId"/></xsl:attribute>
+ <xsl:attribute name="name"><xsl:value-of select="Shortcut2ItemName"/></xsl:attribute>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="ShortcutPropertyNameType"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="Shortcut2Type"/></xsl:attribute>
+ </property>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="ShortcutPropertyNameUid"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="Shortcut2Uid"/></xsl:attribute>
+ </property>
+ </item>
+ </xsl:if>
+ <xsl:if test="Customize3Shortcut = 1">
+ <item>
+ <xsl:attribute name="id"><xsl:value-of select="Shortcut3ItemId"/></xsl:attribute>
+ <xsl:attribute name="name"><xsl:value-of select="Shortcut3ItemName"/></xsl:attribute>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="ShortcutPropertyNameType"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="Shortcut3Type"/></xsl:attribute>
+ </property>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="ShortcutPropertyNameUid"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="Shortcut3Uid"/></xsl:attribute>
+ </property>
+ </item>
+ </xsl:if>
+ <xsl:if test="Customize4Shortcut = 1">
+ <item>
+ <xsl:attribute name="id"><xsl:value-of select="Shortcut4ItemId"/></xsl:attribute>
+ <xsl:attribute name="name"><xsl:value-of select="Shortcut4ItemName"/></xsl:attribute>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="ShortcutPropertyNameType"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="Shortcut4Type"/></xsl:attribute>
+ </property>
+ <property>
+ <xsl:attribute name="name"><xsl:value-of select="ShortcutPropertyNameUid"/></xsl:attribute>
+ <xsl:attribute name="value"><xsl:value-of select="Shortcut4Uid"/></xsl:attribute>
+ </property>
+ </item>
+ </xsl:if>
+ </settings>
+ </intial_settings>
+ </xsl:if>
+ </plugin>
+ </xsl:for-each>
+ </plugins>
+ </control>
+ </configuration>
+ </xsl:template>
+ </xsl:stylesheet>
+</file>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e5/group/bld.inf Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,77 @@
+/*
+* 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 <platform_paths.hrh>
+
+PRJ_PLATFORMS
+DEFAULT
+
+PRJ_EXPORTS
+// Support for productization and Carbide.Ui customization
+//********************************************************
+../hsps/00/manifest.dat /epoc32/data/Z/resource/homescreen/view_200286e5/hsps/manifest.dat
+../hsps/00/viewconfiguration.xml /epoc32/data/Z/resource/homescreen/view_200286e5/hsps/viewconfiguration.xml
+
+../xuikon/00/View.dat /epoc32/data/Z/resource/homescreen/view_200286e5/xuikon/view_200286e5.dat
+../xuikon/00/View.css /epoc32/data/Z/resource/homescreen/view_200286e5/xuikon/view.css
+../xuikon/00/View.xml /epoc32/data/Z/resource/homescreen/view_200286e5/xuikon/view.xml
+../xuikon/00/View.dtd /epoc32/data/Z/resource/homescreen/view_200286e5/xuikon/view.dtd
+
+// Arabic languages
+//*****************
+../xuikon/37/View.css /epoc32/data/Z/resource/homescreen/view_200286e5/xuikon/37/view.css
+../xuikon/50/View.css /epoc32/data/Z/resource/homescreen/view_200286e5/xuikon/50/view.css
+../xuikon/57/View.css /epoc32/data/Z/resource/homescreen/view_200286e5/xuikon/57/view.css
+../xuikon/94/View.css /epoc32/data/Z/resource/homescreen/view_200286e5/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_200286e5_variant.iby)
+//***********************************
+//../conf/view2001f486.confml APP_LAYER_CONFML(view200286e5.confml)
+//../conf/view2001f486.gcfml APP_LAYER_GCFML(view200286e5.gcfml)
+
+// Support for S60 localization
+//*****************************
+#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(view_200286e5_resources.iby)
+../rom/view_customer.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(view_200286e5_customer.iby)
+../rom/view_variant.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(view_200286e5_variant.iby)
+../rom/view.iby CORE_APP_LAYER_IBY_EXPORT_PATH(view_200286e5.iby)
+
+
+// Dtd-localization
+//*****************
+PRJ_EXTENSIONS
+START EXTENSION tools/dtd
+OPTION SWITCH_LOC_FILE_NAME view_200286e5
+OPTION DTD_TYPE widget
+END
+
+
+PRJ_MMPFILES
+
+PRJ_TESTMMPFILES
+
+// End of File
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e5/hsps/00/manifest.dat Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,59 @@
+<?xml version="1.0"?>
+
+<package version="1.0">
+
+
+
+ <family>qhd_tch</family>
+
+
+
+ <type>view</type>
+
+
+
+ <!-- interface uid -->
+
+ <interfaceuid>0x2001f48a</interfaceuid>
+
+
+
+ <!-- vendor uid -->
+
+ <provideruid>0x101fb657</provideruid>
+
+
+
+ <!-- configuration uid -->
+
+ <configurationuid>0x200286e5</configurationuid>
+
+
+
+ <!-- description -->
+
+ <fullname>&qtn_view_200286e5_name;</fullname>
+
+ <shortname>ai3_view3</shortname>
+
+ <version>1.0</version>
+
+
+
+ <!-- configuration -->
+
+ <filexml>viewconfiguration.xml</filexml>
+
+
+
+ <!-- Locale specific resources -->
+
+ <localization>
+
+ <fileresource>view.o0000</fileresource>
+
+ </localization>
+
+
+
+</package>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e5/hsps/00/viewconfiguration.xml Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<configuration max_child="6" xmlns:xi="http://www.w3.org/2001/xinclude">
+<control>
+<settings>
+<item id="hs_qhd_tch_view">
+<property name="use_empty_widget" value="true"/>
+</item>
+<item id="wallpaper">
+<property name="path" value=" "/>
+</item>
+</settings>
+<plugins>
+<plugin uid="0x2001CB7C" bundle_id="0" template_id="0" locking_status="none"/>
+<plugin uid="0x20026f4f" bundle_id="0" template_id="0" locking_status="none"/>
+<plugin uid="0x10207c18" bundle_id="0" template_id="0" locking_status="none"/>
+<plugin uid="0x2001f481" bundle_id="0" template_id="0" locking_status="none"/>
+<plugin uid="0x2001f47f" bundle_id="0" template_id="0" locking_status="none"/>
+<plugin uid="0x2001f47f" bundle_id="0" template_id="0" locking_status="none"/>
+</plugins>
+</control>
+</configuration>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e5/loc/View.loc Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,268 @@
+/*
+* 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: Options
+// l: control_pane_t1/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: control_pane_t1/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: control_pane_t1/opt7
+// w:
+// r: TB9.2
+#define text_softkey_search "Search"
+
+// d: Options
+// l: control_pane_t1/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: control_pane_t1/opt7
+// w:
+// r: TB9.2
+#define text_softkey_select "Select"
+
+// d: Cancel
+// l: control_pane_t1/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: control_pane_t1/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"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e5/rom/view.iby Fri Mar 12 15:41:49 2010 +0200
@@ -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:
+* View widget HSPS-plugin IBY file.
+*
+*/
+
+#ifndef __AI3VIEW_200286E5_IBY__
+#define __AI3VIEW_200286E5_IBY__
+
+#if defined(__LAYOUT_360_640_TOUCH) || defined(__LAYOUT_640_360_TOUCH)
+
+// Enabled by DTD-localization tools
+data=ZPRIVATE\200159c0\install\view_200286e5\hsps\00\manifest.dat \private\200159c0\install\view_200286e5\hsps\00\manifest.dat
+
+#endif // __LAYOUT_360_640_TOUCH || __LAYOUT_640_360_TOUCH
+
+#endif // __AI3VIEW_200286E5_IBY__
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e5/rom/view_customer.iby Fri Mar 12 15:41:49 2010 +0200
@@ -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:
+* View widget HSPS-plugin language specific IBY file.
+*
+*/
+
+#ifndef __AI3VIEW_200286E5_CUSTOMER_IBY__
+#define __AI3VIEW_200286E5_CUSTOMER_IBY__
+
+#if defined(__LAYOUT_360_640_TOUCH) || defined(__LAYOUT_640_360_TOUCH)
+
+// Enabled by DTD-localization tools, language specific
+data=ZPRIVATE\200159c0\install\view_200286e5\xuikon\00\view.o0000 \private\200159c0\install\view_200286e5\xuikon\00\view.o0000
+
+#endif // __LAYOUT_360_640_TOUCH || __LAYOUT_640_360_TOUCH
+
+#endif // __AI3VIEW_200286E5_CUSTOMER_IBY__
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e5/rom/view_resources.iby Fri Mar 12 15:41:49 2010 +0200
@@ -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:
+* View widget HSPS-plugin language specific IBY file.
+*
+*/
+
+#ifndef __AI3VIEW_200286E5_RESOURCES_IBY__
+#define __AI3VIEW_200286E5_RESOURCES_IBY__
+
+#if defined(__LAYOUT_360_640_TOUCH) || defined(__LAYOUT_640_360_TOUCH)
+
+// Enabled by DTD-localization tools, language specific
+data=ZPRIVATE\200159c0\install\view_200286e5\xuikon\00\view.o0000 \private\200159c0\install\view_200286e5\xuikon\00\view.o0000
+
+#endif // __LAYOUT_360_640_TOUCH || __LAYOUT_640_360_TOUCH
+
+#endif // __AI3VIEW_200286E5_RESOURCES_IBY__
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e5/rom/view_variant.iby Fri Mar 12 15:41:49 2010 +0200
@@ -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:
+* View widget HSPS-plugin variant specific IBY file.
+*
+*/
+
+#ifndef __AI3VIEW_200286E5_VARIANT_IBY__
+#define __AI3VIEW_200286E5_VARIANT_IBY__
+
+#if defined(__LAYOUT_360_640_TOUCH) || defined(__LAYOUT_640_360_TOUCH)
+
+// Enabled by variation tools, variant specific
+data=ZPRIVATE\200159c0\install\view_200286e5\hsps\00\viewconfiguration.xml \private\200159c0\install\view_200286e5\hsps\00\viewconfiguration.xml
+
+#endif // __LAYOUT_360_640_TOUCH || __LAYOUT_640_360_TOUCH
+
+#endif // __AI3VIEW_200286E5_VARIANT_IBY__
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/00/View.css Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,89 @@
+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: rl;
+ padding-top: 3px;
+}
+
+plugin.plugins
+{
+ height: 82px;
+ width: 312px;
+
+ margin-bottom: 4px;
+ margin-right: 5px;
+ margin-left: 5px;
+
+ _s60-longtap: true;
+
+ nav-index: appearance;
+}
+
+plugin:edit
+{
+ background-color:"SKIN(270501603 8582)";
+}
+
+image.widget_indication
+{
+ display: none;
+ position: absolute;
+
+ left: auto;
+ right: 3px;
+ top: 5px;
+
+ height: 26px;
+ width: 26px;
+
+ path: "SKIN(270501603 9252)";
+ _s60-aspect-ratio: preserve;
+ z-index: 2;
+}
+
+image.widget_indication:edit
+{
+ display: block;
+}
+
+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;
+}
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/00/View.dat Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,13 @@
+<?xml version="1.0"?>
+<data>
+ <AppUid>E029CF57</AppUid>
+ <Provideruid>101FB657</Provideruid>
+ <ThemeUid>11001234</ThemeUid>
+ <ThemeFullName>DemoView</ThemeFullName>
+ <ThemeShortName>view</ThemeShortName>
+ <ThemeVersion>1.0</ThemeVersion>
+ <FileXML>view.xml</FileXML>
+ <FileCSS>view.css</FileCSS>
+ <FileDTD>view.dtd</FileDTD>
+
+</data>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/00/View.dtd Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,428 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+============================================================================
+<FileName: "View.dtd">
+<PartOf : "AI3">
+
+<FileDescription: "Localization strings for AI3">
+<FileVersion : >
+
+<Copyright:
+"Copyright (c) 2005 Nokia Corporation.
+This material, including documentation and any related
+computer programs, is protected by copyright controlled by
+Nokia Corporation. All rights are reserved. Copying,
+including reproducing, storing, adapting or translating, any
+or all of this material requires the prior written consent of
+Nokia Corporation. This material also contains confidential
+information which may not be disclosed to others without the
+prior written consent of Nokia Corporation.">
+============================================================================
+-->
+
+<!--
+qtn_options_help.attributes
+qtn_options_help.layout "list_single_pane_t1_cp2"
+qtn_options_help.release "TB9.2"
+qtn_options_help.description "Help"
+qtn_options_help.grammar "Help"
+qtn_options_help.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_options_help "Help">
+
+<!--
+qtn_msk_open.attributes
+qtn_msk_open.layout "control_pane_t1/opt7"
+qtn_msk_open.release "TB9.2"
+qtn_msk_open.description "Open"
+qtn_msk_open.grammar "Open"
+qtn_msk_open.parents "control_pane"
+-->
+<!ENTITY qtn_msk_open "Open">
+
+<!--
+text_softkey_done.attributes
+text_softkey_done.layout "control_pane_t1/opt7"
+text_softkey_done.release "TB9.2"
+text_softkey_done.description "Done"
+text_softkey_done.grammar "Done"
+text_softkey_done.parents "control_pane"
+-->
+<!ENTITY text_softkey_done "Done">
+
+<!--
+qtn_options_open.attributes
+qtn_options_open.layout "list_single_pane_t1_cp2"
+qtn_options_open.release "TB9.2"
+qtn_options_open.description "Open"
+qtn_options_open.grammar "Open"
+qtn_options_open.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_options_open "Open">
+
+<!--
+text_softkey_back.attributes
+text_softkey_back.layout "control_pane_t1/opt7"
+text_softkey_back.release "TB9.2"
+text_softkey_back.description "Back text for SK2"
+text_softkey_back.parents "control_pane"
+-->
+<!ENTITY text_softkey_back "Back">
+
+<!--
+shortcut_EmptyCaption.attributes
+shortcut_EmptyCaption.layout "control_pane_t1/opt7"
+shortcut_EmptyCaption.release "TB9.2"
+shortcut_EmptyCaption.description "Empty shortcut"
+shortcut_EmptyCaption.parents "list_ai2_gene_pane"
+-->
+<!ENTITY shortcut_EmptyCaption " ">
+
+<!--
+qtn_hs_add_page.attributes
+qtn_hs_add_page.layout "list_single_pane_t1_cp2"
+qtn_hs_add_page.release "TB9.2"
+qtn_hs_add_page.description "Add page"
+qtn_hs_add_page.grammar "Add page"
+qtn_hs_add_page.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_add_page "Add page">
+
+<!--
+qtn_options_select_widget.attributes
+qtn_options_select_widget.layout "list_single_pane_t1_cp2"
+qtn_options_select_widget.release "TB9.2"
+qtn_options_select_widget.description "Select"
+qtn_options_select_widget.grammar "Select"
+qtn_options_select_widget.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_options_select_widget "Select">
+
+<!--
+qtn_hs_add_widget.attributes
+qtn_hs_add_widget.layout "list_single_pane_t1_cp2"
+qtn_hs_add_widget.release "TB9.2"
+qtn_hs_add_widget.description "Add content"
+qtn_hs_add_widget.grammar "Add content"
+qtn_hs_add_widget.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_add_widget "Add content">
+
+<!--
+qtn_hs_widget_catalog.attributes
+qtn_hs_widget_catalog.layout "list_single_pane_t1_cp2"
+qtn_hs_widget_catalog.release "TB9.2"
+qtn_hs_widget_catalog.description "Widget catalog"
+qtn_hs_widget_catalog.grammar "Widget catalog"
+qtn_hs_widget_catalog.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_widget_catalog "Widget catalog">
+
+<!--
+text_softkey_search.attributes
+text_softkey_search.layout "control_pane_t1/opt7"
+text_softkey_search.release "TB9.2"
+text_softkey_search.description "Search"
+text_softkey_search.grammar "Search"
+text_softkey_search.parents "control_pane"
+-->
+<!ENTITY text_softkey_search "Search">
+
+<!--
+text_softkey_options.attributes
+text_softkey_options.layout "control_pane_t1/opt7"
+text_softkey_options.release "TB9.2"
+text_softkey_options.description "Options"
+text_softkey_options.grammar "Options"
+text_softkey_options.parents "control_pane"
+-->
+<!ENTITY text_softkey_options "Options">
+
+<!--
+qtn_hs_refresh_widget.attributes
+qtn_hs_refresh_widget.layout "list_single_pane_t1_cp2/opt3"
+qtn_hs_refresh_widget.release "TB9.2"
+qtn_hs_refresh_widget.description "Refresh"
+qtn_hs_refresh_widget.grammar "Refresh"
+qtn_hs_refresh_widget.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_refresh_widget "Refresh">
+
+<!--
+qtn_hs_refresh_one_widget.attributes
+qtn_hs_refresh_one_widget.layout "list_single_popup_submenu_pane_t1"
+qtn_hs_refresh_one_widget.release "TB9.2"
+qtn_hs_refresh_one_widget.description "One"
+qtn_hs_refresh_one_widget.grammar "One"
+qtn_hs_refresh_one_widget.parents "list_single_popup_submenu_pane"
+-->
+<!ENTITY qtn_hs_refresh_one_widget "One">
+
+<!--
+qtn_hs_refresh_all_widgets.attributes
+qtn_hs_refresh_all_widgets.layout "list_single_popup_submenu_pane_t1"
+qtn_hs_refresh_all_widgets.release "TB9.2"
+qtn_hs_refresh_all_widgets.description "All"
+qtn_hs_refresh_all_widgets.grammar "All"
+qtn_hs_refresh_all_widgets.parents "list_single_popup_submenu_pane"
+-->
+<!ENTITY qtn_hs_refresh_all_widgets "All">
+
+<!--
+qtn_hs_remove_widget.attributes
+qtn_hs_remove_widget.layout "list_single_pane_t1_cp2"
+qtn_hs_remove_widget.release "TB9.2"
+qtn_hs_remove_widget.description "Remove content"
+qtn_hs_remove_widget.grammar "Remove content"
+qtn_hs_remove_widget.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_remove_widget "Remove content">
+
+<!--
+qtn_hs_hide_widgets.attributes
+qtn_hs_hide_widgets.layout "list_single_pane_t1_cp2"
+qtn_hs_hide_widgets.release "TB9.2"
+qtn_hs_hide_widgets.description "Hide the content"
+qtn_hs_hide_widgets.grammar "Hide the content"
+qtn_hs_hide_widgets.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_hide_widgets "Hide the content">
+
+<!--
+qtn_hs_edit_content.attributes
+qtn_hs_edit_content.layout "list_single_pane_t1_cp2"
+qtn_hs_edit_content.release "TB9.2"
+qtn_hs_edit_content.description "Edit contents"
+qtn_hs_edit_content.grammar "Edit contents"
+qtn_hs_edit_content.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_edit_content "Edit content">
+
+<!--
+qtn_hs_change_wallpaper.attributes
+qtn_hs_change_wallpaper.layout "list_single_pane_t1_cp2"
+qtn_hs_change_wallpaper.release "TB9.2"
+qtn_hs_change_wallpaper.description "Change Wallpaper"
+qtn_hs_change_wallpaper.grammar "Change Wallpaper"
+qtn_hs_change_wallpaper.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_change_wallpaper "Change Wallpaper">
+
+<!--
+qtn_hs_change_shortcut_settings.attributes
+qtn_hs_change_shortcut_settings.layout "list_single_pane_t1_cp2"
+qtn_hs_change_shortcut_settings.release "TB9.2"
+qtn_hs_change_shortcut_settings.description "Change Shortcut Settings"
+qtn_hs_change_shortcut_settings.grammar "Change Shortcut Settings"
+qtn_hs_change_shortcut_settings.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_change_shortcut_settings "Change Shortcut Settings">
+
+<!--
+qtn_hs_widget_settings.attributes
+qtn_hs_widget_settings.layout "list_single_pane_t1_cp2"
+qtn_hs_widget_settings.release "TB9.2"
+qtn_hs_widget_settings.description "Widget settings"
+qtn_hs_widget_settings.grammar "Widget settings"
+qtn_hs_widget_settings.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_widget_settings "Widget settings">
+
+<!--
+qtn_hs_show_widgets.attributes
+qtn_hs_show_widgets.layout "list_single_pane_t1_cp2"
+qtn_hs_show_widgets.release "TB9.2"
+qtn_hs_show_widgets.description "Show widgets"
+qtn_hs_show_widgets.grammar "Show widgets"
+qtn_hs_show_widgets.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_show_widgets "Show the content">
+
+<!--
+qtn_hs_change_page.attributes
+qtn_hs_change_page.layout "list_single_pane_t1_cp2"
+qtn_hs_change_page.release "TB9.2"
+qtn_hs_change_page.description "Change Home screen page"
+qtn_hs_change_page.grammar "Change Home screen page"
+qtn_hs_change_page.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_change_page "Change Home screen page">
+
+<!--
+qtn_msk_change.attributes
+qtn_msk_change.layout "control_pane_t1/opt7"
+qtn_msk_change.release "TB9.2"
+qtn_msk_change.description "Change"
+qtn_msk_change.grammar "Change"
+qtn_msk_change.parents "control_pane"
+-->
+<!ENTITY qtn_msk_change "Change">
+
+<!--
+qtn_hs_show_profiles.attributes
+qtn_hs_show_profiles.layout "list_single_pane_t1_cp2"
+qtn_hs_show_profiles.release "TB9.2"
+qtn_hs_show_profiles.description "Show all profiles"
+qtn_hs_show_profiles.grammar "Show all profiles"
+qtn_hs_show_profiles.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_show_profiles "Show all profiles">
+
+<!--
+qtn_set_right_idle_softkey.attributes
+qtn_set_right_idle_softkey.layout "list_single_pane_t1_cp2"
+qtn_set_right_idle_softkey.release "TB9.2"
+qtn_set_right_idle_softkey.description "Right selection key"
+qtn_set_right_idle_softkey.grammar "Right selection key"
+qtn_set_right_idle_softkey.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_set_right_idle_softkey "Right selection key">
+
+<!--
+text_softkey_select.attributes
+text_softkey_select.layout "control_pane_t1/opt7"
+text_softkey_select.release "TB9.2"
+text_softkey_select.description "Select"
+text_softkey_select.grammar "Select"
+text_softkey_select.parents "control_pane"
+-->
+<!ENTITY text_softkey_select "Select">
+
+<!--
+text_softkey_cancel.attributes
+text_softkey_cancel.layout "control_pane_t1/opt7"
+text_softkey_cancel.release "TB9.2"
+text_softkey_cancel.description "Cancel"
+text_softkey_cancel.grammar "Cancel"
+text_softkey_cancel.parents "control_pane"
+-->
+<!ENTITY text_softkey_cancel "Cancel">
+
+<!--
+qtn_hs_online.attributes
+qtn_hs_online.layout "list_single_pane_t1_cp2"
+qtn_hs_online.release "TB9.2"
+qtn_hs_online.description "Online"
+qtn_hs_online.grammar "Online"
+qtn_hs_online.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_online "Switch Home to online">
+
+<!--
+qtn_hs_offline.attributes
+qtn_hs_offline.layout "list_single_pane_t1_cp2"
+qtn_hs_offline.release "TB9.2"
+qtn_hs_offline.description "Offline"
+qtn_hs_offline.grammar "Offline"
+qtn_hs_offline.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_offline "Switch Home to offline">
+
+<!--
+qtn_hs_longtap_settings.attributes
+qtn_hs_longtap_settings.layout "list_single_touch_menu_pane_t1"
+qtn_hs_longtap_settings.release "TB9.2"
+qtn_hs_longtap_settings.description "String which is shown in long tap menu of Home screen if tapped widget has settings."
+qtn_hs_longtap_settings.parents "control_pane"
+-->
+<!ENTITY qtn_hs_longtap_settings "Settings">
+
+<!--
+qtn_hs_longtap_remove_element.attributes
+qtn_hs_longtap_remove_element.layout "list_single_touch_menu_pane_t1"
+qtn_hs_longtap_remove_element.release "TB9.2"
+qtn_hs_longtap_remove_element.description "String which is shown in long tap menu of Home screen if tapped some widget which is removable."
+qtn_hs_longtap_remove_element.parents "control_pane"
+-->
+<!ENTITY qtn_hs_longtap_remove_element "Remove">
+
+<!--
+qtn_hs_longtap_add.attributes
+qtn_hs_longtap_add.layout "list_single_touch_menu_pane_t1"
+qtn_hs_longtap_add.release "TB9.2"
+qtn_hs_longtap_add.description "String which is shown in long tap menu of Home screen if tapped empty space in home screen."
+qtn_hs_longtap_add.parents "control_pane"
+-->
+<!ENTITY qtn_hs_longtap_add "Add content">
+
+<!--
+qtn_hs_change_longtap_wallpaper.attributes
+qtn_hs_change_longtap_wallpaper.layout "list_single_touch_menu_pane_t1"
+qtn_hs_change_longtap_wallpaper.release "TB9.2"
+qtn_hs_change_longtap_wallpaper.description "String which is shown in long tap menu of Home screen."
+qtn_hs_change_longtap_wallpaper.parents "control_pane"
+-->
+<!ENTITY qtn_hs_change_longtap_wallpaper "Change wallpaper">
+
+<!--
+qtn_hs_download_new_widgets.attributes
+qtn_hs_download_new_widgets.layout "list_single_pane_t1_cp2"
+qtn_hs_download_new_widgets.release "TB9.2"
+qtn_hs_download_new_widgets.description "User can download new HS widgets String is visible in add content list query"
+qtn_hs_download_new_widgets.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_download_new_widgets "Download">
+
+<!--
+qtn_hs_edit_replace.attributes
+qtn_hs_edit_replace.layout "list_single_touch_menu_pane_t1"
+qtn_hs_edit_replace.release "TB9.2"
+qtn_hs_edit_replace.description "Changes focused widget"
+qtn_hs_edit_replace.parents ""
+-->
+<!ENTITY qtn_hs_edit_replace "Replace">
+
+<!--
+qtn_hs_page_options_delete.attributes
+qtn_hs_page_options_delete.layout "list_single_pane_t1_cp2"
+qtn_hs_page_options_delete.release "TB9.2"
+qtn_hs_page_options_delete.description "deletes current home screen page"
+qtn_hs_page_options_delete.parents ""
+-->
+<!ENTITY qtn_hs_page_options_delete "Delete page">
+
+<!--
+qtn_hs_page_options_new.attributes
+qtn_hs_page_options_new.layout "list_single_pane_t1_cp2"
+qtn_hs_page_options_new.release "TB9.2"
+qtn_hs_page_options_new.description "creates new home screen page"
+qtn_hs_page_options_new.parents ""
+-->
+<!ENTITY qtn_hs_page_options_new "New page">
+
+<!--
+qtn_hs_title_editing_view.attributes
+qtn_hs_title_editing_view.layout "title_pane_t2"
+qtn_hs_title_editing_view.release "TB9.2"
+qtn_hs_title_editing_view.description "view title in editing mode"
+qtn_hs_title_editing_view.parents ""
+-->
+<!ENTITY qtn_hs_title_editing_view "Editing view">
+
+<!--
+text_softkey_call.attributes
+text_softkey_call.layout "control_pane_t1/opt7"
+text_softkey_call.release "TB9.2"
+text_softkey_call.description "RSK caption call inactive"
+text_softkey_call.parents ""
+-->
+<!ENTITY text_softkey_call "Call">
+
+<!--
+qtn_hs_edit_widget_catalog.attributes
+qtn_hs_edit_widget_catalog.layout "list_single_pane_t1_cp2"
+qtn_hs_edit_widget_catalog.release "TB9.2"
+qtn_hs_edit_widget_catalog.description "Added new option menu item to Edit mode for opening the widget catalog"
+qtn_hs_edit_widget_catalog.grammar "Widget Catalog"
+qtn_hs_edit_widget_catalog.parents "list_single_pane_cp2"
+-->
+<!ENTITY qtn_hs_edit_widget_catalog "Widget Catalog">
+
+<!--
+qtn_hs_page_edit_options_delete.attributes
+qtn_hs_page_edit_options_delete.layout "list_single_pane_t1_cp2"
+qtn_hs_page_edit_options_delete.release "TB9.2"
+qtn_hs_page_edit_options_delete.description "Deletes the current Home screen page and focus goes to the next available Home screen page in Edit mode"
+qtn_hs_page_edit_options_delete.parents ""
+-->
+<!ENTITY qtn_hs_page_edit_options_delete "Delete page">
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/00/View.xml Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,296 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE xmluiml SYSTEM "View.dtd">
+<xmluiml xmlns="http://www.series60.com/xml/xmluiml/1" version="1.0">
+ <view id="hs_qhd_tch_view">
+ <actions>
+ <action>
+ <!-- End key -->
+ <trigger name="keyevent">
+ <property name="scancode" value="197"/> ><!-- End key -->
+ <property name="eventtype" value="1"/>
+ </trigger>
+ <!-- dismiss if edit mode active -->
+ <event name="system/reportexiteditmode"/>
+ </action>
+ <action>
+ <trigger name="editmode" value="enter"/>
+ <event name="system/set">
+ <property name="name" value="focusable"/>
+ <property name="value" value="true"/>
+ <property name="type" value="string"/>
+ <property name="class" value="plugins"/>
+ </event>
+ <event name="system/seteditmode">
+ <property name="id" value="hs_popup_open_hold"/>
+ <property name="class" value="widget_indication"/>
+ </event>
+ </action>
+ <action>
+ <trigger name="editmode" value="exit"/>
+ <event name="system/set">
+ <property name="name" value="focusable"/>
+ <property name="value" value="false"/>
+ <property name="type" value="string"/>
+ <property name="class" value="plugins"/>
+ </event>
+ <event name="system/reseteditmode">
+ <property name="id" value="hs_popup_open_hold"/>
+ <property name="class" value="widget_indication"/>
+ </event>
+ </action>
+ <action>
+ <trigger name="swipe" direction="left" conditional="true"/>
+ <event name="system/activatenextview" effectid="1003"/>
+ </action>
+ <action>
+ <trigger name="swipe" direction="right" conditional="true"/>
+ <event name="system/activatepreviousview" effectid="1004"/>
+ </action>
+ <action>
+ <trigger name="screendevicechange" reason="portrait"/>
+ <event name="system/set">
+ <property name="name" value="padding-left"/>
+ <property name="value" value="17px"/>
+ <property name="type" value="numeric"/>
+ <property name="id" value="plugins_container"/>
+ </event>
+ <event name="system/set">
+ <property name="name" value="padding-right"/>
+ <property name="value" value="17px"/>
+ <property name="type" value="numeric"/>
+ <property name="id" value="plugins_container"/>
+ </event>
+ </action>
+ <action>
+ <trigger name="screendevicechange" reason="landscape"/>
+ <event name="system/set">
+ <property name="name" value="padding-left"/>
+ <property name="value" value="0px"/>
+ <property name="type" value="numeric"/>
+ <property name="id" value="plugins_container"/>
+ </event>
+ <event name="system/set">
+ <property name="name" value="padding-right"/>
+ <property name="value" value="0px"/>
+ <property name="type" value="numeric"/>
+ <property name="id" value="plugins_container"/>
+ </event>
+ </action>
+ </actions>
+
+ <!-- Plugins in this view -->
+ <box id="plugins_container">
+ <plugin id="plugin1" class="plugins" actionshandler="plugin_actions">
+ <image class="widget_indication" />
+ </plugin>
+ <plugin id="plugin2" class="plugins" actionshandler="plugin_actions">
+ <image class="widget_indication" />
+ </plugin>
+ <plugin id="plugin3" class="plugins" actionshandler="plugin_actions">
+ <image class="widget_indication" />
+ </plugin>
+ <plugin id="plugin4" class="plugins" actionshandler="plugin_actions">
+ <image class="widget_indication" />
+ </plugin>
+ <plugin id="plugin5" class="plugins" actionshandler="plugin_actions">
+ <image class="widget_indication" />
+ </plugin>
+ <plugin id="plugin6" class="plugins" actionshandler="plugin_actions">
+ <image class="widget_indication" />
+ </plugin>
+ </box>
+
+ <!-- plugins' actions handler -->
+ <actionshandler id="plugin_actions">
+ <actions>
+ <action>
+ <trigger id="hs_popup_open_hold" name="hold" conditional="true" />
+ <event name="system/reportentereditmode" effectid="1005"/>
+ </action>
+ </actions>
+ </actionshandler>
+
+ <!-- Avkon stylus popup menu is not layout capable -->
+ <styluspopup id="hs_popup_menu" display="none">
+ <!-- menuitems controlled by widgets' <menuextension> -->
+ <widgetmenuitem id="hs_popup_widget_settings" source="hs_widget_menuitem_settings" label="&qtn_hs_longtap_settings;" />
+ <widgetmenuitem id="hs_popup_widget_general_1" source="hs_widget_general_stylus_popup_1"/>
+ <widgetmenuitem id="hs_popup_widget_general_2" source="hs_widget_general_stylus_popup_2"/>
+ <!--<widgetmenuitem id="hs_popup_widget_refresh" source="hs_widget_menuitem_refresh" label="Refresh" />-->
+ <!-- "Remove" item initialized in runtime to check whether popup is on top of widget -->
+ <dynmenuitem id="hs_popup_remove_widget" type="hs_remove_widget" label="&qtn_hs_longtap_remove_element;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="system/removefocusedwidget"/>
+ </action>
+ </actions>
+ </dynmenuitem>
+ </styluspopup>
+ <menubar id="hs_menubar">
+ <!-- menu item grouping table is traversed through in run-time always when options menu is launched. -->
+ <menuitemgrouping>
+ <!-- These items are shown when content is visible -->
+ <menuitemgroup id="Menu/NormalMode">
+ <property name="hs_edit_widgets"/>
+ <property name="hs_set_online"/>
+ <property name="hs_set_offline"/>
+ <property name="hs_add_view"/>
+ <property name="hs_remove_view"/>
+ </menuitemgroup>
+ <!-- These items are shown in edit mode, if not otherwise changed in the declaration -->
+ <menuitemgroup id="Menu/EditMode">
+ <property name="hs_widget_catalog"/>
+ <property name="hs_remove_widget"/>
+ <property name="hs_widget_settings"/>
+ <property name="hs_widget_general_1"/>
+ <property name="hs_widget_general_2"/>
+ <property name="hs_add_view"/>
+ <property name="hs_remove_view"/>
+ <property name="hs_change_wallpaper"/>
+ </menuitemgroup>
+ <!-- These items are always shown, if not otherwise changed in the declaration -->
+ <menuitemgroup id="Menu/AlwaysShown">
+ <property name="hs_show_help"/>
+ </menuitemgroup>
+ </menuitemgrouping>
+ <menu id="hs_options_menu">
+ <menuitem id="hs_widget_catalog" label="&qtn_hs_widget_catalog;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="system/runaddwidgetquery"/>
+ </action>
+ </actions>
+ </menuitem>
+ <!-- menuitems controlled by widgets' <menuextension> element -->
+ <widgetmenuitem id="hs_widget_settings" source="hs_widget_menuitem_settings" label="&qtn_hs_widget_settings;"/>
+ <widgetmenuitem id="hs_widget_general_1" source="hs_widget_general_options_menu_1"/>
+ <widgetmenuitem id="hs_widget_general_2" source="hs_widget_general_options_menu_2"/>
+ <dynmenuitem id="hs_remove_widget" type="hs_remove_widget" label="&qtn_hs_remove_widget;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="system/removefocusedwidget"/>
+ </action>
+ </actions>
+ </dynmenuitem>
+ <!--<widgetmenuitem id="hs_widget_refresh" source="hs_widget_menuitem_refresh" label="&qtn_hs_refresh_widget;" />-->
+ <menuitem id="hs_edit_widgets" label="&qtn_hs_edit_content;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="system/reportentereditmode" effectid="1005"/>
+ </action>
+ </actions>
+ </menuitem>
+ <menuitem id="hs_change_wallpaper" label="&qtn_hs_change_wallpaper;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <!--Wallpaper-->
+ <event name="system/setwallpaper"/>
+ </action>
+ </actions>
+ </menuitem>
+ <dynmenuitem id="hs_add_view" type="hs_add_view" label="&qtn_hs_page_options_new;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="system/addview" effectid="1009"/>
+ </action>
+ </actions>
+ </dynmenuitem>
+ <dynmenuitem id="hs_remove_view" type="hs_remove_view" label="&qtn_hs_page_options_delete;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="system/removeview" effectid="1010"/>
+ </action>
+ </actions>
+ </dynmenuitem>
+ <dynmenuitem id="hs_set_online" type="hs_online" label="&qtn_hs_online;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="EventHandler/SetOnline"/>
+ </action>
+ </actions>
+ </dynmenuitem>
+ <dynmenuitem id="hs_set_offline" type="hs_offline" label="&qtn_hs_offline;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="EventHandler/SetOffline"/>
+ </action>
+ </actions>
+ </dynmenuitem>
+ <menuitem id="hs_show_help" label="&qtn_options_help;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="EventHandler/ShowHelp"/>
+ </action>
+ </actions>
+ </menuitem>
+ </menu>
+ <softkey id="lsk" type="left" label="&text_softkey_options;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="system/trydisplayingmenu">
+ <property name="id" value="hs_options_menu"/>
+ </event>
+ </action>
+ </actions>
+ </softkey>
+ <softkey id="rsk" type="right" mode="mode_callinactive" label="&text_softkey_call;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="EventHandler/ActivateView" uid="0x100058B3" viewid="0x10282D81" messageid="0x1"/>
+ </action>
+ <action>
+ <trigger name="hold"/>
+ <!-- Voice command-->
+ <event name="EventHandler/LaunchApp" uid="0x101F8543"/>
+ </action>
+ </actions>
+ </softkey>
+ <softkey id="rsk_incall" type="right" mode="mode_callactive" label="&text_softkey_back;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="EventHandler/ActivatePhoneView" />
+ </action>
+ </actions>
+ </softkey>
+ <softkey id="rsk_done" type="right" mode="mode_edit" label="&text_softkey_done;">
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="system/reportexiteditmode" effectid="1006"/>
+ </action>
+ </actions>
+ </softkey>
+ <softkey id="msk_ltr" type="middle" label=""> <!--TODO: Remove label when MSK icon available-->
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="system/activatenextview" effectid="1003"/>
+ </action>
+ </actions>
+ <!--image id="switcher_icon"/-->
+ </softkey>
+ <softkey id="msk_rtl" type="middle" label=""> <!--TODO: Remove label when MSK icon available-->
+ <actions>
+ <action>
+ <trigger name="activate"/>
+ <event name="system/activatepreviousview" effectid="1004"/>
+ </action>
+ </actions>
+ <!--image id="switcher_icon"/-->
+ </softkey>
+ </menubar>
+ </view>
+</xmluiml>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/37/View.css Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,86 @@
+view
+{
+ direction: ltr;
+ block-progression: tb;
+ background-image: wallpaper;
+ swipe: true;
+
+ _s60-status-pane-layout: widescreen-flat-3softkeys;
+}
+
+box#plugins_container
+{
+ direction: rtl;
+ block-progression: rl;
+ padding-top: 3px;
+}
+
+plugin.plugins
+{
+ height: 82px;
+ width: 312px;
+
+ margin-bottom: 4px;
+ margin-right: 5px;
+ margin-left: 5px;
+ _s60-longtap: true;
+ nav-index: appearance;
+}
+
+plugin:edit
+{
+ background-color:"SKIN(270501603 8582)";
+}
+
+image.widget_indication
+{
+ display: none;
+ position: absolute;
+
+ right: auto;
+ left: 3px;
+ top: 5px;
+
+ height: 26px;
+ width: 26px;
+
+ path: "SKIN(270501603 9252)";
+ _s60-aspect-ratio: preserve;
+ z-index: 2;
+}
+
+image.widget_indication:edit
+{
+ display: block;
+}
+
+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;
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/50/View.css Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,86 @@
+view
+{
+ direction: ltr;
+ block-progression: tb;
+ background-image: wallpaper;
+ swipe: true;
+
+ _s60-status-pane-layout: widescreen-flat-3softkeys;
+}
+
+box#plugins_container
+{
+ direction: rtl;
+ block-progression: rl;
+ padding-top: 3px;
+}
+
+plugin.plugins
+{
+ height: 82px;
+ width: 312px;
+
+ margin-bottom: 4px;
+ margin-right: 5px;
+ margin-left: 5px;
+ _s60-longtap: true;
+ nav-index: appearance;
+}
+
+plugin:edit
+{
+ background-color:"SKIN(270501603 8582)";
+}
+
+image.widget_indication
+{
+ display: none;
+ position: absolute;
+
+ right: auto;
+ left: 3px;
+ top: 5px;
+
+ height: 26px;
+ width: 26px;
+
+ path: "SKIN(270501603 9252)";
+ _s60-aspect-ratio: preserve;
+ z-index: 2;
+}
+
+image.widget_indication:edit
+{
+ display: block;
+}
+
+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;
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/57/View.css Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,86 @@
+view
+{
+ direction: ltr;
+ block-progression: tb;
+ background-image: wallpaper;
+ swipe: true;
+
+ _s60-status-pane-layout: widescreen-flat-3softkeys;
+}
+
+box#plugins_container
+{
+ direction: rtl;
+ block-progression: rl;
+ padding-top: 3px;
+}
+
+plugin.plugins
+{
+ height: 82px;
+ width: 312px;
+
+ margin-bottom: 4px;
+ margin-right: 5px;
+ margin-left: 5px;
+ _s60-longtap: true;
+ nav-index: appearance;
+}
+
+plugin:edit
+{
+ background-color:"SKIN(270501603 8582)";
+}
+
+image.widget_indication
+{
+ display: none;
+ position: absolute;
+
+ right: auto;
+ left: 3px;
+ top: 5px;
+
+ height: 26px;
+ width: 26px;
+
+ path: "SKIN(270501603 9252)";
+ _s60-aspect-ratio: preserve;
+ z-index: 2;
+}
+
+image.widget_indication:edit
+{
+ display: block;
+}
+
+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;
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/data/qhd_tch/view_200286e5/xuikon/94/View.css Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,86 @@
+view
+{
+ direction: ltr;
+ block-progression: tb;
+ background-image: wallpaper;
+ swipe: true;
+
+ _s60-status-pane-layout: widescreen-flat-3softkeys;
+}
+
+box#plugins_container
+{
+ direction: rtl;
+ block-progression: rl;
+ padding-top: 3px;
+}
+
+plugin.plugins
+{
+ height: 82px;
+ width: 312px;
+
+ margin-bottom: 4px;
+ margin-right: 5px;
+ margin-left: 5px;
+ _s60-longtap: true;
+ nav-index: appearance;
+}
+
+plugin:edit
+{
+ background-color:"SKIN(270501603 8582)";
+}
+
+image.widget_indication
+{
+ display: none;
+ position: absolute;
+
+ right: auto;
+ left: 3px;
+ top: 5px;
+
+ height: 26px;
+ width: 26px;
+
+ path: "SKIN(270501603 9252)";
+ _s60-aspect-ratio: preserve;
+ z-index: 2;
+}
+
+image.widget_indication:edit
+{
+ display: block;
+}
+
+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;
+}
--- a/idlehomescreen/hscontentcontrol/bwins/hscontentcontrol.def Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/hscontentcontrol/bwins/hscontentcontrol.def Fri Mar 12 15:41:49 2010 +0200
@@ -3,4 +3,5 @@
?GetHsContentController@CHsContentControlFactory@@QAEPAVMHsContentControlUi@@ABVTDesC8@@@Z @ 2 NONAME ; class MHsContentControlUi * CHsContentControlFactory::GetHsContentController(class TDesC8 const &)
??1CHsContentControlFactory@@UAE@XZ @ 3 NONAME ; CHsContentControlFactory::~CHsContentControlFactory(void)
?NewL@CHsContentControlFactory@@SAPAV1@AAVCXnAppUiAdapter@@@Z @ 4 NONAME ; class CHsContentControlFactory * CHsContentControlFactory::NewL(class CXnAppUiAdapter &)
+ ?PrepareToExit@CHsContentControlFactory@@QAEXXZ @ 5 NONAME ; void CHsContentControlFactory::PrepareToExit(void)
--- a/idlehomescreen/hscontentcontrol/eabi/hscontentcontrol.def Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/hscontentcontrol/eabi/hscontentcontrol.def Fri Mar 12 15:41:49 2010 +0200
@@ -5,4 +5,5 @@
_ZN24CHsContentControlFactoryD0Ev @ 4 NONAME
_ZN24CHsContentControlFactoryD1Ev @ 5 NONAME
_ZN24CHsContentControlFactoryD2Ev @ 6 NONAME
+ _ZN24CHsContentControlFactory13PrepareToExitEv @ 7 NONAME
--- a/idlehomescreen/hscontentcontrol/inc/hscontentcontrolfactory.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/hscontentcontrol/inc/hscontentcontrolfactory.h Fri Mar 12 15:41:49 2010 +0200
@@ -88,6 +88,11 @@
IMPORT_C MHsContentControlUi* GetHsContentController(
const TDesC8& aControllerType );
+ /**
+ *
+ */
+ IMPORT_C void PrepareToExit();
+
private:
/**
--- a/idlehomescreen/hscontentcontrol/src/hscontentcontrolfactory.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/hscontentcontrol/src/hscontentcontrolfactory.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -103,22 +103,13 @@
//
EXPORT_C CHsContentControlFactory::~CHsContentControlFactory()
{
+ delete iHsContentControlEComListener;
+ delete iHsContentControlUninstallMonitor;
+
iImplArray.ResetAndDestroy();
iImplArray.Close();
- if ( iHsContentControlUis.Count() > 0 )
- {
- for( TInt index( iHsContentControlUis.Count() - 1 ); index >= 0; --index )
- {
- CHsContentControlUi* cc( iHsContentControlUis[ index ] );
- ReleaseHsCcUi( cc );
- }
- }
-
iHsContentControlUis.ResetAndDestroy();
-
- delete iHsContentControlEComListener;
- delete iHsContentControlUninstallMonitor;
}
// ---------------------------------------------------------------------------------
@@ -126,7 +117,7 @@
// ---------------------------------------------------------------------------------
//
EXPORT_C MHsContentControlUi* CHsContentControlFactory::GetHsContentController(
- const TDesC8& aControlType )
+ const TDesC8& aControlType )
{
MHsContentControlUi* retval( FindHsContentController( aControlType ) );
@@ -167,6 +158,22 @@
return retval;
}
+// ---------------------------------------------------------------------------------
+// CHsContentControlFactory::PrepareToExit()
+// ---------------------------------------------------------------------------------
+//
+EXPORT_C void CHsContentControlFactory::PrepareToExit()
+ {
+ if ( iHsContentControlUis.Count() > 0 )
+ {
+ for( TInt index( iHsContentControlUis.Count() - 1 ); index >= 0; --index )
+ {
+ CHsContentControlUi* cc( iHsContentControlUis[ index ] );
+ ReleaseHsCcUi( cc );
+ }
+ }
+ }
+
// ----------------------------------------------------------------------------
// CHsContentControlFactory::FindHsContentController()
// ----------------------------------------------------------------------------
@@ -245,7 +252,7 @@
// If an implementation is not present in present in the plugInArray then its removed.
for( TInt index( iImplArray.Count() - 1 ); index >= 0 && !done; --index )
{
- uid = plugInArray[ index ]->ImplementationUid();
+ uid = iImplArray[ index ]->ImplementationUid();
CImplementationInformation* implInfo =
FindPluginImplInfo( uid, plugInArray );
if ( implInfo && PluginUpgradeDowngrade( *implInfo ) )
--- a/idlehomescreen/inc/xnappuiadapter.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/inc/xnappuiadapter.h Fri Mar 12 15:41:49 2010 +0200
@@ -34,6 +34,7 @@
class MHsContentControlUi;
class CXnEffectManager;
class MHsContentControl;
+
// Class declaration
/**
* Avkon adapter for Xuikon.
@@ -149,6 +150,7 @@
/**
* Routes the events from external rendering plug-ins to content plug-ins.
+ * To be overriden by subclass.
*
* @since S60 5.2
* @param aEvent Event string
@@ -157,31 +159,45 @@
IMPORT_C virtual void HandleEventL( const TDesC& aEvent,
CXnNodeAppIf& aDestination );
-public:
/**
- * From CEikAppUi.
+ * This is called when initial view is activated
+ * To be overriden by subclass.
+ *
+ * @since S60 5.2
+ */
+ IMPORT_C virtual void UiActivated();
+
+ /**
* Second-phase constructor
*
* @since Series 60 3.1
*/
IMPORT_C void ConstructL();
-protected:
+ /**
+ * From CEikAppUi.
+ *
+ * @since Series 60 3.1
+ */
+ IMPORT_C void ProcessMessageL( TUid aUid, const TDesC8& aParams );
+protected:
+ // from CAknViewAppUi
+
/**
- * From CAknAppUi.
+ * @see CAknViewAppUi
*
* @since Series 60 3.1
*/
IMPORT_C void HandleResourceChangeL( TInt aType );
/**
- * From CAknAppUi.
+ * @see CAknViewAppUi
*
- * @since Series 60 5.2
+ * @since S60 5.2
*/
IMPORT_C void PrepareToExit();
-
+
public:
// new functions
@@ -266,7 +282,7 @@
* Makes focus control visible
*
* @since S60 5.0
- */
+ */
void ShowFocus();
private:
--- a/idlehomescreen/inc/xneditmode.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/inc/xneditmode.h Fri Mar 12 15:41:49 2010 +0200
@@ -151,14 +151,6 @@
* @since Series 60 5.0
*/
void UpdateScreen();
-
- /**
- * Sets the title for status pane
- *
- * @since Series 60 5.0
- * @param aEdit Edit mode or not.
- */
- void SetStatusPaneTitleL( TBool aEdit );
private:
// Constructors
--- a/idlehomescreen/inc/xnlistquerydialogadapter.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/inc/xnlistquerydialogadapter.h Fri Mar 12 15:41:49 2010 +0200
@@ -29,6 +29,7 @@
// FORWARD DECLARATIONS
class CXnNodePluginIf;
class CXnUiEngine;
+class CAknListQueryDialog;
// CLASS DECLARATION
@@ -200,6 +201,10 @@
void ModifyDynamicEventL( TInt aIndex );
private: // Data
+
+ // Dialog
+ CAknListQueryDialog* iDialog;
+
// Node
CXnNodePluginIf& iNode;
/**
--- a/idlehomescreen/inc/xnnode.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/inc/xnnode.h Fri Mar 12 15:41:49 2010 +0200
@@ -888,62 +888,6 @@
* @see GetPropertyL
* @return The property mapped to the key or NULL if not found.
*/
- CXnProperty* VisibleRowsL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- CXnProperty* GridColumnsL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- CXnProperty* GridOrientationL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- CXnProperty* GridVerDirectionL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- CXnProperty* GridHorDirectionL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- CXnProperty* FocusHorLoopingL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- CXnProperty* FocusVerLoopingL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
CXnProperty* ZIndexL();
/**
@@ -971,30 +915,6 @@
CXnProperty* BackgroundImageL();
/**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- CXnProperty* RefL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- CXnProperty* GridScrollBarMarginL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- CXnProperty* GridScrollBarWidthL();
-
- /**
* Sets the pointer of DOM node
*
* @since S60 3.1
@@ -1052,27 +972,6 @@
void FixAdaptiveSizeL( const TSize& aFixedSize );
/**
- * Restarts the timer in a timed trigger.
- *
- * @param aDelay Delay in microseconds. If delay is zero, then the timer
- * is only cancelled.
- */
- void RestartTimedTrigger( TInt aDelay = 0 );
-
- /**
- * Sets default trigger delay.
- *
- * @param aDelay delay in microseconds. If new delay is not set, then
- * this value is used in restarting the timer.
- */
- void SetTriggerDelay( TTimeIntervalMicroSeconds32 aDelay );
-
- /**
- * Returns the default trigger delay.
- */
- TTimeIntervalMicroSeconds32 TriggerDelay();
-
- /**
* Marks node as dirty, adds it to UiEngine's dirty list and
* clears rendered and laidout from the node and its children.
*
@@ -1184,10 +1083,6 @@
*/
CXnNodeAppIf* iAppIf;
- /**
- * delay in microseconds for timer.
- */
- TTimeIntervalMicroSeconds32 iTriggerDelay;
};
#endif
--- a/idlehomescreen/inc/xnnodeimpl.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/inc/xnnodeimpl.h Fri Mar 12 15:41:49 2010 +0200
@@ -33,7 +33,6 @@
class CXnProperty;
class CXnNode;
class CXnUiEngine;
-class CGridPropertyCache;
class CLayoutPropertyCache;
class CXnDomNode;
class CXnScrollableControlAdapter;
@@ -797,62 +796,6 @@
* @see GetPropertyL
* @return The property mapped to the key or NULL if not found.
*/
- CXnProperty* VisibleRowsL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- CXnProperty* GridColumnsL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- CXnProperty* GridOrientationL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- CXnProperty* GridVerDirectionL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- CXnProperty* GridHorDirectionL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- CXnProperty* FocusHorLoopingL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- CXnProperty* FocusVerLoopingL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
CXnProperty* ZIndexL();
/**
@@ -880,30 +823,6 @@
CXnProperty* BackgroundImageL();
/**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- CXnProperty* RefL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- CXnProperty* GridScrollBarMarginL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- CXnProperty* GridScrollBarWidthL();
-
- /**
* Sets the pointer of DOM node
*
* @since S60 3.1
@@ -953,29 +872,6 @@
void FixAdaptiveSizeL( const TSize& aFixedSize );
/**
- * Callback which will be called by the CPeriodic.
- *
- * @param aPtr User defined pointer.
- * @return ETrue if the method should be called again.
- */
- static TInt PeriodicEventL( TAny* aPtr );
-
- /**
- * Returns a pointer to the periodic timer (for timed triggers).
- */
- CPeriodic* PeriodicTimer();
-
- /**
- * Creates a periodic timer (iPeriodicTimer).
- */
- void CreatePeriodicL();
-
- /**
- * Deletes a periodict timer (iPeriodicTimer)
- */
- void DeletePeriodic();
-
- /**
* Marks node as dirty, adds it to UiEngine's dirty list and
* clears rendered and laidout from the node and its children.
*
@@ -1016,7 +912,7 @@
* Gets scrollable control.
*/
CXnScrollableControlAdapter* ScrollableControl();
-
+
private:
TInt DoSetPropertyL( CXnProperty* aPropery );
@@ -1129,12 +1025,6 @@
RArray< CXnDomProperty::TPseudoClass > iStates;
/**
- * Local cache for property with name KRef.
- * Not own.
- */
- CXnProperty* iRef;
-
- /**
* Local cache for property with name KName.
* Not own.
*/
@@ -1186,12 +1076,6 @@
* Local property cache.
* Own.
*/
- CGridPropertyCache* iGridPropertyCache;
-
- /**
- * Local property cache.
- * Own.
- */
CLayoutPropertyCache* iLayoutPropertyCache;
/**
@@ -1216,11 +1100,6 @@
*/
TInt iAdaptive;
- /**
- * The timer for the timed triggers.
- * Own.
- */
- CPeriodic* iPeriodicTimer;
};
#endif
--- a/idlehomescreen/inc/xnnodepluginif.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/inc/xnnodepluginif.h Fri Mar 12 15:41:49 2010 +0200
@@ -390,86 +390,6 @@
* @see GetPropertyL
* @return The property mapped to the key or NULL if not found.
*/
- IMPORT_C CXnProperty* VisibleRowsL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- IMPORT_C CXnProperty* GridColumnsL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- IMPORT_C CXnProperty* GridOrientationL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- IMPORT_C CXnProperty* GridVerDirectionL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- IMPORT_C CXnProperty* GridHorDirectionL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- IMPORT_C CXnProperty* FocusHorLoopingL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- IMPORT_C CXnProperty* FocusVerLoopingL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- IMPORT_C CXnProperty* RefL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- IMPORT_C CXnProperty* GridScrollBarWidthL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
- IMPORT_C CXnProperty* GridScrollBarMarginL();
-
- /**
- * Get property as indicated by method name.
- *
- * @see GetPropertyL
- * @return The property mapped to the key or NULL if not found.
- */
IMPORT_C CXnProperty* PathL();
/**
--- a/idlehomescreen/inc/xnproperty.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/inc/xnproperty.h Fri Mar 12 15:41:49 2010 +0200
@@ -48,27 +48,13 @@
_LIT8(KInitialFocus, "_s60-initial-focus");
_LIT8(KFocusAppearance, "_s60-focus-appearance");
_LIT8(KDisabled, "disabled");
-// _LIT8(KLocked, "locked");
-// _LIT8(KStyleLocked, "stylelocked");
_LIT8(KLongTap, "_s60-longtap");
_LIT8(KSwipe, "swipe");
_LIT8(KSwipeDestination, "_s60-swipe-destination");
_LIT8(KBackgroundMask, "backgroundmask" );
- _LIT8(KStylusStates, "stylusstates");
- /*_LIT8(KTouchFeedbackDown, "touchfeedbackdown");
- _LIT8(KTouchFeedbackUp, "touchfeedbackup");
- _LIT8(KTouchFeedbackDrag, "touchfeedbackdrag");
- _LIT8(KTouchFeedbackLongTap, "touchfeedbacklongtap");*/
- _LIT8(KEventFilter, "eventfilter");
_LIT8(KEffectId, "effectid");
- _LIT8(KKeyMoveMode, "keymovemode");
_LIT8(KSizeAware, "sizeaware");
_LIT8(KVisualisationAware, "visualisationaware");
- /*namespace touchfeedback
- {
- _LIT8(KFeedbackBasic, "basic");
- _LIT8(KFeedbackSensitive, "sensitive");
- }*/
}
namespace tooltip
{
@@ -77,7 +63,6 @@
_LIT8(KPositionHint, "_s60-position-hint");
namespace positionhint
{
-// _LIT8(KNone, "none");
_LIT8(KAboveLeft, "aboveleft");
_LIT8(KAboveRight, "aboveright");
_LIT8(KBelowLeft, "belowleft");
@@ -98,10 +83,6 @@
}
namespace view
{
-// _LIT8(KUid, "uid");
- _LIT8(KInitial, "initial");
-// _LIT8(KTitle, "title");
- _LIT8(KFocusVisibility, "_s60-focus-visibility");
_LIT8(KStatusPaneLayout, "_s60-status-pane-layout");
namespace statuspanelayout
{
@@ -113,59 +94,18 @@
_LIT8( KWideScreenFlat3Softkeys, "widescreen-flat-3softkeys" );
}
}
- namespace grid
- {
-// _LIT8(KType, "type");
-// namespace type
-// {
-// _LIT8(KSelection, "selection");
-// _LIT8(KMarkable, "markable");
-// }
-// _LIT8(KSelectionType, "selectiontype");
-// namespace selectiontype
-// {
-// _LIT8(KSingle, "single");
-// _LIT8(KMulti, "multi");
-// }
-// _LIT8(KMarkingElement, "markingelement");
-// _LIT8(KMarkingElementOff, "markingelementoff");
-// _LIT8(KOpeningEffect, "openingeffect");
- _LIT8(KS60GridColumns, "_s60-grid-columns");
- _LIT8(KS60VisibleRows, "_s60-visible-list-rows");
-// _LIT8(KS60GridColumnsLandscape, "_s60-grid-columns-landscape");
-// _LIT8(KS60VisibleRowsLandscape, "_s60-visible-list-rows-landscape");
-// _LIT8(KS60InitialSelection, "_s60-initial-list-selection");
- _LIT8(KS60FocusHorLooping, "_s60-list-focus-horizontal-looping");
- _LIT8(KS60FocusVerLooping, "_s60-list-focus-vertical-looping");
- namespace s60_focus_looping
- {
- _LIT8(KStop, "stop");
-// _LIT8(KLoop, "loop");
-// _LIT8(KSnake, "snake");
- }
- _LIT8(KS60GridOrientation, "_s60-grid-orientation");
- _LIT8(KS60GridVerDirection, "_s60-grid-ver-direction"); //lr, rl
- _LIT8(KS60GridHorDirection, "_s60-grid-hor-direction"); //tb, bt
-// _LIT8(KS60GridPreserveImageRatio, "_s60-grid-preserve-image-ratio");
- _LIT8(KS60GridScrollbarWidth, "_s60-grid-scrollbar-width");
- _LIT8(KS60GridScrollbarMargin, "_s60-grid-scrollbar-margin");
- _LIT8(KGridCellTemplate, "gridcelltemplate");
- _LIT8(KListRowTemplate, "listrowtemplate");
- }
namespace newsticker
{
_LIT8(KXnNewsticker, "newsticker");
_LIT8(KXnScrollAmount, "_s60-scroll-amount");
_LIT8(KXnScrollDelay, "_s60-scroll-delay");
_LIT8(KXnStartDelay, "_s60-start-delay");
- _LIT8(KXnNewstickerAnimationDelay, "_s60-animation-delay");
_LIT8(KDisplayTime, "_s60-display-time");
_LIT8(KScrollBehaviour, "_s60-scroll-behaviour");
_LIT8(KScrollLoop, "_s60-scroll-loop");
_LIT8(KRestartAfterUpdate, "_s60-restart-after-update");
namespace scroll_behaviour
{
-// _LIT8(KScroll, "scroll");
_LIT8(KSlide, "slide");
_LIT8(KAlternate, "alternate");
_LIT8(KScrollAlternate, "scroll-alternate");
@@ -176,44 +116,10 @@
_LIT8(KTitleIndex, "titleindex" );
_LIT8(KTitle, "title" );
}
-/* namespace trackster
- {
- _LIT8( KTrackster, "trackster" );
- _LIT8( KTracksterCellTemplate, "trackstercelltemplate" );
- _LIT8( KText, "text" );
- _LIT8( KImage, "image" );
- _LIT8( KCurveTypeCurve, "trackstercurve" );
- _LIT8( KCurveTypeZoom, "tracksterzoom" );
- _LIT8( KKeyPoint, "keypoint" );
- _LIT8( KXCoordinate, "_s60-co-ordinate-x" );
- _LIT8( KYCoordinate, "_s60-co-ordinate-y" );
- _LIT8( KScrollTime, "_S60-scroll-time" );
- _LIT8( KS60VisibleFocus, "_s60-visible-focus" );
- _LIT8( KTracsterItems, "tracksteritems" );
- _LIT8( KItemCount, "_s60-item-count" );
- _LIT8( KVisibleFocus, "_s60-visible-focus" );
- _LIT8( KItemPoints, "_s60-item-points" );
- _LIT8( KTracksterType, "trackstertype" );
- _LIT8( KTypeContainer, "container" );
- _LIT8( KTypePreview, "preview" );
- }*/
-/* namespace anim
- {
- _LIT8(KS60ZoomingFactor, "_s60-zooming-factor");
- _LIT8(KS60ZoomingTime, "_s60-zooming-time");
- _LIT8(KS60StartDelay, "_s60-start-delay");
- _LIT8(KS60AnimationDelay, "_s60-animation-delay");
- _LIT8(KS60LoopAmount, "_s60-loop-amount");
- _LIT8(KS60SmoothEnding, "_s60-smooth-ending");
- _LIT8(KS60HighlightAnimation, "_s60-highlight-animation");
- _LIT8(KS60FocusAnimationTime, "_s60-focus-animation-time");
- _LIT8(KS60HWAcceleration, "_s60-hw-acceleration");
- }*/
namespace menu
{
namespace menutype
{
-// _LIT8(KMenuOptions, "menuoptions");
_LIT8(KMenuOptionsNoTaskSwapper, "menuoptionsnotaskswapper");
}
_LIT8(KMenuItem, "menuitem" );
@@ -222,11 +128,8 @@
_LIT8(KMenuType, "menutype");
_LIT8(KEvent, "event");
_LIT8(KLabel, "label");
-// _LIT8(KSelectionType, "selectiontype");
_LIT8(KChecked, "checked");
-// _LIT8(KMSKDotImage8,"#mskdot");
_LIT(KMSKDotImage16,"#mskdot");
-// _LIT(KMSKDialerImage, "#dialer");
_LIT8(KItemType, "type");
}
namespace listquerydialog
@@ -252,10 +155,6 @@
_LIT8(KModeEdit, "mode_edit");
}
}
- namespace text
- {
-// _LIT8(KLabel, "label");
- }
namespace image
{
_LIT8(KPath, "path");
@@ -271,7 +170,6 @@
{
_LIT8(KDigital, "digital");
_LIT8(KAnalog, "analog");
-// _LIT8(KLocale, "locale");
}
_LIT8(KS60AmPmFontSize, "_s60-ampm-font-size" );
@@ -300,7 +198,6 @@
namespace trigger
{
_LIT8(KName, "name");
- _LIT8(KDelay, "delay");
namespace name
{
_LIT8(KLeft, "left");
@@ -310,7 +207,6 @@
_LIT8(KDownAndUp, "downup");
_LIT8(KActivate, "activate");
_LIT8(KHold, "hold");
-// _LIT8(KHover, "hover");
_LIT8(KFocus, "focus");
_LIT8(KPassiveFocus, "passivefocus");
_LIT8(KGainFocus, "gainfocus");
@@ -318,28 +214,19 @@
_LIT8(KKeyEvent, "keyevent");
_LIT8(KViewActivate, "viewactivate");
_LIT8(KViewDeactivate, "viewdeactivate");
-// _LIT8(KStartup, "startup");
-// _LIT8(KShutdown, "shutdown");
_LIT8(KScreenDeviceChange, "screendevicechange");
-// _LIT8(KUiDefinitionModificationStart, "uidefinitionmodificationstart");
-// _LIT8(KUiDefinitionModificationEnd, "uidefinitionmodificationend");
- _LIT8(KForeground, "foreground");
- _LIT8(KBackground, "background");
_LIT8(KStylus, "stylus");
_LIT8(KGainVisualisation, "gainvisualisation");
_LIT8(KLoseVisualisation, "losevisualisation");
- /*_LIT8(KGainFocusNotification, "gainfocusnotification");*/
_LIT8(KSwipe, "swipe");
_LIT8(KSizeChanged, "sizechanged");
_LIT8(KWidgetAmount, "widgetamount");
_LIT8(KTitleToScroll, "titletoscroll");
_LIT8(KTitleScrolled, "titlescrolled");
_LIT8(KTitleIndex, "titleindex");
- /*_LIT8(KViewPagesCountChanged, "viewpagescountchanged");*/
_LIT8(KCallState, "callstate");
- /*_LIT8(KViewAdditionCompleted, "viewadded" );*/
_LIT8(KEditMode, "editmode" );
-
+
namespace swipe
{
_LIT8(KDirection, "direction");
@@ -349,11 +236,6 @@
_LIT8(KRight, "right");
}
}
- namespace stylus
- {
- _LIT8(KStylusState, "stylusstate");
- _LIT8(KStylusEventType, "eventtype");
- }
namespace keyevent
{
_LIT8(KKeyCode, "keycode");
@@ -362,17 +244,13 @@
_LIT8(KEventType, "eventtype");
_LIT8(KRepeats, "repeats");
}
- namespace uidefinitionmodification
+ namespace orientation
{
_LIT8(KReason, "reason");
namespace reason
{
-// _LIT8(KThemeActivated, "themeactivated");
-// _LIT8(KDisplaySwitch, "displayswitch");
_LIT8(KLandscape, "landscape");
_LIT8(KPortrait, "portrait");
-// _LIT8(KResolutionChange, "resolutionchange");
-// _LIT8(KLanguageSwitch, "languageswitch");
}
}
namespace callstate
@@ -385,29 +263,6 @@
_LIT8(KEnter, "enter");
_LIT8(KExit, "exit");
}
- /*namespace viewpagescountchanged
- {
- _LIT8( KInfo, "info" );
- namespace info
- {
- _LIT8( KInfoMax, "max" );
- _LIT8( KInfoMin, "min" );
- _LIT8( KInfoMid, "mid" );
- _LIT8( KInfoMinMax, "minmax" );
- }
- }*/
- /*namespace viewadditioncompleted
- {
- _LIT8( KAddedViewActivated, "activated" );
- }*/
-/* namespace uisettingsmodification
- {
- _LIT8(KReason, "reason");
- namespace reason
- {
- _LIT8(KSettingsUpdated, "settingsupdated");
- }
- }*/
}
}
namespace event
@@ -422,9 +277,7 @@
_LIT8(KSetEditMode, "system/seteditmode");
_LIT8(KResetEditMode, "system/reseteditmode");
_LIT8(KClearPassiveFocuses, "system/clearpassivefocuses");
- _LIT8(KResetStylusCounter, "system/resetstyluscounter");
_LIT8(KRunAddWidgetQuery, "system/runaddwidgetquery");
-// _LIT8(KRunRemoveWidgetQuery, "system/runremovewidgetquery");
_LIT8(KRemoveFocusedWidget, "system/removefocusedwidget");
_LIT8(KRemoveWidget, "system/removewidget");
_LIT8(KAddWidget, "system/addwidget");
@@ -433,25 +286,13 @@
_LIT8(KActivatePreviousView, "system/activatepreviousview");
_LIT8(KAddView,"system/addview");
_LIT8(KRemoveView,"system/removeview");
- /*_LIT8(KFocusNext, "system/focusnext");
- _LIT8(KFocusPrevious, "system/focusprevious");*/
_LIT8(KActivate, "system/activate");
_LIT8(KDeactivate, "system/deactivate");
- _LIT8(KExit, "system/exitapplication");
_LIT8(KSet, "system/set");
- /*_LIT8(KUiDefinitionModificationStart, "system/uidefinitionmodificationstart");
- _LIT8(KUiDefinitionModificationEnd, "system/uidefinitionmodificationend");
- _LIT8(KUiSettingsModificationStart, "system/uisettingsmodificationstart");
- _LIT8(KUiSettingsModificationEnd, "system/uisettingsmodificationend"); */
- _LIT8(KRestartTriggerTimer, "system/restarttriggertimer" );
- _LIT8(KCancelTriggerTimer, "system/canceltriggertimer" );
- /*_LIT8(KNotifyFocus, "system/notifyfocus" ); */
_LIT8(KTryDisplayingMenu, "system/trydisplayingmenu");
_LIT8(KTryDisplayingListQueryDialog, "system/trydisplayinglistquerydialog");
_LIT8(KTryDisplayingStylusPopup, "system/trydisplayingstyluspopup");
_LIT8(KToggleWidgetsVisibilty, "system/togglewidgetsvisibilty");
- /*_LIT8(KStoreFocus, "system/storefocus");
- _LIT8(KRestoreFocus, "system/restorefocus");*/
_LIT8(KSetWallpaper, "system/setwallpaper");
_LIT8(KActivateTextEditor, "system/activatetexteditor");
_LIT8(KDeactivateTextEditor, "system/deactivatetexteditor");
@@ -502,11 +343,6 @@
_LIT8(KBlock, "block");
_LIT8(KNone, "none");
}
-/* namespace focus
- {
- _LIT8(KSensitive, "sensitive");
- _LIT8(KNone, "none");
- }*/
_LIT8(KS60DisplayPriority, "_s60-display-priority");
_LIT8(KVisibility, "visibility");
namespace visibility
@@ -515,12 +351,6 @@
_LIT8(KHidden, "hidden");
_LIT8(KBlank, "blank");
}
-// _LIT8(KS60Orientation, "_s60-orientation");
-/* namespace s60_orientation
- {
- _LIT8(KVertical, "vertical");
- _LIT8(KHorizontal, "horizontal");
- }*/
_LIT8(KBlockProgression, "block-progression");
namespace block_progression
{
@@ -546,7 +376,7 @@
{
_LIT8(KThin, "thin");
_LIT8(KMedium, "medium");
-// _LIT8(KThick, "thick");
+ _LIT8(KThick, "thick");
}
_LIT8(KBorderTopWidth, "border-top-width");
_LIT8(KBorderRightWidth, "border-right-width");
@@ -561,10 +391,8 @@
{
_LIT8(KAbsolute, "absolute");
_LIT8(KStatic, "static");
-// _LIT8(KFixed, "fixed");
_LIT8(KRelative, "relative");
_LIT8(KFloating, "floating");
-// _LIT8(KInherit, "inherit");
}
_LIT8(KTop, "top");
_LIT8(KRight, "right");
@@ -575,11 +403,14 @@
_LIT8(KMinHeight, "min-height");
_LIT8(KMaxHeight, "max-height");
_LIT8(KOverflow, "overflow");
-// _LIT8(KTextOverflowMode, "text-overflow-mode");
_LIT8(KZIndex, "z-index");
_LIT8(KAuto, "auto");
_LIT8(KAdaptive, "adaptive");
_LIT8(KAppearance, "appearance");
+ namespace s60_focus_looping
+ {
+ _LIT8(KStop, "stop");
+ }
}
}//style
namespace appearance
@@ -589,9 +420,8 @@
//Color and background properties
_LIT8(KColor, "color");
_LIT8(KEffectsColor, "font-effects-color");
-// _LIT8(KHighlightColor, "highlight-color");
_LIT8(KBackGroundColor, "background-color");
- _LIT8(KFocusBackground, "focus-background");
+ _LIT8(KFocusBackground, "focus-background");
_LIT8(KBackGroundImage, "background-image");
_LIT8(KBackGroundSize, "background-size");
_LIT8(KBackGroundRepeat, "background-repeat");
@@ -611,7 +441,6 @@
_LIT8(KRight, "right");
_LIT8(KTop, "top");
_LIT8(KBottom, "bottom");
-// _LIT8(KCenter, "center");
}
// Border properties
_LIT8(KBorderStyle, "border-style");
@@ -621,15 +450,8 @@
_LIT8(KBorderLeftStyle, "border-left-style");
namespace borderstyle
{
-// _LIT8(KNone, "none");
-// _LIT8(KHidden, "hidden");
_LIT8(KDotted, "dotted");
-// _LIT8(KDashed, "dashed");
_LIT8(KSolid, "solid");
-// _LIT8(KDouble, "double");
-// _LIT8(KDotDash, "dot-dash");
-// _LIT8(KDotDotDash, "dot-dot-dash");
-// _LIT8(KWave, "wave");
_LIT8(KGroove, "groove");
_LIT8(KRidge, "ridge");
_LIT8(KInset, "inset");
@@ -679,7 +501,7 @@
namespace textvalign
{
_LIT8( KAlignTop, "top");
-// _LIT8( KAlignCenter, "center");
+ _LIT8( KAlignCenter, "center");
_LIT8( KAlignBottom, "bottom");
}
_LIT8(KTextEffects, "font-effects");
@@ -696,14 +518,12 @@
namespace textoverflow
{
_LIT8(KClipMode, "clip");
-// _LIT8(KEllipsisMode, "ellipsis");
_LIT8(KWrapMode,"wrap");
_LIT8(KMaxLineAmount,"max-line-amount");
}
_LIT8(KWhiteSpaceCollapse, "white-space-collapse");
namespace whitespace
{
-// _LIT8(KPreserve, "preserve");
_LIT8(KCollapse, "collapse");
_LIT8(KPreserveBreaks, "preserve-breaks");
_LIT8(KDiscard, "discard");
--- a/idlehomescreen/inc/xnviewmanager.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/inc/xnviewmanager.h Fri Mar 12 15:41:49 2010 +0200
@@ -21,6 +21,9 @@
// System includes
#include <e32base.h>
+// User includes
+#include "xnpropertysubscriber.h"
+
// Forward declarations
class CXnUiEngine;
class CXnComposer;
@@ -82,7 +85,8 @@
* @lib xn3layoutengine.lib
* @since S60 5.0
*/
-NONSHARABLE_CLASS( CXnViewManager ) : public CBase
+NONSHARABLE_CLASS( CXnViewManager ) : public CBase,
+ public MXnPropertyChangeObserver
{
public:
/**
@@ -115,6 +119,14 @@
*/
void ConstructL();
+private:
+ // from MXnPropertyChangeObserver
+
+ /**
+ * @see MXnPropertyChangeObserver
+ */
+ void PropertyChangedL( const TUint32 aKey, const TInt aValue );
+
public:
// New functions
@@ -145,6 +157,9 @@
void PluginDataL( RPointerArray< CXnPluginData >& aList,
TBool aGlobal = EFalse ) const;
+ TInt PluginDataL( const TDesC8& aParentId,
+ RPointerArray< CXnPluginData >& aList ) const;
+
RPointerArray< CXnNode >& AppearanceNodes() const;
CArrayPtrSeg< CXnResource >& Resources() const ;
@@ -154,22 +169,21 @@
void ReloadUiL();
TInt LoadWidgetToPluginL(
- CHsContentInfo& aContentInfo,
+ const CHsContentInfo& aContentInfo,
CXnPluginData& aPluginData );
TInt UnloadWidgetFromPluginL(
CXnPluginData& aPluginData, TBool aForce = EFalse );
TInt ReplaceWidgetToPluginL(
- CHsContentInfo& aContentInfo,
- CXnPluginData& aPluginData,
- TBool aUseHsps = ETrue );
+ const CHsContentInfo& aContentInfo,
+ CXnPluginData& aPluginData );
void ActivateNextViewL( TInt aEffectId = 0 );
void ActivatePreviousViewL( TInt aEffectId = 0 );
- TInt AddViewL( CHsContentInfo& aInfo );
+ TInt AddViewL( const CHsContentInfo& aInfo );
void AddViewL( TInt aEffectId = 0 );
@@ -283,6 +297,12 @@
CXnUiEngine* iUiEngine;
/**
+ * UI startup phase observer
+ * Own.
+ */
+ CXnPropertySubscriber* iUiStartupPhase;
+
+ /**
* Comopser.
* Own.
*/
@@ -332,19 +352,21 @@
RPointerArray< MXnViewObserver > iObservers;
/**
- * OOM system handler. Owned.
+ * OOM system handler.
+ * Own.
*/
CXnOomSysHandler* iOomSysHandler;
+ /**
+ * Timer for system stability.
+ * Own.
+ */
+ CPeriodic* iStabilityTimer;
+
private:
// Friend classes
- friend class CXnViewAdapter;
-
- /**
- * Timer for system stability.
- */
- CPeriodic* iStabilityTimer;
+ friend class CXnViewAdapter;
};
// Inline functions
--- a/idlehomescreen/nativeuicontroller/group/ainatiui.mmp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/nativeuicontroller/group/ainatiui.mmp Fri Mar 12 15:41:49 2010 +0200
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2006 - 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"
@@ -94,3 +94,4 @@
#ifdef RD_TACTILE_FEEDBACK
LIBRARY touchfeedback.lib
#endif
+LIBRARY phonesettings.lib
--- a/idlehomescreen/nativeuicontroller/inc/aidialogrenderer.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/nativeuicontroller/inc/aidialogrenderer.h Fri Mar 12 15:41:49 2010 +0200
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2005-2007 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2005-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"
@@ -19,8 +19,11 @@
#ifndef C_AIDIALOGRENDERER_H
#define C_AIDIALOGRENDERER_H
-// System incldues
+// System includes
#include <e32base.h>
+#include "ainativerenderer.h"
+#include <MPsetNetworkInfoObs.h> // for MPsetNetworkInfoObserver
+#include <MPsetNetworkSelect.h> // for MPsetNetworkSelect
// User includes
#include "ainativerenderer.h"
@@ -28,6 +31,10 @@
// Forward declarations
class CAknNoteDialog;
class CHsContentPublisher;
+class CPsetNetwork;
+class CAknWaitDialog;
+class CPsetContainer;
+class CAknPopupList;
namespace AiNativeUiController
{
@@ -39,7 +46,7 @@
*
* @since S60 3.2
*/
-NONSHARABLE_CLASS( CAiDialogRenderer ) : public CAiNativeRenderer
+NONSHARABLE_CLASS( CAiDialogRenderer ) : public CAiNativeRenderer, public MPsetNetworkInfoObserver
{
public:
@@ -54,6 +61,59 @@
void DoCleanL( CHsContentPublisher& aPlugin, TInt aContent );
void FocusObtainedL();
+
+ // from base class MPsetNetworkInfoObserver
+
+ /**
+ * @@see MPsetNetworkInfoObserver::HandleNetworkInfoReceivedL
+ */
+ void HandleNetworkInfoReceivedL(
+ const CNetworkInfoArray* aInfoArray, const TInt aResult );
+
+ /**
+ * @@see MPsetNetworkInfoObserver::HandleSearchingNetworksL
+ */
+ void HandleSearchingNetworksL( TServiceRequest aRequest );
+
+ /**
+ * @@see MPsetNetworkInfoObserver::HandleRequestingSelectedNetworkL
+ */
+ void HandleRequestingSelectedNetworkL( TBool aOngoing );
+
+ /**
+ * @@see MPsetNetworkInfoObserver::HandleNetworkChangedL - not used
+ */
+ void HandleNetworkChangedL(
+ const MPsetNetworkSelect::TNetworkInfo& aCurrentInfo,
+ const RMobilePhone::TMobilePhoneRegistrationStatus& aStatus,
+ const TInt aResult );
+
+ /**
+ * @@see MPsetNetworkInfoObserver::HandleNetworkErrorL
+ */
+ void HandleNetworkErrorL( const TServiceRequest aRequest,
+ const TInt aError );
+
+ /**
+ * @@see MPsetNetworkInfoObserver::HandleCurrentNetworkInfoL - not used
+ */
+ void HandleCurrentNetworkInfoL(
+ const MPsetNetworkSelect::TCurrentNetworkInfo& /* aCurrentInfo */,
+ const TInt /* aResult */ ) {};
+
+ /**
+ * @@see MPsetNetworkInfoObserver::HandleNetworkChangedL - not used
+ */
+ void HandleNetworkChangedL(
+ const MPsetNetworkSelect::TNetworkInfo& /* aCurrentInfo */,
+ const MPsetNetworkSelect::TCurrentNetworkStatus /* aStatus */,
+ const TInt /* aResult */ ) {};
+
+ /**
+ * @@see MPsetNetworkInfoObserver::HandleCallActivatedL
+ */
+ void HandleCallActivatedL() {};
+
private:
@@ -66,6 +126,40 @@
*/
void ShowDialogL();
+ void ConstructL();
+
+ void PopulatePLMNListL();
+
+ /**
+ * Provides the network operator list.
+ */
+ void NetworkListL();
+
+ /**
+ * Sets title to a popup list.
+ * @param aList pointer to list
+ * @param aTitleID resource ID of the title
+ */
+ void SetTitleToPopupL( CAknPopupList& aList, TInt aTitleID );
+
+ /**
+ * Creates a waiting note (member variable).
+ * @param aDelayOff is the note shown immediately or not
+ */
+ void CheckAndCreateDlgL( TBool aDelayOff );
+
+ /*
+ * Empties fetched network provider's list.
+ */
+ void PurgeNetworkList();
+
+ /**
+ * Shows a requested note.
+ * @param aResourceId reource ID for note text
+ * @param aType type of note
+ */
+ void ShowNoteL( TInt aResourceId, TInt aType );
+
private: // data
@@ -92,6 +186,25 @@
TInt iDialogId;
#endif
+
+ //PhoneSettings engine object
+ CPsetNetwork* iNetwork;
+ //PhoneSettings container
+ CPsetContainer* iSettingsContainer;
+ //Requesting note
+ CAknWaitDialog* iDlg;
+ //Array of networks
+ CNetworkInfoArray* iNetworkArray;
+ //Network selection list
+ CAknPopupList* iNetworkPopupList;
+ //Has the user selected a valid network
+ TBool iApprovedNetwork;
+ TBool iSearchForNetworksActive;
+ TBool iPLMNListPopulateShowIsHandling;
+
+ // Resource index
+ TInt iRscIndex;
+
};
} // namespace AiNativeUiController
--- a/idlehomescreen/nativeuicontroller/inc/aistatuspanel.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/nativeuicontroller/inc/aistatuspanel.h Fri Mar 12 15:41:49 2010 +0200
@@ -201,10 +201,14 @@
TInt iMaskHandle;
/**
- *
+ * Navidecorator observer
*/
MAknNaviDecoratorObserver* iNaviDecoratorObserver;
+ /**
+ * Flag to indicate wheter text is published to title pane
+ */
+ TBool iTextInTitlePane;
};
} // namespace AiNativeUiController
--- a/idlehomescreen/nativeuicontroller/src/aidialogrenderer.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/nativeuicontroller/src/aidialogrenderer.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2005-2007 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2005-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"
@@ -32,6 +32,54 @@
#include "aisecondarydisplayapi.h"
#endif
+
+// AVKON headers
+#include <AknNoteWrappers.h> // for Note Wrappers
+#include <AknPopup.h> // for Popup menus
+#include <AknWaitDialog.h> // for CAknWaitDialog
+#include <StringLoader.h> // for StringLoader
+#include <eiktxlbm.h> // for CTextListBoxModel
+#include <AknLists.h> // for AknPopupListEmpty
+#include <bautils.h> // for BaflUtils
+
+// Phonesettings headers
+#include <PsetContainer.h> // for CPsetContainer
+#include <PsetNetwork.h> // for CPsetNetwork
+#include <PsetSAObserver.h> // for CPsetSAObserver
+#include <gsmerror.h> // for GSM-specific error messages
+
+#include <GsNetworkPluginRsc.rsg> // for resource IDs
+#include <CoreApplicationUIsSDKCRKeys.h> // for KCRUidCoreApplicationUIs, TCoreAppUIsNetworkConnectionAllowed
+#include <featmgr.h>
+
+const TInt KAIAlphaTagIconAdditionalChars = 5;
+// Length of long network name.
+const TInt KAIAlphaTagLongNameLength = 20;
+// Length of short network name.
+const TInt KAIAlphaTagShortNameLength = 10;
+
+// array granularity
+const TInt KAINetworkInfoArrayGranularity = 10;
+
+// Error note type ID - for Net view internal usage only
+const TInt KAIPPErrorNote = 5001;
+// Confirmation note type ID - for Net view internal usage only
+const TInt KAIPPConfirmationNote = 5002;
+//Information note type ID - for Net view internal usage only
+const TInt KAIPPInformationNote = 5003;
+
+const TInt KAIPLMNListPopupMenuItems = 3;
+
+// Some resources defined for GSNetworkPlugin are used
+_LIT(KGSNetworkPluginResource, "z:\\resource\\GsNetworkPluginRsc.rsc");
+
+enum TGSSoftKeys
+ {
+ EGSSoftkeyQuit = 1,
+ EGSSoftkeyEmpty
+ };
+
+
using namespace AiNativeUiController;
// ======== MEMBER FUNCTIONS ========
@@ -44,6 +92,7 @@
{
CAiDialogRenderer* self = new( ELeave ) CAiDialogRenderer;
CleanupStack::PushL( self );
+ self->ConstructL();
return self;
}
@@ -54,6 +103,45 @@
//
CAiDialogRenderer::~CAiDialogRenderer()
{
+ if ( FeatureManager::FeatureSupported( KFeatureIdFfManualSelectionPopulatedPlmnList ) )
+ {
+ if( iRscIndex )
+ {
+ CEikonEnv::Static()->DeleteResourceFile( iRscIndex );
+ }
+ if ( iNetwork )
+ {
+ if ( iSearchForNetworksActive )
+ {
+ // Reset back to previously used network
+ iNetwork->ResetNetworkSearch();
+ }
+ delete iNetwork;
+ }
+
+ if ( iNetworkArray )
+ {
+ iNetworkArray->Reset();
+ }
+ delete iNetworkArray;
+
+ if ( iDlg )
+ {
+ delete iDlg;
+ }
+ if ( iNetworkPopupList )
+ {
+ iNetworkPopupList->CancelPopup();
+ }
+
+ if ( iSettingsContainer )
+ {
+ delete iSettingsContainer;
+ }
+ }
+
+ FeatureManager::UnInitializeLib();
+
delete iDialog;
delete iText;
}
@@ -66,14 +154,36 @@
CAiDialogRenderer::CAiDialogRenderer()
{
}
-
-// ----------------------------------------------------------------------------
-// CAiDialogRenderer::DoPublishL()
-//
-// ----------------------------------------------------------------------------
-//
-void CAiDialogRenderer::DoPublishL( CHsContentPublisher& aPlugin,
- TInt aContent, TInt aResource, TInt /*aIndex*/ )
+
+void CAiDialogRenderer::ConstructL()
+ {
+ FeatureManager::InitializeLibL();
+
+ if ( FeatureManager::FeatureSupported( KFeatureIdFfManualSelectionPopulatedPlmnList ) )
+ {
+ iSettingsContainer = CPsetContainer::NewL();
+ iNetwork = iSettingsContainer->CreateNetworkObjectL( *this );
+
+ iApprovedNetwork = EFalse;
+ CheckAndCreateDlgL( EFalse );
+ iSearchForNetworksActive = EFalse;
+ iPLMNListPopulateShowIsHandling = EFalse;
+
+ // Open the resource file. Assume that the resource is stored on the same
+ // drive the DLL is installed on.
+ TFileName file;
+ Dll::FileName( file );
+ TParse parse;
+ parse.Set( KGSNetworkPluginResource, &file, NULL );
+ file = parse.FullName();
+ CEikonEnv* eikonEnv = CEikonEnv::Static();
+ BaflUtils::NearestLanguageFile( eikonEnv->FsSession(), file );
+ iRscIndex = eikonEnv->AddResourceFileL( file );
+ }
+ }
+
+void CAiDialogRenderer::DoPublishL( CHsContentPublisher& aPlugin,
+ TInt aContent, TInt aResource, TInt /*aIndex*/ )
{
const THsPublisherInfo& info( aPlugin.PublisherInfo() );
@@ -108,21 +218,42 @@
}
if ( idleState == EPSAiForeground )
{
- ShowDialogL();
+ ShowDialogL();
}
-
break;
}
+
+ case EAiDeviceStatusContentNetRegStatus:
+ {
+ MPsetNetworkSelect::TSelectMode mode =
+ MPsetNetworkSelect::ENetSelectModeAutomatic;
+
+ if ( iNetwork )
+ {
+ iNetwork->GetNetworkSelectMode( mode );
+ }
+
+ if ( mode == MPsetNetworkSelect::ENetSelectModeManual )
+ {
+ if ( aResource == EAiDeviceStatusResourceNetRegFail )
+ {
+ PopulatePLMNListL();
+ }
+ }
+ break;
+ }
+
+
default:
{
User::Leave( KErrNotFound );
break;
}
- }
+ };
}
else
{
- User::Leave( KErrNotFound );
+ User::Leave( KErrNotFound );
}
}
@@ -193,4 +324,419 @@
}
}
+void CAiDialogRenderer::PopulatePLMNListL()
+ {
+ // Ignore any subsequent EAiDeviceStatusResourcePLMNListPopulateShow content while one is handling
+ if ( iPLMNListPopulateShowIsHandling )
+ {
+ return;
+ }
+
+ iPLMNListPopulateShowIsHandling = ETrue;
+ iSearchForNetworksActive = ETrue;
+ iNetwork->GetAvailableNetworksL();
+ }
+
+// ---------------------------------------------------------------------------
+//
+// While request to find networks is processed
+//
+// ---------------------------------------------------------------------------
+void CAiDialogRenderer::HandleSearchingNetworksL(
+ MPsetNetworkInfoObserver::TServiceRequest aRequest )
+ {
+ // Create a network info array if doesn't exist
+ if ( !iNetworkArray )
+ {
+ iNetworkArray = new ( ELeave )
+ CNetworkInfoArray( KAINetworkInfoArrayGranularity );
+ }
+
+ if ( aRequest != MPsetNetworkInfoObserver::EServiceRequestNone )
+ {
+ CheckAndCreateDlgL( EFalse );
+ iSearchForNetworksActive = ETrue;
+ TInt res = iDlg->ExecuteLD( R_SEARCHING_NOTE );
+ if ( res == EGSSoftkeyQuit )
+ {
+ iNetwork->CancelProcess();
+ iPLMNListPopulateShowIsHandling = EFalse;
+ }
+ }
+ else // If EServiceRequestNone received, hide the "Searching..." note
+ {
+ delete iDlg;
+ iDlg = NULL;
+ }
+ }
+
+// ---------------------------------------------------------------------------
+//
+// Handles network info
+//
+// ---------------------------------------------------------------------------
+void CAiDialogRenderer::HandleNetworkInfoReceivedL(
+ const CNetworkInfoArray* aInfoArray, const TInt /* aResult */ )
+ {
+ const TInt itemsCount = aInfoArray->Count();
+
+ // First delete old ones
+ iNetworkArray->Delete( 0, iNetworkArray->Count() );
+
+ // Then insert found networks
+ for ( TInt i = 0; i < itemsCount; i++ )
+ {
+ MPsetNetworkSelect::TNetworkInfo info = aInfoArray->At( i );
+ iNetworkArray->InsertL( i, info );
+ }
+
+ NetworkListL(); // After search complete, show results
+ }
+
+// ---------------------------------------------------------------------------
+//
+// While request to change network is processed, a note is shown
+//
+// ---------------------------------------------------------------------------
+void CAiDialogRenderer::HandleRequestingSelectedNetworkL( TBool aOngoing )
+ {
+ if ( aOngoing )
+ {
+ CheckAndCreateDlgL( ETrue );
+
+ if ( iDlg->ExecuteLD( R_REQUESTING_NOTE ) == EGSSoftkeyQuit )
+ {
+ iNetwork->CancelProcess();
+
+ CAknNoteDialog* dlg = new ( ELeave ) CAknNoteDialog(
+ CAknNoteDialog::EConfirmationTone,
+ CAknNoteDialog::EShortTimeout );
+ dlg->ExecuteLD( R_REGISTRATION_INTERRUPTED );
+ iApprovedNetwork = EFalse;
+ iPLMNListPopulateShowIsHandling = EFalse;
+ }
+ }
+ else
+ {
+ delete iDlg;
+ iDlg = NULL;
+ }
+ }
+
+// ---------------------------------------------------------------------------
+//
+// Handle network change
+//
+// ---------------------------------------------------------------------------
+void CAiDialogRenderer::HandleNetworkChangedL(
+ const MPsetNetworkSelect::TNetworkInfo& aCurrentInfo,
+ const RMobilePhone::TMobilePhoneRegistrationStatus& aStatus,
+ const TInt aResult )
+ {
+ switch ( aStatus )
+ {
+ case RMobilePhone::ERegisteredOnHomeNetwork:
+ {
+ ShowNoteL( R_HOME_NETWORK_SELECTED, KAIPPConfirmationNote );
+ PurgeNetworkList();
+ break;
+ }
+ case RMobilePhone::ERegisteredRoaming:
+ {
+ HBufC* stringholder = NULL;
+ if ( aCurrentInfo.iLongName.Length() > 0 &&
+ aCurrentInfo.iLongName.Length() <=
+ MPsetNetworkSelect::ENetLongNameSize )
+ {
+ stringholder = StringLoader::LoadLC( R_NETSL_NETWORKSELECTED,
+ aCurrentInfo.iLongName );
+ }
+ else if (aCurrentInfo.iShortName.Length() > 0 &&
+ aCurrentInfo.iShortName.Length() <=
+ MPsetNetworkSelect::ENetShortNameSize )
+ {
+ stringholder = StringLoader::LoadLC( R_NETSL_NETWORKSELECTED,
+ aCurrentInfo.iShortName );
+ }
+
+ CAknConfirmationNote* note = new ( ELeave ) CAknConfirmationNote( ETrue );
+ if ( stringholder )
+ {
+ note->ExecuteLD( *stringholder );
+ CleanupStack::PopAndDestroy( stringholder );
+ }
+
+ //After list has been used, clear it.
+ PurgeNetworkList();
+ break;
+ }
+ case RMobilePhone::ERegistrationUnknown:
+ case RMobilePhone::ENotRegisteredNoService:
+ case RMobilePhone::ENotRegisteredEmergencyOnly:
+ case RMobilePhone::ENotRegisteredSearching:
+ case RMobilePhone::ERegisteredBusy:
+ case RMobilePhone::ERegistrationDenied:
+ default:
+ break;
+ }
+
+ iPLMNListPopulateShowIsHandling = EFalse;
+ iSearchForNetworksActive = EFalse;
+ }
+
+// ---------------------------------------------------------------------------
+//
+// Handles errors.
+//
+// ---------------------------------------------------------------------------
+void CAiDialogRenderer::HandleNetworkErrorL(
+ const MPsetNetworkInfoObserver::TServiceRequest aRequest,
+ const TInt aError )
+ {
+ TInt resourceTxt = KErrNone;
+
+ switch ( aRequest )
+ {
+ case MPsetNetworkInfoObserver::EServiceRequestGetNetworkInfo:
+ {
+ iNetwork->CancelProcess();
+ iApprovedNetwork = EFalse;
+ break;
+ }
+ case MPsetNetworkInfoObserver::EServiceRequestSetNetwork:
+ {
+ }
+ default:
+ {
+ break;
+ }
+ }
+
+ TBool ignore = EFalse;
+
+ switch ( aError )
+ {
+ case KErrGsmNetCauseCallActive:
+ {
+ ignore = ETrue; // Do not show an error
+ break;
+ }
+ case KErrGsm0707NoNetworkService:
+ {
+ resourceTxt = R_NO_NETWORK_FOUND;
+ break;
+ }
+ case KErrGsmOfflineOpNotAllowed:
+ {
+ resourceTxt = R_OFFLINE_MODE;
+ break;
+ }
+ default:
+ {
+ resourceTxt = R_NO_NETWORK_ACCESS;
+ break;
+ }
+ }
+
+ if ( !ignore )
+ {
+ ShowNoteL( resourceTxt, KAIPPErrorNote );
+ iApprovedNetwork = EFalse;
+ }
+ }
+
+// ---------------------------------------------------------------------------
+//
+// Creates list of Network providers
+//
+// ---------------------------------------------------------------------------
+void CAiDialogRenderer::NetworkListL()
+ {
+ //if no net items were found, do not show list
+ if ( iNetworkArray->Count() > 0 )
+ {
+ while ( !iApprovedNetwork )
+ {
+ AknPopupListEmpty<CEikFormattedCellListBox>* list;
+ list = new ( ELeave ) CAknSinglePopupMenuStyleListBox;
+ CleanupStack::PushL( list );
+
+ if ( iNetworkPopupList )
+ {
+ iNetworkPopupList->CancelPopup();
+ iNetworkPopupList = NULL;
+ } //
+
+ iNetworkPopupList =
+ CAknPopupList::NewL( list, R_AVKON_SOFTKEYS_OK_CANCEL );
+
+ list->ConstructL( iNetworkPopupList,
+ CEikListBox::ELeftDownInViewRect );
+ list->CreateScrollBarFrameL( ETrue );
+ list->ScrollBarFrame()->SetScrollBarVisibilityL(
+ CEikScrollBarFrame::EOff, CEikScrollBarFrame::EAuto );
+
+ // Fill in the list texts
+ CDesCArrayFlat* items =
+ new ( ELeave ) CDesCArrayFlat( KAIPLMNListPopupMenuItems );
+ CleanupStack::PushL( items );
+
+ const TInt itemsCount = iNetworkArray->Count();
+
+ for ( TInt loop = 0; loop < itemsCount; loop++ )
+ {
+ HBufC* insertString =
+ HBufC::NewLC(
+ KAIAlphaTagLongNameLength + KAIAlphaTagIconAdditionalChars );
+ MPsetNetworkSelect::TNetworkInfo info =
+ iNetworkArray->At( loop );
+
+ if ( info.iLongName.Length() <= 0 ||
+ info.iLongName.Length() > KAIAlphaTagLongNameLength )
+ {
+ // Short name received
+ if ( info.iShortName.Length() > 0 &&
+ info.iShortName.Length() <= KAIAlphaTagShortNameLength )
+ {
+ insertString->Des().Append( info.iShortName );
+ } //
+ } //
+ // Long name received
+ else
+ {
+ insertString->Des().Append( info.iLongName );
+ } //
+
+ items->AppendL( *insertString );
+ CleanupStack::PopAndDestroy();
+ }
+
+ CTextListBoxModel* model = list->Model();
+ model->SetItemTextArray( items );
+ model->SetOwnershipType( ELbmOwnsItemArray );
+ CleanupStack::Pop( items ); // Listbox model now owns this
+
+ // Set title for list
+ SetTitleToPopupL( *iNetworkPopupList, R_NETSL_FOUNDOPERATORS );
+
+ TInt res = 0;
+ // Show the PLMN list
+ if ( items->Count() )
+ {
+ res = iNetworkPopupList->ExecuteLD();
+ } //
+
+ iNetworkPopupList = NULL;
+ iApprovedNetwork = ETrue; // User might want to quit
+ TInt selection = list->CurrentItemIndex();
+
+ CleanupStack::PopAndDestroy( list );
+
+ if ( res )
+ {
+ MPsetNetworkSelect::TNetworkInfo info =
+ iNetworkArray->At( selection );
+ info.iMode = MPsetNetworkSelect::ENetSelectModeManual;
+ iNetwork->SelectNetworkL( info );
+ } //
+ else // User selected "Cancel"
+ {
+ // Reset back to previously used network
+ iNetwork->ResetNetworkSearch();
+ iSearchForNetworksActive = EFalse;
+ // After list has been used, clear it
+ PurgeNetworkList();
+ iPLMNListPopulateShowIsHandling = EFalse;
+ } //
+ }
+ }
+
+ iApprovedNetwork = EFalse; // Initialize before new search
+ }
+
+// ---------------------------------------------------------------------------
+//
+// Creates dialog, if it is does not exist yet.
+//
+// ---------------------------------------------------------------------------
+//
+void CAiDialogRenderer::CheckAndCreateDlgL( TBool aDelayOff )
+ {
+ if ( !iDlg )
+ {
+ iDlg = new ( ELeave ) CAknWaitDialog(
+ reinterpret_cast<CEikDialog**> ( &iDlg ), aDelayOff );
+ }
+ }
+
+// ---------------------------------------------------------------------------
+//
+// Sets a title to a given popup list.
+//
+// ---------------------------------------------------------------------------
+void CAiDialogRenderer::SetTitleToPopupL( CAknPopupList& aList, TInt aTitleID )
+ {
+ HBufC* text = StringLoader::LoadLC( aTitleID );
+
+ aList.SetTitleL( *text );
+
+ CleanupStack::PopAndDestroy( text );
+ text = NULL;
+ }
+
+// ---------------------------------------------------------------------------
+//
+// Shows note.
+//
+// ---------------------------------------------------------------------------
+//
+void CAiDialogRenderer::ShowNoteL( TInt aResourceId, TInt aType )
+ {
+ HBufC* string = StringLoader::LoadLC( aResourceId );
+
+ switch ( aType )
+ {
+ case KAIPPErrorNote:
+ {
+ CAknErrorNote* note = new ( ELeave ) CAknErrorNote ( ETrue );
+ note->ExecuteLD( *string );
+ break;
+ }
+ case KAIPPConfirmationNote:
+ {
+ CAknConfirmationNote* note =
+ new ( ELeave ) CAknConfirmationNote( ETrue );
+ note->ExecuteLD( *string );
+ break;
+ }
+ case KAIPPInformationNote:
+ {
+ CAknInformationNote* note =
+ new ( ELeave ) CAknInformationNote( ETrue );
+ note->ExecuteLD( *string );
+ break;
+ }
+ default:
+ break;
+ }
+
+ CleanupStack::PopAndDestroy( string );
+ }
+
+// ---------------------------------------------------------------------------
+//
+// Empties fetched network provider's list
+//
+// ---------------------------------------------------------------------------
+//
+void CAiDialogRenderer::PurgeNetworkList()
+ {
+ if ( iNetworkArray )
+ {
+ iNetworkArray->Reset();
+ delete iNetworkArray;
+ iNetworkArray = NULL;
+ }
+ }
+
// End of file
--- a/idlehomescreen/nativeuicontroller/src/aistatuspanel.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/nativeuicontroller/src/aistatuspanel.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -158,6 +158,9 @@
if( !iTitlePaneText )
{
__PRINTS("XAI: Rendering text to title pane - invalid text, aborting");
+
+ iTextInTitlePane = EFalse;
+
return;
}
@@ -173,6 +176,9 @@
iTitlePaneText = NULL;
UpdatePhoneDisplayInfo( displayText );
+
+ iTextInTitlePane = ETrue;
+
__PRINTS("XAI: Rendering text to title pane - done");
}
@@ -183,6 +189,7 @@
if( iBitmapHandle == KErrNotFound )
{
__PRINTS("XAI: Rendering bitmap to title pane - invalid bitmap handle, aborting");
+
return;
}
@@ -275,6 +282,9 @@
// undetermined stuff could occurr
iBitmapHandle = KErrNotFound;
iMaskHandle = KErrNotFound;
+
+ iTextInTitlePane = EFalse;
+
__PRINTS("XAI: Rendering bitmap to title pane - done");
}
@@ -386,7 +396,7 @@
void CAiStatusPanel::StopTitlePaneScrollingL()
{
// stop scrolling
- if( iTitlePane->Text() )
+ if( iTextInTitlePane && iTitlePane->Text() )
{
iTitlePane->SetTextL( *iTitlePane->Text(), EFalse );
}
@@ -395,7 +405,7 @@
void CAiStatusPanel::ScrollTitlePaneTextL()
{
// start scrolling
- if( iTitlePane->Text() )
+ if ( iTextInTitlePane && iTitlePane->Text() )
{
iTitlePane->SetTextL( *iTitlePane->Text(), ETrue );
}
--- a/idlehomescreen/nativeuicontroller/src/appui.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/nativeuicontroller/src/appui.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -197,18 +197,13 @@
iFwEventHandler = iUiCtl->FwEventHandler();
- TAiIdleKeySoundConfig keySoundConfig;
- keySoundConfig.iKeySounds = KeySounds();
- keySoundConfig.iContextResId = R_NATIVEUI_DEFAULT_SKEY_LIST;
- iIdleIntegration = CAiUiIdleIntegration::NewL
- ( *iEikonEnv, keySoundConfig, iFwEventHandler );
-
iUiCtl->SetAppUi( this );
if( iFwEventHandler )
{
iFwEventHandler->AppEnvReadyL();
}
+
TBool isFullScreen = EFalse;
//Get pointer to status pane
CEikStatusPane* statusPane = static_cast<CAknAppUi*>( iEikonEnv->EikAppUi() )->StatusPane();
@@ -271,11 +266,12 @@
CCenRepNotifyHandler::EIntKey,
KAiStatusPaneLayout );
iNotifyHandler->StartListeningL();
-
- if( iFwEventHandler )
- {
- iFwEventHandler->HandleUiReadyEventL(*iUiCtl);
- }
+
+ TAiIdleKeySoundConfig keySoundConfig;
+ keySoundConfig.iKeySounds = KeySounds();
+ keySoundConfig.iContextResId = R_NATIVEUI_DEFAULT_SKEY_LIST;
+ iIdleIntegration = CAiUiIdleIntegration::NewL
+ ( *iEikonEnv, keySoundConfig, iFwEventHandler );
// Check powerkey availability
FeatureManager::InitializeLibL();
@@ -625,6 +621,11 @@
{
iStanbyContainerIF->StartL();
}
+
+ if( iFwEventHandler )
+ {
+ iFwEventHandler->HandleUiReadyEventL( *iUiCtl );
+ }
}
void CAppUi::HandleNotifyInt( TUint32 aId, TInt aNewValue )
--- a/idlehomescreen/nativeuicontroller/src/nativeuicontroller.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/nativeuicontroller/src/nativeuicontroller.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -16,6 +16,7 @@
*/
// System includes
+#include <startupdomainpskeys.h>
#include <bautils.h>
#include <e32property.h>
#include <ecom/ecom.h>
@@ -455,9 +456,7 @@
iPlugins.Append( profile );
- iFwStateHandler->LoadPlugin( profile, EAiFwSystemStartup );
-
- TRAP_IGNORE( iAppUi->StartL() );
+ iFwStateHandler->LoadPlugin( profile, EAiFwSystemStartup );
}
// We need to load the resource file here if we are not main controller.
@@ -624,13 +623,13 @@
TInt32 settingId = 0;
TInt err = KErrNone;
- TBool settingFound = EFalse;
+ //TBool settingFound = EFalse;
CRepository *settingsRepository = CRepository::NewLC( TUid::Uid( KCRUidActiveIdleLV ) );
while ( moreSettings )
{
- settingFound = EFalse;
+ //settingFound = EFalse;
pluginIdPtr.Zero();
settingValuePtr.Zero();
@@ -674,7 +673,7 @@
if ( item.Key() == settingId && item.PublisherId() == aPublisherInfo.Uid() )
{
item.SetValueL( settingValuePtr, EFalse );
- settingFound = ETrue;
+ //settingFound = ETrue;
break;
}
}
@@ -724,9 +723,18 @@
//
void CNativeUiController::ActivateUI()
{
- if( iAppUi )
+ if( iAppUi && iRunningAsMain )
{
- TRAP_IGNORE( iAppUi->StartL() );
+ TRAP_IGNORE( iAppUi->StartL() );
+
+ TInt value( EIdlePhase1Ok );
+
+ RProperty::Get( KPSUidStartup, KPSIdlePhase1Ok, value );
+
+ if ( value == EIdlePhase1NOK )
+ {
+ RProperty::Set( KPSUidStartup, KPSIdlePhase1Ok, EIdlePhase1Ok );
+ }
}
}
Binary file idlehomescreen/widgetmanager/conf/widgetmanager.confml has changed
Binary file idlehomescreen/widgetmanager/conf/widgetmanager_20026F53.crml has changed
--- a/idlehomescreen/widgetmanager/data/widgetmanagerview.rss Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/data/widgetmanagerview.rss Fri Mar 12 15:41:49 2010 +0200
@@ -23,7 +23,6 @@
#include <avkon.loc>
#include <appinfo.rh>
#include <avkon.mbg>
-#include <activeidle3.loc>
#include <widgetmanagerview.loc>
#include "widgetmanager.hrh"
--- a/idlehomescreen/widgetmanager/group/widgetmanager.mmp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/group/widgetmanager.mmp Fri Mar 12 15:41:49 2010 +0200
@@ -53,6 +53,7 @@
SOURCE wmconfiguration.cpp
SOURCE wminstaller.cpp
SOURCE wmprocessmonitor.cpp
+SOURCE wmwidgetorderdata.cpp
SOURCEPATH ../data
START RESOURCE 20026F53.rss
--- a/idlehomescreen/widgetmanager/inc/wmconfiguration.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/inc/wmconfiguration.h Fri Mar 12 15:41:49 2010 +0200
@@ -52,21 +52,7 @@
void ConstructL();
public: // API
-
- /**
- * portal button methods. This - along with the parameter -
- * represents the action that the portal button is configured
- * to do when pressed. The portal button itself should contain
- * the execution code itself.
- */
- enum TMethod
- {
- ENone = 0, // no method
- EHttp, // open browser to a certain page
- EWidget, // open given widget with params
- EApplication // launch an application
- };
-
+
/**
* Number of portal buttons (1 or more)
*/
@@ -107,7 +93,8 @@
void LoadConfigurationL();
TInt FindCorrectLanguageId();
- HBufC* ReadParameterL( TInt aKey );
+ HBufC* ReadDescParameterL( TInt aKey );
+ void ReadIntParameter( TInt aKey, TInt32& aValue );
HBufC* ReadLocalisedParameterL( TInt aOffset );
void IndexConversion( TInt& aIndex );
@@ -140,20 +127,14 @@
HBufC* iOviButtonIcon;
/**
- * OVI store button browser Url
- * (browser is used if OVI client is not working)
- */
- HBufC* iOviButtonUrl;
-
- /**
* OVI store button widget client param
*/
HBufC* iOviStoreClientParam;
/**
- * OVI store button widget bundle ID
+ * OVI store laucher ui
*/
- HBufC* iOviStoreBundleId;
+ TUid iOviStoreUid;
/**
* OPERATOR button text
--- a/idlehomescreen/widgetmanager/inc/wmcrkeys.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/inc/wmcrkeys.h Fri Mar 12 15:41:49 2010 +0200
@@ -26,34 +26,30 @@
// ************************************************************
// LOCALISED parameters start here
-// Key Id's from 0x1 to 0x28 are reserved for languages.
+// Key Id's from 0x1 to 0x1E are reserved for languages.
// LangId_0 0x1
-// OviStoreBrowserUrl_0 0x2
-// OperatorUrl_0 0x3
-// OperatorButtonText_0 0x4
+// OperatorUrl_0 0x2
+// OperatorButtonText_0 0x3
// ...
-// LangId_1 0x5
+// LangId_1 0x4
// ...
-// LangId_9 0x25
-// OviStoreBrowserUrl_9 0x26
-// OperatorUrl_9 0x27
-// OperatorButtonText_9 0x28
+// LangId_9 0x1C
+// OperatorUrl_9 0x1D
+// OperatorButtonText_9 0x1E
// ************************************************************
/** localised set #0, language ID */
const TUint32 KLangId0 = 0x1;
-/** localised set #0, Ovi store browser URL */
-const TUint32 KOviStoreBrowserUrl0 = 0x2;
/** localised set #0, Operator button URL */
-const TUint32 KOperatorButtonUrl0 = 0x3;
+const TUint32 KOperatorButtonUrl0 = 0x2;
/** localised set #0, Operator button text */
-const TUint32 KOperatorButtonText0 = 0x4;
+const TUint32 KOperatorButtonText0 = 0x3;
/** localised set #1, language ID */
-const TUint32 KLangId1 = 0x5;
+const TUint32 KLangId1 = 0x4;
/** localised set #9, language ID */
-const TUint32 KLangId9 = 0x25;
+const TUint32 KLangId9 = 0x1C;
// ************************************************************
@@ -61,13 +57,13 @@
// ************************************************************
/** Key to Ovi Store Client param */
-const TUint32 KOviStoreClientParam = 0x29;
+const TUint32 KOviStoreClientParam = 0x1F;
/** Key to Operator button icon */
-const TUint32 KOperatorButtonIcon = 0x2A;
+const TUint32 KOperatorButtonIcon = 0x20;
-/** Key to Ovi Store client BundleId */
-const TUint32 KOviStoreBundleId = 0x2B;
+/** Key to Ovi Store client Uid */
+const TUint32 KOviStoreUid = 0x21;
--- a/idlehomescreen/widgetmanager/inc/wmeffectmanager.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/inc/wmeffectmanager.h Fri Mar 12 15:41:49 2010 +0200
@@ -25,8 +25,8 @@
class CCoeEnv;
// CONSTANTS
// Effects
-const TInt KAppStartCommonDefaultStyle = 3;
-const TInt KAppExitCommonDefaultStyle = 5;
+const TInt KAppStartEffectStyle = 1007;
+const TInt KAppExitEffectStyle = 1008;
/**
* Struct which holds needed info of effect.
--- a/idlehomescreen/widgetmanager/inc/wmimageconverter.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/inc/wmimageconverter.h Fri Mar 12 15:41:49 2010 +0200
@@ -166,6 +166,11 @@
const TDesC& aIconStr );
private:
+
+ TBool DoesScaleBitmapUseFallBack( CFbsBitmap* aSrcBitmap );
+ void ScaleBitmapL( const TSize& aSize,
+ CFbsBitmap* aTrgBitmap,
+ CFbsBitmap* aSrcBitmap );
void ScaleBitmap( TInt aWidth, TInt aHeight );
void ScaleMask( TInt aWidth, TInt aHeight );
void CreateIconFromUidL( const TUid& aUid );
--- a/idlehomescreen/widgetmanager/inc/wminstaller.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/inc/wminstaller.h Fri Mar 12 15:41:49 2010 +0200
@@ -103,6 +103,9 @@
* wrt widget that is currently been uninstalled
*/
TUid iUid;
+
+
+ HBufC8* iMime;
};
#endif // __WMPLUGIN_
--- a/idlehomescreen/widgetmanager/inc/wmlistbox.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/inc/wmlistbox.h Fri Mar 12 15:41:49 2010 +0200
@@ -32,6 +32,7 @@
#include <aknlongtapdetector.h>
#include "wmwidgetdataobserver.h"
#include "wmwidgetdata.h"
+#include "wmwidgetorderdata.h"
// FORWARD DECLARATIONS
class CWmListBox;
@@ -117,27 +118,6 @@
* pointer to the listbox (not owned)
*/
CWmListBox* iListBox;
-
-
- /**
- * add-button colored bitmap (default color)
- */
- CFbsBitmap* iAddWidgetBtnImage;
-
- /**
- * add-button mask
- */
- CFbsBitmap* iAddWidgetBtnMask;
-
- /**
- * add-button colored bitmap (highlighted color)
- */
- CFbsBitmap* iAddWidgetBtnHighlightImage;
-
- /**
- * add-button mask
- */
- CFbsBitmap* iAddWidgetBtnHighlightMask;
/**
* default logo (when widget does not have one) bitmap
@@ -272,11 +252,11 @@
};
/**
- * sets the list sort order
+ * Sorts the listbox's visible array
*
* @param aOrder sort order
*/
- void SetSortOrderL( TSortOrder aOrder );
+ void DoSortToVisibleArray( TSortOrder aOrder );
/**
* Responds to layout switched.
@@ -295,6 +275,28 @@
*/
TSize LogoSize();
+ /**
+ * gets the constant widget order data array
+ */
+ inline const ROrderArray& OrderDataArray();
+
+ /**
+ * Sorts the order array
+ *
+ * @param aOrder sort order
+ */
+ void DoSortToOrderData( TSortOrder aOrder );
+
+ /**
+ * Adds order data to array
+ */
+ void AddOrderDataL( CWmWidgetOrderData* aOrderData );
+
+ /*
+ * Returns orderdata object by index
+ */
+ CWmWidgetOrderData* OrderData( TInt aItemIndex );
+
private: // from CEikTextListBox
/**
* Creates the item drawer.
@@ -338,7 +340,17 @@
const CCoeControl* aParent,
TInt aFlags );
-
+private:
+ /**
+ * linear order for sorting, depending on the sort type being used
+ */
+ TLinearOrder<CWmWidgetData> SortOrder( TSortOrder aOrder );
+
+ /**
+ * linear order for sorting, depending on the sort type being used
+ */
+ TLinearOrder<CWmWidgetOrderData> SortOrderToOrderData( TSortOrder aOrder );
+
protected: // from MWmWidgetDataObserver
/**
@@ -348,13 +360,6 @@
*/
void HandleWidgetDataChanged( CWmWidgetData* aWidgetData );
-private: // own methods
-
- /**
- * linear order for sorting, depending on the sort type being used
- */
- TLinearOrder<CWmWidgetData> SortOrder( TSortOrder aOrder );
-
private:
/**
@@ -365,7 +370,7 @@
/**
* array of widget data objects (the list model)
*/
- RWidgetDataValues iWidgetDatas;
+ RWidgetDataValues iVisibleWidgetArray;
/**
* the currently active item ADD button's rectangle, for push recognition
@@ -378,7 +383,12 @@
TBool iFindPaneIsVisible;
/** size of logo rect in list item */
- TSize iLogoSize;
+ TSize iLogoSize;
+
+ /**
+ * array of widget order objects
+ */
+ ROrderArray iOrderDataArray;
};
#include "wmlistbox.inl"
--- a/idlehomescreen/widgetmanager/inc/wmlistbox.inl Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/inc/wmlistbox.inl Fri Mar 12 15:41:49 2010 +0200
@@ -33,12 +33,15 @@
* @return count of widget data array
*/
inline TInt CWmListBox::WidgetDataCount()
- { return iWidgetDatas.Count(); }
+ { return iVisibleWidgetArray.Count(); }
/**
* gets the constant widget data array
*/
inline const RWidgetDataValues& CWmListBox::WidgetDataArray()
- { return iWidgetDatas; }
+ { return iVisibleWidgetArray; }
+ inline const ROrderArray& CWmListBox::OrderDataArray()
+ { return iOrderDataArray; }
+
#endif /* WMLISTBOX_INL_ */
--- a/idlehomescreen/widgetmanager/inc/wmmaincontainer.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/inc/wmmaincontainer.h Fri Mar 12 15:41:49 2010 +0200
@@ -148,7 +148,7 @@
/**
* executes findbox activation
*/
- void ActivateFindPaneL();
+ void ActivateFindPaneL( TBool aActivateAdabtive = EFalse );
/**
* executes findbox deactivation
@@ -381,6 +381,9 @@
*/
CWmConfiguration* iConfiguration;
+#ifdef _WM_UNIT_TEST
+ friend class CWmUnitTest;
+#endif
};
#endif // WMMAINCONTAINER_H
--- a/idlehomescreen/widgetmanager/inc/wmpersistentwidgetorder.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/inc/wmpersistentwidgetorder.h Fri Mar 12 15:41:49 2010 +0200
@@ -22,6 +22,7 @@
// INCLUDES
#include <e32base.h>
#include "wmwidgetdata.h"
+#include "wmwidgetorderdata.h"
// FORWARD DECLARATIONS
class RFs;
@@ -66,7 +67,7 @@
* The instance can now be used to sort widget data.
*/
void LoadL();
-
+
/**
* Stores a sorted array of WmWidgetData types. Note that
* the order will be directly stored and a copy will not
@@ -75,7 +76,7 @@
*
* @param aArray the array of widget daya types
*/
- void StoreL( const RWidgetDataValues& aArray );
+ void StoreL( const ROrderArray& aArray );
/**
* Retrieves an index of given widget data object within the list.
@@ -89,6 +90,17 @@
TInt IndexOf( const CWmWidgetData& aWidgetData ) const;
/**
+ * Retrieves an index of given widget order object within the order list.
+ * This index can be used to sort and organise. Note that LoadL()
+ * must be used prior to calling this method, and before that
+ * there must be something persisted.
+ *
+ * @param aWidgetOrder data to seek index of in the sorted order
+ * @return the index found, or KErrNotFound if widget is new
+ */
+ TInt IndexOf( const CWmWidgetOrderData& aWidgetOrder ) const;
+
+ /**
* checks if the persistent widget order is empty. In this case it does
* not make any sense to use the object to sort anything.
* Note that before loading the object is always empty.
@@ -121,6 +133,9 @@
/** compares a tag agains a widget data */
TBool Matches( const CWmWidgetData& aWidgetData ) const;
+ /** compares a tag agains a widget order */
+ TBool Matches( const CWmWidgetOrderData& aWidgetOrder ) const;
+
/** widget uid */
TInt32 iUid;
--- a/idlehomescreen/widgetmanager/inc/wmplugin.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/inc/wmplugin.h Fri Mar 12 15:41:49 2010 +0200
@@ -230,6 +230,10 @@
* Handles installation
*/
CWmInstaller* iWmInstaller;
+
+#ifdef _WM_UNIT_TEST
+ friend class CWmUnitTest;
+#endif
};
#endif // __WMPLUGIN_
--- a/idlehomescreen/widgetmanager/inc/wmportalbutton.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/inc/wmportalbutton.h Fri Mar 12 15:41:49 2010 +0200
@@ -83,6 +83,11 @@
/** Observes the button's own activity */
void HandleControlEventL( CCoeControl* aControl, TCoeEvent aEventType );
+protected: // from CCoeControl
+
+ /** Handles pointer events. */
+ void HandlePointerEventL( const TPointerEvent& aPointerEvent );
+
protected: // Constructors
/** Constructor for performing 1st stage construction */
--- a/idlehomescreen/widgetmanager/inc/wmwidgetloaderao.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/inc/wmwidgetloaderao.h Fri Mar 12 15:41:49 2010 +0200
@@ -100,13 +100,16 @@
* adds a widget data entry to iWidgetsList
* takes ownership of aContentInfo
*/
- void AddWidgetDataL( CHsContentInfo* aContentInfo );
+ void AddWidgetDataL( CHsContentInfo* aContentInfo, TInt& aCount );
/**
* cleanup resources allocated runing one single run
*/
void Cleanup();
+ /** Converts uid to TUid from TDesC8 */
+ TUid UidFromString( const TDesC8& aUidString ) const;
+
private: // data
/** reference to the widget manager root */
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/widgetmanager/inc/wmwidgetorderdata.h Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,118 @@
+/*
+* 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:
+* CWmWidgetOrderData declaration
+*
+*/
+
+
+#ifndef WMWIDGETORDERDATA_H
+#define WMWIDGETORDERDATA_H
+
+// INCLUDES
+#include <e32std.h>
+#include <e32base.h>
+
+// FORWARD DECLARATIONS
+class CWmPersistentWidgetOrder;
+
+
+// CLASS DECLARATION
+/**
+ * CWmWidgetOrderData
+ */
+NONSHARABLE_CLASS( CWmWidgetOrderData )
+ : public CBase
+ {
+
+public: // constructions
+ /**
+ * @param aPublisherId
+ * @param aUid
+ * @param aUid
+ * @param aPersistentWidgetOrder
+ */
+ static CWmWidgetOrderData* NewL(
+ const TDesC& aPublisherId,
+ const TUid aUid,
+ const TDesC& aName,
+ const CWmPersistentWidgetOrder* aPersistentWidgetOrder );
+
+ static CWmWidgetOrderData* NewLC(
+ const TDesC& aPublisherId,
+ const TUid aUid,
+ const TDesC& aName,
+ const CWmPersistentWidgetOrder* aPersistentWidgetOrder );
+
+ /** Destructor. */
+ ~CWmWidgetOrderData();
+
+private: // private construction
+ /** Constructor for performing 1st stage construction */
+ CWmWidgetOrderData( const TUid aUid );
+
+ /** 2nd phase constructor */
+ void ConstructL(
+ const TDesC& aPublisherId,
+ const TDesC& aName,
+ const CWmPersistentWidgetOrder* aPersistentWidgetOrder );
+
+public:
+
+ /** Returns publisherId */
+ const TDesC& PublisherId() const;
+
+ /** Returns Uid */
+ const TUid Uid() const;
+
+ /** Returns Name */
+ const TDesC& Name() const;
+
+ /** comparator function for sort by name (compare two names) */
+ static TInt CompareByName(
+ const CWmWidgetOrderData& aDataOne,
+ const CWmWidgetOrderData& aDataTwo );
+
+ /** comparator function for sorting by stored order */
+ static TInt CompareByPersistentWidgetOrder(
+ const CWmWidgetOrderData& aDataOne,
+ const CWmWidgetOrderData& aDataTwo );
+
+ /** compare given values to member. Returns ETrue if matches*/
+ TBool EqualsTo( const TUid aUid, const TDesC& aPublisherId );
+
+ /** set persistentorder data*/
+ void SetPersistentWidgetOrder(
+ CWmPersistentWidgetOrder* aPersistentWidgetOrder );
+
+ /** Updates name if param aName is different than iName */
+ void UpdateNameL( const TDesC& aName );
+
+private: // data members
+ /** uid */
+ TUid iUid;
+
+ /** publisherId */
+ HBufC* iPublisherId;
+
+ /** Name */
+ HBufC* iName;
+
+ /** persistent order of widgets (used in sorting) */
+ const CWmPersistentWidgetOrder* iPersistentWidgetOrder;
+ };
+
+typedef RPointerArray<CWmWidgetOrderData> ROrderArray;
+
+#endif // WMWIDGETORDERDATA_H
--- a/idlehomescreen/widgetmanager/sis/Create_update_sisx.bat Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/sis/Create_update_sisx.bat Fri Mar 12 15:41:49 2010 +0200
@@ -23,9 +23,9 @@
rem Create wm sis&sisx files
makesis widgetmanager_udeb.pkg
-signsis widgetmanager_udeb.SIS widgetmanager_udeb.SISX Nokia_RnDCert_02.der Nokia_RnDCert_02.key
+signsis widgetmanager_udeb.SIS widgetmanager_udeb.SISX ..\internal\cert\Nokia_RnDCert_02.der ..\internal\cert\Nokia_RnDCert_02.key
makesis widgetmanager_urel.pkg
-signsis widgetmanager_urel.SIS widgetmanager_urel.SISX Nokia_RnDCert_02.der Nokia_RnDCert_02.key
+signsis widgetmanager_urel.SIS widgetmanager_urel.SISX ..\internal\cert\Nokia_RnDCert_02.der ..\internal\cert\Nokia_RnDCert_02.key
rem Create wm stubsis file
makesis -s widgetmanager_stub.pkg
--- a/idlehomescreen/widgetmanager/src/wmconfiguration.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/src/wmconfiguration.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -30,7 +30,6 @@
// some constants regarging the central repository localised section.
// these will ensure CR localisation section compatibility even if
// new strings are added
-const TInt KLangOffsetOviStoreUrl = KOviStoreBrowserUrl0 - KLangId0;
const TInt KLangOffsetOperatorUrl = KOperatorButtonUrl0 - KLangId0;
const TInt KLangOffsetOperatorText = KOperatorButtonText0 - KLangId0;
const TInt KLangGroupSize = KLangId1 - KLangId0;
@@ -60,11 +59,10 @@
: iResourceLoader( aResourceLoader )
{
iRepository = NULL;
- iOviStoreBundleId = NULL;
+ iOviStoreUid = KNullUid;
iOviStoreClientParam = NULL;
iOviButtonTitle = NULL;
iOviButtonIcon = NULL;
- iOviButtonUrl = NULL;
iOperatorButtonTitle = NULL;
iOperatorButtonIcon = NULL;
iOperatorButtonUrl = NULL;
@@ -77,11 +75,9 @@
CWmConfiguration::~CWmConfiguration()
{
delete iRepository;
- delete iOviStoreBundleId;
delete iOviStoreClientParam;
delete iOviButtonTitle;
delete iOviButtonIcon;
- delete iOviButtonUrl;
delete iOperatorButtonTitle;
delete iOperatorButtonIcon;
delete iOperatorButtonUrl;
@@ -123,18 +119,17 @@
TUid::Uid( KCrWidgetManagerm ) );
// read fixed parameters
- iOviStoreBundleId = ReadParameterL( KOviStoreBundleId );
- iOviStoreClientParam = ReadParameterL( KOviStoreClientParam );
+ ReadIntParameter( KOviStoreUid, iOviStoreUid.iUid );
+ iOviStoreClientParam = ReadDescParameterL( KOviStoreClientParam );
// determine language and read localised parameters
iLanguageIndex = FindCorrectLanguageId();
- iOviButtonUrl = ReadLocalisedParameterL( KLangOffsetOviStoreUrl );
iOperatorButtonTitle = ReadLocalisedParameterL( KLangOffsetOperatorText );
iOperatorButtonUrl = ReadLocalisedParameterL( KLangOffsetOperatorUrl );
if ( iOperatorButtonUrl && iOperatorButtonUrl->Length() > 0 )
{
// construct the operator button icon.
- iOperatorButtonIcon = ReadParameterL( KOperatorButtonIcon );
+ iOperatorButtonIcon = ReadDescParameterL( KOperatorButtonIcon );
}
delete iRepository;
@@ -178,10 +173,10 @@
}
// ---------------------------------------------------------
-// CWmConfiguration::ReadParameterL
+// CWmConfiguration::ReadDescParameterL
// ---------------------------------------------------------
//
-HBufC* CWmConfiguration::ReadParameterL( TInt aKey )
+HBufC* CWmConfiguration::ReadDescParameterL( TInt aKey )
{
TBuf<NCentralRepositoryConstants::KMaxUnicodeStringLength> buf;
TInt err = iRepository->Get( aKey, buf );
@@ -196,6 +191,20 @@
}
// ---------------------------------------------------------
+// CWmConfiguration::ReadIntParameterIntL
+// ---------------------------------------------------------
+//
+void CWmConfiguration::ReadIntParameter( TInt aKey, TInt32& aValue )
+ {
+ TInt read = KErrNone;
+ TInt err = iRepository->Get( aKey, read );
+ if( err == KErrNone )
+ {
+ aValue = read;
+ }
+ }
+
+// ---------------------------------------------------------
// CWmConfiguration::ReadLocalisedParameterL
// ---------------------------------------------------------
//
@@ -266,11 +275,8 @@
//
const TDesC& CWmConfiguration::PortalButtonBrowserUrl( TInt aIndex )
{
- if ( aIndex == 0 && iOviButtonUrl )
- return *iOviButtonUrl;
- else if ( aIndex == 1 && iOperatorButtonUrl )
+ if ( aIndex == 1 && iOperatorButtonUrl )
return *iOperatorButtonUrl;
-
return KNullDesC;
}
@@ -280,14 +286,14 @@
//
TUid CWmConfiguration::PortalButtonClientUid( TInt aIndex )
{
- if ( aIndex == 0 && iOviStoreBundleId )
+ if ( aIndex == 0 )
{
- // idea: change iOviStoreBundleId to UID of laucher in cenrep
- return TUid::Uid( 0x2002D07F );
- }
+ return iOviStoreUid;
+ }
// Operator client uid not supported.
// If operator client is a widget we can use widget registry
// to fetch uid of operator widget save it to member and return that here
+
return KNullUid;
}
--- a/idlehomescreen/widgetmanager/src/wmimageconverter.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/src/wmimageconverter.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -200,12 +200,11 @@
{
CFbsBitmap* bitmap = NULL;
CFbsBitmap* mask = NULL;
-
+
+
if ( aUid.iUid >= KWidgetUidLowerBound &&
aUid.iUid < KWidgetUidUpperBound )
{
- // AknsUtils::CreateAppIconLC panics incase of WRT
-
RApaLsSession lsSession;
User::LeaveIfError( lsSession.Connect() );
CleanupClosePushL( lsSession );
@@ -214,42 +213,53 @@
CArrayFixFlat<TSize>* sizeArray = new (ELeave)
CArrayFixFlat<TSize>( KAppSizeArraySize );
CleanupStack::PushL( sizeArray );
+
User::LeaveIfError( lsSession.GetAppIconSizes( aUid, *sizeArray ) );
- TSize size;
+
+ // there should be atleast one size available
+ if ( sizeArray->Count() == 0 ){ User::Leave( KErrNotReady ); };
+
+ TSize size(0,0);
for( TInt i=0; i < sizeArray->Count(); i++ )
{
- size = (*sizeArray)[i];
- if ( size == iSize )
- {
- break;
- }
+ TSize s = (*sizeArray)[i];
+ if ( size.iWidth < s.iWidth || size.iHeight < s.iHeight )
+ { size = s; }
+ if ( size == iSize ) { break; }
}
+
CApaMaskedBitmap* maskedBmp = CApaMaskedBitmap::NewLC();
User::LeaveIfError( lsSession.GetAppIcon( aUid, size, *maskedBmp ) );
- iBitmap = static_cast<CFbsBitmap*>( maskedBmp ); // ownership transfered
- iMask = new ( ELeave ) CFbsBitmap;
- User::LeaveIfError( iMask->Create(
- maskedBmp->Mask()->SizeInPixels(),
- maskedBmp->Mask()->DisplayMode() ) );
- // duplicate mask, origional is owned by maskedBmp
- iMask->Duplicate( maskedBmp->Mask()->Handle() );
- CleanupStack::Pop( maskedBmp );
- maskedBmp = NULL;
- CleanupStack::PopAndDestroy(sizeArray);
+ // handle bitmap
+ iBitmap = new ( ELeave ) CFbsBitmap;
+ User::LeaveIfError( iBitmap->Create(
+ maskedBmp->SizeInPixels(),
+ maskedBmp->DisplayMode() ) );
+
+ // scale bitmap
+ ScaleBitmapL( iSize, iBitmap, maskedBmp );
+
+ // handle mask
+ if ( maskedBmp->Mask() )
+ {
+ iMask = new ( ELeave ) CFbsBitmap;
+ User::LeaveIfError( iMask->Create(
+ maskedBmp->Mask()->SizeInPixels(),
+ maskedBmp->Mask()->DisplayMode() ) );
+
+ // scale mask
+ ScaleBitmapL( iSize, iMask, maskedBmp->Mask() );
+ }
+
+ // cleanup
+ CleanupStack::PopAndDestroy( maskedBmp );
+ CleanupStack::PopAndDestroy( sizeArray );
CleanupStack::PopAndDestroy( &lsSession );
-
- // scale or notify
- if ( size == iSize )
- {
- iState = EIdle;
- iObserver->NotifyCompletion( KErrNone );
- }
- else
- {
- iScaleNeeded = ETrue;
- ScaleBitmap( iSize.iWidth, iSize.iHeight );
- }
+
+ // notify
+ iState = EIdle;
+ iObserver->NotifyCompletion( KErrNone );
}
else if ( aUid.iUid != KNullUid.iUid )
{
@@ -398,7 +408,7 @@
iMask = new (ELeave) CFbsBitmap();
iMask->Create( size, EGray256 );
-
+
if ( size != iSize )
{
iScaleNeeded = ETrue;
@@ -933,6 +943,283 @@
}
// ---------------------------------------------------------------------------
+// CWmImageConverter::DoesScaleBitmapUseFallBack
+// ---------------------------------------------------------------------------
+//
+TBool CWmImageConverter::DoesScaleBitmapUseFallBack( CFbsBitmap* aSrcBitmap )
+ {
+ if ( !aSrcBitmap )
+ {
+ return EFalse;
+ }
+
+ TDisplayMode displayMode = aSrcBitmap->DisplayMode();
+ TBool fallbackOnly = EFalse;
+
+ switch ( displayMode )
+ {
+ case EGray2:
+ case EGray4:
+ case EGray16:
+ case EColor16:
+ case EColor16M:
+ case ERgb:
+ case EColor16MA:
+ fallbackOnly = ETrue;
+ break;
+ case EGray256:
+ case EColor4K:
+ case EColor64K:
+ case EColor256:
+ case EColor16MU:
+ // These are the supported modes
+ break;
+ default:
+ fallbackOnly = ETrue;
+ }
+
+ return fallbackOnly;
+ }
+
+
+// ---------------------------------------------------------------------------
+// CWmImageConverter::ScaleBitmapL
+// ---------------------------------------------------------------------------
+//
+void CWmImageConverter::ScaleBitmapL(
+ const TSize& aSize,
+ CFbsBitmap* aTrgBitmap,
+ CFbsBitmap* aSrcBitmap )
+ {
+ if ( !aSrcBitmap ) User::Leave( KErrArgument );
+ if ( !aTrgBitmap ) User::Leave( KErrArgument );
+ if ( aSrcBitmap->DisplayMode() != aTrgBitmap->DisplayMode() )
+ {
+ User::Leave( KErrArgument );
+ }
+
+ TRect targetRect( aSize );
+
+ // calculate aspect ratio
+ TInt srcHeight = aSrcBitmap->SizeInPixels().iHeight;
+ TInt srcWidth = aSrcBitmap->SizeInPixels().iWidth;
+ TReal scaleRatio( 1 ); //no scale as defaul
+
+ //If any dimension is 0, then we do not bother to scale
+ if ( targetRect.Width() > 0 && targetRect.Height() > 0 )
+ {
+ TReal xRatio = ( ( TReal )srcWidth / ( TReal )targetRect.Width() );
+ TReal yRatio = ( ( TReal )srcHeight / ( TReal )targetRect.Height() );
+ //Find out appropriate scaling factor
+ xRatio > yRatio ? ( scaleRatio = xRatio ) : ( scaleRatio = yRatio );
+ }
+
+ //Scale the size for target bitmap
+ targetRect.SetHeight( srcHeight / scaleRatio );
+ targetRect.SetWidth( srcWidth / scaleRatio );
+
+ TSize trgBitmapSize = aTrgBitmap->SizeInPixels();
+
+ // calculate the valid drawing area
+ TRect drawRect = targetRect;
+ drawRect.Intersection( TRect( TPoint( 0, 0 ), trgBitmapSize ) );
+
+ if( drawRect.IsEmpty() ||
+ aSrcBitmap->SizeInPixels().iHeight <= 0 ||
+ aSrcBitmap->SizeInPixels().iWidth <= 0 )
+ {
+ User::Leave( KErrArgument );
+ }
+
+ TSize srcSize = aSrcBitmap->SizeInPixels();
+
+ TBool srcTemporary = EFalse;
+ if ( aSrcBitmap->IsRomBitmap() )
+ {
+ srcTemporary = ETrue;
+ }
+
+ TDisplayMode displayMode = aSrcBitmap->DisplayMode();
+ TBool fallbackOnly = DoesScaleBitmapUseFallBack( aSrcBitmap );
+
+ if ( fallbackOnly )
+ {
+ CFbsBitmapDevice* dev = CFbsBitmapDevice::NewL( aTrgBitmap );
+ CleanupStack::PushL( dev );
+ CFbsBitGc* gc = NULL;
+ User::LeaveIfError( dev->CreateContext( gc ) );
+ CleanupStack::PushL( gc );
+
+ // write alpha information if it exists
+ if ( aSrcBitmap->DisplayMode() == EColor16MA )
+ {
+ gc->SetDrawMode( CGraphicsContext::EDrawModeWriteAlpha );
+ }
+
+ // targetRect is used because DrawBitmap handles clipping automatically
+ gc->DrawBitmap( targetRect, aSrcBitmap );
+ CleanupStack::PopAndDestroy( 2 ); // dev, gc
+ return;
+ }
+
+ // Heap lock for FBServ large chunk to prevent background
+ // compression of aSrcBitmap after if IsCompressedInRAM returns EFalse
+ aSrcBitmap->LockHeapLC( ETrue ); // fbsheaplock
+ TBool fbsHeapLock = ETrue;
+ if ( aSrcBitmap->IsCompressedInRAM() )
+ {
+ srcTemporary = ETrue;
+ }
+
+ CFbsBitmap* realSource = aSrcBitmap;
+ if ( srcTemporary )
+ {
+ CleanupStack::PopAndDestroy(); // fbsheaplock
+ fbsHeapLock = EFalse;
+
+ realSource = new ( ELeave ) CFbsBitmap();
+ CleanupStack::PushL( realSource );
+ User::LeaveIfError(
+ realSource->Create( srcSize, aSrcBitmap->DisplayMode() ) );
+ CFbsBitmapDevice* dev = CFbsBitmapDevice::NewL( realSource );
+ CleanupStack::PushL( dev );
+ CFbsBitGc* gc = NULL;
+ User::LeaveIfError( dev->CreateContext( gc ) );
+ CleanupStack::PushL( gc );
+ gc->BitBlt( TPoint( 0, 0 ), aSrcBitmap );
+ CleanupStack::PopAndDestroy( 2 ); // dev, gc
+ }
+
+ if ( !fbsHeapLock )
+ {
+ // Heap lock for FBServ large chunk is only needed with large bitmaps.
+ if ( realSource->IsLargeBitmap() || aTrgBitmap->IsLargeBitmap() )
+ {
+ aTrgBitmap->LockHeapLC( ETrue ); // fbsheaplock
+ }
+ else
+ {
+ CleanupStack::PushL( ( TAny* )NULL );
+ }
+ }
+
+ TUint32* srcAddress = realSource->DataAddress();
+ TUint32* trgAddress = aTrgBitmap->DataAddress();
+
+ const TInt xSkip = ( srcSize.iWidth << 8 ) / targetRect.Width();
+ const TInt ySkip = ( srcSize.iHeight << 8 ) / targetRect.Height();
+
+ const TInt drawWidth = drawRect.Width();
+ const TInt drawHeight = drawRect.Height();
+
+ TRect offsetRect( targetRect.iTl, drawRect.iTl );
+ const TInt yPosOffset = ySkip * offsetRect.Height();
+ const TInt xPosOffset = xSkip * offsetRect.Width();
+
+ if ( ( displayMode == EGray256 ) || ( displayMode == EColor256 ) )
+ {
+ TInt srcScanLen8 = CFbsBitmap::ScanLineLength(
+ srcSize.iWidth, displayMode );
+ TInt trgScanLen8 = CFbsBitmap::ScanLineLength(
+ trgBitmapSize.iWidth, displayMode );
+
+ TUint8* trgAddress8 = reinterpret_cast< TUint8* >( trgAddress );
+
+ TInt yPos = yPosOffset;
+ // skip left and top margins in the beginning
+ trgAddress8 += trgScanLen8 * drawRect.iTl.iY + drawRect.iTl.iX;
+
+ for ( TInt y = 0; y < drawHeight; y++ )
+ {
+ TUint8* srcAddress8 = reinterpret_cast< TUint8* >( srcAddress ) +
+ ( srcScanLen8 * ( yPos >> 8 ) );
+
+ TInt xPos = xPosOffset;
+ for ( TInt x = 0; x < drawWidth; x++ )
+ {
+ *( trgAddress8++ ) = srcAddress8[xPos >> 8];
+ xPos += xSkip;
+ }
+
+ yPos += ySkip;
+
+ trgAddress8 += trgScanLen8 - drawWidth;
+ }
+ }
+ else if ( displayMode == EColor4K || displayMode == EColor64K )
+ {
+ TInt srcScanLen16 = CFbsBitmap::ScanLineLength(
+ srcSize.iWidth, displayMode ) /2;
+ TInt trgScanLen16 = CFbsBitmap::ScanLineLength(
+ trgBitmapSize.iWidth, displayMode ) /2;
+
+ TUint16* trgAddress16 = reinterpret_cast< TUint16* >( trgAddress );
+
+ TInt yPos = yPosOffset;
+ // skip left and top margins in the beginning
+ trgAddress16 += trgScanLen16 * drawRect.iTl.iY + drawRect.iTl.iX;
+
+ for ( TInt y = 0; y < drawHeight; y++ )
+ {
+ TUint16* srcAddress16 = reinterpret_cast< TUint16* >( srcAddress ) +
+ ( srcScanLen16 * ( yPos >> 8 ) );
+
+ TInt xPos = xPosOffset;
+ for ( TInt x = 0; x < drawWidth; x++ )
+ {
+ *( trgAddress16++ ) = srcAddress16[xPos >> 8];
+ xPos += xSkip;
+ }
+
+ yPos += ySkip;
+
+ trgAddress16 += trgScanLen16 - drawWidth;
+ }
+ }
+ else if ( displayMode == EColor16MU )
+ {
+ TInt srcScanLen32 = CFbsBitmap::ScanLineLength(
+ srcSize.iWidth, displayMode ) /4;
+ TInt trgScanLen32 = CFbsBitmap::ScanLineLength(
+ trgBitmapSize.iWidth, displayMode ) /4;
+
+ TUint32* trgAddress32 = reinterpret_cast< TUint32* >( trgAddress );
+
+ TInt yPos = yPosOffset;
+ // skip left and top margins in the beginning
+ trgAddress32 += trgScanLen32 * drawRect.iTl.iY + drawRect.iTl.iX;
+
+ for ( TInt y = 0; y < drawHeight; y++ )
+ {
+ TUint32* srcAddress32 = reinterpret_cast< TUint32* >( srcAddress ) +
+ ( srcScanLen32 * ( yPos >> 8 ) );
+
+ TInt xPos = xPosOffset;
+ for ( TInt x = 0; x < drawWidth; x++ )
+ {
+ *( trgAddress32++ ) = srcAddress32[xPos >> 8];
+ xPos += xSkip;
+ }
+
+ yPos += ySkip;
+
+ trgAddress32 += trgScanLen32 - drawWidth;
+ }
+ }
+ else
+ {
+ User::Leave( KErrUnknown );
+ }
+
+ CleanupStack::PopAndDestroy(); // fbsheaplock
+
+ if ( srcTemporary )
+ {
+ CleanupStack::PopAndDestroy(); // realSource
+ }
+ }
+
+// ---------------------------------------------------------------------------
// CWmImageConverter::Finished
// ---------------------------------------------------------------------------
//
--- a/idlehomescreen/widgetmanager/src/wminstaller.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/src/wminstaller.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -65,6 +65,7 @@
//
void CWmInstaller::ConstructL()
{
+ iMime = KWrtMime().AllocL();
iIdle = CIdle::NewL( CActive::EPriorityStandard );
}
@@ -81,6 +82,7 @@
iIdle->Cancel();
}
delete iIdle;
+ delete iMime;
}
// ---------------------------------------------------------
@@ -166,7 +168,7 @@
optionsUninstall.iKillApp = SwiUI::EPolicyAllowed;
SwiUI::TUninstallOptionsPckg uninstallOptionsPkg( optionsUninstall );
iInstaller.SilentUninstall( iStatus, iUid,
- uninstallOptionsPkg, KWrtMime );
+ uninstallOptionsPkg, *iMime );
aData->VisualizeUninstallL();
SetActive();
--- a/idlehomescreen/widgetmanager/src/wmlistbox.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/src/wmlistbox.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -30,11 +30,13 @@
#include <gulicon.h>
#include <widgetmanagerview.rsg>
#include <widgetmanager.mbg>
+
#include "wmcommon.h"
#include "wmplugin.h"
#include "wmresourceloader.h"
#include "wmlistbox.h"
#include "wmwidgetdata.h"
+#include "wmwidgetorderdata.h"
// CONSTANTS
@@ -98,30 +100,6 @@
EMbmWidgetmanagerQgn_menu_hswidget,
EMbmWidgetmanagerQgn_menu_hswidget_mask
);
-
- AknsUtils::CreateColorIconL(
- skin,
- KAknsIIDQgnIndiWmAdd,
- KAknsIIDQsnTextColors,
- EAknsCIQsnTextColorsCG6,
- iAddWidgetBtnImage,
- iAddWidgetBtnMask,
- iWmPlugin.ResourceLoader().IconFilePath(),
- EMbmWidgetmanagerAdd_widget_button,
- EMbmWidgetmanagerAdd_widget_button_mask,
- KRgbBlack );
-
- AknsUtils::CreateColorIconL(
- skin,
- KAknsIIDQgnIndiWmAdd,
- KAknsIIDQsnTextColors,
- EAknsCIQsnTextColorsCG10,
- iAddWidgetBtnHighlightImage,
- iAddWidgetBtnHighlightMask,
- iWmPlugin.ResourceLoader().IconFilePath(),
- EMbmWidgetmanagerAdd_widget_button,
- EMbmWidgetmanagerAdd_widget_button_mask,
- KRgbWhite );
// This is temporary fix for ou1cimx1#228810
// Can be removed when avkon provides real fix for this error.
@@ -165,10 +143,6 @@
// dispose icons
delete iDefaultLogoImage;
delete iDefaultLogoImageMask;
- delete iAddWidgetBtnImage;
- delete iAddWidgetBtnMask;
- delete iAddWidgetBtnHighlightImage;
- delete iAddWidgetBtnHighlightMask;
}
// ---------------------------------------------------------
@@ -179,8 +153,7 @@
{
TAknWindowLineLayout logoPane =
AknLayoutScalable_Apps::listrow_wgtman_pane_g1().LayoutLine();
- TAknWindowLineLayout addPane =
- AknLayoutScalable_Apps::listrow_wgtman_pane_g2().LayoutLine();
+
TAknLayoutRect layoutRect;
TRect rect = TRect( ItemCellSize() );
layoutRect.LayoutRect( rect, logoPane );
@@ -191,18 +164,6 @@
iDefaultLogoImage, size, EAspectRatioPreserved );
AknIconUtils::SetSize(
iDefaultLogoImageMask, size, EAspectRatioPreserved );
-
- // RESIZE ADD BTN BITMAPS ACCORDING TO LAYOUT
- layoutRect.LayoutRect( rect, addPane );
- size = layoutRect.Rect().Size();
- AknIconUtils::SetSize(
- iAddWidgetBtnImage, size, EAspectRatioPreserved );
- AknIconUtils::SetSize(
- iAddWidgetBtnMask, size, EAspectRatioPreserved );
- AknIconUtils::SetSize(
- iAddWidgetBtnHighlightImage, size, EAspectRatioPreserved );
- AknIconUtils::SetSize(
- iAddWidgetBtnHighlightMask, size, EAspectRatioPreserved );
}
// ---------------------------------------------------------
@@ -239,7 +200,6 @@
innerRect,
KAknsIIDQsnFrList,
KAknsIIDQsnFrListCenter );
-
}
// DRAW LOGO
@@ -258,6 +218,7 @@
logoLayout.DrawImage( gc, bitmap, mask );
}
+ // DRAW NAME
TRgb textColor;
TAknsQsnTextColorsIndex index =
( aItemIsCurrent && listFocused && highlightEnabled )?
@@ -265,9 +226,6 @@
AknsUtils::GetCachedColor(
skin, textColor, KAknsIIDQsnTextColors, index );
-
- // DRAW TEXT
-
TAknTextLineLayout titleTextLayout =
AknLayoutScalable_Apps::listrow_wgtman_pane_t1().LayoutLine();
@@ -275,38 +233,9 @@
textLayoutTitle.LayoutText( itemRect, titleTextLayout );
textLayoutTitle.DrawText( gc, wData.Name(), ETrue, textColor );
- if ( !wData.IsUninstalling() &&
- wData.HsContentInfo().CanBeAdded() )
+ if ( wData.IsUninstalling() )
{
- // DRAW ADD BUTTON
- TAknLayoutRect addButtonLayout;
- addButtonLayout.LayoutRect( itemRect,
- AknLayoutScalable_Apps::listrow_wgtman_pane_g2().LayoutLine() );
- if ( aItemIsCurrent && listFocused && highlightEnabled )
- {
- addButtonLayout.DrawImage( gc,
- iAddWidgetBtnHighlightImage, iAddWidgetBtnHighlightMask );
- }
- else
- {
- addButtonLayout.DrawImage( gc,
- iAddWidgetBtnImage, iAddWidgetBtnMask );
- }
- }
-
- if ( !wData.IsUninstalling() )
- {
- TAknTextLineLayout descTextLayout =
- AknLayoutScalable_Apps::listrow_wgtman_pane_t2().LayoutLine();
- gc.SetPenSize(TSize(1,1));
- // DRAW DESCRIPTION TEXT
- TAknLayoutText textLayoutDes;
- textLayoutDes.LayoutText( itemRect, descTextLayout );
- textLayoutDes.DrawText( gc, wData.Description(), ETrue, textColor );
- }
- else
- {
- // draw animation
+ // DRAW UNINSTALL ANIMATION
TAknLayoutRect animationLayout;
animationLayout.LayoutRect( itemRect,
AknLayoutScalable_Apps::wait_bar_pane_cp09().LayoutLine() );
@@ -346,65 +275,7 @@
//
void CWmListItemDrawer::HandleSkinChanged()
{
- CFbsBitmap* addWidgetBtnImage( NULL );
- CFbsBitmap* addWidgetBtnMask( NULL );
- CFbsBitmap* addWidgetBtnHighlightImage( NULL );
- CFbsBitmap* addWidgetBtnHighlightMask( NULL );
- MAknsSkinInstance* skin = AknsUtils::SkinInstance();
-
- TRAPD( err,
- AknsUtils::CreateColorIconLC(
- skin,
- KAknsIIDQgnIndiWmAdd,
- KAknsIIDQsnTextColors,
- EAknsCIQsnTextColorsCG6,
- addWidgetBtnImage,
- addWidgetBtnMask,
- iWmPlugin.ResourceLoader().IconFilePath(),
- EMbmWidgetmanagerAdd_widget_button,
- EMbmWidgetmanagerAdd_widget_button_mask,
- KRgbBlack );
-
- AknsUtils::CreateColorIconLC(
- skin,
- KAknsIIDQgnIndiWmAdd,
- KAknsIIDQsnTextColors,
- EAknsCIQsnTextColorsCG10,
- addWidgetBtnHighlightImage,
- addWidgetBtnHighlightMask,
- iWmPlugin.ResourceLoader().IconFilePath(),
- EMbmWidgetmanagerAdd_widget_button,
- EMbmWidgetmanagerAdd_widget_button_mask,
- KRgbWhite );
-
- CleanupStack::Pop( 4 ); // pop icons
- );
-
- if ( KErrNone == err )
- {
- // delete old icons
- delete iAddWidgetBtnImage;
- iAddWidgetBtnImage = NULL;
- delete iAddWidgetBtnMask;
- iAddWidgetBtnMask = NULL;
- delete iAddWidgetBtnHighlightImage;
- iAddWidgetBtnHighlightImage = NULL;
- delete iAddWidgetBtnHighlightMask;
- iAddWidgetBtnHighlightMask = NULL;
-
- // transfer ownership
- iAddWidgetBtnImage = addWidgetBtnImage;
- addWidgetBtnImage = NULL;
- iAddWidgetBtnMask = addWidgetBtnMask;
- addWidgetBtnMask = NULL;
- iAddWidgetBtnHighlightImage = addWidgetBtnHighlightImage;
- addWidgetBtnHighlightImage = NULL;
- iAddWidgetBtnHighlightMask = addWidgetBtnHighlightMask;
- addWidgetBtnHighlightMask = NULL;
-
- // resize new created icons
- ResizeDefaultBitmaps();
- }
+ ResizeDefaultBitmaps();
}
// ---------------------------------------------------------
@@ -442,7 +313,8 @@
//
CWmListBox::~CWmListBox()
{
- iWidgetDatas.ResetAndDestroy();
+ iVisibleWidgetArray.ResetAndDestroy();
+ iOrderDataArray.ResetAndDestroy();
}
// ---------------------------------------------------------
@@ -458,7 +330,7 @@
SetContainerWindowL( *aParent );
// set model point to the widgets array
- Model()->SetItemTextArray( &iWidgetDatas );
+ Model()->SetItemTextArray( &iVisibleWidgetArray );
Model()->SetOwnershipType( ELbmDoesNotOwnItemArray );
// set empty-text to null
@@ -474,7 +346,7 @@
CWmWidgetData* CWmListBox::WidgetData()
{
TInt index = CurrentListBoxItemIndex();
- return (index>=0 ? iWidgetDatas[index] : NULL);
+ return (index>=0 ? iVisibleWidgetArray[index] : NULL);
}
// ---------------------------------------------------------
@@ -483,7 +355,7 @@
//
CWmWidgetData& CWmListBox::WidgetData( TInt aItemIndex )
{
- return *iWidgetDatas[ RealIndex( aItemIndex ) ];
+ return *iVisibleWidgetArray[ RealIndex( aItemIndex ) ];
}
// ---------------------------------------------------------
@@ -496,7 +368,7 @@
if ( aWidgetData )
{
aWidgetData->SetObserver( this );
- iWidgetDatas.InsertInOrderAllowRepeatsL( aWidgetData,
+ iVisibleWidgetArray.InsertInOrderAllowRepeatsL( aWidgetData,
SortOrder(EStoredOrder) );
if ( aRedraw ) { HandleItemAdditionL(); }
}
@@ -511,12 +383,25 @@
TInt realIndex = RealIndex( aItemIndex );
TBool current = ( aItemIndex == CurrentItemIndex() );
// remove widget data
- CWmWidgetData* data = iWidgetDatas[realIndex];
- iWidgetDatas.Remove( realIndex );
+ CWmWidgetData* data = iVisibleWidgetArray[realIndex];
+ iVisibleWidgetArray.Remove( realIndex );
// reorganise
TRAP_IGNORE(
AknListBoxUtils::HandleItemRemovalAndPositionHighlightL(
this, realIndex, current ) );
+
+ // Remove item from order array
+ for ( TInt i = 0; i < iOrderDataArray.Count(); i++ )
+ {
+ CWmWidgetOrderData* order = iOrderDataArray[i];
+ if ( order->EqualsTo( data->Uid(), data->PublisherId() ) )
+ {
+ iOrderDataArray.Remove( i );
+ delete order;
+ order = NULL;
+ break;
+ }
+ }
// delete now
delete data;
@@ -540,10 +425,10 @@
// CWmListBox::SetSortOrderL
// ---------------------------------------------------------
//
-void CWmListBox::SetSortOrderL( TSortOrder aOrder )
+void CWmListBox::DoSortToVisibleArray( TSortOrder aOrder )
{
// now sort the existing data
- iWidgetDatas.Sort( SortOrder( aOrder ) );
+ iVisibleWidgetArray.Sort( SortOrder( aOrder ) );
DrawNow();
}
@@ -572,9 +457,9 @@
{
iLogoSize = TSize( 0, 0);
iLogoSize = LogoSize();
- for ( TInt i=0; i<iWidgetDatas.Count(); i++)
+ for ( TInt i=0; i<iVisibleWidgetArray.Count(); i++)
{
- iWidgetDatas[i]->ReCreateLogo( iLogoSize );
+ iVisibleWidgetArray[i]->ReCreateLogo( iLogoSize );
}
}
@@ -601,7 +486,7 @@
if ( !iFindPaneIsVisible )
{
// spontaneous change in the model. Cause table to redraw
- TInt index = iWidgetDatas.Find( aWidgetData );
+ TInt index = iVisibleWidgetArray.Find( aWidgetData );
if ( index >= 0 )
{
// redraw item.
@@ -763,5 +648,53 @@
return NULL;
}
+// ---------------------------------------------------------
+// CWmListBox::SortOrderToOrderData
+// ---------------------------------------------------------
+//
+TLinearOrder<CWmWidgetOrderData> CWmListBox::SortOrderToOrderData( TSortOrder aOrder )
+ {
+ if ( aOrder == EStoredOrder )
+ {
+ return TLinearOrder<CWmWidgetOrderData>(
+ CWmWidgetOrderData::CompareByPersistentWidgetOrder );
+ }
+ else
+ {
+ return TLinearOrder<CWmWidgetOrderData>(
+ CWmWidgetOrderData::CompareByName );
+ }
+ }
+
+// ---------------------------------------------------------
+// CWmListBox::SetSortOrderToOrderDataL
+// ---------------------------------------------------------
+//
+void CWmListBox::DoSortToOrderData( TSortOrder aOrder )
+ {
+ iOrderDataArray.Sort( SortOrderToOrderData( aOrder ) );
+ }
+
+// ---------------------------------------------------------
+// CWmListBox::AddWidgetDataL
+// ---------------------------------------------------------
+//
+void CWmListBox::AddOrderDataL( CWmWidgetOrderData* aOrderData )
+ {
+ if ( aOrderData )
+ {
+ iOrderDataArray.InsertInOrderAllowRepeatsL( aOrderData,
+ SortOrderToOrderData( EStoredOrder ) );
+ }
+ }
+
+// ---------------------------------------------------------
+// CWmListBox::OrderData
+// ---------------------------------------------------------
+//
+CWmWidgetOrderData* CWmListBox::OrderData( TInt aItemIndex )
+ {
+ return iOrderDataArray[ aItemIndex ];
+ }
// End of File
--- a/idlehomescreen/widgetmanager/src/wmmaincontainer.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/src/wmmaincontainer.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -260,7 +260,7 @@
aKeyEvent.iScanCode == EStdKeyBackspace &&
aKeyEvent.iModifiers == EModifierAutorepeatable )
{
- return EKeyWasNotConsumed;
+ return EKeyWasConsumed;
}
// Handle search keyevent
@@ -310,7 +310,7 @@
aKeyEvent.iScanCode < EStdKeyF1 &&
TChar( aKeyEvent.iScanCode ).IsAlphaDigit() )
{
- ActivateFindPaneL();
+ ActivateFindPaneL( EFalse );
if ( iFindPaneIsVisible )
{
@@ -974,12 +974,7 @@
//
TBool CWmMainContainer::CanDoFind()
{
- TBool canDo( !iFindPaneIsVisible );
- if ( canDo )
- {
- canDo = ( iFocusMode == EList || iFocusMode == ENowhere );
- }
- return canDo;
+ return !iFindPaneIsVisible;
}
// ---------------------------------------------------------
@@ -1081,7 +1076,7 @@
// CWmMainContainer::ActivateFindPaneL
// ---------------------------------------------------------------------------
//
-void CWmMainContainer::ActivateFindPaneL()
+void CWmMainContainer::ActivateFindPaneL( TBool aActivateAdabtive )
{
if ( iFindbox && !iFindPaneIsVisible &&
iWidgetsList->Model()->NumberOfItems() > KMinWidgets )
@@ -1102,13 +1097,16 @@
iFindbox->ResetL();
iFindbox->SetSearchTextL( KNullDesC );
iFindbox->SetSkinEnabledL( ETrue );
-
iFindPaneIsVisible = ETrue;
iFindbox->MakeVisible( ETrue );
// layout listbox and findbox
LayoutControls();
+ if ( aActivateAdabtive )
+ {
+ iFindbox->ShowAdaptiveSearchGrid();
+ }
iFindbox->SetFocus( ETrue );
iWidgetsList->SetFindPaneIsVisible( ETrue );
@@ -1176,15 +1174,16 @@
{
if ( iWidgetsList )
{
- iWidgetsList->SetSortOrderL( CWmListBox::EAlphabetical );
+ iWidgetsList->DoSortToVisibleArray( CWmListBox::EAlphabetical );
+ iWidgetsList->DoSortToOrderData( CWmListBox::EAlphabetical );
//store changed list order
CWmPersistentWidgetOrder* widgetOrder =
CWmPersistentWidgetOrder::NewL( iWmPlugin.FileServer() );
CleanupStack::PushL( widgetOrder );
- widgetOrder->StoreL( iWidgetsList->WidgetDataArray() );
+ widgetOrder->StoreL( iWidgetsList->OrderDataArray() );
+
CleanupStack::PopAndDestroy( widgetOrder );
-
}
}
--- a/idlehomescreen/widgetmanager/src/wmmaincontainerview.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/src/wmmaincontainerview.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -363,7 +363,7 @@
{
if ( iWmMainContainer )
{
- iWmMainContainer->ActivateFindPaneL();
+ iWmMainContainer->ActivateFindPaneL( ETrue );
}
return ETrue;
}
--- a/idlehomescreen/widgetmanager/src/wmpersistentwidgetorder.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/src/wmpersistentwidgetorder.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -23,6 +23,7 @@
#include <sysutil.h>
#include "wmwidgetdata.h"
+#include "wmwidgetorderdata.h"
#include "wmpersistentwidgetorder.h"
// CONSTANTS
@@ -67,6 +68,7 @@
CWmPersistentWidgetOrder::~CWmPersistentWidgetOrder()
{
CleanupArray();
+ iTagArray.Close();
}
// ---------------------------------------------------------
@@ -107,45 +109,56 @@
// CWmPersistentWidgetOrder::StoreL
// ---------------------------------------------------------
//
-void CWmPersistentWidgetOrder::StoreL( const RWidgetDataValues& aArray )
+void CWmPersistentWidgetOrder::StoreL( const ROrderArray& aArray )
{
+
// 1. create stream for storing the data to a file
TFileName storeFileName;
GetStoreFileNameL( storeFileName );
CPermanentFileStore* fileStore = NULL;
fileStore = CPermanentFileStore::ReplaceLC(
iFs, storeFileName, EFileWrite );
- fileStore->SetTypeL( KPermanentFileStoreLayoutUid );
- RStoreWriteStream writer;
- TStreamId id = writer.CreateLC( *fileStore );
- // 2. write all content to the stream
- writer.WriteInt32L( aArray.Count() );
- for( TInt i=0; i<aArray.Count(); ++i )
+
+ if ( fileStore )
{
- CWmWidgetData* data = aArray[i];
- if ( !data || !data->IsValid() )
+ fileStore->SetTypeL( KPermanentFileStoreLayoutUid );
+ RStoreWriteStream writer;
+ TStreamId id = writer.CreateLC( *fileStore );
+
+ // 2. write all content to the stream
+ writer.WriteInt32L( aArray.Count() );
+ for( TInt i=0; i<aArray.Count(); ++i )
{
- User::Leave( KErrArgument );
+ CWmWidgetOrderData* data = aArray[i];
+
+ if ( !data )
+ {
+ User::Leave( KErrArgument );
+ }
+ TInt32 uid = data->Uid().iUid;
+ const TDesC16& publisherId = data->PublisherId();
+ writer.WriteInt32L( uid );
+ writer.WriteInt32L( publisherId.Length() );
+ writer.WriteL( publisherId, publisherId.Length() );
+
}
- TInt32 uid = data->Uid().iUid;
- const TDesC16& publisherId = data->HsContentInfo().PublisherId();
- writer.WriteInt32L( uid );
- writer.WriteInt32L( publisherId.Length() );
- writer.WriteL( publisherId, publisherId.Length() );
+ // 3. check available space and commit the stream
+ TInt streamsize = writer.Sink()->SizeL();
+ TBool belowCriticalLevel = SysUtil::DiskSpaceBelowCriticalLevelL(
+ &iFs, streamsize, EDriveC );
+
+ if( !belowCriticalLevel )
+ {
+ writer.CommitL();
+ fileStore->SetRootL(id);
+ fileStore->CommitL();
+ }
+
+ // 4. cleanup
+ CleanupStack::PopAndDestroy( &writer );
+ CleanupStack::PopAndDestroy( fileStore );
}
- // 3. check available space and commit the stream
- TInt streamsize = writer.Sink()->SizeL();
- TBool belowCriticalLevel = SysUtil::DiskSpaceBelowCriticalLevelL(
- &iFs, streamsize, EDriveC );
- if( !belowCriticalLevel )
- {
- writer.CommitL();
- fileStore->SetRootL(id);
- fileStore->CommitL();
- }
- // 4. cleanup
- CleanupStack::PopAndDestroy( &writer );
- CleanupStack::PopAndDestroy( fileStore );
+
}
// ---------------------------------------------------------
@@ -157,9 +170,9 @@
for( TInt i=0; i<iTagArray.Count(); ++i )
{
delete iTagArray[i].iPublisherId;
- iTagArray[i].iPublisherId = 0;
+ iTagArray[i].iPublisherId = NULL;
}
- iTagArray.Close();
+ iTagArray.Reset();
}
// ---------------------------------------------------------
@@ -211,6 +224,22 @@
}
// ---------------------------------------------------------
+// CWmPersistentWidgetOrder::IndexOf
+// ---------------------------------------------------------
+//
+TInt CWmPersistentWidgetOrder::IndexOf(
+ const CWmWidgetOrderData& aWidgetOrder ) const
+ {
+ TInt found = KErrNotFound;
+ for( TInt i=0; i<iTagArray.Count() && found<0; ++i )
+ {
+ if ( iTagArray[i].Matches( aWidgetOrder ) )
+ found = i;
+ }
+ return found;
+ }
+
+// ---------------------------------------------------------
// CWmPersistentWidgetOrder::Tag::Tag
// ---------------------------------------------------------
//
@@ -232,5 +261,15 @@
aWidgetData.HsContentInfo().PublisherId() == *iPublisherId );
}
+// ---------------------------------------------------------
+// CWmPersistentWidgetOrder::Tag::Matches
+// ---------------------------------------------------------
+//
+TBool CWmPersistentWidgetOrder::Tag::Matches(
+ const CWmWidgetOrderData& aWidgetOrder ) const
+ {
+ return ( aWidgetOrder.Uid().iUid == iUid &&
+ aWidgetOrder.PublisherId() == *iPublisherId );
+ }
// end of file
--- a/idlehomescreen/widgetmanager/src/wmplugin.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/src/wmplugin.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -57,11 +57,17 @@
//
CWmPlugin::~CWmPlugin()
{
+ if ( iWmInstaller &&
+ iWmInstaller->IsActive() )
+ {
+ iWmInstaller->Cancel();
+ }
+
// delete members
delete iResourceLoader;
delete iEffectManager;
delete iPostponedContent;
- delete iWmInstaller;
+ delete iWmInstaller;
}
// ---------------------------------------------------------
@@ -113,7 +119,7 @@
{
TRAP_IGNORE(
iEffectManager->BeginFullscreenEffectL(
- KAppStartCommonDefaultStyle );
+ KAppStartEffectStyle );
iViewAppUi->ActivateLocalViewL(
TUid::Uid( EWmMainContainerViewId ) );
);
@@ -180,7 +186,7 @@
iWmMainContainer->SetClosingDown( ETrue );
TRAP_IGNORE(
iEffectManager->BeginFullscreenEffectL(
- KAppExitCommonDefaultStyle );
+ KAppExitEffectStyle );
iViewAppUi->ActivateLocalViewL(
iPreviousViewUid.iViewUid );
);
@@ -287,24 +293,16 @@
{
case KHsErrorViewFull:
case KHsErrorDoesNotFit:
+ // Not enough space to add new widget to active page.
+ // Remove some content first.
ResourceLoader().InfoPopupL(
R_QTN_HS_ADD_WIDGET_NO_SPACE_NOTE, KNullDesC );
break;
-
- case KHsErrorMaxInstanceCountExceeded:
- {
- TInt resource = ( iPostponedContent->Type() == KContentTemplate ) ?
- resource = R_QTN_HS_ADD_WIDGET_MAX_REACHED : // wrt
- resource = R_QTN_HS_ADD_WIDGET_MAX_COUNT_NOTE; // native
-
- ResourceLoader().InfoPopupL( resource, KNullDesC );
+ case KErrNoMemory:
+ // Not enough memory to add more content.
+ // Please remove some Homescreen content and try again.
+ ResourceLoader().InfoPopupL( R_QTN_HS_HS_MEMORY_FULL, KNullDesC );
break;
- }
-
- case KErrNoMemory:
- ResourceLoader().InfoPopupL( R_QTN_HS_HS_MEMORY_FULL, KNullDesC );
- break;
-
default:
ResourceLoader().ErrorPopup( aError );
break;
--- a/idlehomescreen/widgetmanager/src/wmportalbutton.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/src/wmportalbutton.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -31,7 +31,7 @@
#include <apgtask.h>
#include <widgetregistryclient.h> // widgetreqistry
#include <bacline.h>
-#include <EscapeUtils.h>
+#include <escapeutils.h>
#include "wmportalbutton.h"
#include "wmcommon.h"
@@ -42,13 +42,10 @@
#include "wmprocessmonitor.h"
// CONSTANTS
-_LIT( KOviUrlPrefix, "oviurl ");
-_LIT( KBrowserUrlPrefix, "browserurl ");
-_LIT( KSpace, " ");
-_LIT( Kurlprefix, "4 ");
+_LIT( KUrlPrefix, "4 ");
+
const TUid KOSSBrowserUidValue = { 0x10008D39 };
-const TInt KMaxParam = 512;
// MEMBER FUNCTIONS
// ---------------------------------------------------------
@@ -128,28 +125,17 @@
// construct the button
CAknButton::ConstructL( NULL, NULL, NULL, NULL, aText, KNullDesC, 0 );
- TAknsItemID frameId = KAknsIIDQgnHomeWmButton;
- TAknsItemID frameCenterId = KAknsIIDQgnHomeWmButtonCenter;
- TAknsItemID framePressedId = KAknsIIDQgnHomeWmButtonPressed;
- TAknsItemID framePressedCenterId = KAknsIIDQgnHomeWmButtonPressedCenter;
-
- SetFocusing( ETrue );
- SetBackgroundIds( frameId,
- framePressedId,
- KAknsIIDQsnFrButtonInactive,
- framePressedId,
- KAknsIIDQsnFrButtonInactive );
SetFrameAndCenterIds(
- frameId,
- frameCenterId,
- KAknsIIDDefault,
- KAknsIIDDefault,
- KAknsIIDDefault,
- KAknsIIDDefault,
- framePressedId,
- framePressedCenterId,
- KAknsIIDDefault,
- KAknsIIDDefault );
+ KAknsIIDQsnFrButtonNormal,
+ KAknsIIDQsnFrButtonCenterNormal,
+ KAknsIIDQsnFrButtonPressed,
+ KAknsIIDQsnFrButtonCenterPressed,
+ KAknsIIDQsnFrButtonInactive,
+ KAknsIIDQsnFrButtonCenterInactive,
+ KAknsIIDQsnFrButtonPressed,
+ KAknsIIDQsnFrButtonCenterPressed,
+ KAknsIIDQsnFrButtonInactive,
+ KAknsIIDQsnFrButtonCenterInactive );
// start image converter for the icon
iImageConverter = CWmImageConverter::NewL( this );
@@ -159,6 +145,9 @@
// observe our own press events
SetObserver( this );
+ SetFocusing( ETrue );
+ SetRequestExit( ETrue ); // notification request for button up event
+
// ready to be drawn
ActivateL();
}
@@ -177,12 +166,7 @@
}
if ( !iProcessMonitor->IsActive() )
{
- // We will have laucher for starting ovi store but until
- // it's added to SDK we need to start browser to ovi url
- if ( 0 )
- RunOviL( iWmMainContainer->Configuration() );
- else
- StartBrowserL( iWmMainContainer->Configuration() );
+ RunOviL( iWmMainContainer->Configuration() );
}
}
else if ( iPortalButtonIndex == 1 )
@@ -202,36 +186,39 @@
//
void CWmPortalButton::RunOviL( CWmConfiguration& aConf )
{
+ // param is: channel=homescreenwidgets
+ // laucher uid: 0x2002D07F
RApaLsSession session;
User::LeaveIfError( session.Connect() );
CleanupClosePushL( session );
//get app info
TApaAppInfo appInfo;
- TUid launchUid; //plan was to save uid in cenrep and fetch it from there
+ TUid launchUid;
launchUid = aConf.PortalButtonClientUid( iPortalButtonIndex );
- User::LeaveIfError( session.GetAppInfo( appInfo, launchUid ) );
-
- // Form parameter
- // it should look like this "oviurl url1 browserurl url2"
- HBufC* param = HBufC::NewLC( KMaxParam );
- param->Des().Copy( KOviUrlPrefix );
- HBufC* decodedParam = EscapeUtils::EscapeEncodeL( aConf.PortalButtonClientParam( iPortalButtonIndex ), EscapeUtils::EEscapeUrlEncoded );
- CleanupStack::PushL( decodedParam );
- param->Des().Append( *decodedParam );
- param->Des().Append( KSpace );
- param->Des().Append( KBrowserUrlPrefix );
- decodedParam->Des().Copy( aConf.PortalButtonBrowserUrl( iPortalButtonIndex ) );
- param->Des().Append( *decodedParam );
- // do the launch
- RProcess process;
- User::LeaveIfError( process.Create( appInfo.iFullName, *param ) );
- iProcessMonitor->Monitor( process );
- process.Resume();
-
- CleanupStack::PopAndDestroy( decodedParam );
- CleanupStack::PopAndDestroy( param );
+ TInt err = session.GetAppInfo( appInfo, launchUid );
+ if ( err != KErrNone )
+ {
+ //This is temp until we have laucher in SDK
+ StartBrowserL( aConf );
+ }
+ else
+ {
+ // 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 );
}
@@ -245,16 +232,27 @@
User::LeaveIfError( session.Connect() );
CleanupClosePushL( session );
- // browser start parameters
- HBufC* param = HBufC::NewLC(
- aConf.PortalButtonBrowserUrl( iPortalButtonIndex ).Length() +
- Kurlprefix().Length() );
-
- param->Des().Copy( Kurlprefix );
- param->Des().Append( aConf.PortalButtonBrowserUrl( iPortalButtonIndex ) );
+ HBufC* param = NULL;
+ if ( iPortalButtonIndex == 1 )
+ {
+ // browser start parameter
+ param = HBufC::NewLC(
+ aConf.PortalButtonBrowserUrl( iPortalButtonIndex ).Length() +
+ KUrlPrefix().Length() );
+
+ param->Des().Copy( KUrlPrefix );
+ param->Des().Append( aConf.PortalButtonBrowserUrl( iPortalButtonIndex ) );
+ }
+ else
+ {
+ // becouse launcher knows url we need to have it temp here
+ // until laucher is available
+ _LIT( KTempUrl, "4 https://store.ovi.com/applications/");
+ param = HBufC::NewLC( KTempUrl().Length() );
+ param->Des().Copy( KTempUrl );
+ }
TUid id( KOSSBrowserUidValue );
-
TApaTaskList taskList( CEikonEnv::Static()->WsSession() );
TApaTask task = taskList.FindApp( id );
if( task.Exists() )
@@ -284,27 +282,62 @@
// CWmPortalButton::RunOperatorL
// ---------------------------------------------------------
//
-void CWmPortalButton::RunOperatorL( CWmConfiguration& /*aConf*/ )
+void CWmPortalButton::RunOperatorL( CWmConfiguration& aConf )
{
- //TODO: current info is that this will be a widget
+ // Current info is that this will be a widget
+ // meanwhile we just start browser
+ StartBrowserL( aConf );
}
// ---------------------------------------------------------
// CWmPortalButton::HandleControlEventL
// ---------------------------------------------------------
//
-void CWmPortalButton::HandleControlEventL( CCoeControl* /*aControl*/,
+void CWmPortalButton::HandleControlEventL( CCoeControl* aControl,
TCoeEvent aEventType )
{
- // execute portal action when button pressed (short or long press)
- if ( aEventType == EEventStateChanged ||
- aEventType == ELongPressEndedEvent )
+ if ( aControl == this )
{
- ExecuteL();
+ 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
// ---------------------------------------------------------
//
@@ -370,11 +403,17 @@
if ( iButtonIcon && iButtonIconMask )
{
TSize size = LayoutIconSize();
- AknIconUtils::SetSize(
+ if ( iButtonIcon->SizeInPixels() != size )
+ {
+ AknIconUtils::SetSize(
iButtonIcon, size, EAspectRatioPreserved );
- AknIconUtils::SetSize(
+ }
+ if ( iButtonIconMask->SizeInPixels() != size )
+ {
+ AknIconUtils::SetSize(
iButtonIconMask, size, EAspectRatioPreserved );
- DrawDeferred();
+ }
+ DrawDeferred();
}
}
else
@@ -399,13 +438,13 @@
CWindowGc& gc = SystemGc();
MAknsSkinInstance* skin = AknsUtils::SkinInstance();
- TAknsItemID frameId = ( KAknsIIDQgnHomeWmButton );
- TAknsItemID frameCenterId = ( KAknsIIDQgnHomeWmButtonCenter );
+ TAknsItemID frameId = ( KAknsIIDQsnFrButtonNormal );
+ TAknsItemID frameCenterId = ( KAknsIIDQsnFrButtonCenterNormal );
if ( iButtonPressed )
{
- frameId = ( KAknsIIDQgnHomeWmButtonPressed );
- frameCenterId = ( KAknsIIDQgnHomeWmButtonPressedCenter );
+ frameId = ( KAknsIIDQsnFrButtonPressed );
+ frameCenterId = ( KAknsIIDQsnFrButtonCenterPressed );
}
else if ( IsDimmed() )
{
@@ -414,8 +453,8 @@
}
else if ( IsFocused() )
{
- frameId = KAknsIIDQsnFrList;
- frameCenterId = KAknsIIDQsnFrListCenter;
+ frameId = KAknsIIDQsnFrButtonHighlight;
+ frameCenterId = KAknsIIDQsnFrButtonHighlightCenter;
}
iBgContext->SetFrame( frameId );
@@ -423,7 +462,7 @@
iBgContext->SetFrameRects( rect, innerRect );
if ( !AknsDrawUtils::Background( skin, iBgContext, NULL,
- gc, rect, KAknsDrawParamNoClearUnderImage ) )
+ gc, rect, KAknsDrawParamNoClearUnderImage ) )
{
gc.SetBrushColor( KRgbRed );
gc.SetBrushStyle( CGraphicsContext::ESolidBrush );
@@ -511,6 +550,12 @@
AknsUtils::GetCachedColor(
skin, textColor, KAknsIIDQsnTextColors, EAknsCIQsnTextColorsCG6 );
}
+ else
+ {
+ // default for button
+ AknsUtils::GetCachedColor(
+ skin, textColor, KAknsIIDQsnTextColors, EAknsCIQsnTextColorsCG80 );
+ }
aGc.SetPenColor( textColor);
// Layout data not correct, add some space for text
--- a/idlehomescreen/widgetmanager/src/wmwidgetdata.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/src/wmwidgetdata.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -280,6 +280,9 @@
{
iconStr = aIconStr.Alloc();
}
+
+ // nothing to do if no iconstr
+ if ( !iconStr ){ return; }
TSize size( iLogoSize );
if ( iLogoImage ) { size = iLogoImage->SizeInPixels(); }
@@ -295,7 +298,8 @@
iconStr = NULL;
// handle result
- if ( KErrNone == err && IsPrepairingLogo() )
+ if ( KErrNone == err && iWait &&
+ IsPrepairingLogo() )
{
iWait->Start();
}
--- a/idlehomescreen/widgetmanager/src/wmwidgetloaderao.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/src/wmwidgetloaderao.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -24,6 +24,7 @@
#include "wmlistbox.h"
#include "wmwidgetloaderao.h"
#include "wminstaller.h"
+#include "wmwidgetorderdata.h"
#include <hscontentcontroller.h> // content control api
#include <hscontentinfoarray.h> // content control api
@@ -139,13 +140,17 @@
iWidgetOrder = CWmPersistentWidgetOrder::NewL( iWmPlugin.FileServer() );
TRAPD( loadError, iWidgetOrder->LoadL() );
- // 3. prepare the widget data list
+ // 3. prepare the widget data array & sort order array
for( TInt i=0; i<iWidgetsList.WidgetDataCount(); ++i )
{
iWidgetsList.WidgetData(i).SetPersistentWidgetOrder( iWidgetOrder );
iWidgetsList.WidgetData(i).SetValid( EFalse );
}
-
+ for( TInt i = 0; i < iWidgetsList.OrderDataArray().Count(); ++i )
+ {
+ iWidgetsList.OrderData(i)->SetPersistentWidgetOrder( iWidgetOrder );
+ }
+
// 4. loop through the content array and compare it against the existing
// widget data.
TInt widgetsAdded = 0;
@@ -162,18 +167,27 @@
CWmWidgetData* existingData = FindWidgetData( *contentInfo );
if ( existingData )
{
- // update existing widget data
+ // update existing visible widget data
existingData->SetValid( ETrue );
if ( existingData->ReplaceContentInfoL( contentInfo ) )
{
+ // Update name to order array if name changed
+ for ( TInt i=0; i < iWidgetsList.OrderDataArray().Count(); i++ )
+ {
+ CWmWidgetOrderData* order = iWidgetsList.OrderData(i);
+ if ( order->EqualsTo(
+ existingData->Uid(), existingData->PublisherId() ) )
+ {
+ order->UpdateNameL( existingData->Name() );
+ }
+ }
++widgetsChanged;
}
}
else
{
// add a new widget data
- AddWidgetDataL( contentInfo );
- ++widgetsAdded;
+ AddWidgetDataL( contentInfo, widgetsAdded );
}
}
@@ -219,9 +233,8 @@
// 8. store list order if necessary
if ( loadError != KErrNone || widgetsAdded > 0 || widgetsRemoved > 0 )
{
- iWidgetOrder->StoreL( iWidgetsList.WidgetDataArray() );
+ iWidgetOrder->StoreL( iWidgetsList.OrderDataArray() );
}
-
}
// ---------------------------------------------------------
@@ -247,31 +260,65 @@
// ---------------------------------------------------------
//
void CWmWidgetLoaderAo::AddWidgetDataL(
- CHsContentInfo* aContentInfo )
+ CHsContentInfo* aContentInfo, TInt& aCount )
{
CleanupStack::PushL( aContentInfo );
if ( !iWidgetRegistry )
{
iWidgetRegistry = new (ELeave) RWidgetRegistryClientSession();
- User::LeaveIfError( iWidgetRegistry->Connect() );
+ TInt err = iWidgetRegistry->Connect();
+ if ( KErrNone != err )
+ {
+ delete iWidgetRegistry;
+ iWidgetRegistry = NULL;
+ User::Leave( err );
+ }
}
- CleanupStack::Pop( aContentInfo );
+
+ // Becouse we show only widgets that can be added we need two arrays
+ // to maintain order data and visible data.
+ // All widgets are added to listbox's iOrderDataArray and
+ // widgets that CanBeAdded are added also to iVisibleWidgetArray.
+ CWmWidgetOrderData* order = CWmWidgetOrderData::NewLC(
+ aContentInfo->PublisherId(),
+ UidFromString( aContentInfo->Uid() ),
+ aContentInfo->Name(),
+ iWidgetOrder
+ );
+
+ // add to order data
+ iWidgetsList.AddOrderDataL( order );
+ CleanupStack::Pop( order );
- CWmWidgetData* widgetData = CWmWidgetData::NewLC(
- iWidgetsList.LogoSize(),
- iWmPlugin.ResourceLoader(),
- aContentInfo, iWidgetRegistry );
- widgetData->SetPersistentWidgetOrder( iWidgetOrder );
- widgetData->SetValid( ETrue );
-
- if ( iUninstallUid != KNullUid &&
- iUninstallUid == widgetData->PublisherUid() )
+ if ( aContentInfo->CanBeAdded() )
{
- widgetData->VisualizeUninstallL();
+ // widgetdata takes ownership of contentinfo
+ CleanupStack::Pop( aContentInfo );
+
+ CWmWidgetData* widgetData = CWmWidgetData::NewLC(
+ iWidgetsList.LogoSize(),
+ iWmPlugin.ResourceLoader(),
+ aContentInfo, iWidgetRegistry );
+ widgetData->SetPersistentWidgetOrder( iWidgetOrder );
+ widgetData->SetValid( ETrue );
+
+ // start uninstall animation if this widget
+ // is currently been unistalled
+ if ( iUninstallUid != KNullUid &&
+ iUninstallUid == widgetData->PublisherUid() )
+ {
+ widgetData->VisualizeUninstallL();
+ }
+ // add to visible data
+ iWidgetsList.AddWidgetDataL( widgetData, EFalse );
+ CleanupStack::Pop( widgetData );
+ aCount++;
}
-
- iWidgetsList.AddWidgetDataL( widgetData, EFalse );
- CleanupStack::Pop( widgetData );
+ else
+ {
+ //delete aContentInfo when it's not added to iVisibleWidgetArray
+ CleanupStack::PopAndDestroy( aContentInfo );
+ }
}
// ---------------------------------------------------------------------------
@@ -298,5 +345,24 @@
iWidgetOrder = NULL;
}
+// ----------------------------------------------------
+// CWmWidgetData::UidFromString
+// ----------------------------------------------------
+//
+TUid CWmWidgetLoaderAo::UidFromString( const TDesC8& aUidString ) const
+ {
+ TUid uid( KNullUid );
+ const TInt KHexPrefixLength = 2;
+ if ( aUidString.Length() > KHexPrefixLength )
+ {
+ TUint id = 0;
+ TLex8 lex( aUidString.Mid( KHexPrefixLength ) );
+ if ( lex.Val( id, EHex ) == KErrNone )
+ {
+ uid.iUid = (TInt32)id;
+ }
+ }
+ return uid;
+ }
// end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/widgetmanager/src/wmwidgetorderdata.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,187 @@
+/*
+* 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:
+* CWmWidgetOrderData implementation.
+*
+*/
+
+
+// INCLUDE FILES
+#include <e32base.h>
+#include <e32std.h>
+#include "wmwidgetorderdata.h"
+#include "wmpersistentwidgetorder.h"
+
+// ---------------------------------------------------------
+// CWmWidgetOrderData::NewL
+// ---------------------------------------------------------
+//
+CWmWidgetOrderData* CWmWidgetOrderData::NewL(
+ const TDesC& aPublisherId,
+ const TUid aUid,
+ const TDesC& aName,
+ const CWmPersistentWidgetOrder* aPersistentWidgetOrder )
+ {
+ CWmWidgetOrderData* self = CWmWidgetOrderData::NewLC(
+ aPublisherId, aUid, aName, aPersistentWidgetOrder );
+ CleanupStack::Pop(); // self;
+ return self;
+ }
+
+// ---------------------------------------------------------
+// CWmWidgetOrderData::NewLC
+// ---------------------------------------------------------
+//
+CWmWidgetOrderData* CWmWidgetOrderData::NewLC(
+ const TDesC& aPublisherId,
+ const TUid aUid,
+ const TDesC& aName,
+ const CWmPersistentWidgetOrder* aPersistentWidgetOrder )
+ {
+ CWmWidgetOrderData* self = new ( ELeave ) CWmWidgetOrderData( aUid );
+ CleanupStack::PushL(self);
+ self->ConstructL( aPublisherId, aName, aPersistentWidgetOrder );
+ return self;
+ }
+
+// ---------------------------------------------------------
+// CWmWidgetOrderData::CWmWidgetOrderData
+// ---------------------------------------------------------
+//
+CWmWidgetOrderData::CWmWidgetOrderData( const TUid aUid )
+ : iUid( aUid )
+ {
+ }
+
+// ---------------------------------------------------------
+// CWmWidgetOrderData::ConstructL
+// ---------------------------------------------------------
+//
+void CWmWidgetOrderData::ConstructL(
+ const TDesC& aPublisherId,
+ const TDesC& aName,
+ const CWmPersistentWidgetOrder* aPersistentWidgetOrder )
+ {
+ iPublisherId = aPublisherId.AllocL();
+ iName = aName.AllocL();
+ iPersistentWidgetOrder = aPersistentWidgetOrder;
+ }
+
+// ---------------------------------------------------------
+// CWmWidgetOrderData::~CWmWidgetOrderData
+// ---------------------------------------------------------
+//
+CWmWidgetOrderData::~CWmWidgetOrderData()
+ {
+ delete iPublisherId;
+ delete iName;
+ //delete iPersistentWidgetOrder // TODO: is needed???
+ }
+
+// ---------------------------------------------------------
+// CWmWidgetOrderData::PublisherId
+// ---------------------------------------------------------
+//
+const TDesC& CWmWidgetOrderData::PublisherId() const
+ {
+ return ( iPublisherId ) ? *iPublisherId : KNullDesC();
+ }
+
+// ---------------------------------------------------------
+// CWmWidgetOrderData::Uid
+// ---------------------------------------------------------
+//
+const TUid CWmWidgetOrderData::Uid() const
+ {
+ return iUid;
+ }
+
+// ---------------------------------------------------------
+// CWmWidgetOrderData::Name
+// ---------------------------------------------------------
+//
+const TDesC& CWmWidgetOrderData::Name() const
+ {
+ return ( iName ) ? *iName : KNullDesC();
+ }
+
+// ---------------------------------------------------------
+// CWmWidgetOrderData::CompareByName
+// ---------------------------------------------------------
+//
+TInt CWmWidgetOrderData::CompareByName(
+ const CWmWidgetOrderData& aDataOne, const CWmWidgetOrderData& aDataTwo )
+ {
+ // negate the result for ascending alphabetical order
+ TInt result = aDataOne.Name().CompareC( aDataTwo.Name() );
+ return result;
+ }
+
+// ---------------------------------------------------------
+// CWmWidgetOrderData::CompareByPersistentWidgetOrder
+// ---------------------------------------------------------
+//
+TInt CWmWidgetOrderData::CompareByPersistentWidgetOrder(
+ const CWmWidgetOrderData& aDataOne, const CWmWidgetOrderData& aDataTwo )
+ {
+ TInt result;
+ const CWmPersistentWidgetOrder* order = aDataOne.iPersistentWidgetOrder;
+ if ( order && !order->IsEmpty() )
+ {
+ result = order->IndexOf( aDataOne ) - order->IndexOf( aDataTwo );
+ }
+ else
+ {
+ // fallback: if persistent widget order is not available
+ // or it is empty (this is the case on first start, or if the persistent
+ // file is corrupted or deleted) -> order widgets by name.
+ result = CompareByName( aDataOne, aDataTwo );
+ }
+ return result;
+ }
+
+// ---------------------------------------------------------
+// CWmWidgetOrderData::EqualsTo
+// ---------------------------------------------------------
+//
+TBool CWmWidgetOrderData::EqualsTo( const TUid aUid, const TDesC& aPublisherId )
+ {
+ return ( iUid == aUid && *iPublisherId == aPublisherId );
+ }
+
+// ---------------------------------------------------------
+// CWmWidgetOrderData::SetPersistentWidgetOrder
+// ---------------------------------------------------------
+//
+void CWmWidgetOrderData::SetPersistentWidgetOrder(
+ CWmPersistentWidgetOrder* aPersistentWidgetOrder )
+ {
+ iPersistentWidgetOrder = aPersistentWidgetOrder;
+ }
+
+// ---------------------------------------------------------
+// CWmWidgetOrderData::UpdateName
+// ---------------------------------------------------------
+//
+void CWmWidgetOrderData::UpdateNameL( const TDesC& aName )
+ {
+ if ( iName->Compare( aName ) != KErrNone )
+ {
+ delete iName;
+ iName = NULL;
+ iName = aName.AllocL();
+ }
+ }
+
+// End of file
--- a/idlehomescreen/widgetmanager/tsrc/wmunittest/conf/ui_wmunittest.cfg Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/tsrc/wmunittest/conf/ui_wmunittest.cfg Fri Mar 12 15:41:49 2010 +0200
@@ -17,6 +17,8 @@
LOGO_PATH 102
CAN_BE_ADDED 103
CAN_BE_REMOVED 104
+KPUBLISHERID 105
+KTYPE 106
EUnrecognized 0
EUidIcon 1
@@ -1060,6 +1062,49 @@
//-------------------------------------------------------------------------------
//
+// Tests Uninstall
+[Test]
+title Uninstall
+create wmunittest test
+test PluginCreate
+test InstallWrtWidget "c:\testframework\wmunittest\wmlogo\test.wgz"
+test SetMass 1
+test ChangeContent 0 KPUBLISHERID "com.nokia.widget.foreca.touchweather"
+test PluginActivate
+pause 500
+test UninstallUid
+test Uninstall
+test UninstallUid
+test WaitUninstallToFinnish
+test CleanUninstall
+pause 3000
+test PluginDeactivate
+pause 500
+test PluginDelete
+test WasUnistalled "com.nokia.widget.foreca.touchweather"
+delete test
+[Endtest]
+
+// Tests Uninstall
+[Test]
+title Cancel Uninstall
+create wmunittest test
+test PluginCreate
+test InstallWrtWidget "c:\testframework\wmunittest\wmlogo\test.wgz"
+test SetMass 1
+test ChangeContent 0 KPUBLISHERID "com.nokia.widget.foreca.touchweather"
+test PluginActivate
+pause 500
+test Uninstall
+pause 500
+test CancelUninstall
+pause 500
+test PluginDeactivate
+pause 500
+test PluginDelete
+delete test
+[Endtest]
+
// Tests error note
[Test]
title Other error note
--- a/idlehomescreen/widgetmanager/tsrc/wmunittest/group/Create_sisx.bat Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/tsrc/wmunittest/group/Create_sisx.bat Fri Mar 12 15:41:49 2010 +0200
@@ -16,4 +16,4 @@
rem Create wm sis&sisx files
makesis wmunittest.pkg
-signsis wmunittest.SIS wmunittest.SISX Nokia_RnDCert_02.der Nokia_RnDCert_02.key
+signsis wmunittest.SIS wmunittest.SISX ..\..\..\internal\cert\Nokia_RnDCert_02.der ..\..\..\internal\cert\Nokia_RnDCert_02.key
--- a/idlehomescreen/widgetmanager/tsrc/wmunittest/group/wmunittest.mmp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/tsrc/wmunittest/group/wmunittest.mmp Fri Mar 12 15:41:49 2010 +0200
@@ -25,6 +25,8 @@
UID 0x1000008D 0x101FB3E3
CAPABILITY ALL -TCB
+MACRO _WM_UNIT_TEST
+
VENDORID VID_DEFAULT
SECUREID 0x101FB3E3
@@ -52,7 +54,8 @@
SOURCE wmwidgetloaderao.cpp
SOURCE wmconfiguration.cpp
SOURCE wminstaller.cpp
-SOURCE wmprocessmonitor.cpp
+SOURCE wmprocessmonitor.cpp
+SOURCE wmwidgetorderdata.cpp
SOURCEPATH ../src
SOURCE wmunittest.cpp
@@ -60,6 +63,7 @@
SOURCE wmunittest_plugin.cpp
SOURCE wmunittest_sortorder.cpp
SOURCE wmunittest_converter.cpp
+SOURCE wmunittest_uninstaller.cpp
// same as in widgetmanager.mmp
LIBRARY euser.lib
@@ -102,6 +106,8 @@
LIBRARY centralrepository.lib
LIBRARY bmpanim.lib // AknBitmap animation
LIBRARY inetprotutil.lib
+LIBRARY bitgdi.lib // CFbsBitmapDevice
+LIBRARY charconv.lib
// libraries needed by the test framework
LIBRARY stiftestinterface.lib
--- a/idlehomescreen/widgetmanager/tsrc/wmunittest/inc/wmunittest.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/tsrc/wmunittest/inc/wmunittest.h Fri Mar 12 15:41:49 2010 +0200
@@ -25,8 +25,10 @@
#include <testclassassert.h>
#include <s32file.h> // RFs
+#include "wmwidgetorderdata.h"
#include "wmimageconverter.h" // MConverterObserver
#include <hscontentcontroller.h>
+#include "wminstaller.h"
// MACROS
#define TEST_CLASS_VERSION_MAJOR 0
@@ -58,7 +60,7 @@
class CHsContentInfo;
class CHsContentInfoArray;
class RWidgetDataValues;
-
+class CWmInstaller;
// CLASS DECLARATION
/**
@@ -95,6 +97,7 @@
TInt WidgetListL( CHsContentInfoArray& aArray );
+ TInt WidgetListL( CHsContentInfo& aInfo, CHsContentInfoArray& aArray );
TInt ViewListL( CHsContentInfoArray& aArray );
TInt AppListL( CHsContentInfoArray& aArray );
TInt AddWidgetL( CHsContentInfo& aInfo );
@@ -169,12 +172,24 @@
// cancel ongoing convert
TInt CancelConvertL( CStifItemParser& aItem );
-
- private: // members used in testing
+ // TESTING UNISTALL
+ TInt UninstallL( CStifItemParser& aItem );
+ TInt WaitUninstallToFinnishL( CStifItemParser& aItem );
+ TInt UninstallUidL( CStifItemParser& aItem );
+ TInt CleanUninstall( CStifItemParser& aItem );
+ TInt WasUnistalledL( CStifItemParser& aItem );
+ TInt CancelUninstall( CStifItemParser& aItem );
+
+ private: // helper functions for test cases
void CreateContentInfoArrayL( CHsContentInfoArray& aArray, TInt aCount );
- void CreateWidgetDataArrayL( RWidgetDataValues& aArray, TInt aCount );
-
+ void CreateWidgetDataArrayL( ROrderArray& aArray, TInt aCount );
+ TUid UidFromString( const TDesC8& aUidString ) const;
+ void StartTimerL();
+ static TInt Timeout( TAny* aPtr );
+
+ private: // members used in testing
+
// file server
RFs iFs;
@@ -202,6 +217,12 @@
// multipurpose test data count
TInt iMass;
+ // uninstall uid
+ TUid iUninstallUid;
+
+ // timer for waiting uninstall to finnish
+ CPeriodic* iTimer;
+
// requested changes to the content
TInt iChangeIndex;
TInt iChangeType;
--- a/idlehomescreen/widgetmanager/tsrc/wmunittest/src/wmunittest_all.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/tsrc/wmunittest/src/wmunittest_all.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -79,6 +79,14 @@
ENTRY( "ImageConverterConversionMethod", CWmUnitTest::ImageConverterConversionMethodL ),
ENTRY( "CancelConvert", CWmUnitTest::CancelConvertL ),
+ // uninstall
+ ENTRY( "Uninstall", CWmUnitTest::UninstallL ),
+ ENTRY( "UninstallUid", CWmUnitTest::UninstallUidL ),
+ ENTRY( "WaitUninstallToFinnish", CWmUnitTest::WaitUninstallToFinnishL ),
+ ENTRY( "CleanUninstall", CWmUnitTest::CleanUninstall ),
+ ENTRY( "WasUnistalled", CWmUnitTest::WasUnistalledL ),
+ ENTRY( "CancelUninstall", CWmUnitTest::CancelUninstall ),
+
};
const TInt count = sizeof( KFunctions ) /
--- a/idlehomescreen/widgetmanager/tsrc/wmunittest/src/wmunittest_plugin.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/tsrc/wmunittest/src/wmunittest_plugin.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -22,6 +22,7 @@
#include <stiftestinterface.h>
#include <bautils.h>
#include <aknsskininstance.h>
+#include <utf.h>
#include "wmunittest.h"
// components to test
#include "wmplugin.h"
@@ -47,7 +48,8 @@
const TInt KLogoPath = 102;
const TInt KCanBeAdded = 103;
const TInt KCanBeRemoved = 104;
-
+const TInt KPublisherId = 105;
+const TInt KType = 106;
// ============================ MEMBER FUNCTIONS ===============================
@@ -98,7 +100,7 @@
TInt CWmUnitTest::PluginDeactivateL( CStifItemParser& /*aItem*/ )
{
if ( iWmPlugin == 0 ) User::Leave( KErrArgument );
- iWmPlugin->CloseView();
+ iWmPlugin->DeActivate();
_RETURN("PluginActivateL End", KErrNone);
}
@@ -123,6 +125,11 @@
return KErrNone;
}
+TInt CWmUnitTest::WidgetListL( CHsContentInfo& aInfo, CHsContentInfoArray& aArray )
+ {
+ return KErrNone;
+ }
+
TInt CWmUnitTest::ViewListL( CHsContentInfoArray& /*aArray*/ )
{
return KErrNone;
@@ -165,12 +172,12 @@
TInt CWmUnitTest::ActiveViewL( CHsContentInfo& /*aInfo*/ )
{
- return 0;
+ return KErrNone;
}
TInt CWmUnitTest::ActiveAppL( CHsContentInfo& /*aInfo*/ )
{
- return 0;
+ return KErrNone;
}
@@ -236,6 +243,14 @@
{ info->SetCanBeAdded( s2b(*iChangeValue) ); }
else if ( iChangeType == KCanBeRemoved )
{ info->SetCanBeRemoved( s2b(*iChangeValue) ); }
+ else if ( iChangeType == KPublisherId )
+ { info->SetPublisherIdL( *iChangeValue ); }
+ else if ( iChangeType == KType )
+ {
+ TBuf8<128> buf;
+ CnvUtfConverter::ConvertFromUnicodeToUtf8( buf, *iChangeValue );
+ info->SetTypeL( buf );
+ }
}
}
--- a/idlehomescreen/widgetmanager/tsrc/wmunittest/src/wmunittest_sortorder.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/widgetmanager/tsrc/wmunittest/src/wmunittest_sortorder.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -26,6 +26,7 @@
// components to test
#include "wmpersistentwidgetorder.h"
#include "wmwidgetdata.h"
+#include "wmwidgetorderdata.h"
#include <hscontentinfo.h>
#include <hscontentinfoarray.h>
#include <widgetregistryclient.h> // widgetreqistry
@@ -85,7 +86,7 @@
TInt ret = KErrNone;
_CLEANUPCHECK_BEGIN
- RWidgetDataValues array;
+ ROrderArray array;
CleanupClosePushL( array );
CreateWidgetDataArrayL( array, iMass );
iWmWidgetOrder->StoreL( array );
@@ -126,7 +127,7 @@
_CLEANUPCHECK_BEGIN
// test IndexOf
- RWidgetDataValues array;
+ ROrderArray array;
CreateWidgetDataArrayL( array, iMass );
for( TInt i=0; i<array.Count() && ret==KErrNone; ++i )
{
@@ -145,35 +146,45 @@
// CWmUnitTest::CreateWidgetDataArrayL
// -----------------------------------------------------------------------------
//
-void CWmUnitTest::CreateWidgetDataArrayL( RWidgetDataValues& aArray, TInt aCount )
+void CWmUnitTest::CreateWidgetDataArrayL( ROrderArray& aArray, TInt aCount )
{
// first create an array of content info classes
CHsContentInfoArray* contentArray = CHsContentInfoArray::NewL();
CleanupStack::PushL( contentArray );
CreateContentInfoArrayL( *contentArray, aCount );
- // connect to widget registry
- RWidgetRegistryClientSession registryClient;
- User::LeaveIfError( registryClient.Connect() );
- CleanupClosePushL( registryClient );
- TSize dummySize(40,40);
- CWmResourceLoader* resLoader = NULL; // not used in this case
- while( contentArray->Array().Count() > 0 )
- {
- CWmWidgetData* data = CWmWidgetData::NewL(
- dummySize, *resLoader,
- contentArray->Array()[0],
- ®istryClient);
- contentArray->Array().Remove( 0 );
+ for ( TInt i = 0; i < contentArray->Array().Count(); i++ )
+ {
+ CHsContentInfo* contentInfo = contentArray->Array()[i];
+ CWmWidgetOrderData* data = CWmWidgetOrderData::NewL(
+ contentInfo->PublisherId(),
+ UidFromString ( contentInfo->Uid() ),
+ contentInfo->Name(),
+ iWmWidgetOrder );
+
CleanupStack::PushL( data );
aArray.AppendL( data );
CleanupStack::Pop( data );
}
-
- registryClient.Disconnect();
- CleanupStack::PopAndDestroy( ®istryClient );
+
+ contentArray->Array().ResetAndDestroy();
CleanupStack::PopAndDestroy( contentArray );
}
+TUid CWmUnitTest::UidFromString( const TDesC8& aUidString ) const
+ {
+ TUid uid( TUid::Null() );
+ const TInt KHexPrefixLength = 2;
+ if ( aUidString.Length() > KHexPrefixLength )
+ {
+ TUint id = 0;
+ TLex8 lex( aUidString.Mid( KHexPrefixLength ) );
+ if ( lex.Val( id, EHex ) == KErrNone )
+ {
+ uid.iUid = (TInt32)id;
+ }
+ }
+ return uid;
+ }
// End of File
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/idlehomescreen/widgetmanager/tsrc/wmunittest/src/wmunittest_uninstaller.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -0,0 +1,184 @@
+/*
+* 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:
+*
+*/
+
+//INCLUDE FILES
+#include <e32svr.h>
+#include <stdlib.h>
+#include <stifparser.h>
+#include <stiftestinterface.h>
+#include <bautils.h>
+#include <aknsskininstance.h>
+#include <swinstapi.h>
+#include <swinstdefs.h>
+#include <coemain.h>
+#include <EIKENV.H>
+#include <widgetregistryclient.h> // widgetreqistry
+#include "wmresourceloader.h"
+
+#include "hscontentinfo.h"
+#include "wmplugin.h"
+#include "wmwidgetdata.h"
+#include "wmunittest.h"
+#include "wminstaller.h"
+#include "wmmainContainer.h"
+#include "wmlistbox.h"
+
+
+// -----------------------------------------------------------------------------
+// CWmUnitTest::UninstallL
+// -----------------------------------------------------------------------------
+//
+TInt CWmUnitTest::UninstallL( CStifItemParser& aItem )
+ {
+ TInt ret = KErrNone;
+ CWmWidgetData* data =
+ iWmPlugin->iWmMainContainer->iWidgetsList->WidgetData();
+ iUninstallUid = data->PublisherUid();
+ iWmPlugin->WmInstaller().UninstallL( data );
+
+ _RETURN("UninstallL End", ret);
+ }
+
+// -----------------------------------------------------------------------------
+// CWmUnitTest::CleanUninstall
+// -----------------------------------------------------------------------------
+//
+TInt CWmUnitTest::CleanUninstall( CStifItemParser& /*aItem*/ )
+ {
+ if ( iTimer )
+ {
+ if ( iTimer->IsActive() )
+ iTimer->Cancel();
+
+ delete iTimer;
+ iTimer = NULL;
+ }
+ _RETURN("CleanUninstall End", KErrNone );
+ }
+
+// -----------------------------------------------------------------------------
+// CWmUnitTest::UninstallUidL
+// -----------------------------------------------------------------------------
+//
+TInt CWmUnitTest::UninstallUidL( CStifItemParser& /*aItem*/ )
+ {
+ TInt ret = KErrNone;
+
+ TUid installUid = iWmPlugin->WmInstaller().UninstallUid();
+ if ( installUid != iUninstallUid )
+ {
+ ret = KErrNotFound;
+ }
+ _RETURN("UninstallUidL End", ret);
+ }
+
+// -----------------------------------------------------------------------------
+// CWmUnitTest::WaitUninstallToFinnishL
+// -----------------------------------------------------------------------------
+//
+TInt CWmUnitTest::WaitUninstallToFinnishL( CStifItemParser& /*aItem*/ )
+ {
+ TInt ret = KErrNone;
+
+ if ( iWmPlugin->WmInstaller().IsActive() )
+ {
+ StartTimerL();
+ CActiveScheduler::Start();
+
+ if ( iWmPlugin->WmInstaller().UninstallUid() != KNullUid ||
+ iWmPlugin->WmInstaller().IsActive() )
+ {
+ ret = KErrGeneral;
+ }
+ }
+ _RETURN("WaitUninstallToFinnishL End", ret);
+ }
+
+// -----------------------------------------------------------------------------
+// CWmUnitTest::WasUnistalled
+// -----------------------------------------------------------------------------
+//
+TInt CWmUnitTest::WasUnistalledL( CStifItemParser& aItem )
+ {
+ TInt ret = KErrNone;
+ TPtrC id;
+ aItem.SetParsingType( CStifItemParser::EQuoteStyleParsing );
+ aItem.GetNextString( id );
+
+ RWidgetRegistryClientSession widgetRegistry;
+ User::LeaveIfError( widgetRegistry.Connect() );
+ CleanupClosePushL( widgetRegistry );
+
+ TInt uid = widgetRegistry.GetWidgetUidL( id );
+
+ if ( uid != KErrNone )
+ {
+ ret = KErrGeneral;
+ }
+ CleanupStack::PopAndDestroy( &widgetRegistry );
+
+ _RETURN("WasUnistalled End", ret);
+ }
+
+// -----------------------------------------------------------------------------
+// CWmUnitTest::CancelUninstall
+// -----------------------------------------------------------------------------
+//
+TInt CWmUnitTest::CancelUninstall( CStifItemParser& aItem )
+ {
+ TInt ret = KErrNone;
+ iWmPlugin->WmInstaller().Cancel();
+
+ TBool active = iWmPlugin->WmInstaller().IsActive();
+ if ( active )
+ {
+ ret = KErrGeneral;
+ }
+ _RETURN("CancelUninstall End", ret );
+ }
+
+// -----------------------------------------------------------------------------
+// CWmUnitTest::StartTimer
+// -----------------------------------------------------------------------------
+//
+void CWmUnitTest::StartTimerL()
+ {
+ if ( !iTimer )
+ iTimer = CPeriodic::NewL( CActive::EPriorityStandard );
+
+ TTimeIntervalMicroSeconds32 delay( 4*1000*1000 ); // 2 sec
+ iTimer->Start( delay, delay, TCallBack( Timeout, this ) );
+ }
+
+// -----------------------------------------------------------------------------
+// CWmUnitTest::Timeout
+// -----------------------------------------------------------------------------
+//
+TInt CWmUnitTest::Timeout( TAny* aPtr )
+ {
+ CWmUnitTest* self = static_cast<CWmUnitTest*>( aPtr );
+ if ( self->iWmPlugin->WmInstaller().IsActive() )
+ {
+ return 1;
+ }
+ else
+ {
+ self->iTimer->Cancel();
+ CActiveScheduler::Stop();
+ return 0;
+ }
+ }
--- a/idlehomescreen/xmluicontroller/inc/appui.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluicontroller/inc/appui.h Fri Mar 12 15:41:49 2010 +0200
@@ -79,8 +79,46 @@
RPointerArray< CXnNodeAppIf >* aList = NULL );
void HandleEnterEditModeL( TBool aEnter );
-
+
+private:
+ // new functions
+
+ /**
+ * Starts long press recognizer of Send key.
+ *
+ * @since S60 5.2
+ */
+ void StartKeyTimerL();
+
+ /**
+ * Stops Send key long press recognizer.
+ *
+ * @since S60 5.2
+ */
+ void StopKeyTimer();
+ /**
+ * Launches Voice command application after long Send key is pressed.
+ *
+ * @since S60 5.2
+ */
+ void LaunchVoiceCommandL();
+
+ /**
+ * Callback function for long press timer of the Send key.
+ *
+ * @since S60 5.2
+ */
+ static TInt ReportLongPressL( TAny* aThis );
+
+ /**
+ * Sets title pane text
+ *
+ * @since S60 5.2
+ * @param aText Text to set
+ */
+ void SetTitlePaneTextL( const TDesC& aText );
+
private:
// from MCoeViewActivationObserver
@@ -94,9 +132,16 @@
// new functions
/**
+ * Activates UI. Called by UI controller during bootup sequence.
+ *
+ * @since S60 5.2
+ */
+ void ActivateUi();
+
+ /**
* Sets plugins online state
*
- * @since S60 5.0
+ * @since S60 5.2
* @param aOnline ETrue to enter online, EFalse to offline
*
*/
@@ -113,7 +158,7 @@
/**
* Gets online/offline helper object
*
- * @since S60 5.0
+ * @since S60 5.2
* @return online/offline helper
*/
COnlineOfflineHelper* Helper() const;
@@ -138,12 +183,14 @@
CAiUiIdleIntegration* iIdleIntegration;
/** Online/Offline helper object, owned */
COnlineOfflineHelper* iHelper;
+ /** Timer for Send key long press recognition, owned */
+ CPeriodic* iKeyTimer;
+ /** Edit mode title pane text, owned */
+ HBufC* iEditModeTitle;
/** DeviceStatus publisher info */
THsPublisherInfo iDeviceStatusInfo;
/** Flag to indicate whether edit mode is active */
- TBool iInEditMode;
- /** Flag to indicate UI shutdown sequence is ongoing */
- TBool iUiShutdown;
+ TBool iInEditMode;
};
} // namespace AiXmlUiController
--- a/idlehomescreen/xmluicontroller/src/ai3xmlui.rss Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluicontroller/src/ai3xmlui.rss Fri Mar 12 15:41:49 2010 +0200
@@ -29,6 +29,7 @@
#include <avkon.mbg>
#include <e32keys.h>
#include <activeidle3.loc>
+
// ========== RESOURCE DEFINITIONS ============================================
RESOURCE RSS_SIGNATURE { }
@@ -142,6 +143,11 @@
buf = qtn_hs_operation_failed_no_disk;
}
+RESOURCE TBUF r_qtn_hs_title_editmode
+ {
+ buf = qtn_hs_title_editing;
+ }
+
// home screen online dialog
RESOURCE DIALOG r_yes_no_hs_online
{
--- a/idlehomescreen/xmluicontroller/src/appui.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluicontroller/src/appui.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -17,12 +17,16 @@
// System includes
#include <centralrepository.h>
-#include <avkon.rsg> // For status pane layout resource ids
-#include <startupdomainpskeys.h>
-#include <e32property.h> // For RProperty
+#include <avkon.rsg>
+#include <e32property.h>
#include <activeidle2domainpskeys.h>
-#include <AknDlgShut.h> // Avkon dialog shutter.
+#include <AknDlgShut.h>
#include <aknview.h>
+#include <apacmdln.h>
+#include <logsuicmdstarter.h>
+#include <aknconsts.h>
+#include <akntitle.h>
+#include <StringLoader.h>
// User includes
#include <hspublisherinfo.h>
@@ -44,17 +48,18 @@
#include "aiuiidleintegration.h"
#include "xmluicontrollerpanic.h"
-#include "debug.h"
-#include "ai3perf.h"
#include "xndomnode.h"
#include "xnproperty.h"
#include "xnuiengineappif.h"
#include "onlineofflinehelper.h"
#include "ainativeuiplugins.h"
+#include "debug.h"
+
// Constants
// EAiDeviceStatusContentNetworkIdentity content id
_LIT( KNetworkIdentity, "NetworkIdentity" );
+const TUid KVoiceUiUID = { 0x101F8543 };
using namespace AiXmlUiController;
@@ -75,18 +80,23 @@
//
void CAppUi::ConstructL()
{
- AI3_PERF_START(perfdata, "xmluicontroller: CAppUi::ConstructL")
-
+ __TICK( "CAppUi::ConstructL" );
+
// Always reset the phoneforward P&S key on startup just in case
RProperty::Set( KPSUidAiInformation,
KActiveIdleForwardNumericKeysToPhone, EPSAiForwardNumericKeysToPhone );
-
+
+ iEditModeTitle = StringLoader::LoadL( R_QTN_HS_TITLE_EDITMODE );
+
// Initialize with empty title pane so it's not shown on startup.
__HEAP("XML UI: Init - Construct App UI")
- __TIME("XML UI: XnAppUiAdapted::ConstructL",
+ __TIME("XML UI: CXnAppUiAdapter::ConstructL",
CXnAppUiAdapter::ConstructL();
)
-
+
+ CAknAppUiBase::SetKeyEventFlags( CAknAppUiBase::EDisableSendKeyShort |
+ CAknAppUiBase::EDisableSendKeyLong );
+
// Register for XML UI view activation & deactivation
AddViewActivationObserverL( this );
@@ -114,26 +124,14 @@
keySoundConfig.iKeySounds = KeySounds();
keySoundConfig.iContextResId = R_XUI_DEFAULT_SKEY_LIST;
- iIdleIntegration = CAiUiIdleIntegration::NewL
- ( *iEikonEnv, keySoundConfig, iUiCtl.FwEventHandler() );
-
iUiCtl.NotifyAppEnvReadyL();
-
- CAknAppUiBase::SetKeyEventFlags( CAknAppUiBase::EDisableSendKeyShort |
- CAknAppUiBase::EDisableSendKeyLong );
-
+
iHelper = COnlineOfflineHelper::NewL( iUiCtl );
- // Load device status plugin here because it is always needed
- iDeviceStatusInfo = THsPublisherInfo( KDeviceStatusPluginUid,
- KDeviceStatusPluginName, KNullDesC8 );
-
- iUiCtl.FwStateHandler()->LoadPlugin(
- iDeviceStatusInfo, EAiFwSystemStartup );
-
- __HEAP("XML UI: Done - Construct App UI");
-
- AI3_PERF_STOP(perfdata, "xmluicontroller: CAppUi::ConstructL")
+ iIdleIntegration = CAiUiIdleIntegration::NewL
+ ( *iEikonEnv, keySoundConfig, iUiCtl.FwEventHandler() );
+
+ __TICK( "CAppUi::ConstructL - done" );
}
// ----------------------------------------------------------------------------
@@ -155,6 +153,8 @@
//
CAppUi::~CAppUi()
{
+ delete iEditModeTitle;
+ delete iKeyTimer;
delete iHelper;
delete iEventHandler;
delete iContentRenderer;
@@ -162,13 +162,50 @@
}
// ----------------------------------------------------------------------------
+// CAppUi::ActivateUi()
+// ----------------------------------------------------------------------------
+//
+void CAppUi::ActivateUi()
+ {
+ __TICK( "CAppUi::ActivateUi" );
+
+ TVwsViewId activeViewId;
+
+ TInt err( GetActiveViewId( activeViewId ) );
+
+ if ( err == KErrNotFound )
+ {
+ // Get Xml Ui view id
+ TVwsViewId xmlViewId( View().ViewId() );
+
+ TRAP_IGNORE( ActivateLocalViewL( xmlViewId.iViewUid ) );
+ }
+
+ if ( iDeviceStatusInfo.Uid() == TUid::Null() )
+ {
+ __PRINTS( "*** CAppUi::ActivateUI - Loading DeviceStatus plugin" );
+
+ _LIT8( KNs, "namespace" );
+
+ // Load device status plugin here because it is always needed
+ iDeviceStatusInfo = THsPublisherInfo( KDeviceStatusPluginUid,
+ KDeviceStatusPluginName, KNs );
+
+ iUiCtl.FwStateHandler()->LoadPlugin(
+ iDeviceStatusInfo, EAiFwSystemStartup );
+ }
+
+ iUiCtl.FwEventHandler()->HandleUiReadyEventL( iUiCtl );
+
+ __PRINTS( "*** CAppUi::ActivateUi - done" );
+ }
+
+// ----------------------------------------------------------------------------
// CAppUi::PrepareToExit()
// ----------------------------------------------------------------------------
//
void CAppUi::PrepareToExit()
- {
- iUiShutdown = ETrue;
-
+ {
RemoveViewActivationObserver( this );
iUiCtl.FwEventHandler()->HandleUiShutdown( iUiCtl );
@@ -226,13 +263,36 @@
TKeyEvent key;
key.iScanCode = EStdKeyNo;
- key.iCode = EStdKeyNull;
+ key.iCode = EKeyNull;
key.iModifiers = 0;
key.iRepeats = 0;
iCoeEnv->SimulateKeyEventL( key, EEventKey );
}
}
+
+ if( aEvent.Type() == EEventKeyDown )
+ {
+ if( aEvent.Key()->iScanCode == EStdKeyYes )
+ {
+ // Send key was pushed and long press recognition is started
+ StartKeyTimerL();
+ }
+ }
+
+ if( aEvent.Type() == EEventKeyUp )
+ {
+ if( aEvent.Key()->iScanCode == EStdKeyYes )
+ {
+ if( iKeyTimer && iKeyTimer->IsActive() )
+ {
+ // up event is coming before long press of Send key is recognized
+ // Start dialled calls
+ StopKeyTimer();
+ LogsUiCmdStarter::CmdStartL( LogsUiCmdStarterConsts::KDialledView() );
+ }
+ }
+ }
if( iIdleIntegration )
{
@@ -285,12 +345,6 @@
//
TInt CAppUi::LoadPublisher( CXnNodeAppIf& aPublisher, TInt aReason )
{
- if ( iUiShutdown )
- {
- // Framework has already destroyed all publishers
- return KErrNone;
- }
-
THsPublisherInfo info;
TRAP_IGNORE( iUiCtl.PublisherInfoL( aPublisher, info ) );
@@ -311,12 +365,6 @@
//
TInt CAppUi::DestroyPublisher( CXnNodeAppIf& aPublisher, TInt aReason )
{
- if ( iUiShutdown )
- {
- // Framework has already destroyed all publishers
- return KErrNone;
- }
-
THsPublisherInfo info;
TRAP_IGNORE( iUiCtl.PublisherInfoL( aPublisher, info ) );
@@ -334,12 +382,6 @@
TBool CAppUi::DynInitMenuItemL( const TDesC& aItemType,
RPointerArray< CXnNodeAppIf >* aList )
{
- if ( iUiShutdown )
- {
- // Framework has already destroyed all publishers
- return EFalse;
- }
-
_LIT( KOnline, "hs_online" );
_LIT( KOffline, "hs_offline" );
@@ -376,11 +418,8 @@
// ----------------------------------------------------------------------------
//
void CAppUi::SetOnlineStateL( TBool aOnline )
- {
- if ( !iUiShutdown )
- {
- iHelper->ProcessOnlineStateL( aOnline );
- }
+ {
+ iHelper->ProcessOnlineStateL( aOnline );
}
// ----------------------------------------------------------------------------
@@ -409,13 +448,26 @@
{
if ( iInEditMode != aEnter )
{
+ TVwsViewId activeViewId;
+ TInt err( GetActiveViewId( activeViewId ) );
+
if ( aEnter )
- {
+ {
iUiCtl.FwEventHandler()->SuspendContent(
iDeviceStatusInfo, KNetworkIdentity );
+
+ if ( !err && View().ViewId() == activeViewId )
+ {
+ SetTitlePaneTextL( *iEditModeTitle );
+ }
}
else
{
+ if ( !err && View().ViewId() == activeViewId )
+ {
+ SetTitlePaneTextL( KNullDesC );
+ }
+
iUiCtl.FwEventHandler()->RefreshContent(
iDeviceStatusInfo, KNetworkIdentity );
}
@@ -435,7 +487,7 @@
TInt err( GetActiveViewId( activeViewId ) );
- if ( iInEditMode || err == KErrNotFound )
+ if ( err == KErrNotFound )
{
return;
}
@@ -444,17 +496,143 @@
TVwsViewId xmlViewId( View().ViewId() );
if ( xmlViewId == aNewlyActivatedViewId && activeViewId != xmlViewId )
- {
- // Xml Ui view became active
- iUiCtl.FwEventHandler()->RefreshContent(
- iDeviceStatusInfo, KNetworkIdentity );
- }
+ {
+ if ( iInEditMode )
+ {
+ TRAP_IGNORE( SetTitlePaneTextL( *iEditModeTitle ) );
+ }
+ else
+ {
+ // Xml Ui view became active
+ iUiCtl.FwEventHandler()->RefreshContent(
+ iDeviceStatusInfo, KNetworkIdentity );
+ }
+ }
else if ( xmlViewId == aViewIdToBeDeactivated && activeViewId == xmlViewId )
- {
- // Xml Ui view became inactive
- iUiCtl.FwEventHandler()->SuspendContent(
- iDeviceStatusInfo, KNetworkIdentity );
- }
- }
+ {
+ if ( iInEditMode )
+ {
+ TRAP_IGNORE( SetTitlePaneTextL( KNullDesC ) );
+ }
+ else
+ {
+ // Xml Ui view became inactive
+ iUiCtl.FwEventHandler()->SuspendContent(
+ iDeviceStatusInfo, KNetworkIdentity );
+ }
+ }
+ }
+
+// ----------------------------------------------------------------------------
+// CAppUi::StartKeyTimerL()
+// Starts long press recognizer of Send key.
+// ----------------------------------------------------------------------------
+//
+void CAppUi::StartKeyTimerL()
+ {
+ if ( !iKeyTimer )
+ {
+ iKeyTimer = CPeriodic::NewL( CActive::EPriorityStandard );
+ }
+ else if ( iKeyTimer->IsActive() )
+ {
+ iKeyTimer->Cancel();
+ }
+ iKeyTimer->Start( KAknKeyboardRepeatInitialDelay,
+ KAknKeyboardRepeatInitialDelay,
+ TCallBack ( ReportLongPressL, this ) );
+ }
+
+// ----------------------------------------------------------------------------
+// CAppUi::StopKeyTimer()
+// Stops Send key long press recognizer.
+// ----------------------------------------------------------------------------
+//
+void CAppUi::StopKeyTimer()
+ {
+ if ( iKeyTimer && iKeyTimer->IsActive() )
+ {
+ iKeyTimer->Cancel();
+ }
+ }
+
+// ----------------------------------------------------------------------------
+// CAppUi::HandleViewActivation()
+// Launches Voice command application after long Send key is pressed.
+// ----------------------------------------------------------------------------
+//
+void CAppUi::LaunchVoiceCommandL()
+ {
+ TApaTaskList apaTaskList( iCoeEnv->WsSession() );
+ TApaTask apaTask = apaTaskList.FindApp( KVoiceUiUID );
+
+ if ( apaTask.Exists() )
+ {
+ apaTask.BringToForeground();
+ }
+ else
+ {
+ RApaLsSession apaLsSession;
+ User::LeaveIfError( apaLsSession.Connect() );
+ CleanupClosePushL( apaLsSession );
+
+ TApaAppInfo appInfo;
+
+ if( apaLsSession.GetAppInfo( appInfo, KVoiceUiUID ) == KErrNone )
+ {
+ CApaCommandLine* cmdLine = CApaCommandLine::NewLC();
+ cmdLine->SetExecutableNameL( appInfo.iFullName );
+ cmdLine->SetCommandL( EApaCommandRun );
+ User::LeaveIfError( apaLsSession.StartApp( *cmdLine ) );
+ CleanupStack::PopAndDestroy( cmdLine );
+ }
+ CleanupStack::PopAndDestroy( &apaLsSession );
+ }
+ }
+
+// ----------------------------------------------------------------------------
+// CAppUi::ReportLongPressL()
+// Callback function for long press timer of the Send key.
+// ----------------------------------------------------------------------------
+//
+TInt CAppUi::ReportLongPressL( TAny* aThis )
+ {
+ CAppUi* self = reinterpret_cast <CAppUi* > ( aThis );
+
+ self->StopKeyTimer();
+
+ if ( iAvkonAppUi->IsForeground() )
+ {
+ self->LaunchVoiceCommandL();
+ }
+
+ return 1; // CPeriodic ignores return value
+ }
+
+// ----------------------------------------------------------------------------
+// CAppUi::SetTitlePaneTextL()
+//
+// ----------------------------------------------------------------------------
+//
+void CAppUi::SetTitlePaneTextL( const TDesC& aText )
+ {
+ CEikStatusPane* sp( StatusPane() );
+
+ TUid titlePaneUid( TUid::Uid( EEikStatusPaneUidTitle ) );
+
+ CEikStatusPaneBase::TPaneCapabilities subPaneTitle(
+ sp->PaneCapabilities( titlePaneUid ) );
+
+ if ( subPaneTitle.IsPresent() && subPaneTitle.IsAppOwned() )
+ {
+ CAknTitlePane* title =
+ static_cast< CAknTitlePane* >( sp->ControlL( titlePaneUid ) );
+
+ if ( title )
+ {
+ title->SetTextL( aText );
+ }
+ }
+ }
// End of File.
--- a/idlehomescreen/xmluicontroller/src/xmluicontroller.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluicontroller/src/xmluicontroller.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -259,22 +259,15 @@
// ----------------------------------------------------------------------------
//
void CXmlUiController::NotifyAppEnvReadyL()
- {
+ {
+ iCPSpublisher = CContentPublisher::NewL( *this );
+
+ iExitTimer = CPeriodic::NewL( CActive::EPriorityStandard );
+
if( iFwEventHandler )
{
- iFwEventHandler->AppEnvReadyL();
- iFwEventHandler->HandleUiReadyEventL( *this );
- }
-
- if( !iCPSpublisher )
- {
- iCPSpublisher = CContentPublisher::NewL( *this );
- }
-
- if( !iExitTimer )
- {
- iExitTimer = CPeriodic::NewL( CActive::EPriorityStandard );
- }
+ iFwEventHandler->AppEnvReadyL();
+ }
}
// ----------------------------------------------------------------------------
@@ -599,6 +592,10 @@
//
void CXmlUiController::ActivateUI()
{
+ if ( iRunningAsMain && iAppUi )
+ {
+ iAppUi->ActivateUi();
+ }
}
// ----------------------------------------------------------------------------
@@ -670,10 +667,12 @@
//
void CXmlUiController::RunApplicationL()
{
- iRunningAsMain = ETrue;
+ __PRINTS( "*** CXmlUiController::RunApplicationL" );
+ iRunningAsMain = ETrue;
+
User::LeaveIfError(
- EikStart::RunApplication( &CXmlUiController::NewApplication ) );
+ EikStart::RunApplication( &CXmlUiController::NewApplication ) );
}
// ----------------------------------------------------------------------------
@@ -815,9 +814,18 @@
//
CApaApplication* CXmlUiController::NewApplication()
{
- CXmlUiController* self = static_cast<CXmlUiController*>(Dll::Tls());
- __ASSERT_ALWAYS( self, Panic(ECriticalPointerNull) );
- return CApplication::New(*self);
+ __TICK( "CXmlUiController::NewApplication" );
+ __TIME_MARK( time );
+
+ CXmlUiController* self = static_cast< CXmlUiController* >( Dll::Tls() );
+
+ __ASSERT_ALWAYS( self, Panic( ECriticalPointerNull ) );
+
+ CApplication* app = CApplication::New( *self );
+
+ __TIME_ENDMARK( "CXmlUiController::NewApplication, done", time );
+
+ return app;
}
const TImplementationProxy KImplementationTable[] =
--- a/idlehomescreen/xmluirendering/ecomelement/xndomvisitor/inc/xnliteral.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/ecomelement/xndomvisitor/inc/xnliteral.h Fri Mar 12 15:41:49 2010 +0200
@@ -47,13 +47,6 @@
//Control
_STLIT8(KButton, "button");
-_STLIT8(KGrid, "grid");
-_STLIT8(KListItem, "listitem");
-_STLIT8(KDataGrid, "datagrid");
-_STLIT8(KGridCellTemplate, "gridcelltemplate");
-_STLIT8(KList, "list");
-_STLIT8(KDataList, "datalist");
-_STLIT8(KListRowTemplate, "listrowtemplate");
_STLIT8(KMenuBar, "menubar");
_STLIT8(KMenu, "menu");
_STLIT8(KMenuItem, "menuitem");
@@ -144,18 +137,6 @@
//For text,list,datalist, grid, datagrid elements
_STLIT8(KOverflow, "overflow");
-//List And grid properties
-_STLIT8(KVisibleRows, "_s60-visible-list-rows");
-_STLIT8(KInitialSelection, "_s60-initial-list-selection");
-_STLIT8(KFocusHorLooping, "_s60-list-focus-horizontal-looping");
-_STLIT8(KFocusVerLooping, "_s60-list-focus-vertical-looping");
-
-//Datagrid & grid properties
-_STLIT8(KGridColumns, "_s60-grid-columns");
-_STLIT8(KS60GridOrientation, "_s60-grid-orientation");
-_STLIT8(KS60GridVerDirection, "_s60-grid-ver-direction"); //lr, rl
-_STLIT8(KS60GridHorDirection, "_s60-grid-hor-direction"); //tb, bt
-
//Views and view properties
_STLIT8(KViewDecoration, "_s60-view-decoration");
_STLIT8(KTabStyle, "_s60-tab-style");
@@ -258,23 +239,6 @@
{(const void*)&KOverflow, EFalse}
};
-const TXnPropertyProxy KXnGridAndListPropertyTable[] =
- {
- {(const void*)&KVisibleRows, EFalse},
- {(const void*)&KInitialSelection, EFalse},
- {(const void*)&KFocusHorLooping, EFalse},
- {(const void*)&KFocusVerLooping, EFalse},
- {(const void*)&KOverflow, EFalse}
- };
-
-const TXnPropertyProxy KXnDataGridAndGridPropertyTable[] =
- {
- {(const void*)&KGridColumns, EFalse},
- {(const void*)&KS60GridOrientation, EFalse},
- {(const void*)&KS60GridVerDirection, EFalse},
- {(const void*)&KS60GridHorDirection, EFalse}
- };
-
const TXnPropertyProxy KXnViewsAndViewPropertyTable[] =
{
{(const void*)&KViewDecoration, EFalse},
--- a/idlehomescreen/xmluirendering/ecomelement/xndomvisitor/src/xndomvisitor.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/ecomelement/xndomvisitor/src/xndomvisitor.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -33,8 +33,6 @@
LOCAL_C void SetCommonPropertiesL( TAny* aData );
LOCAL_C void SetElementWithTextPropertiesL( TAny* aData );
LOCAL_C void SetTextElementPropertiesL( TAny* aData );
-LOCAL_C void SetGridAndListPropertiesL( TAny* aData );
-LOCAL_C void SetDataGridAndGridPropertiesL( TAny* aData );
LOCAL_C void SetViewsAndViewPropertiesL( TAny* aData );
LOCAL_C void SetViewPropertiesL( TAny* aData );
@@ -56,13 +54,6 @@
{ (const void*)&KApplication, NULL, EEmpty},
{ (const void*)&KDesc, NULL, EPCData},
{ (const void*)&KButton, &SetTextElementPropertiesL, EEmpty},
- { (const void*)&KGrid, &SetDataGridAndGridPropertiesL, EEmpty},
- { (const void*)&KListItem, &SetElementWithTextPropertiesL, EEmpty},
- { (const void*)&KDataGrid, &SetDataGridAndGridPropertiesL, EEmpty},
- { (const void*)&KGridCellTemplate, &SetCommonPropertiesL, EEmpty},
- { (const void*)&KList, &SetGridAndListPropertiesL, EEmpty},
- { (const void*)&KDataList, &SetGridAndListPropertiesL, EEmpty},
- { (const void*)&KListRowTemplate, &SetCommonPropertiesL, EEmpty},
{ (const void*)&KMenuBar, NULL, EEmpty},
{ (const void*)&KMenu, NULL, EEmpty},
{ (const void*)&KMenuItem, NULL, EEmpty},
@@ -141,22 +132,7 @@
SetElementWithTextPropertiesL( aData );
TInt count( sizeof (KXnTextElementPropertyTable) / sizeof(TXnPropertyProxy) );
SetPropertiesL( KXnTextElementPropertyTable, count, aData );
- }
-
-LOCAL_C void SetGridAndListPropertiesL( TAny* aData )
- {
- SetCommonPropertiesL( aData );
- TInt count( sizeof (KXnGridAndListPropertyTable) / sizeof(TXnPropertyProxy) );
- SetPropertiesL( KXnGridAndListPropertyTable, count, aData );
- }
-
-LOCAL_C void SetDataGridAndGridPropertiesL( TAny* aData )
- {
- SetGridAndListPropertiesL( aData );
- TInt count( sizeof (KXnDataGridAndGridPropertyTable) / sizeof(TXnPropertyProxy) );
- SetPropertiesL( KXnDataGridAndGridPropertyTable, count, aData );
- }
-
+ }
LOCAL_C void SetViewsAndViewPropertiesL( TAny* aData )
{
--- a/idlehomescreen/xmluirendering/renderingplugins/xnanimationfactory/inc/xnanimationadapter.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/renderingplugins/xnanimationfactory/inc/xnanimationadapter.h Fri Mar 12 15:41:49 2010 +0200
@@ -50,13 +50,16 @@
virtual ~CXnAnimationAdapter();
public: // From Base classes
- /**
- * From CXnControlAdapter Handles the property changes.
- * @since Series 60 3.1
- * @return void.
- */
+
+ // From CXnControlAdapter
void DoHandlePropertyChangeL(CXnProperty* aProperty = NULL);
+ // From CXnControlAdapter
+ void DoEnterPowerSaveModeL( TModeEvent aEvent );
+
+ // From CXnControlAdapter
+ void DoExitPowerSaveModeL( TModeEvent aEvent );
+
protected:
/**
* From CCoeControl.
@@ -124,6 +127,9 @@
// Timer for animation, owned
CPeriodic* iPeriodicTimer;
+
+ // Whether the renderer is in power save mode or not
+ TBool iInPowerSaveMode;
};
#endif // _XNANIMATIONAPADAPTER_H
--- a/idlehomescreen/xmluirendering/renderingplugins/xnanimationfactory/src/xnanimationadapter.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/renderingplugins/xnanimationfactory/src/xnanimationadapter.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -18,6 +18,8 @@
#include <AknsDrawUtils.h>
#include <AknsConstants.h>
#include <barsread.h>
+#include <debug.h>
+
#include "xnnodepluginif.h"
#include "xndomproperty.h"
#include "xnproperty.h"
@@ -112,6 +114,26 @@
}
// -----------------------------------------------------------------------------
+// CXnAnimationAdapter::DoEnterPowerSaveModeL
+// -----------------------------------------------------------------------------
+//
+void CXnAnimationAdapter::DoEnterPowerSaveModeL( TModeEvent /*aEvent*/ )
+ {
+ iInPowerSaveMode = ETrue;
+ StopAnimation();
+ }
+
+// -----------------------------------------------------------------------------
+// CXnAnimationAdapter::DoExitPowerSaveModeL
+// -----------------------------------------------------------------------------
+//
+void CXnAnimationAdapter::DoExitPowerSaveModeL( TModeEvent /*aEvent*/ )
+ {
+ iInPowerSaveMode = EFalse;
+ StartAnimation();
+ }
+
+// -----------------------------------------------------------------------------
// CXnNewstickerAdapter::MakeVisible()
// -----------------------------------------------------------------------------
//
@@ -176,6 +198,7 @@
//
TInt CXnAnimationAdapter::TimerCallBack(TAny* aAny)
{
+ __PRINTS( "CXnAnimationAdapter::TimerCallback, timer runs" );
CXnAnimationAdapter* self = static_cast<CXnAnimationAdapter*> (aAny);
// Update widget
@@ -190,7 +213,7 @@
//
void CXnAnimationAdapter::StartAnimation()
{
- if ( !iPeriodicTimer && IsVisible() )
+ if ( !iPeriodicTimer && IsVisible() && !iInPowerSaveMode )
{
TRAPD(err, iPeriodicTimer = CPeriodic::NewL(CActive::EPriorityIdle) );
if ( err == KErrNone )
--- a/idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/src/xnclockadapter.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/src/xnclockadapter.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -275,6 +275,7 @@
if( iForeground )
{
UpdateDisplay(); // starts timer after update
+ iClockControl->StartTimer();
}
else
{
--- a/idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/src/xnclockcontrol.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/src/xnclockcontrol.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -18,6 +18,7 @@
// SYSTEM INCLUDE FILES
#include <e32std.h> // for RChangeNotifier
+#include <debug.h>
// USER INCLUDE FILES
#include "xncontroladapter.h"
@@ -61,6 +62,7 @@
void RunL()
{
+ __PRINTS( "CXnClockChangeHandler::RunL, timer runs" );
if( iStatus.Int() & ( EChangesLocale | EChangesSystemTime ) )
{
iClient.TimeOrLocaleChanged();
@@ -244,9 +246,6 @@
homeTime.HomeTime();
TRAP_IGNORE( iFace->DrawL( *iAdapter, aGc, aRect, homeTime ) );
-
- // Ensure timer is active
- const_cast< CXnClockControl* >( this )->StartTimer();
}
}
@@ -257,6 +256,7 @@
//
TInt CXnClockControl::TimerCallback( TAny* aThis )
{
+ __PRINTS( "CXnClockControl::TimerCallback, timer runs" );
CXnClockControl* self = static_cast< CXnClockControl* >( aThis );
// Update the clock display
--- a/idlehomescreen/xmluirendering/renderingplugins/xnnewstickerfactory/src/xnnewstickeradapter.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/renderingplugins/xnnewstickerfactory/src/xnnewstickeradapter.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -21,6 +21,7 @@
#include <AknUtils.h>
#include <AknMarqueeControl.h>
#include <AknBidiTextUtils.h>
+#include <debug.h>
// User includes
#include "xnviewnodeimpl.h"
@@ -684,6 +685,7 @@
//
TInt CXnNewstickerAdapter::PeriodicEventL( TAny* aPtr )
{
+ __PRINTS( "CXnNewstickerAdapter::PeriodicEventL, timer runs" );
CXnNewstickerAdapter* self = static_cast< CXnNewstickerAdapter* >( aPtr );
self->DoScroll();
--- a/idlehomescreen/xmluirendering/renderingplugins/xnpopupfactory/group/xnpopupfactory.mmp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/renderingplugins/xnpopupfactory/group/xnpopupfactory.mmp Fri Mar 12 15:41:49 2010 +0200
@@ -45,6 +45,7 @@
LIBRARY xn3domdocument.lib
LIBRARY avkon.lib
LIBRARY ws32.lib
+LIBRARY gfxtrans.lib
START RESOURCE xn3popupfactory.rss
#ifdef SYMBIAN_SECURE_ECOM
--- a/idlehomescreen/xmluirendering/renderingplugins/xnpopupfactory/inc/xnpopupadapter.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/renderingplugins/xnpopupfactory/inc/xnpopupadapter.h Fri Mar 12 15:41:49 2010 +0200
@@ -86,7 +86,13 @@
/**
* @see CXnControlAdapter
*/
- void DoHandlePropertyChangeL(CXnProperty* aProperty = NULL);
+ void DoHandlePropertyChangeL(CXnProperty* aProperty = NULL);
+
+private: // from base class
+ /**
+ * @see CCoeControl documentation
+ */
+ void MakeVisible( TBool aVisible );
private:
void Draw(const TRect& aRect) const;
--- a/idlehomescreen/xmluirendering/renderingplugins/xnpopupfactory/src/xnpopupadapter.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/renderingplugins/xnpopupfactory/src/xnpopupadapter.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -26,6 +26,8 @@
#include "xncomponent.h"
#include <AknUtils.h>
+#include <gfxtranseffect/gfxtranseffect.h>
+#include <akntransitionutils.h>
const TInt KStartDelay = 1000000;
const TInt KDisplayTime = 0;
@@ -295,6 +297,8 @@
CXnControlAdapter::ConstructL(aNode);
iNode = &aNode;
iAppUi = CCoeEnv::Static()->AppUi();
+
+ GfxTransEffect::Register( this, KGfxPreviewPopupControlUid );
}
// -----------------------------------------------------------------------------
@@ -314,6 +318,7 @@
CXnPopupAdapter::~CXnPopupAdapter()
{
delete iActiveObject;
+ GfxTransEffect::Deregister( this );
}
// -----------------------------------------------------------------------------
@@ -541,4 +546,31 @@
this->SetRect( rect );
}
+// -----------------------------------------------------------------------------
+// CXnPopupAdapter::MakeVisible
+//
+// -----------------------------------------------------------------------------
+//
+void CXnPopupAdapter::MakeVisible( TBool aVisible )
+ {
+ if ( aVisible == IsVisible() )
+ {
+ return;
+ }
+
+ if ( aVisible )
+ {
+ GfxTransEffect::Begin( this, KGfxControlAppearAction );
+ }
+ else
+ {
+ GfxTransEffect::Begin( this, KGfxControlDisappearAction );
+ }
+
+ CCoeControl::MakeVisible( aVisible );
+
+ GfxTransEffect::SetDemarcation( this, iPosition );
+ GfxTransEffect::End( this );
+ }
+
// End of File
--- a/idlehomescreen/xmluirendering/renderingplugins/xntexteditorfactory/inc/xntexteditoradapter.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/renderingplugins/xntexteditorfactory/inc/xntexteditoradapter.h Fri Mar 12 15:41:49 2010 +0200
@@ -159,12 +159,8 @@
TInt iMaxLines;
/** Flag to indicate whether focus loss is refused */
TBool iRefusesFocusLoss;
- /** Flag to indicate is partial input supported*/
- TBool iPartialInputEnabled;
- /** Flag to indicate is partial input open*/
- TBool iPartialInputOpen;
- /** Flag to indicate whether split input should be remove or not*/
- TBool iRemoveSplitInputFromStack;
+ /** Split input states*/
+ TInt iSplitInputState;
};
#endif // _XNTEXTEDITORADAPTER_H
--- a/idlehomescreen/xmluirendering/renderingplugins/xntexteditorfactory/src/xntexteditoradapter.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/renderingplugins/xntexteditorfactory/src/xntexteditoradapter.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -50,6 +50,14 @@
const TInt KMaxLength = 100;
+enum TSplitInputState
+ {
+ ESplitInputDisabled = 0,
+ ESplitInputClosed,
+ ESplitInputOpen,
+ ESplitInputRemoveFromStack
+ };
+
_LIT8( KCpsPublishing, "cpspublishing" );
_LIT8( KMaxLineAmount, "max-line-amount" );
_LIT8( KMaxCharAmount, "max-char-amount" );
@@ -175,14 +183,13 @@
// Enable partial Screen
CXnProperty* enablepartialinput( iNode.GetPropertyL( KEnablePartialInput ) );
- iPartialInputEnabled = EFalse;
- iPartialInputOpen = EFalse;
+ iSplitInputState = ESplitInputDisabled;
if ( enablepartialinput &&
enablepartialinput->StringValue() == XnPropertyNames::KTrue )
{
iEditor->SetAknEditorFlags( EAknEditorFlagEnablePartialScreen );
- iPartialInputEnabled = ETrue;
+ iSplitInputState = ESplitInputClosed;
}
iEditor->SetObserver( this );
@@ -310,33 +317,36 @@
{
value = EPSAiDontForwardNumericKeysToPhone;
- if( !iPartialInputEnabled )
+ if( iSplitInputState == ESplitInputDisabled )
{
TRAP_IGNORE( appui->AddToStackL( appui->View(), iEditor ) );
// AddToStackL calls iEditor->SetFocus( ETrue );
}
-
+ else if( iSplitInputState == ESplitInputClosed )
+ {
+ iUiEngine->EnablePartialTouchInput(iNode , ETrue);
+ TRAP_IGNORE( appui->AddToStackL( appui->View(), iEditor ) );
+ iSplitInputState = ESplitInputOpen;
+ }
}
else
{
value = EPSAiForwardNumericKeysToPhone;
- if( !iPartialInputEnabled )
+ if( iSplitInputState == ESplitInputDisabled )
{
appui->RemoveFromStack( iEditor );
iEditor->SetFocus( EFalse, aDrawNow );
}
- else if(iPartialInputEnabled && iRemoveSplitInputFromStack )
+ else if( iSplitInputState == ESplitInputRemoveFromStack )
{
appui->RemoveFromStack( iEditor );
iEditor->SetFocus( EFalse, aDrawNow );
- iPartialInputOpen = EFalse;
- iRemoveSplitInputFromStack = EFalse;
- }
-
+ iSplitInputState = ESplitInputClosed;
+ }
}
- if(iPartialInputOpen)
+ if( iSplitInputState == ESplitInputOpen )
{
value = EPSAiDontForwardNumericKeysToPhone;
}
@@ -410,25 +420,15 @@
{
CXnAppUiAdapter* appui(
static_cast< CXnAppUiAdapter* >( iAvkonAppUi ) );
-
+
switch( aReason )
{
- case CXnTextEditor::KActivateTextEditor:
- {
- if( !iPartialInputOpen )
- {
- iUiEngine->EnablePartialTouchInput(iNode , ETrue);
- TRAP_IGNORE( appui->AddToStackL( appui->View(), iEditor ) );
- iPartialInputOpen = ETrue;
- }
- break;
- }
case CXnTextEditor::KDeactivateTextEditor:
{
- if( iPartialInputOpen )
+ if( iSplitInputState == ESplitInputOpen )
{
iUiEngine->EnablePartialTouchInput(iNode, EFalse);
- iPartialInputOpen = EFalse;
+ iSplitInputState = ESplitInputClosed;
appui->RemoveFromStack( iEditor );
iEditor->SetFocus( EFalse );
}
@@ -436,12 +436,12 @@
}
case CXnTextEditor::KRemoveSplitInputFromStack:
{
- iRemoveSplitInputFromStack = ETrue;
+ iSplitInputState = ESplitInputRemoveFromStack;
break;
}
case CXnTextEditor::KKeepSplitInputInStack:
{
- iRemoveSplitInputFromStack = EFalse;
+ iSplitInputState = ESplitInputOpen;
break;
}
default:
--- a/idlehomescreen/xmluirendering/renderingplugins/xntextfactory/src/xntextadapter.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/renderingplugins/xntextfactory/src/xntextadapter.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -141,33 +141,45 @@
TInt lineCount( array->Count() );
- buffer = HBufC::NewLC( temp->Length() + ( lineCount - 1 ) );
-
- TPtr ptr( buffer->Des() );
-
- for( TInt i = 0; i < lineCount; i++ )
+ TInt bufLen = temp->Length() + ( lineCount - 1 );
+ if ( bufLen > 0 )
{
- TPtrC line( array->At( i ) );
-
- ptr.Append( line );
+ buffer = HBufC::NewLC( bufLen );
- if( i + 1 < lineCount )
+ TPtr ptr( buffer->Des() );
+
+ for( TInt i = 0; i < lineCount; i++ )
{
- ptr.Append( '\n' );
- }
+ TPtrC line( array->At( i ) );
+
+ ptr.Append( line );
+
+ if( i + 1 < lineCount )
+ {
+ ptr.Append( '\n' );
+ }
+ }
+
+ CleanupStack::Pop();
+ CleanupStack::PopAndDestroy( temp );
+ CleanupStack::PushL( buffer );
}
-
- CleanupStack::Pop();
- CleanupStack::PopAndDestroy( temp );
- CleanupStack::PushL( buffer );
+ else
+ {
+ CleanupStack::PopAndDestroy( temp );
+ }
}
// The text is already in visual form, no need for conversion
conversion = EFalse;
- aLabel.SetTextL( *buffer );
-
- CleanupStack::PopAndDestroy( 2 ); // buffer, array
+ if ( buffer )
+ {
+ aLabel.SetTextL( *buffer );
+ CleanupStack::PopAndDestroy( buffer );
+ }
+
+ CleanupStack::PopAndDestroy(); // array
}
else
{
--- a/idlehomescreen/xmluirendering/uiengine/bwins/xn3layoutengineu.def Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/bwins/xn3layoutengineu.def Fri Mar 12 15:41:49 2010 +0200
@@ -30,215 +30,207 @@
?HandlePowerSaveModeL@CXnUtils@@SAHPAVCXnNode@@HH@Z @ 29 NONAME ; int CXnUtils::HandlePowerSaveModeL(class CXnNode *, int, int)
?ContentBitmaps@CXnControlAdapter@@QAEXAAPAVCFbsBitmap@@0@Z @ 30 NONAME ; void CXnControlAdapter::ContentBitmaps(class CFbsBitmap * &, class CFbsBitmap * &)
?HandlePropertyChangeL@CXnControlAdapter@@QAEXPAVCXnProperty@@@Z @ 31 NONAME ; void CXnControlAdapter::HandlePropertyChangeL(class CXnProperty *)
- ?FocusHorLoopingL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 32 NONAME ; class CXnProperty * CXnNodePluginIf::FocusHorLoopingL(void)
- ?Control@CXnNodePluginIf@@QBEPAVCXnControlAdapter@@XZ @ 33 NONAME ; class CXnControlAdapter * CXnNodePluginIf::Control(void) const
- ?DestroyPublisher@CXnAppUiAdapter@@UAEHAAVCXnNodeAppIf@@H@Z @ 34 NONAME ; int CXnAppUiAdapter::DestroyPublisher(class CXnNodeAppIf &, int)
- ?GetPropertyL@CXnNodeAppIf@@QBEPAVCXnProperty@@AAV2@@Z @ 35 NONAME ; class CXnProperty * CXnNodeAppIf::GetPropertyL(class CXnProperty &) const
- ?MakeInterfaceL@CXnComponentNodeImpl@@UAEPAVMXnComponentInterface@XnComponentInterface@@ABVTDesC8@@@Z @ 36 NONAME ; class XnComponentInterface::MXnComponentInterface * CXnComponentNodeImpl::MakeInterfaceL(class TDesC8 const &)
- ?SkinChanged@CXnControlAdapter@@UAEXXZ @ 37 NONAME ; void CXnControlAdapter::SkinChanged(void)
- ?SetContentBitmaps@CXnControlAdapter@@QAEXPAVCFbsBitmap@@0@Z @ 38 NONAME ; void CXnControlAdapter::SetContentBitmaps(class CFbsBitmap *, class CFbsBitmap *)
- ?FindNodeByClassL@TXnUiEngineAppIf@@QAE?AV?$RPointerArray@VCXnNodeAppIf@@@@ABVTDesC16@@0@Z @ 39 NONAME ; class RPointerArray<class CXnNodeAppIf> TXnUiEngineAppIf::FindNodeByClassL(class TDesC16 const &, class TDesC16 const &)
- ?SetDataL@CXnControlAdapter@@UAEXABVTDesC8@@ABVTDesC16@@H@Z @ 40 NONAME ; void CXnControlAdapter::SetDataL(class TDesC8 const &, class TDesC16 const &, int)
- ?ComponentNodeImpl@CXnNodePluginIf@@QAEPAVCXnComponentNodeImpl@@XZ @ 41 NONAME ; class CXnComponentNodeImpl * CXnNodePluginIf::ComponentNodeImpl(void)
- ??0CXnViewsNodeImpl@@IAE@XZ @ 42 NONAME ; CXnViewsNodeImpl::CXnViewsNodeImpl(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<class CXnNodeAppIf> 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)
- ?VisibleRowsL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 54 NONAME ; class CXnProperty * CXnNodePluginIf::VisibleRowsL(void)
- ?UiEngineL@CXnNodeAppIf@@QAEPAVTXnUiEngineAppIf@@XZ @ 55 NONAME ; class TXnUiEngineAppIf * CXnNodeAppIf::UiEngineL(void)
- ?LongTapDetector@CXnControlAdapter@@QBEPAVCAknLongTapDetector@@XZ @ 56 NONAME ; class CAknLongTapDetector * CXnControlAdapter::LongTapDetector(void) const
- ??0CXnAppUiAdapter@@QAE@VTUid@@@Z @ 57 NONAME ; CXnAppUiAdapter::CXnAppUiAdapter(class TUid)
- ?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 *)
- ?FocusVisible@TXnUiEnginePluginIf@@QAEHXZ @ 64 NONAME ; int TXnUiEnginePluginIf::FocusVisible(void)
- ?ExitPowerSaveModeL@CXnControlAdapter@@QAEXW4TModeEvent@1@@Z @ 65 NONAME ; void CXnControlAdapter::ExitPowerSaveModeL(enum CXnControlAdapter::TModeEvent)
- ?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 CXnResource> &, 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)
- ?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)
- ?SwipeEnabledL@TXnUiEnginePluginIf@@QAEHXZ @ 77 NONAME ; int TXnUiEnginePluginIf::SwipeEnabledL(void)
- ?SetFocusVisibleL@TXnUiEnginePluginIf@@QAEXH@Z @ 78 NONAME ; void TXnUiEnginePluginIf::SetFocusVisibleL(int)
- ?ActiveView@TXnUiEngineAppIf@@QAEPAVCXnNodeAppIf@@XZ @ 79 NONAME ; class CXnNodeAppIf * TXnUiEngineAppIf::ActiveView(void)
- ?GridOrientationL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 80 NONAME ; class CXnProperty * CXnNodePluginIf::GridOrientationL(void)
- ?HandleXuikonEventL@CXnAppUiAdapter@@UAEXAAVCXnNodeAppIf@@0AAVCXnDomNode@@1@Z @ 81 NONAME ; void CXnAppUiAdapter::HandleXuikonEventL(class CXnNodeAppIf &, class CXnNodeAppIf &, class CXnDomNode &, class CXnDomNode &)
- ?RenderUIL@TXnUiEngineAppIf@@QAEXPAVCXnNodeAppIf@@@Z @ 82 NONAME ; void TXnUiEngineAppIf::RenderUIL(class CXnNodeAppIf *)
- ?PrepareToExit@CXnAppUiAdapter@@MAEXXZ @ 83 NONAME ; void CXnAppUiAdapter::PrepareToExit(void)
- ?DoHandlePropertyChangeL@CXnControlAdapter@@UAEXPAVCXnProperty@@@Z @ 84 NONAME ; void CXnControlAdapter::DoHandlePropertyChangeL(class CXnProperty *)
- ?ConstructL@CXnControlAdapter@@IAEXAAVCXnNodePluginIf@@@Z @ 85 NONAME ; void CXnControlAdapter::ConstructL(class CXnNodePluginIf &)
- ?FocusedNode@TXnUiEngineAppIf@@QAEPAVCXnNodeAppIf@@XZ @ 86 NONAME ; class CXnNodeAppIf * TXnUiEngineAppIf::FocusedNode(void)
- ?SetDataL@CXnComponent@@QAEXABVTDesC8@@ABVTDesC16@@H@Z @ 87 NONAME ; void CXnComponent::SetDataL(class TDesC8 const &, class TDesC16 const &, int)
- ?OfferKeyEventL@CXnControlAdapter@@UAE?AW4TKeyResponse@@ABUTKeyEvent@@W4TEventCode@@@Z @ 88 NONAME ; enum TKeyResponse CXnControlAdapter::OfferKeyEventL(struct TKeyEvent const &, enum TEventCode)
- ?IsDrawingAllowed@CXnControlAdapter@@QBEHXZ @ 89 NONAME ; int CXnControlAdapter::IsDrawingAllowed(void) const
- ?DisplayL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 90 NONAME ; class CXnProperty * CXnNodePluginIf::DisplayL(void)
- ?NewL@CXnProperty@@SAPAV1@ABVTDesC8@@PAVCXnDomPropertyValue@@AAVCXnDomStringPool@@@Z @ 91 NONAME ; class CXnProperty * CXnProperty::NewL(class TDesC8 const &, class CXnDomPropertyValue *, class CXnDomStringPool &)
- ?Rect@CXnNodeAppIf@@QAE?AVTRect@@XZ @ 92 NONAME ; class TRect CXnNodeAppIf::Rect(void)
- ?NewL@CXnComponentNodeImpl@@SAPAV1@PAVCXnType@@@Z @ 93 NONAME ; class CXnComponentNodeImpl * CXnComponentNodeImpl::NewL(class CXnType *)
- ?GridVerDirectionL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 94 NONAME ; class CXnProperty * CXnNodePluginIf::GridVerDirectionL(void)
- ?WidgetsVisible@TXnUiEngineAppIf@@QBEHXZ @ 95 NONAME ; int TXnUiEngineAppIf::WidgetsVisible(void) const
- ?Type@CXnNodePluginIf@@QAEPAVCXnType@@XZ @ 96 NONAME ; class CXnType * CXnNodePluginIf::Type(void)
- ?MakeXnComponentL@MXnComponentFactory@@EAE?AW4TXnComponentFactoryResponse@1@AAVCXnNodePluginIf@@AAPAVCXnComponent@@@Z @ 97 NONAME ; enum MXnComponentFactory::TXnComponentFactoryResponse MXnComponentFactory::MakeXnComponentL(class CXnNodePluginIf &, class CXnComponent * &)
- ?ActivateViewL@TXnUiEngineAppIf@@QAEXAAVCXnNodeAppIf@@@Z @ 98 NONAME ; void TXnUiEngineAppIf::ActivateViewL(class CXnNodeAppIf &)
- ?UnsetStateL@CXnNodePluginIf@@QAEXABVTDesC8@@@Z @ 99 NONAME ; void CXnNodePluginIf::UnsetStateL(class TDesC8 const &)
- ?StringValueL@CXnProperty@@QAEPAVHBufC16@@XZ @ 100 NONAME ; class HBufC16 * CXnProperty::StringValueL(void)
- ?DisableRenderUiLC@TXnUiEnginePluginIf@@QAEXXZ @ 101 NONAME ; void TXnUiEnginePluginIf::DisableRenderUiLC(void)
- ?SetPropertyL@CXnNodeAppIf@@QAEXPAVCXnProperty@@@Z @ 102 NONAME ; void CXnNodeAppIf::SetPropertyL(class CXnProperty *)
- ?View@CXnAppUiAdapter@@QBEAAVCAknView@@XZ @ 103 NONAME ; class CAknView & CXnAppUiAdapter::View(void) const
- ?ViewNodeImpl@CXnNodePluginIf@@QAEPAVCXnViewNodeImpl@@XZ @ 104 NONAME ; class CXnViewNodeImpl * CXnNodePluginIf::ViewNodeImpl(void)
- ?StripQuotes@CXnUtils@@SAXAAPAVHBufC16@@@Z @ 105 NONAME ; void CXnUtils::StripQuotes(class HBufC16 * &)
- ?SetPCDataL@CXnNodePluginIf@@QAEXABVTDesC8@@@Z @ 106 NONAME ; void CXnNodePluginIf::SetPCDataL(class TDesC8 const &)
- ?VisibilityL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 107 NONAME ; class CXnProperty * CXnNodePluginIf::VisibilityL(void)
- ?Draw@CXnControlAdapter@@MBEXABVTRect@@@Z @ 108 NONAME ; void CXnControlAdapter::Draw(class TRect const &) const
- ??1CXnApplication@@UAE@XZ @ 109 NONAME ; CXnApplication::~CXnApplication(void)
- ?DoesNodeNeedComponentImplL@MXnComponentFactory@@QAEHABVTDesC8@@@Z @ 110 NONAME ; int MXnComponentFactory::DoesNodeNeedComponentImplL(class TDesC8 const &)
- ?ConstructL@CXnViewsNodeImpl@@IAEXPAVCXnType@@@Z @ 111 NONAME ; void CXnViewsNodeImpl::ConstructL(class CXnType *)
- ?StringPool@TXnUiEngineAppIf@@QAEAAVCXnDomStringPool@@XZ @ 112 NONAME ; class CXnDomStringPool & TXnUiEngineAppIf::StringPool(void)
- ?UiEngineL@CXnNodePluginIf@@QAEPAVTXnUiEnginePluginIf@@XZ @ 113 NONAME ; class TXnUiEnginePluginIf * CXnNodePluginIf::UiEngineL(void)
- ?ShowFocus@TXnUiEnginePluginIf@@QAEHXZ @ 114 NONAME ; int TXnUiEnginePluginIf::ShowFocus(void)
- ?ResolveSkinItemIDL@CXnUtils@@SAHABVTDesC16@@AAVTAknsItemID@@@Z @ 115 NONAME ; int CXnUtils::ResolveSkinItemIDL(class TDesC16 const &, class TAknsItemID &)
- ?PluginNodeL@TXnUiEnginePluginIf@@QAEAAVCXnNodePluginIf@@PAV2@@Z @ 116 NONAME ; class CXnNodePluginIf & TXnUiEnginePluginIf::PluginNodeL(class CXnNodePluginIf *)
- ?VerticalPixelValueL@TXnUiEnginePluginIf@@QAEHPAVCXnProperty@@H@Z @ 117 NONAME ; int TXnUiEnginePluginIf::VerticalPixelValueL(class CXnProperty *, int)
- ?SetComponent@CXnControlAdapter@@QAEXPAVCXnComponent@@@Z @ 118 NONAME ; void CXnControlAdapter::SetComponent(class CXnComponent *)
- ??0MXnNodePredicate@@QAE@XZ @ 119 NONAME ; MXnNodePredicate::MXnNodePredicate(void)
- ??1CXnViewsNodeImpl@@UAE@XZ @ 120 NONAME ; CXnViewsNodeImpl::~CXnViewsNodeImpl(void)
- ?HandleControlEventL@CXnControlAdapter@@UAEXPAVCCoeControl@@W4TCoeEvent@MCoeControlObserver@@@Z @ 121 NONAME ; void CXnControlAdapter::HandleControlEventL(class CCoeControl *, enum MCoeControlObserver::TCoeEvent)
- ?ActivateViewL@TXnUiEnginePluginIf@@QAEXAAVCXnNodePluginIf@@@Z @ 122 NONAME ; void TXnUiEnginePluginIf::ActivateViewL(class CXnNodePluginIf &)
- ?HandleScreenDeviceChangedL@CXnControlAdapter@@UAEXXZ @ 123 NONAME ; void CXnControlAdapter::HandleScreenDeviceChangedL(void)
- ?SizeChanged@CXnControlAdapter@@MAEXXZ @ 124 NONAME ; void CXnControlAdapter::SizeChanged(void)
- ?CountComponentControls@CXnControlAdapter@@MBEHXZ @ 125 NONAME ; int CXnControlAdapter::CountComponentControls(void) const
- ?HideTooltipsL@CXnNodeAppIf@@QAEXXZ @ 126 NONAME ; void CXnNodeAppIf::HideTooltipsL(void)
- ?GetPropertyL@CXnNodeAppIf@@QBEPAVCXnProperty@@ABVTDesC8@@@Z @ 127 NONAME ; class CXnProperty * CXnNodeAppIf::GetPropertyL(class TDesC8 const &) const
- ?GridScrollBarWidthL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 128 NONAME ; class CXnProperty * CXnNodePluginIf::GridScrollBarWidthL(void)
- ?DeactivateFocusedNodeL@TXnUiEnginePluginIf@@QAEXXZ @ 129 NONAME ; void TXnUiEnginePluginIf::DeactivateFocusedNodeL(void)
- ?FindNodeByClassL@TXnUiEngineAppIf@@QAE?AV?$RPointerArray@VCXnNodeAppIf@@@@ABVTDesC8@@0@Z @ 130 NONAME ; class RPointerArray<class CXnNodeAppIf> TXnUiEngineAppIf::FindNodeByClassL(class TDesC8 const &, class TDesC8 const &)
- ?Match@MXnNodePredicate@@UAEHAAVCXnNode@@@Z @ 131 NONAME ; int MXnNodePredicate::Match(class CXnNode &)
- ?GetBitmapAndMask@CXnControlAdapter@@QAEXABVTDesC16@@0AAPAVCFbsBitmap@@1@Z @ 132 NONAME ; void CXnControlAdapter::GetBitmapAndMask(class TDesC16 const &, class TDesC16 const &, class CFbsBitmap * &, class CFbsBitmap * &)
- ?NewL@CXnViewsNodeImpl@@SAPAV1@PAVCXnType@@@Z @ 133 NONAME ; class CXnViewsNodeImpl * CXnViewsNodeImpl::NewL(class CXnType *)
- ?PaddingRect@CXnNodeAppIf@@QAE?AVTRect@@XZ @ 134 NONAME ; class TRect CXnNodeAppIf::PaddingRect(void)
- ?SetMarginRect@CXnNodePluginIf@@QAEXABVTRect@@@Z @ 135 NONAME ; void CXnNodePluginIf::SetMarginRect(class TRect const &)
- ?IsDialogDisplaying@TXnUiEnginePluginIf@@QAEHXZ @ 136 NONAME ; int TXnUiEnginePluginIf::IsDialogDisplaying(void)
- ?HandleEventL@CXnAppUiAdapter@@UAEXABVTDesC16@@AAVCXnNodeAppIf@@@Z @ 137 NONAME ; void CXnAppUiAdapter::HandleEventL(class TDesC16 const &, class CXnNodeAppIf &)
- ?GetPropertyL@CXnNodePluginIf@@QBEPAVCXnProperty@@ABVTDesC8@@@Z @ 138 NONAME ; class CXnProperty * CXnNodePluginIf::GetPropertyL(class TDesC8 const &) const
- ?SetPropertyArrayL@CXnNodeAppIf@@QAEXPAV?$RPointerArray@VCXnProperty@@@@@Z @ 139 NONAME ; void CXnNodeAppIf::SetPropertyArrayL(class RPointerArray<class CXnProperty> *)
- ?RestorePreviousFocusedNode@TXnUiEnginePluginIf@@QAEXXZ @ 140 NONAME ; void TXnUiEnginePluginIf::RestorePreviousFocusedNode(void)
- ?RemoveViewL@CXnAppUiAdapter@@QAEXAAVCAknView@@@Z @ 141 NONAME ; void CXnAppUiAdapter::RemoveViewL(class CAknView &)
- ?EnterPowerSaveModeL@CXnComponent@@UAEXXZ @ 142 NONAME ; void CXnComponent::EnterPowerSaveModeL(void)
- ?SetRect@CXnNodePluginIf@@QAEXABVTRect@@@Z @ 143 NONAME ; void CXnNodePluginIf::SetRect(class TRect const &)
- ??0CXnComponent@@IAE@XZ @ 144 NONAME ; CXnComponent::CXnComponent(void)
- ?CollapseWhiteSpace@CXnUtils@@SAXAAVCXnNodePluginIf@@AAVTDes16@@@Z @ 145 NONAME ; void CXnUtils::CollapseWhiteSpace(class CXnNodePluginIf &, class TDes16 &)
- ?SetHandleTooltip@CXnNodePluginIf@@QAEXH@Z @ 146 NONAME ; void CXnNodePluginIf::SetHandleTooltip(int)
- ??1CXnAppUiAdapter@@UAE@XZ @ 147 NONAME ; CXnAppUiAdapter::~CXnAppUiAdapter(void)
- ?NewL@CXnControlAdapter@@SAPAV1@AAVCXnNodePluginIf@@@Z @ 148 NONAME ; class CXnControlAdapter * CXnControlAdapter::NewL(class CXnNodePluginIf &)
- ?EnableLongTapAnimation@CXnControlAdapter@@QAEXH@Z @ 149 NONAME ; void CXnControlAdapter::EnableLongTapAnimation(int)
- ?RefL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 150 NONAME ; class CXnProperty * CXnNodePluginIf::RefL(void)
- ?SetPaddingRect@CXnNodePluginIf@@QAEXABVTRect@@@Z @ 151 NONAME ; void CXnNodePluginIf::SetPaddingRect(class TRect const &)
- ?FocusVerLoopingL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 152 NONAME ; class CXnProperty * CXnNodePluginIf::FocusVerLoopingL(void)
- ?SetFocusedNode@TXnUiEnginePluginIf@@QAEXPAVCXnNodePluginIf@@@Z @ 153 NONAME ; void TXnUiEnginePluginIf::SetFocusedNode(class CXnNodePluginIf *)
- ?ExitPowerSaveModeL@CXnComponent@@UAEXXZ @ 154 NONAME ; void CXnComponent::ExitPowerSaveModeL(void)
- ?EnableSwipeL@TXnUiEnginePluginIf@@QAEXH@Z @ 155 NONAME ; void TXnUiEnginePluginIf::EnableSwipeL(int)
- ?GetPCData@CXnNodeAppIf@@QBEABVTDesC8@@XZ @ 156 NONAME ; class TDesC8 const & CXnNodeAppIf::GetPCData(void) const
- ?Namespace@CXnNodeAppIf@@QAEABVTDesC8@@XZ @ 157 NONAME ; class TDesC8 const & CXnNodeAppIf::Namespace(void)
- ??1CXnComponentNodeImpl@@UAE@XZ @ 158 NONAME ; CXnComponentNodeImpl::~CXnComponentNodeImpl(void)
- ?SetPropertyWithoutNotificationL@CXnNodePluginIf@@QAEXPAVCXnProperty@@@Z @ 159 NONAME ; void CXnNodePluginIf::SetPropertyWithoutNotificationL(class CXnProperty *)
- ?GetPCData@CXnNodePluginIf@@QBEABVTDesC8@@XZ @ 160 NONAME ; class TDesC8 const & CXnNodePluginIf::GetPCData(void) const
- ?SetPCDataL@CXnNodeAppIf@@QAEXABVTDesC8@@@Z @ 161 NONAME ; void CXnNodeAppIf::SetPCDataL(class TDesC8 const &)
- ?Resources@TXnUiEnginePluginIf@@QAEAAV?$CArrayPtrSeg@VCXnResource@@@@XZ @ 162 NONAME ; class CArrayPtrSeg<class CXnResource> & TXnUiEnginePluginIf::Resources(void)
- ?SetContentBitmaps@CXnControlAdapter@@QAEXABVTDesC16@@0@Z @ 163 NONAME ; void CXnControlAdapter::SetContentBitmaps(class TDesC16 const &, class TDesC16 const &)
- ??1CXnControlAdapter@@UAE@XZ @ 164 NONAME ; CXnControlAdapter::~CXnControlAdapter(void)
- ??1MXnNodePredicate@@UAE@XZ @ 165 NONAME ; MXnNodePredicate::~MXnNodePredicate(void)
- ?HorizontalTwipValueL@TXnUiEnginePluginIf@@QAEHPAVCXnProperty@@H@Z @ 166 NONAME ; int TXnUiEnginePluginIf::HorizontalTwipValueL(class CXnProperty *, int)
- ?ConstructL@CXnAppUiAdapter@@UAEXXZ @ 167 NONAME ; void CXnAppUiAdapter::ConstructL(void)
- ?CreateFontL@CXnUtils@@SAXAAVCXnNodePluginIf@@AAPAVCFont@@AAH@Z @ 168 NONAME ; void CXnUtils::CreateFontL(class CXnNodePluginIf &, class CFont * &, int &)
- ??0CXnApplication@@QAE@VTUid@@@Z @ 169 NONAME ; CXnApplication::CXnApplication(class TUid)
- ?ComponentControl@CXnControlAdapter@@MBEPAVCCoeControl@@H@Z @ 170 NONAME ; class CCoeControl * CXnControlAdapter::ComponentControl(int) const
- ?HandleLongTapEventL@CXnControlAdapter@@UAEXABVTPoint@@0@Z @ 171 NONAME ; void CXnControlAdapter::HandleLongTapEventL(class TPoint const &, class TPoint const &)
- ?ParentL@CXnNodeAppIf@@QBEPAV1@XZ @ 172 NONAME ; class CXnNodeAppIf * CXnNodeAppIf::ParentL(void) const
- ??1CXnComponent@@UAE@XZ @ 173 NONAME ; CXnComponent::~CXnComponent(void)
- ?ControlAdapter@CXnComponent@@QAEPAVCXnControlAdapter@@XZ @ 174 NONAME ; class CXnControlAdapter * CXnComponent::ControlAdapter(void)
- ?DrawContentImage@CXnControlAdapter@@IBEXXZ @ 175 NONAME ; void CXnControlAdapter::DrawContentImage(void) const
- ?Component@CXnComponentNodeImpl@@QAEPAVCXnComponent@@XZ @ 176 NONAME ; class CXnComponent * CXnComponentNodeImpl::Component(void)
- ?GridScrollBarMarginL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 177 NONAME ; class CXnProperty * CXnNodePluginIf::GridScrollBarMarginL(void)
- ?WidgetsVisible@TXnUiEnginePluginIf@@QBEHXZ @ 178 NONAME ; int TXnUiEnginePluginIf::WidgetsVisible(void) const
- ?SetControlAdapter@CXnComponent@@QAEXPAVCXnControlAdapter@@@Z @ 179 NONAME ; void CXnComponent::SetControlAdapter(class CXnControlAdapter *)
- ?GridColumnsL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 180 NONAME ; class CXnProperty * CXnNodePluginIf::GridColumnsL(void)
- ?SetStateL@CXnNodePluginIf@@QAEXABVTDesC8@@@Z @ 181 NONAME ; void CXnNodePluginIf::SetStateL(class TDesC8 const &)
- ?DoesComponentNeedCreation@CXnComponentNodeImpl@@QBEHXZ @ 182 NONAME ; int CXnComponentNodeImpl::DoesComponentNeedCreation(void) const
- ??0CXnDocument@@QAE@AAVCEikApplication@@VTUid@@@Z @ 183 NONAME ; CXnDocument::CXnDocument(class CEikApplication &, class TUid)
- ?FindNodeByClassL@TXnUiEnginePluginIf@@QAE?AV?$RPointerArray@VCXnNodePluginIf@@@@ABVTDesC16@@@Z @ 184 NONAME ; class RPointerArray<class CXnNodePluginIf> TXnUiEnginePluginIf::FindNodeByClassL(class TDesC16 const &)
- ?GridHorDirectionL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 185 NONAME ; class CXnProperty * CXnNodePluginIf::GridHorDirectionL(void)
- ?InternalDomNodeType@CXnNodeAppIf@@QBEABVTDesC8@@XZ @ 186 NONAME ; class TDesC8 const & CXnNodeAppIf::InternalDomNodeType(void) const
- ?StringPool@TXnUiEnginePluginIf@@QAEAAVCXnDomStringPool@@XZ @ 187 NONAME ; class CXnDomStringPool & TXnUiEnginePluginIf::StringPool(void)
- ?SetStateL@CXnNodeAppIf@@QAEXABVTDesC8@@@Z @ 188 NONAME ; void CXnNodeAppIf::SetStateL(class TDesC8 const &)
- ?Type@CXnNodeAppIf@@QAEPAVCXnType@@XZ @ 189 NONAME ; class CXnType * CXnNodeAppIf::Type(void)
- ?BorderRect@CXnNodeAppIf@@QAE?AVTRect@@XZ @ 190 NONAME ; class TRect CXnNodeAppIf::BorderRect(void)
- ?IdL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 191 NONAME ; class CXnProperty * CXnNodePluginIf::IdL(void)
- ?RootNodeL@TXnUiEngineAppIf@@QAEAAVCXnNodeAppIf@@XZ @ 192 NONAME ; class CXnNodeAppIf & TXnUiEngineAppIf::RootNodeL(void)
- ?CreateXnComponentL@MXnComponentFactory@@QAE?AW4TXnComponentFactoryResponse@1@AAVCXnNodePluginIf@@AAPAVCXnComponent@@@Z @ 193 NONAME ; enum MXnComponentFactory::TXnComponentFactoryResponse MXnComponentFactory::CreateXnComponentL(class CXnNodePluginIf &, class CXnComponent * &)
- ?RefreshMenuL@TXnUiEngineAppIf@@QAEXXZ @ 194 NONAME ; void TXnUiEngineAppIf::RefreshMenuL(void)
- ?PaddingRect@CXnNodePluginIf@@QAE?AVTRect@@XZ @ 195 NONAME ; class TRect CXnNodePluginIf::PaddingRect(void)
- ?MeasureAdaptiveContentL@CXnControlAdapter@@UAE?AVTSize@@ABV2@@Z @ 196 NONAME ; class TSize CXnControlAdapter::MeasureAdaptiveContentL(class TSize const &)
- ?NewL@CXnProperty@@SAPAV1@ABVTDesC8@@0W4TPrimitiveValueType@CXnDomPropertyValue@@AAVCXnDomStringPool@@@Z @ 197 NONAME ; class CXnProperty * CXnProperty::NewL(class TDesC8 const &, class TDesC8 const &, enum CXnDomPropertyValue::TPrimitiveValueType, class CXnDomStringPool &)
- ?GetPropertyL@CXnNodePluginIf@@QBEPAVCXnProperty@@AAV2@@Z @ 198 NONAME ; class CXnProperty * CXnNodePluginIf::GetPropertyL(class CXnProperty &) const
- ?HitRegion@TXnUiEnginePluginIf@@QBEPAVCXnControlAdapter@@XZ @ 199 NONAME ; class CXnControlAdapter * TXnUiEnginePluginIf::HitRegion(void) const
- ?MarginRect@CXnNodeAppIf@@QAE?AVTRect@@XZ @ 200 NONAME ; class TRect CXnNodeAppIf::MarginRect(void)
- ?MakeInterfaceL@CXnComponent@@UAEPAVMXnComponentInterface@XnComponentInterface@@ABVTDesC8@@@Z @ 201 NONAME ; class XnComponentInterface::MXnComponentInterface * CXnComponent::MakeInterfaceL(class TDesC8 const &)
- ?EditMode@TXnUiEnginePluginIf@@QAEHXZ @ 202 NONAME ; int TXnUiEnginePluginIf::EditMode(void)
- ?FindNodeByIdL@TXnUiEnginePluginIf@@QAEPAVCXnNodePluginIf@@ABVTDesC8@@0@Z @ 203 NONAME ; class CXnNodePluginIf * TXnUiEnginePluginIf::FindNodeByIdL(class TDesC8 const &, class TDesC8 const &)
- ?EnableRenderUi@CXnUiEngineImpl@@CAXPAX@Z @ 204 NONAME ; void CXnUiEngineImpl::EnableRenderUi(void *)
- ?IsMenuDisplaying@TXnUiEnginePluginIf@@QAEHXZ @ 205 NONAME ; int TXnUiEnginePluginIf::IsMenuDisplaying(void)
- ?IsMenuDisplaying@TXnUiEngineAppIf@@QAEHXZ @ 206 NONAME ; int TXnUiEngineAppIf::IsMenuDisplaying(void)
- ?NewL@CXnProperty@@SAPAV1@PAVCXnDomProperty@@@Z @ 207 NONAME ; class CXnProperty * CXnProperty::NewL(class CXnDomProperty *)
- ?ConstructL@CXnComponentNodeImpl@@IAEXPAVCXnType@@@Z @ 208 NONAME ; void CXnComponentNodeImpl::ConstructL(class CXnType *)
- ?ChildrenL@CXnNodeAppIf@@QAE?AV?$RPointerArray@VCXnNodeAppIf@@@@XZ @ 209 NONAME ; class RPointerArray<class CXnNodeAppIf> CXnNodeAppIf::ChildrenL(void)
- ?LoadPublisher@CXnAppUiAdapter@@UAEHAAVCXnNodeAppIf@@H@Z @ 210 NONAME ; int CXnAppUiAdapter::LoadPublisher(class CXnNodeAppIf &, int)
- ?ConvertHslToRgb@CXnUtils@@SA?AVTRgb@@HHH@Z @ 211 NONAME ; class TRgb CXnUtils::ConvertHslToRgb(int, int, int)
- ?LoadBitmap@CXnControlAdapter@@QAEPAVCFbsBitmap@@ABVTDesC16@@@Z @ 212 NONAME ; class CFbsBitmap * CXnControlAdapter::LoadBitmap(class TDesC16 const &)
- ??0MXnComponentFactory@@IAE@XZ @ 213 NONAME ; MXnComponentFactory::MXnComponentFactory(void)
- ?SetComponent@CXnViewsNodeImpl@@QAEXPAVCXnComponent@@@Z @ 214 NONAME ; void CXnViewsNodeImpl::SetComponent(class CXnComponent *)
- ?BorderRect@CXnNodePluginIf@@QAE?AVTRect@@XZ @ 215 NONAME ; class TRect CXnNodePluginIf::BorderRect(void)
- ?CreateDocumentL@CXnApplication@@MAEPAVCApaDocument@@XZ @ 216 NONAME ; class CApaDocument * CXnApplication::CreateDocumentL(void)
- ?CreateFontL@CXnUtils@@SAXABVTDesC16@@HVTFontStyle@@AAPAVCFont@@AAH@Z @ 217 NONAME ; void CXnUtils::CreateFontL(class TDesC16 const &, int, class TFontStyle, class CFont * &, int &)
- ?GetPluginNodeArrayL@TXnUiEngineAppIf@@QAEHAAV?$RPointerArray@VCXnNodeAppIf@@@@@Z @ 218 NONAME ; int TXnUiEngineAppIf::GetPluginNodeArrayL(class RPointerArray<class CXnNodeAppIf> &)
- ?MakeXnControlAdapterL@MXnComponentFactory@@EAEPAVCXnControlAdapter@@AAVCXnNodePluginIf@@PAV2@@Z @ 219 NONAME ; class CXnControlAdapter * MXnComponentFactory::MakeXnControlAdapterL(class CXnNodePluginIf &, class CXnControlAdapter *)
- ?IsDrawingAllowed@CXnNodePluginIf@@QBEHXZ @ 220 NONAME ; int CXnNodePluginIf::IsDrawingAllowed(void) const
- ?MakeInterfaceL@CXnNodeAppIf@@QAEPAVMXnComponentInterface@XnComponentInterface@@ABVTDesC8@@@Z @ 221 NONAME ; class XnComponentInterface::MXnComponentInterface * CXnNodeAppIf::MakeInterfaceL(class TDesC8 const &)
- ?VerticalTwipValueL@TXnUiEnginePluginIf@@QAEHPAVCXnProperty@@H@Z @ 222 NONAME ; int TXnUiEnginePluginIf::VerticalTwipValueL(class CXnProperty *, int)
- ?Component@CXnControlAdapter@@QAEPAVCXnComponent@@XZ @ 223 NONAME ; class CXnComponent * CXnControlAdapter::Component(void)
- ?FloatValueL@CXnProperty@@QAENXZ @ 224 NONAME ; double CXnProperty::FloatValueL(void)
- ?SetUiEngine@TXnUiEngineAppIf@@QAEXPAVCXnUiEngine@@@Z @ 225 NONAME ; void TXnUiEngineAppIf::SetUiEngine(class CXnUiEngine *)
- ?FindNodeByIdL@TXnUiEngineAppIf@@QAEPAVCXnNodeAppIf@@ABVTDesC16@@0@Z @ 226 NONAME ; class CXnNodeAppIf * TXnUiEngineAppIf::FindNodeByIdL(class TDesC16 const &, class TDesC16 const &)
- ?IsEditMode@TXnUiEngineAppIf@@QAEHXZ @ 227 NONAME ; int TXnUiEngineAppIf::IsEditMode(void)
- ?ResolveSkinItemIDL@CXnUtils@@SAHABVTDesC16@@AAVTAknsItemID@@AAH@Z @ 228 NONAME ; int CXnUtils::ResolveSkinItemIDL(class TDesC16 const &, class TAknsItemID &, int &)
- ?RootNodeL@TXnUiEnginePluginIf@@QAEAAVCXnNodePluginIf@@XZ @ 229 NONAME ; class CXnNodePluginIf & TXnUiEnginePluginIf::RootNodeL(void)
- ?CreateAppUiL@CXnDocument@@UAEPAVCEikAppUi@@XZ @ 230 NONAME ; class CEikAppUi * CXnDocument::CreateAppUiL(void)
- ?PathL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 231 NONAME ; class CXnProperty * CXnNodePluginIf::PathL(void)
- ?NewL@CXnProperty@@SAPAV1@ABVTDesC8@@NW4TPrimitiveValueType@CXnDomPropertyValue@@AAVCXnDomStringPool@@@Z @ 232 NONAME ; class CXnProperty * CXnProperty::NewL(class TDesC8 const &, double, enum CXnDomPropertyValue::TPrimitiveValueType, class CXnDomStringPool &)
- ?MaskPathL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 233 NONAME ; class CXnProperty * CXnNodePluginIf::MaskPathL(void)
- ?AppDllUid@CXnApplication@@MBE?AVTUid@@XZ @ 234 NONAME ; class TUid CXnApplication::AppDllUid(void) const
- ?DoExitPowerSaveModeL@CXnControlAdapter@@UAEXW4TModeEvent@1@@Z @ 235 NONAME ; void CXnControlAdapter::DoExitPowerSaveModeL(enum CXnControlAdapter::TModeEvent)
- ?LabelL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 236 NONAME ; class CXnProperty * CXnNodePluginIf::LabelL(void)
- ?Component@CXnViewsNodeImpl@@QAEPAVCXnComponent@@XZ @ 237 NONAME ; class CXnComponent * CXnViewsNodeImpl::Component(void)
- ?GetRgbValue@CXnUtils@@SAHAAVTRgb@@ABVTDesC8@@@Z @ 238 NONAME ; int CXnUtils::GetRgbValue(class TRgb &, class TDesC8 const &)
- ?StringValue@CXnProperty@@QAEABVTDesC8@@XZ @ 239 NONAME ; class TDesC8 const & CXnProperty::StringValue(void)
- ?SetVisible@CXnControlAdapter@@QAEXH@Z @ 240 NONAME ; void CXnControlAdapter::SetVisible(int)
- ?Node@CXnComponent@@QAEPAVCXnNodePluginIf@@XZ @ 241 NONAME ; class CXnNodePluginIf * CXnComponent::Node(void)
- ?EnablePartialTouchInput@TXnUiEnginePluginIf@@QAEXAAVCXnNodePluginIf@@H@Z @ 242 NONAME ; void TXnUiEnginePluginIf::EnablePartialTouchInput(class CXnNodePluginIf &, int)
+ ?Control@CXnNodePluginIf@@QBEPAVCXnControlAdapter@@XZ @ 32 NONAME ; class CXnControlAdapter * CXnNodePluginIf::Control(void) const
+ ?DestroyPublisher@CXnAppUiAdapter@@UAEHAAVCXnNodeAppIf@@H@Z @ 33 NONAME ; int CXnAppUiAdapter::DestroyPublisher(class CXnNodeAppIf &, int)
+ ?GetPropertyL@CXnNodeAppIf@@QBEPAVCXnProperty@@AAV2@@Z @ 34 NONAME ; class CXnProperty * CXnNodeAppIf::GetPropertyL(class CXnProperty &) const
+ ?MakeInterfaceL@CXnComponentNodeImpl@@UAEPAVMXnComponentInterface@XnComponentInterface@@ABVTDesC8@@@Z @ 35 NONAME ; class XnComponentInterface::MXnComponentInterface * CXnComponentNodeImpl::MakeInterfaceL(class TDesC8 const &)
+ ?SkinChanged@CXnControlAdapter@@UAEXXZ @ 36 NONAME ; void CXnControlAdapter::SkinChanged(void)
+ ?SetContentBitmaps@CXnControlAdapter@@QAEXPAVCFbsBitmap@@0@Z @ 37 NONAME ; void CXnControlAdapter::SetContentBitmaps(class CFbsBitmap *, class CFbsBitmap *)
+ ?FindNodeByClassL@TXnUiEngineAppIf@@QAE?AV?$RPointerArray@VCXnNodeAppIf@@@@ABVTDesC16@@0@Z @ 38 NONAME ; class RPointerArray<class CXnNodeAppIf> TXnUiEngineAppIf::FindNodeByClassL(class TDesC16 const &, class TDesC16 const &)
+ ?SetDataL@CXnControlAdapter@@UAEXABVTDesC8@@ABVTDesC16@@H@Z @ 39 NONAME ; void CXnControlAdapter::SetDataL(class TDesC8 const &, class TDesC16 const &, int)
+ ?ComponentNodeImpl@CXnNodePluginIf@@QAEPAVCXnComponentNodeImpl@@XZ @ 40 NONAME ; class CXnComponentNodeImpl * CXnNodePluginIf::ComponentNodeImpl(void)
+ ??0CXnViewsNodeImpl@@IAE@XZ @ 41 NONAME ; CXnViewsNodeImpl::CXnViewsNodeImpl(void)
+ ?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<class CXnNodeAppIf> 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)
+ ?Rect@CXnNodePluginIf@@QAE?AVTRect@@XZ @ 56 NONAME ; class TRect CXnNodePluginIf::Rect(void)
+ ?AddChildL@CXnNodePluginIf@@QAEXPAV1@@Z @ 57 NONAME ; void CXnNodePluginIf::AddChildL(class CXnNodePluginIf *)
+ ?SetNode@CXnComponent@@QAEXAAVCXnNodePluginIf@@@Z @ 58 NONAME ; void CXnComponent::SetNode(class CXnNodePluginIf &)
+ ?ResetStylusCounter@CXnControlAdapter@@QAEXXZ @ 59 NONAME ; void CXnControlAdapter::ResetStylusCounter(void)
+ ?SetComponent@CXnComponentNodeImpl@@QAEXPAVCXnComponent@@@Z @ 60 NONAME ; void CXnComponentNodeImpl::SetComponent(class CXnComponent *)
+ ?LayoutUIL@TXnUiEnginePluginIf@@QAEXPAVCXnNodePluginIf@@@Z @ 61 NONAME ; void TXnUiEnginePluginIf::LayoutUIL(class CXnNodePluginIf *)
+ ?FocusVisible@TXnUiEnginePluginIf@@QAEHXZ @ 62 NONAME ; int TXnUiEnginePluginIf::FocusVisible(void)
+ ?ExitPowerSaveModeL@CXnControlAdapter@@QAEXW4TModeEvent@1@@Z @ 63 NONAME ; void CXnControlAdapter::ExitPowerSaveModeL(enum CXnControlAdapter::TModeEvent)
+ ?GetThemeResource@TXnUiEngineAppIf@@QAEHABVTDesC16@@AAVRFile@@@Z @ 64 NONAME ; int TXnUiEngineAppIf::GetThemeResource(class TDesC16 const &, class RFile &)
+ ?ConstructL@CXnComponent@@IAEXXZ @ 65 NONAME ; void CXnComponent::ConstructL(void)
+ ?FindResource@CXnUtils@@SAPAVCXnResource@@AAV?$CArrayPtrSeg@VCXnResource@@@@ABVTDesC16@@AAH@Z @ 66 NONAME ; class CXnResource * CXnUtils::FindResource(class CArrayPtrSeg<class CXnResource> &, class TDesC16 const &, int &)
+ ?UnsetStateL@CXnNodeAppIf@@QAEXABVTDesC8@@@Z @ 67 NONAME ; void CXnNodeAppIf::UnsetStateL(class TDesC8 const &)
+ ?Uid@CXnDocument@@QAE?AVTUid@@XZ @ 68 NONAME ; class TUid CXnDocument::Uid(void)
+ ?FocusChanged@CXnControlAdapter@@UAEXW4TDrawNow@@@Z @ 69 NONAME ; void CXnControlAdapter::FocusChanged(enum TDrawNow)
+ ?SetBlank@CXnControlAdapter@@QAEXH@Z @ 70 NONAME ; void CXnControlAdapter::SetBlank(int)
+ ?Component@CXnNodeAppIf@@QAEAAVCXnComponent@@XZ @ 71 NONAME ; class CXnComponent & CXnNodeAppIf::Component(void)
+ ?SetLayoutCapable@CXnNodePluginIf@@QAEXH@Z @ 72 NONAME ; void CXnNodePluginIf::SetLayoutCapable(int)
+ ?MarginRect@CXnNodePluginIf@@QAE?AVTRect@@XZ @ 73 NONAME ; class TRect CXnNodePluginIf::MarginRect(void)
+ ?UiEngineL@CXnAppUiAdapter@@QAEPAVTXnUiEngineAppIf@@XZ @ 74 NONAME ; class TXnUiEngineAppIf * CXnAppUiAdapter::UiEngineL(void)
+ ?SwipeEnabledL@TXnUiEnginePluginIf@@QAEHXZ @ 75 NONAME ; int TXnUiEnginePluginIf::SwipeEnabledL(void)
+ ?SetFocusVisibleL@TXnUiEnginePluginIf@@QAEXH@Z @ 76 NONAME ; void TXnUiEnginePluginIf::SetFocusVisibleL(int)
+ ?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 * &)
+ ?ActivateViewL@TXnUiEngineAppIf@@QAEXAAVCXnNodeAppIf@@@Z @ 94 NONAME ; void TXnUiEngineAppIf::ActivateViewL(class CXnNodeAppIf &)
+ ?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)
+ ?ShowFocus@TXnUiEnginePluginIf@@QAEHXZ @ 110 NONAME ; int TXnUiEnginePluginIf::ShowFocus(void)
+ ?ResolveSkinItemIDL@CXnUtils@@SAHABVTDesC16@@AAVTAknsItemID@@@Z @ 111 NONAME ; int CXnUtils::ResolveSkinItemIDL(class TDesC16 const &, class TAknsItemID &)
+ ?PluginNodeL@TXnUiEnginePluginIf@@QAEAAVCXnNodePluginIf@@PAV2@@Z @ 112 NONAME ; class CXnNodePluginIf & TXnUiEnginePluginIf::PluginNodeL(class CXnNodePluginIf *)
+ ?VerticalPixelValueL@TXnUiEnginePluginIf@@QAEHPAVCXnProperty@@H@Z @ 113 NONAME ; int TXnUiEnginePluginIf::VerticalPixelValueL(class CXnProperty *, int)
+ ?SetComponent@CXnControlAdapter@@QAEXPAVCXnComponent@@@Z @ 114 NONAME ; void CXnControlAdapter::SetComponent(class CXnComponent *)
+ ??0MXnNodePredicate@@QAE@XZ @ 115 NONAME ; MXnNodePredicate::MXnNodePredicate(void)
+ ??1CXnViewsNodeImpl@@UAE@XZ @ 116 NONAME ; CXnViewsNodeImpl::~CXnViewsNodeImpl(void)
+ ?HandleControlEventL@CXnControlAdapter@@UAEXPAVCCoeControl@@W4TCoeEvent@MCoeControlObserver@@@Z @ 117 NONAME ; void CXnControlAdapter::HandleControlEventL(class CCoeControl *, enum MCoeControlObserver::TCoeEvent)
+ ?ActivateViewL@TXnUiEnginePluginIf@@QAEXAAVCXnNodePluginIf@@@Z @ 118 NONAME ; void TXnUiEnginePluginIf::ActivateViewL(class CXnNodePluginIf &)
+ ?HandleScreenDeviceChangedL@CXnControlAdapter@@UAEXXZ @ 119 NONAME ; void CXnControlAdapter::HandleScreenDeviceChangedL(void)
+ ?SizeChanged@CXnControlAdapter@@MAEXXZ @ 120 NONAME ; void CXnControlAdapter::SizeChanged(void)
+ ?CountComponentControls@CXnControlAdapter@@MBEHXZ @ 121 NONAME ; int CXnControlAdapter::CountComponentControls(void) const
+ ?HideTooltipsL@CXnNodeAppIf@@QAEXXZ @ 122 NONAME ; void CXnNodeAppIf::HideTooltipsL(void)
+ ?GetPropertyL@CXnNodeAppIf@@QBEPAVCXnProperty@@ABVTDesC8@@@Z @ 123 NONAME ; class CXnProperty * CXnNodeAppIf::GetPropertyL(class TDesC8 const &) const
+ ?DeactivateFocusedNodeL@TXnUiEnginePluginIf@@QAEXXZ @ 124 NONAME ; void TXnUiEnginePluginIf::DeactivateFocusedNodeL(void)
+ ?FindNodeByClassL@TXnUiEngineAppIf@@QAE?AV?$RPointerArray@VCXnNodeAppIf@@@@ABVTDesC8@@0@Z @ 125 NONAME ; class RPointerArray<class CXnNodeAppIf> TXnUiEngineAppIf::FindNodeByClassL(class TDesC8 const &, class TDesC8 const &)
+ ?Match@MXnNodePredicate@@UAEHAAVCXnNode@@@Z @ 126 NONAME ; int MXnNodePredicate::Match(class CXnNode &)
+ ?GetBitmapAndMask@CXnControlAdapter@@QAEXABVTDesC16@@0AAPAVCFbsBitmap@@1@Z @ 127 NONAME ; void CXnControlAdapter::GetBitmapAndMask(class TDesC16 const &, class TDesC16 const &, class CFbsBitmap * &, class CFbsBitmap * &)
+ ?NewL@CXnViewsNodeImpl@@SAPAV1@PAVCXnType@@@Z @ 128 NONAME ; class CXnViewsNodeImpl * CXnViewsNodeImpl::NewL(class CXnType *)
+ ?PaddingRect@CXnNodeAppIf@@QAE?AVTRect@@XZ @ 129 NONAME ; class TRect CXnNodeAppIf::PaddingRect(void)
+ ?SetMarginRect@CXnNodePluginIf@@QAEXABVTRect@@@Z @ 130 NONAME ; void CXnNodePluginIf::SetMarginRect(class TRect const &)
+ ?IsDialogDisplaying@TXnUiEnginePluginIf@@QAEHXZ @ 131 NONAME ; int TXnUiEnginePluginIf::IsDialogDisplaying(void)
+ ?HandleEventL@CXnAppUiAdapter@@UAEXABVTDesC16@@AAVCXnNodeAppIf@@@Z @ 132 NONAME ; void CXnAppUiAdapter::HandleEventL(class TDesC16 const &, class CXnNodeAppIf &)
+ ?GetPropertyL@CXnNodePluginIf@@QBEPAVCXnProperty@@ABVTDesC8@@@Z @ 133 NONAME ; class CXnProperty * CXnNodePluginIf::GetPropertyL(class TDesC8 const &) const
+ ?SetPropertyArrayL@CXnNodeAppIf@@QAEXPAV?$RPointerArray@VCXnProperty@@@@@Z @ 134 NONAME ; void CXnNodeAppIf::SetPropertyArrayL(class RPointerArray<class CXnProperty> *)
+ ?RestorePreviousFocusedNode@TXnUiEnginePluginIf@@QAEXXZ @ 135 NONAME ; void TXnUiEnginePluginIf::RestorePreviousFocusedNode(void)
+ ?RemoveViewL@CXnAppUiAdapter@@QAEXAAVCAknView@@@Z @ 136 NONAME ; void CXnAppUiAdapter::RemoveViewL(class CAknView &)
+ ?EnterPowerSaveModeL@CXnComponent@@UAEXXZ @ 137 NONAME ; void CXnComponent::EnterPowerSaveModeL(void)
+ ?SetRect@CXnNodePluginIf@@QAEXABVTRect@@@Z @ 138 NONAME ; void CXnNodePluginIf::SetRect(class TRect const &)
+ ??0CXnComponent@@IAE@XZ @ 139 NONAME ; CXnComponent::CXnComponent(void)
+ ?CollapseWhiteSpace@CXnUtils@@SAXAAVCXnNodePluginIf@@AAVTDes16@@@Z @ 140 NONAME ; void CXnUtils::CollapseWhiteSpace(class CXnNodePluginIf &, class TDes16 &)
+ ?SetHandleTooltip@CXnNodePluginIf@@QAEXH@Z @ 141 NONAME ; void CXnNodePluginIf::SetHandleTooltip(int)
+ ??1CXnAppUiAdapter@@UAE@XZ @ 142 NONAME ; CXnAppUiAdapter::~CXnAppUiAdapter(void)
+ ?NewL@CXnControlAdapter@@SAPAV1@AAVCXnNodePluginIf@@@Z @ 143 NONAME ; class CXnControlAdapter * CXnControlAdapter::NewL(class CXnNodePluginIf &)
+ ?EnableLongTapAnimation@CXnControlAdapter@@QAEXH@Z @ 144 NONAME ; void CXnControlAdapter::EnableLongTapAnimation(int)
+ ?SetPaddingRect@CXnNodePluginIf@@QAEXABVTRect@@@Z @ 145 NONAME ; void CXnNodePluginIf::SetPaddingRect(class TRect const &)
+ ?SetFocusedNode@TXnUiEnginePluginIf@@QAEXPAVCXnNodePluginIf@@@Z @ 146 NONAME ; void TXnUiEnginePluginIf::SetFocusedNode(class CXnNodePluginIf *)
+ ?ExitPowerSaveModeL@CXnComponent@@UAEXXZ @ 147 NONAME ; void CXnComponent::ExitPowerSaveModeL(void)
+ ?EnableSwipeL@TXnUiEnginePluginIf@@QAEXH@Z @ 148 NONAME ; void TXnUiEnginePluginIf::EnableSwipeL(int)
+ ?GetPCData@CXnNodeAppIf@@QBEABVTDesC8@@XZ @ 149 NONAME ; class TDesC8 const & CXnNodeAppIf::GetPCData(void) const
+ ?Namespace@CXnNodeAppIf@@QAEABVTDesC8@@XZ @ 150 NONAME ; class TDesC8 const & CXnNodeAppIf::Namespace(void)
+ ??1CXnComponentNodeImpl@@UAE@XZ @ 151 NONAME ; CXnComponentNodeImpl::~CXnComponentNodeImpl(void)
+ ?SetPropertyWithoutNotificationL@CXnNodePluginIf@@QAEXPAVCXnProperty@@@Z @ 152 NONAME ; void CXnNodePluginIf::SetPropertyWithoutNotificationL(class CXnProperty *)
+ ?GetPCData@CXnNodePluginIf@@QBEABVTDesC8@@XZ @ 153 NONAME ; class TDesC8 const & CXnNodePluginIf::GetPCData(void) const
+ ?SetPCDataL@CXnNodeAppIf@@QAEXABVTDesC8@@@Z @ 154 NONAME ; void CXnNodeAppIf::SetPCDataL(class TDesC8 const &)
+ ?Resources@TXnUiEnginePluginIf@@QAEAAV?$CArrayPtrSeg@VCXnResource@@@@XZ @ 155 NONAME ; class CArrayPtrSeg<class CXnResource> & TXnUiEnginePluginIf::Resources(void)
+ ?SetContentBitmaps@CXnControlAdapter@@QAEXABVTDesC16@@0@Z @ 156 NONAME ; void CXnControlAdapter::SetContentBitmaps(class TDesC16 const &, class TDesC16 const &)
+ ??1CXnControlAdapter@@UAE@XZ @ 157 NONAME ; CXnControlAdapter::~CXnControlAdapter(void)
+ ??1MXnNodePredicate@@UAE@XZ @ 158 NONAME ; MXnNodePredicate::~MXnNodePredicate(void)
+ ?HorizontalTwipValueL@TXnUiEnginePluginIf@@QAEHPAVCXnProperty@@H@Z @ 159 NONAME ; int TXnUiEnginePluginIf::HorizontalTwipValueL(class CXnProperty *, int)
+ ?ConstructL@CXnAppUiAdapter@@UAEXXZ @ 160 NONAME ; void CXnAppUiAdapter::ConstructL(void)
+ ?CreateFontL@CXnUtils@@SAXAAVCXnNodePluginIf@@AAPAVCFont@@AAH@Z @ 161 NONAME ; void CXnUtils::CreateFontL(class CXnNodePluginIf &, class CFont * &, int &)
+ ??0CXnApplication@@QAE@VTUid@@@Z @ 162 NONAME ; CXnApplication::CXnApplication(class TUid)
+ ?ComponentControl@CXnControlAdapter@@MBEPAVCCoeControl@@H@Z @ 163 NONAME ; class CCoeControl * CXnControlAdapter::ComponentControl(int) const
+ ?HandleLongTapEventL@CXnControlAdapter@@UAEXABVTPoint@@0@Z @ 164 NONAME ; void CXnControlAdapter::HandleLongTapEventL(class TPoint const &, class TPoint const &)
+ ?ParentL@CXnNodeAppIf@@QBEPAV1@XZ @ 165 NONAME ; class CXnNodeAppIf * CXnNodeAppIf::ParentL(void) const
+ ??1CXnComponent@@UAE@XZ @ 166 NONAME ; CXnComponent::~CXnComponent(void)
+ ?ControlAdapter@CXnComponent@@QAEPAVCXnControlAdapter@@XZ @ 167 NONAME ; class CXnControlAdapter * CXnComponent::ControlAdapter(void)
+ ?DrawContentImage@CXnControlAdapter@@IBEXXZ @ 168 NONAME ; void CXnControlAdapter::DrawContentImage(void) const
+ ?Component@CXnComponentNodeImpl@@QAEPAVCXnComponent@@XZ @ 169 NONAME ; class CXnComponent * CXnComponentNodeImpl::Component(void)
+ ?WidgetsVisible@TXnUiEnginePluginIf@@QBEHXZ @ 170 NONAME ; int TXnUiEnginePluginIf::WidgetsVisible(void) const
+ ?SetControlAdapter@CXnComponent@@QAEXPAVCXnControlAdapter@@@Z @ 171 NONAME ; void CXnComponent::SetControlAdapter(class CXnControlAdapter *)
+ ?SetStateL@CXnNodePluginIf@@QAEXABVTDesC8@@@Z @ 172 NONAME ; void CXnNodePluginIf::SetStateL(class TDesC8 const &)
+ ?DoesComponentNeedCreation@CXnComponentNodeImpl@@QBEHXZ @ 173 NONAME ; int CXnComponentNodeImpl::DoesComponentNeedCreation(void) const
+ ??0CXnDocument@@QAE@AAVCEikApplication@@VTUid@@@Z @ 174 NONAME ; CXnDocument::CXnDocument(class CEikApplication &, class TUid)
+ ?FindNodeByClassL@TXnUiEnginePluginIf@@QAE?AV?$RPointerArray@VCXnNodePluginIf@@@@ABVTDesC16@@@Z @ 175 NONAME ; class RPointerArray<class CXnNodePluginIf> TXnUiEnginePluginIf::FindNodeByClassL(class TDesC16 const &)
+ ?InternalDomNodeType@CXnNodeAppIf@@QBEABVTDesC8@@XZ @ 176 NONAME ; class TDesC8 const & CXnNodeAppIf::InternalDomNodeType(void) const
+ ?UiActivated@CXnAppUiAdapter@@UAEXXZ @ 177 NONAME ; void CXnAppUiAdapter::UiActivated(void)
+ ?StringPool@TXnUiEnginePluginIf@@QAEAAVCXnDomStringPool@@XZ @ 178 NONAME ; class CXnDomStringPool & TXnUiEnginePluginIf::StringPool(void)
+ ?SetStateL@CXnNodeAppIf@@QAEXABVTDesC8@@@Z @ 179 NONAME ; void CXnNodeAppIf::SetStateL(class TDesC8 const &)
+ ?Type@CXnNodeAppIf@@QAEPAVCXnType@@XZ @ 180 NONAME ; class CXnType * CXnNodeAppIf::Type(void)
+ ?BorderRect@CXnNodeAppIf@@QAE?AVTRect@@XZ @ 181 NONAME ; class TRect CXnNodeAppIf::BorderRect(void)
+ ?IdL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 182 NONAME ; class CXnProperty * CXnNodePluginIf::IdL(void)
+ ?RootNodeL@TXnUiEngineAppIf@@QAEAAVCXnNodeAppIf@@XZ @ 183 NONAME ; class CXnNodeAppIf & TXnUiEngineAppIf::RootNodeL(void)
+ ?CreateXnComponentL@MXnComponentFactory@@QAE?AW4TXnComponentFactoryResponse@1@AAVCXnNodePluginIf@@AAPAVCXnComponent@@@Z @ 184 NONAME ; enum MXnComponentFactory::TXnComponentFactoryResponse MXnComponentFactory::CreateXnComponentL(class CXnNodePluginIf &, class CXnComponent * &)
+ ?RefreshMenuL@TXnUiEngineAppIf@@QAEXXZ @ 185 NONAME ; void TXnUiEngineAppIf::RefreshMenuL(void)
+ ?PaddingRect@CXnNodePluginIf@@QAE?AVTRect@@XZ @ 186 NONAME ; class TRect CXnNodePluginIf::PaddingRect(void)
+ ?MeasureAdaptiveContentL@CXnControlAdapter@@UAE?AVTSize@@ABV2@@Z @ 187 NONAME ; class TSize CXnControlAdapter::MeasureAdaptiveContentL(class TSize const &)
+ ?NewL@CXnProperty@@SAPAV1@ABVTDesC8@@0W4TPrimitiveValueType@CXnDomPropertyValue@@AAVCXnDomStringPool@@@Z @ 188 NONAME ; class CXnProperty * CXnProperty::NewL(class TDesC8 const &, class TDesC8 const &, enum CXnDomPropertyValue::TPrimitiveValueType, class CXnDomStringPool &)
+ ?GetPropertyL@CXnNodePluginIf@@QBEPAVCXnProperty@@AAV2@@Z @ 189 NONAME ; class CXnProperty * CXnNodePluginIf::GetPropertyL(class CXnProperty &) const
+ ?HitRegion@TXnUiEnginePluginIf@@QBEPAVCXnControlAdapter@@XZ @ 190 NONAME ; class CXnControlAdapter * TXnUiEnginePluginIf::HitRegion(void) const
+ ?MarginRect@CXnNodeAppIf@@QAE?AVTRect@@XZ @ 191 NONAME ; class TRect CXnNodeAppIf::MarginRect(void)
+ ?EditMode@TXnUiEnginePluginIf@@QAEHXZ @ 192 NONAME ; int TXnUiEnginePluginIf::EditMode(void)
+ ?FindNodeByIdL@TXnUiEnginePluginIf@@QAEPAVCXnNodePluginIf@@ABVTDesC8@@0@Z @ 193 NONAME ; class CXnNodePluginIf * TXnUiEnginePluginIf::FindNodeByIdL(class TDesC8 const &, class TDesC8 const &)
+ ?MakeInterfaceL@CXnComponent@@UAEPAVMXnComponentInterface@XnComponentInterface@@ABVTDesC8@@@Z @ 194 NONAME ; class XnComponentInterface::MXnComponentInterface * CXnComponent::MakeInterfaceL(class TDesC8 const &)
+ ?EnableRenderUi@CXnUiEngineImpl@@CAXPAX@Z @ 195 NONAME ; void CXnUiEngineImpl::EnableRenderUi(void *)
+ ?IsMenuDisplaying@TXnUiEnginePluginIf@@QAEHXZ @ 196 NONAME ; int TXnUiEnginePluginIf::IsMenuDisplaying(void)
+ ?IsMenuDisplaying@TXnUiEngineAppIf@@QAEHXZ @ 197 NONAME ; int TXnUiEngineAppIf::IsMenuDisplaying(void)
+ ?NewL@CXnProperty@@SAPAV1@PAVCXnDomProperty@@@Z @ 198 NONAME ; class CXnProperty * CXnProperty::NewL(class CXnDomProperty *)
+ ?ConstructL@CXnComponentNodeImpl@@IAEXPAVCXnType@@@Z @ 199 NONAME ; void CXnComponentNodeImpl::ConstructL(class CXnType *)
+ ?ChildrenL@CXnNodeAppIf@@QAE?AV?$RPointerArray@VCXnNodeAppIf@@@@XZ @ 200 NONAME ; class RPointerArray<class CXnNodeAppIf> CXnNodeAppIf::ChildrenL(void)
+ ?ConvertHslToRgb@CXnUtils@@SA?AVTRgb@@HHH@Z @ 201 NONAME ; class TRgb CXnUtils::ConvertHslToRgb(int, int, int)
+ ?LoadPublisher@CXnAppUiAdapter@@UAEHAAVCXnNodeAppIf@@H@Z @ 202 NONAME ; int CXnAppUiAdapter::LoadPublisher(class CXnNodeAppIf &, int)
+ ?LoadBitmap@CXnControlAdapter@@QAEPAVCFbsBitmap@@ABVTDesC16@@@Z @ 203 NONAME ; class CFbsBitmap * CXnControlAdapter::LoadBitmap(class TDesC16 const &)
+ ??0MXnComponentFactory@@IAE@XZ @ 204 NONAME ; MXnComponentFactory::MXnComponentFactory(void)
+ ?SetComponent@CXnViewsNodeImpl@@QAEXPAVCXnComponent@@@Z @ 205 NONAME ; void CXnViewsNodeImpl::SetComponent(class CXnComponent *)
+ ?BorderRect@CXnNodePluginIf@@QAE?AVTRect@@XZ @ 206 NONAME ; class TRect CXnNodePluginIf::BorderRect(void)
+ ?CreateDocumentL@CXnApplication@@MAEPAVCApaDocument@@XZ @ 207 NONAME ; class CApaDocument * CXnApplication::CreateDocumentL(void)
+ ?CreateFontL@CXnUtils@@SAXABVTDesC16@@HVTFontStyle@@AAPAVCFont@@AAH@Z @ 208 NONAME ; void CXnUtils::CreateFontL(class TDesC16 const &, int, class TFontStyle, class CFont * &, int &)
+ ?GetPluginNodeArrayL@TXnUiEngineAppIf@@QAEHAAV?$RPointerArray@VCXnNodeAppIf@@@@@Z @ 209 NONAME ; int TXnUiEngineAppIf::GetPluginNodeArrayL(class RPointerArray<class CXnNodeAppIf> &)
+ ?MakeXnControlAdapterL@MXnComponentFactory@@EAEPAVCXnControlAdapter@@AAVCXnNodePluginIf@@PAV2@@Z @ 210 NONAME ; class CXnControlAdapter * MXnComponentFactory::MakeXnControlAdapterL(class CXnNodePluginIf &, class CXnControlAdapter *)
+ ?IsDrawingAllowed@CXnNodePluginIf@@QBEHXZ @ 211 NONAME ; int CXnNodePluginIf::IsDrawingAllowed(void) const
+ ?MakeInterfaceL@CXnNodeAppIf@@QAEPAVMXnComponentInterface@XnComponentInterface@@ABVTDesC8@@@Z @ 212 NONAME ; class XnComponentInterface::MXnComponentInterface * CXnNodeAppIf::MakeInterfaceL(class TDesC8 const &)
+ ?VerticalTwipValueL@TXnUiEnginePluginIf@@QAEHPAVCXnProperty@@H@Z @ 213 NONAME ; int TXnUiEnginePluginIf::VerticalTwipValueL(class CXnProperty *, int)
+ ?Component@CXnControlAdapter@@QAEPAVCXnComponent@@XZ @ 214 NONAME ; class CXnComponent * CXnControlAdapter::Component(void)
+ ?FloatValueL@CXnProperty@@QAENXZ @ 215 NONAME ; double CXnProperty::FloatValueL(void)
+ ?SetUiEngine@TXnUiEngineAppIf@@QAEXPAVCXnUiEngine@@@Z @ 216 NONAME ; void TXnUiEngineAppIf::SetUiEngine(class CXnUiEngine *)
+ ?FindNodeByIdL@TXnUiEngineAppIf@@QAEPAVCXnNodeAppIf@@ABVTDesC16@@0@Z @ 217 NONAME ; class CXnNodeAppIf * TXnUiEngineAppIf::FindNodeByIdL(class TDesC16 const &, class TDesC16 const &)
+ ?IsEditMode@TXnUiEngineAppIf@@QAEHXZ @ 218 NONAME ; int TXnUiEngineAppIf::IsEditMode(void)
+ ?ResolveSkinItemIDL@CXnUtils@@SAHABVTDesC16@@AAVTAknsItemID@@AAH@Z @ 219 NONAME ; int CXnUtils::ResolveSkinItemIDL(class TDesC16 const &, class TAknsItemID &, int &)
+ ?EnablePartialTouchInput@TXnUiEnginePluginIf@@QAEXAAVCXnNodePluginIf@@H@Z @ 220 NONAME ; void TXnUiEnginePluginIf::EnablePartialTouchInput(class CXnNodePluginIf &, int)
+ ?RootNodeL@TXnUiEnginePluginIf@@QAEAAVCXnNodePluginIf@@XZ @ 221 NONAME ; class CXnNodePluginIf & TXnUiEnginePluginIf::RootNodeL(void)
+ ?CreateAppUiL@CXnDocument@@UAEPAVCEikAppUi@@XZ @ 222 NONAME ; class CEikAppUi * CXnDocument::CreateAppUiL(void)
+ ?PathL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 223 NONAME ; class CXnProperty * CXnNodePluginIf::PathL(void)
+ ?NewL@CXnProperty@@SAPAV1@ABVTDesC8@@NW4TPrimitiveValueType@CXnDomPropertyValue@@AAVCXnDomStringPool@@@Z @ 224 NONAME ; class CXnProperty * CXnProperty::NewL(class TDesC8 const &, double, enum CXnDomPropertyValue::TPrimitiveValueType, class CXnDomStringPool &)
+ ?MaskPathL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 225 NONAME ; class CXnProperty * CXnNodePluginIf::MaskPathL(void)
+ ?AppDllUid@CXnApplication@@MBE?AVTUid@@XZ @ 226 NONAME ; class TUid CXnApplication::AppDllUid(void) const
+ ?DoExitPowerSaveModeL@CXnControlAdapter@@UAEXW4TModeEvent@1@@Z @ 227 NONAME ; void CXnControlAdapter::DoExitPowerSaveModeL(enum CXnControlAdapter::TModeEvent)
+ ?LabelL@CXnNodePluginIf@@QAEPAVCXnProperty@@XZ @ 228 NONAME ; class CXnProperty * CXnNodePluginIf::LabelL(void)
+ ?Component@CXnViewsNodeImpl@@QAEPAVCXnComponent@@XZ @ 229 NONAME ; class CXnComponent * CXnViewsNodeImpl::Component(void)
+ ?GetRgbValue@CXnUtils@@SAHAAVTRgb@@ABVTDesC8@@@Z @ 230 NONAME ; int CXnUtils::GetRgbValue(class TRgb &, class TDesC8 const &)
+ ?StringValue@CXnProperty@@QAEABVTDesC8@@XZ @ 231 NONAME ; class TDesC8 const & CXnProperty::StringValue(void)
+ ?SetVisible@CXnControlAdapter@@QAEXH@Z @ 232 NONAME ; void CXnControlAdapter::SetVisible(int)
+ ?Node@CXnComponent@@QAEPAVCXnNodePluginIf@@XZ @ 233 NONAME ; class CXnNodePluginIf * CXnComponent::Node(void)
+ ?ProcessMessageL@CXnAppUiAdapter@@UAEXVTUid@@ABVTDesC8@@@Z @ 234 NONAME ; void CXnAppUiAdapter::ProcessMessageL(class TUid, class TDesC8 const &)
--- a/idlehomescreen/xmluirendering/uiengine/eabi/xn3layoutengineu.def Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/eabi/xn3layoutengineu.def Fri Mar 12 15:41:49 2010 +0200
@@ -56,241 +56,233 @@
_ZN14CXnApplicationD2Ev @ 55 NONAME
_ZN15CXnAppUiAdapter10ConstructLEv @ 56 NONAME
_ZN15CXnAppUiAdapter11RemoveViewLER8CAknView @ 57 NONAME
- _ZN15CXnAppUiAdapter12HandleEventLERK7TDesC16R12CXnNodeAppIf @ 58 NONAME
- _ZN15CXnAppUiAdapter13LoadPublisherER12CXnNodeAppIfi @ 59 NONAME
- _ZN15CXnAppUiAdapter13PrepareToExitEv @ 60 NONAME
- _ZN15CXnAppUiAdapter16DestroyPublisherER12CXnNodeAppIfi @ 61 NONAME
- _ZN15CXnAppUiAdapter16DynInitMenuItemLERK7TDesC16P13RPointerArrayI12CXnNodeAppIfE @ 62 NONAME
- _ZN15CXnAppUiAdapter18HandleXuikonEventLER12CXnNodeAppIfS1_R10CXnDomNodeS3_ @ 63 NONAME
- _ZN15CXnAppUiAdapter20HandleEnterEditModeLEi @ 64 NONAME
- _ZN15CXnAppUiAdapter21HandleResourceChangeLEi @ 65 NONAME
- _ZN15CXnAppUiAdapter9UiEngineLEv @ 66 NONAME
- _ZN15CXnAppUiAdapterC1E4TUid @ 67 NONAME
- _ZN15CXnAppUiAdapterC2E4TUid @ 68 NONAME
- _ZN15CXnAppUiAdapterD0Ev @ 69 NONAME
- _ZN15CXnAppUiAdapterD1Ev @ 70 NONAME
- _ZN15CXnAppUiAdapterD2Ev @ 71 NONAME
- _ZN15CXnNodePluginIf10BorderRectEv @ 72 NONAME
- _ZN15CXnNodePluginIf10MarginRectEv @ 73 NONAME
- _ZN15CXnNodePluginIf10SetPCDataLERK6TDesC8 @ 74 NONAME
- _ZN15CXnNodePluginIf11PaddingRectEv @ 75 NONAME
- _ZN15CXnNodePluginIf11UnsetStateLERK6TDesC8 @ 76 NONAME
- _ZN15CXnNodePluginIf11VisibilityLEv @ 77 NONAME
- _ZN15CXnNodePluginIf12GridColumnsLEv @ 78 NONAME
+ _ZN15CXnAppUiAdapter11UiActivatedEv @ 58 NONAME
+ _ZN15CXnAppUiAdapter12HandleEventLERK7TDesC16R12CXnNodeAppIf @ 59 NONAME
+ _ZN15CXnAppUiAdapter13LoadPublisherER12CXnNodeAppIfi @ 60 NONAME
+ _ZN15CXnAppUiAdapter13PrepareToExitEv @ 61 NONAME
+ _ZN15CXnAppUiAdapter16DestroyPublisherER12CXnNodeAppIfi @ 62 NONAME
+ _ZN15CXnAppUiAdapter16DynInitMenuItemLERK7TDesC16P13RPointerArrayI12CXnNodeAppIfE @ 63 NONAME
+ _ZN15CXnAppUiAdapter18HandleXuikonEventLER12CXnNodeAppIfS1_R10CXnDomNodeS3_ @ 64 NONAME
+ _ZN15CXnAppUiAdapter20HandleEnterEditModeLEi @ 65 NONAME
+ _ZN15CXnAppUiAdapter21HandleResourceChangeLEi @ 66 NONAME
+ _ZN15CXnAppUiAdapter9UiEngineLEv @ 67 NONAME
+ _ZN15CXnAppUiAdapterC1E4TUid @ 68 NONAME
+ _ZN15CXnAppUiAdapterC2E4TUid @ 69 NONAME
+ _ZN15CXnAppUiAdapterD0Ev @ 70 NONAME
+ _ZN15CXnAppUiAdapterD1Ev @ 71 NONAME
+ _ZN15CXnAppUiAdapterD2Ev @ 72 NONAME
+ _ZN15CXnNodePluginIf10BorderRectEv @ 73 NONAME
+ _ZN15CXnNodePluginIf10MarginRectEv @ 74 NONAME
+ _ZN15CXnNodePluginIf10SetPCDataLERK6TDesC8 @ 75 NONAME
+ _ZN15CXnNodePluginIf11PaddingRectEv @ 76 NONAME
+ _ZN15CXnNodePluginIf11UnsetStateLERK6TDesC8 @ 77 NONAME
+ _ZN15CXnNodePluginIf11VisibilityLEv @ 78 NONAME
_ZN15CXnNodePluginIf12SetPropertyLEP11CXnProperty @ 79 NONAME
_ZN15CXnNodePluginIf12ViewNodeImplEv @ 80 NONAME
- _ZN15CXnNodePluginIf12VisibleRowsLEv @ 81 NONAME
- _ZN15CXnNodePluginIf13SetBorderRectERK5TRect @ 82 NONAME
- _ZN15CXnNodePluginIf13SetMarginRectERK5TRect @ 83 NONAME
- _ZN15CXnNodePluginIf14IsFocusedStateEv @ 84 NONAME
- _ZN15CXnNodePluginIf14MakeInterfaceLERK6TDesC8 @ 85 NONAME
- _ZN15CXnNodePluginIf14SetPaddingRectERK5TRect @ 86 NONAME
- _ZN15CXnNodePluginIf16FocusHorLoopingLEv @ 87 NONAME
- _ZN15CXnNodePluginIf16FocusVerLoopingLEv @ 88 NONAME
- _ZN15CXnNodePluginIf16GridOrientationLEv @ 89 NONAME
- _ZN15CXnNodePluginIf16SetHandleTooltipEi @ 90 NONAME
- _ZN15CXnNodePluginIf16SetLayoutCapableEi @ 91 NONAME
- _ZN15CXnNodePluginIf17ComponentNodeImplEv @ 92 NONAME
- _ZN15CXnNodePluginIf17GridHorDirectionLEv @ 93 NONAME
- _ZN15CXnNodePluginIf17GridVerDirectionLEv @ 94 NONAME
- _ZN15CXnNodePluginIf19GridScrollBarWidthLEv @ 95 NONAME
- _ZN15CXnNodePluginIf19ReportTriggerEventLERK6TDesC8S2_S2_ @ 96 NONAME
- _ZN15CXnNodePluginIf20GridScrollBarMarginLEv @ 97 NONAME
- _ZN15CXnNodePluginIf31SetPropertyWithoutNotificationLEP11CXnProperty @ 98 NONAME
- _ZN15CXnNodePluginIf3IdLEv @ 99 NONAME
- _ZN15CXnNodePluginIf4RectEv @ 100 NONAME
- _ZN15CXnNodePluginIf4RefLEv @ 101 NONAME
- _ZN15CXnNodePluginIf4TypeEv @ 102 NONAME
- _ZN15CXnNodePluginIf5PathLEv @ 103 NONAME
- _ZN15CXnNodePluginIf6AppIfLEv @ 104 NONAME
- _ZN15CXnNodePluginIf6LabelLEv @ 105 NONAME
- _ZN15CXnNodePluginIf7SetRectERK5TRect @ 106 NONAME
- _ZN15CXnNodePluginIf8DisplayLEv @ 107 NONAME
- _ZN15CXnNodePluginIf9AddChildLEPS_ @ 108 NONAME
- _ZN15CXnNodePluginIf9ChildrenLEv @ 109 NONAME
- _ZN15CXnNodePluginIf9MaskPathLEv @ 110 NONAME
- _ZN15CXnNodePluginIf9NamespaceEv @ 111 NONAME
- _ZN15CXnNodePluginIf9SetDirtyLEv @ 112 NONAME
- _ZN15CXnNodePluginIf9SetStateLERK6TDesC8 @ 113 NONAME
- _ZN15CXnNodePluginIf9UiEngineLEv @ 114 NONAME
- _ZN15CXnUiEngineImpl14EnableRenderUiEPv @ 115 NONAME
- _ZN16CXnViewsNodeImpl10ConstructLEP7CXnType @ 116 NONAME
- _ZN16CXnViewsNodeImpl12SetComponentEP12CXnComponent @ 117 NONAME
- _ZN16CXnViewsNodeImpl4NewLEP7CXnType @ 118 NONAME
- _ZN16CXnViewsNodeImpl9ComponentEv @ 119 NONAME
- _ZN16CXnViewsNodeImplC1Ev @ 120 NONAME
- _ZN16CXnViewsNodeImplC2Ev @ 121 NONAME
- _ZN16CXnViewsNodeImplD0Ev @ 122 NONAME
- _ZN16CXnViewsNodeImplD1Ev @ 123 NONAME
- _ZN16CXnViewsNodeImplD2Ev @ 124 NONAME
- _ZN16MXnNodePredicate5MatchER7CXnNode @ 125 NONAME
- _ZN16MXnNodePredicateC1Ev @ 126 NONAME
- _ZN16MXnNodePredicateC2Ev @ 127 NONAME
- _ZN16MXnNodePredicateD0Ev @ 128 NONAME
- _ZN16MXnNodePredicateD1Ev @ 129 NONAME
- _ZN16MXnNodePredicateD2Ev @ 130 NONAME
- _ZN16TXnUiEngineAppIf10ActiveViewEv @ 131 NONAME
- _ZN16TXnUiEngineAppIf10IsEditModeEv @ 132 NONAME
- _ZN16TXnUiEngineAppIf10StringPoolEv @ 133 NONAME
- _ZN16TXnUiEngineAppIf11FocusedNodeEv @ 134 NONAME
- _ZN16TXnUiEngineAppIf11SetUiEngineEP11CXnUiEngine @ 135 NONAME
- _ZN16TXnUiEngineAppIf12RefreshMenuLEv @ 136 NONAME
- _ZN16TXnUiEngineAppIf13ActivateViewLER12CXnNodeAppIf @ 137 NONAME
- _ZN16TXnUiEngineAppIf13FindNodeByIdLERK6TDesC8S2_ @ 138 NONAME
- _ZN16TXnUiEngineAppIf13FindNodeByIdLERK7TDesC16S2_ @ 139 NONAME
- _ZN16TXnUiEngineAppIf16FindNodeByClassLERK6TDesC8S2_ @ 140 NONAME
- _ZN16TXnUiEngineAppIf16FindNodeByClassLERK7TDesC16S2_ @ 141 NONAME
- _ZN16TXnUiEngineAppIf16GetThemeResourceERK7TDesC16R5RFile @ 142 NONAME
- _ZN16TXnUiEngineAppIf16IsMenuDisplayingEv @ 143 NONAME
- _ZN16TXnUiEngineAppIf19GetPluginNodeArrayLER13RPointerArrayI12CXnNodeAppIfE @ 144 NONAME
- _ZN16TXnUiEngineAppIf23FindContentSourceNodesLERK6TDesC8 @ 145 NONAME
- _ZN16TXnUiEngineAppIf9RenderUILEP12CXnNodeAppIf @ 146 NONAME
- _ZN16TXnUiEngineAppIf9RootNodeLEv @ 147 NONAME
- _ZN17CXnControlAdapter10ConstructLER15CXnNodePluginIf @ 148 NONAME
- _ZN17CXnControlAdapter10LoadBitmapERK7TDesC16 @ 149 NONAME
- _ZN17CXnControlAdapter10SetVisibleEi @ 150 NONAME
- _ZN17CXnControlAdapter11SizeChangedEv @ 151 NONAME
- _ZN17CXnControlAdapter11SkinChangedEv @ 152 NONAME
- _ZN17CXnControlAdapter12FocusChangedE8TDrawNow @ 153 NONAME
- _ZN17CXnControlAdapter12SetComponentEP12CXnComponent @ 154 NONAME
- _ZN17CXnControlAdapter14ContentBitmapsERP10CFbsBitmapS2_ @ 155 NONAME
- _ZN17CXnControlAdapter14OfferKeyEventLERK9TKeyEvent10TEventCode @ 156 NONAME
- _ZN17CXnControlAdapter15SetLocalUiZoomLE10TAknUiZoom @ 157 NONAME
- _ZN17CXnControlAdapter16GetBitmapAndMaskERK7TDesC16S2_RP10CFbsBitmapS5_ @ 158 NONAME
- _ZN17CXnControlAdapter17SetContentBitmapsEP10CFbsBitmapS1_ @ 159 NONAME
- _ZN17CXnControlAdapter17SetContentBitmapsERK7TDesC16S2_ @ 160 NONAME
- _ZN17CXnControlAdapter18ExitPowerSaveModeLENS_10TModeEventE @ 161 NONAME
- _ZN17CXnControlAdapter18ResetStylusCounterEv @ 162 NONAME
- _ZN17CXnControlAdapter19EnterPowerSaveModeLENS_10TModeEventE @ 163 NONAME
- _ZN17CXnControlAdapter19HandleControlEventLEP11CCoeControlN19MCoeControlObserver9TCoeEventE @ 164 NONAME
- _ZN17CXnControlAdapter19HandleLongTapEventLERK6TPointS2_ @ 165 NONAME
- _ZN17CXnControlAdapter19HandlePointerEventLERK13TPointerEvent @ 166 NONAME
- _ZN17CXnControlAdapter20DoExitPowerSaveModeLENS_10TModeEventE @ 167 NONAME
- _ZN17CXnControlAdapter21DoEnterPowerSaveModeLENS_10TModeEventE @ 168 NONAME
- _ZN17CXnControlAdapter21HandlePropertyChangeLEP11CXnProperty @ 169 NONAME
- _ZN17CXnControlAdapter22EnableLongTapAnimationEi @ 170 NONAME
- _ZN17CXnControlAdapter23DoHandlePropertyChangeLEP11CXnProperty @ 171 NONAME
- _ZN17CXnControlAdapter23MeasureAdaptiveContentLERK5TSize @ 172 NONAME
- _ZN17CXnControlAdapter26HandleScreenDeviceChangedLEv @ 173 NONAME
- _ZN17CXnControlAdapter4NewLER15CXnNodePluginIf @ 174 NONAME
- _ZN17CXnControlAdapter8SetBlankEi @ 175 NONAME
- _ZN17CXnControlAdapter8SetDataLERK6TDesC8RK7TDesC16i @ 176 NONAME
- _ZN17CXnControlAdapter9ComponentEv @ 177 NONAME
- _ZN17CXnControlAdapterC1Ev @ 178 NONAME
- _ZN17CXnControlAdapterC2Ev @ 179 NONAME
- _ZN17CXnControlAdapterD0Ev @ 180 NONAME
- _ZN17CXnControlAdapterD1Ev @ 181 NONAME
- _ZN17CXnControlAdapterD2Ev @ 182 NONAME
- _ZN19MXnComponentFactory16MakeXnComponentLER15CXnNodePluginIfRP12CXnComponent @ 183 NONAME
- _ZN19MXnComponentFactory18CreateXnComponentLER15CXnNodePluginIfRP12CXnComponent @ 184 NONAME
- _ZN19MXnComponentFactory21MakeXnControlAdapterLER15CXnNodePluginIfP17CXnControlAdapter @ 185 NONAME
- _ZN19MXnComponentFactory26DoesNodeNeedComponentImplLERK6TDesC8 @ 186 NONAME
- _ZN19MXnComponentFactoryC2Ev @ 187 NONAME
- _ZN19MXnComponentFactoryD0Ev @ 188 NONAME
- _ZN19MXnComponentFactoryD1Ev @ 189 NONAME
- _ZN19MXnComponentFactoryD2Ev @ 190 NONAME
- _ZN19TXnUiEnginePluginIf10StringPoolEv @ 191 NONAME
- _ZN19TXnUiEnginePluginIf11PluginNodeLEP15CXnNodePluginIf @ 192 NONAME
- _ZN19TXnUiEnginePluginIf12EnableSwipeLEi @ 193 NONAME
- _ZN19TXnUiEnginePluginIf12FocusVisibleEv @ 194 NONAME
- _ZN19TXnUiEnginePluginIf12FocusedNodeLEv @ 195 NONAME
- _ZN19TXnUiEnginePluginIf13ActivateViewLER15CXnNodePluginIf @ 196 NONAME
- _ZN19TXnUiEnginePluginIf13AddDirtyNodeLER15CXnNodePluginIf @ 197 NONAME
- _ZN19TXnUiEnginePluginIf13FindNodeByIdLERK6TDesC8S2_ @ 198 NONAME
- _ZN19TXnUiEnginePluginIf13FindNodeByIdLERK7TDesC16S2_ @ 199 NONAME
- _ZN19TXnUiEnginePluginIf13SwipeEnabledLEv @ 200 NONAME
- _ZN19TXnUiEnginePluginIf14SetFocusedNodeEP15CXnNodePluginIf @ 201 NONAME
- _ZN19TXnUiEnginePluginIf16FindNodeByClassLERK7TDesC16 @ 202 NONAME
- _ZN19TXnUiEnginePluginIf16IsMenuDisplayingEv @ 203 NONAME
- _ZN19TXnUiEnginePluginIf16ScreenDeviceSizeEv @ 204 NONAME
- _ZN19TXnUiEnginePluginIf16SetFocusVisibleLEi @ 205 NONAME
- _ZN19TXnUiEnginePluginIf17DisableRenderUiLCEv @ 206 NONAME
- _ZN19TXnUiEnginePluginIf18IsDialogDisplayingEv @ 207 NONAME
- _ZN19TXnUiEnginePluginIf18VerticalTwipValueLEP11CXnPropertyi @ 208 NONAME
- _ZN19TXnUiEnginePluginIf19VerticalPixelValueLEP11CXnPropertyi @ 209 NONAME
- _ZN19TXnUiEnginePluginIf20HorizontalTwipValueLEP11CXnPropertyi @ 210 NONAME
- _ZN19TXnUiEnginePluginIf21HorizontalPixelValueLEP11CXnPropertyi @ 211 NONAME
- _ZN19TXnUiEnginePluginIf22DeactivateFocusedNodeLEv @ 212 NONAME
- _ZN19TXnUiEnginePluginIf26RestorePreviousFocusedNodeEv @ 213 NONAME
- _ZN19TXnUiEnginePluginIf8EditModeEv @ 214 NONAME
- _ZN19TXnUiEnginePluginIf9LayoutUILEP15CXnNodePluginIf @ 215 NONAME
- _ZN19TXnUiEnginePluginIf9RenderUILEP15CXnNodePluginIf @ 216 NONAME
- _ZN19TXnUiEnginePluginIf9ResourcesEv @ 217 NONAME
- _ZN19TXnUiEnginePluginIf9RootNodeLEv @ 218 NONAME
- _ZN19TXnUiEnginePluginIf9ShowFocusEv @ 219 NONAME
- _ZN20CXnComponentNodeImpl10ConstructLEP7CXnType @ 220 NONAME
- _ZN20CXnComponentNodeImpl12SetComponentEP12CXnComponent @ 221 NONAME
- _ZN20CXnComponentNodeImpl14MakeInterfaceLERK6TDesC8 @ 222 NONAME
- _ZN20CXnComponentNodeImpl25SetComponentNeedsCreationEi @ 223 NONAME
- _ZN20CXnComponentNodeImpl4NewLEP7CXnType @ 224 NONAME
- _ZN20CXnComponentNodeImpl9ComponentEv @ 225 NONAME
- _ZN20CXnComponentNodeImplC1Ev @ 226 NONAME
- _ZN20CXnComponentNodeImplC2Ev @ 227 NONAME
- _ZN20CXnComponentNodeImplD0Ev @ 228 NONAME
- _ZN20CXnComponentNodeImplD1Ev @ 229 NONAME
- _ZN20CXnComponentNodeImplD2Ev @ 230 NONAME
- _ZN8CXnUtils11CreateFontLER15CXnNodePluginIfRP5CFontRi @ 231 NONAME
- _ZN8CXnUtils11CreateFontLERK7TDesC16i10TFontStyleRP5CFontRi @ 232 NONAME
- _ZN8CXnUtils11GetRgbValueER4TRgbRK6TDesC8 @ 233 NONAME
- _ZN8CXnUtils11StripQuotesERP7HBufC16 @ 234 NONAME
- _ZN8CXnUtils12FindResourceER12CArrayPtrSegI11CXnResourceERK7TDesC16Ri @ 235 NONAME
- _ZN8CXnUtils12ScaleBitmapLERK5TRectP10CFbsBitmapS4_ @ 236 NONAME
- _ZN8CXnUtils13TextAlignmentER15CXnNodePluginIf @ 237 NONAME
- _ZN8CXnUtils15ConvertHslToRgbEiii @ 238 NONAME
- _ZN8CXnUtils18CollapseWhiteSpaceER15CXnNodePluginIfR6TDes16 @ 239 NONAME
- _ZN8CXnUtils18ResolveSkinItemIDLERK7TDesC16R11TAknsItemIDRi @ 240 NONAME
- _ZN8CXnUtils20HandlePowerSaveModeLEP7CXnNodeii @ 241 NONAME
- _ZNK11CXnProperty7EqualsLERS_ @ 242 NONAME
- _ZNK12CXnNodeAppIf12GetPropertyLER11CXnProperty @ 243 NONAME
- _ZNK12CXnNodeAppIf12GetPropertyLERK6TDesC8 @ 244 NONAME
- _ZNK12CXnNodeAppIf19InternalDomNodeTypeEv @ 245 NONAME
- _ZNK12CXnNodeAppIf7ParentLEv @ 246 NONAME
- _ZNK12CXnNodeAppIf9GetPCDataEv @ 247 NONAME
- _ZNK14CXnApplication9AppDllUidEv @ 248 NONAME
- _ZNK15CXnAppUiAdapter4ViewEv @ 249 NONAME
- _ZNK15CXnNodePluginIf12GetPropertyLER11CXnProperty @ 250 NONAME
- _ZNK15CXnNodePluginIf12GetPropertyLERK6TDesC8 @ 251 NONAME
- _ZNK15CXnNodePluginIf7ControlEv @ 252 NONAME
- _ZNK15CXnNodePluginIf7ParentLEv @ 253 NONAME
- _ZNK15CXnNodePluginIf9GetPCDataEv @ 254 NONAME
- _ZNK16TXnUiEngineAppIf14WidgetsVisibleEv @ 255 NONAME
- _ZNK17CXnControlAdapter15LongTapDetectorEv @ 256 NONAME
- _ZNK17CXnControlAdapter16ComponentControlEi @ 257 NONAME
- _ZNK17CXnControlAdapter16DrawContentImageEv @ 258 NONAME
- _ZNK17CXnControlAdapter16IsDrawingAllowedEv @ 259 NONAME
- _ZNK17CXnControlAdapter22CountComponentControlsEv @ 260 NONAME
- _ZNK17CXnControlAdapter4DrawERK5TRect @ 261 NONAME
- _ZNK17CXnControlAdapter4DrawERK5TRectR9CWindowGc @ 262 NONAME
- _ZNK19TXnUiEnginePluginIf14WidgetsVisibleEv @ 263 NONAME
- _ZNK19TXnUiEnginePluginIf9HitRegionEv @ 264 NONAME
- _ZNK20CXnComponentNodeImpl25DoesComponentNeedCreationEv @ 265 NONAME
- _ZTI11CXnDocument @ 266 NONAME
- _ZTI11CXnProperty @ 267 NONAME
- _ZTI12CXnComponent @ 268 NONAME
- _ZTI14CXnApplication @ 269 NONAME
- _ZTI15CXnAppUiAdapter @ 270 NONAME
- _ZTI16CXnViewsNodeImpl @ 271 NONAME
- _ZTI16MXnNodePredicate @ 272 NONAME
- _ZTI17CXnControlAdapter @ 273 NONAME
- _ZTI18CXnListQueryDialog @ 274 NONAME
- _ZTI19MXnComponentFactory @ 275 NONAME
- _ZTI20CXnComponentNodeImpl @ 276 NONAME
- _ZTI27CXnNodeBreadthFirstIteratorI7CXnNodeE @ 277 NONAME
- _ZTIN21CXnControlAdapterImpl13TIconProviderE @ 278 NONAME
- _ZTV11CXnDocument @ 279 NONAME
- _ZTV11CXnProperty @ 280 NONAME
- _ZTV12CXnComponent @ 281 NONAME
- _ZTV14CXnApplication @ 282 NONAME
- _ZTV15CXnAppUiAdapter @ 283 NONAME
- _ZTV16CXnViewsNodeImpl @ 284 NONAME
- _ZTV16MXnNodePredicate @ 285 NONAME
- _ZTV17CXnControlAdapter @ 286 NONAME
- _ZTV18CXnListQueryDialog @ 287 NONAME
- _ZTV19MXnComponentFactory @ 288 NONAME
- _ZTV20CXnComponentNodeImpl @ 289 NONAME
- _ZTV27CXnNodeBreadthFirstIteratorI7CXnNodeE @ 290 NONAME
- _ZTVN21CXnControlAdapterImpl13TIconProviderE @ 291 NONAME
- _ZThn52_N17CXnControlAdapter19HandleControlEventLEP11CCoeControlN19MCoeControlObserver9TCoeEventE @ 292 NONAME
- _ZThn60_N17CXnControlAdapter19HandleLongTapEventLERK6TPointS2_ @ 293 NONAME
- _ZN19TXnUiEnginePluginIf23EnablePartialTouchInputER15CXnNodePluginIfi @ 294 NONAME
+ _ZN15CXnNodePluginIf13SetBorderRectERK5TRect @ 81 NONAME
+ _ZN15CXnNodePluginIf13SetMarginRectERK5TRect @ 82 NONAME
+ _ZN15CXnNodePluginIf14IsFocusedStateEv @ 83 NONAME
+ _ZN15CXnNodePluginIf14MakeInterfaceLERK6TDesC8 @ 84 NONAME
+ _ZN15CXnNodePluginIf14SetPaddingRectERK5TRect @ 85 NONAME
+ _ZN15CXnNodePluginIf16SetHandleTooltipEi @ 86 NONAME
+ _ZN15CXnNodePluginIf16SetLayoutCapableEi @ 87 NONAME
+ _ZN15CXnNodePluginIf17ComponentNodeImplEv @ 88 NONAME
+ _ZN15CXnNodePluginIf19ReportTriggerEventLERK6TDesC8S2_S2_ @ 89 NONAME
+ _ZN15CXnNodePluginIf31SetPropertyWithoutNotificationLEP11CXnProperty @ 90 NONAME
+ _ZN15CXnNodePluginIf3IdLEv @ 91 NONAME
+ _ZN15CXnNodePluginIf4RectEv @ 92 NONAME
+ _ZN15CXnNodePluginIf4TypeEv @ 93 NONAME
+ _ZN15CXnNodePluginIf5PathLEv @ 94 NONAME
+ _ZN15CXnNodePluginIf6AppIfLEv @ 95 NONAME
+ _ZN15CXnNodePluginIf6LabelLEv @ 96 NONAME
+ _ZN15CXnNodePluginIf7SetRectERK5TRect @ 97 NONAME
+ _ZN15CXnNodePluginIf8DisplayLEv @ 98 NONAME
+ _ZN15CXnNodePluginIf9AddChildLEPS_ @ 99 NONAME
+ _ZN15CXnNodePluginIf9ChildrenLEv @ 100 NONAME
+ _ZN15CXnNodePluginIf9MaskPathLEv @ 101 NONAME
+ _ZN15CXnNodePluginIf9NamespaceEv @ 102 NONAME
+ _ZN15CXnNodePluginIf9SetDirtyLEv @ 103 NONAME
+ _ZN15CXnNodePluginIf9SetStateLERK6TDesC8 @ 104 NONAME
+ _ZN15CXnNodePluginIf9UiEngineLEv @ 105 NONAME
+ _ZN15CXnUiEngineImpl14EnableRenderUiEPv @ 106 NONAME
+ _ZN16CXnViewsNodeImpl10ConstructLEP7CXnType @ 107 NONAME
+ _ZN16CXnViewsNodeImpl12SetComponentEP12CXnComponent @ 108 NONAME
+ _ZN16CXnViewsNodeImpl4NewLEP7CXnType @ 109 NONAME
+ _ZN16CXnViewsNodeImpl9ComponentEv @ 110 NONAME
+ _ZN16CXnViewsNodeImplC1Ev @ 111 NONAME
+ _ZN16CXnViewsNodeImplC2Ev @ 112 NONAME
+ _ZN16CXnViewsNodeImplD0Ev @ 113 NONAME
+ _ZN16CXnViewsNodeImplD1Ev @ 114 NONAME
+ _ZN16CXnViewsNodeImplD2Ev @ 115 NONAME
+ _ZN16MXnNodePredicate5MatchER7CXnNode @ 116 NONAME
+ _ZN16MXnNodePredicateC1Ev @ 117 NONAME
+ _ZN16MXnNodePredicateC2Ev @ 118 NONAME
+ _ZN16MXnNodePredicateD0Ev @ 119 NONAME
+ _ZN16MXnNodePredicateD1Ev @ 120 NONAME
+ _ZN16MXnNodePredicateD2Ev @ 121 NONAME
+ _ZN16TXnUiEngineAppIf10ActiveViewEv @ 122 NONAME
+ _ZN16TXnUiEngineAppIf10IsEditModeEv @ 123 NONAME
+ _ZN16TXnUiEngineAppIf10StringPoolEv @ 124 NONAME
+ _ZN16TXnUiEngineAppIf11FocusedNodeEv @ 125 NONAME
+ _ZN16TXnUiEngineAppIf11SetUiEngineEP11CXnUiEngine @ 126 NONAME
+ _ZN16TXnUiEngineAppIf12RefreshMenuLEv @ 127 NONAME
+ _ZN16TXnUiEngineAppIf13ActivateViewLER12CXnNodeAppIf @ 128 NONAME
+ _ZN16TXnUiEngineAppIf13FindNodeByIdLERK6TDesC8S2_ @ 129 NONAME
+ _ZN16TXnUiEngineAppIf13FindNodeByIdLERK7TDesC16S2_ @ 130 NONAME
+ _ZN16TXnUiEngineAppIf16FindNodeByClassLERK6TDesC8S2_ @ 131 NONAME
+ _ZN16TXnUiEngineAppIf16FindNodeByClassLERK7TDesC16S2_ @ 132 NONAME
+ _ZN16TXnUiEngineAppIf16GetThemeResourceERK7TDesC16R5RFile @ 133 NONAME
+ _ZN16TXnUiEngineAppIf16IsMenuDisplayingEv @ 134 NONAME
+ _ZN16TXnUiEngineAppIf19GetPluginNodeArrayLER13RPointerArrayI12CXnNodeAppIfE @ 135 NONAME
+ _ZN16TXnUiEngineAppIf23FindContentSourceNodesLERK6TDesC8 @ 136 NONAME
+ _ZN16TXnUiEngineAppIf9RenderUILEP12CXnNodeAppIf @ 137 NONAME
+ _ZN16TXnUiEngineAppIf9RootNodeLEv @ 138 NONAME
+ _ZN17CXnControlAdapter10ConstructLER15CXnNodePluginIf @ 139 NONAME
+ _ZN17CXnControlAdapter10LoadBitmapERK7TDesC16 @ 140 NONAME
+ _ZN17CXnControlAdapter10SetVisibleEi @ 141 NONAME
+ _ZN17CXnControlAdapter11SizeChangedEv @ 142 NONAME
+ _ZN17CXnControlAdapter11SkinChangedEv @ 143 NONAME
+ _ZN17CXnControlAdapter12FocusChangedE8TDrawNow @ 144 NONAME
+ _ZN17CXnControlAdapter12SetComponentEP12CXnComponent @ 145 NONAME
+ _ZN17CXnControlAdapter14ContentBitmapsERP10CFbsBitmapS2_ @ 146 NONAME
+ _ZN17CXnControlAdapter14OfferKeyEventLERK9TKeyEvent10TEventCode @ 147 NONAME
+ _ZN17CXnControlAdapter15SetLocalUiZoomLE10TAknUiZoom @ 148 NONAME
+ _ZN17CXnControlAdapter16GetBitmapAndMaskERK7TDesC16S2_RP10CFbsBitmapS5_ @ 149 NONAME
+ _ZN17CXnControlAdapter17SetContentBitmapsEP10CFbsBitmapS1_ @ 150 NONAME
+ _ZN17CXnControlAdapter17SetContentBitmapsERK7TDesC16S2_ @ 151 NONAME
+ _ZN17CXnControlAdapter18ExitPowerSaveModeLENS_10TModeEventE @ 152 NONAME
+ _ZN17CXnControlAdapter18ResetStylusCounterEv @ 153 NONAME
+ _ZN17CXnControlAdapter19EnterPowerSaveModeLENS_10TModeEventE @ 154 NONAME
+ _ZN17CXnControlAdapter19HandleControlEventLEP11CCoeControlN19MCoeControlObserver9TCoeEventE @ 155 NONAME
+ _ZN17CXnControlAdapter19HandleLongTapEventLERK6TPointS2_ @ 156 NONAME
+ _ZN17CXnControlAdapter19HandlePointerEventLERK13TPointerEvent @ 157 NONAME
+ _ZN17CXnControlAdapter20DoExitPowerSaveModeLENS_10TModeEventE @ 158 NONAME
+ _ZN17CXnControlAdapter21DoEnterPowerSaveModeLENS_10TModeEventE @ 159 NONAME
+ _ZN17CXnControlAdapter21HandlePropertyChangeLEP11CXnProperty @ 160 NONAME
+ _ZN17CXnControlAdapter22EnableLongTapAnimationEi @ 161 NONAME
+ _ZN17CXnControlAdapter23DoHandlePropertyChangeLEP11CXnProperty @ 162 NONAME
+ _ZN17CXnControlAdapter23MeasureAdaptiveContentLERK5TSize @ 163 NONAME
+ _ZN17CXnControlAdapter26HandleScreenDeviceChangedLEv @ 164 NONAME
+ _ZN17CXnControlAdapter4NewLER15CXnNodePluginIf @ 165 NONAME
+ _ZN17CXnControlAdapter8SetBlankEi @ 166 NONAME
+ _ZN17CXnControlAdapter8SetDataLERK6TDesC8RK7TDesC16i @ 167 NONAME
+ _ZN17CXnControlAdapter9ComponentEv @ 168 NONAME
+ _ZN17CXnControlAdapterC1Ev @ 169 NONAME
+ _ZN17CXnControlAdapterC2Ev @ 170 NONAME
+ _ZN17CXnControlAdapterD0Ev @ 171 NONAME
+ _ZN17CXnControlAdapterD1Ev @ 172 NONAME
+ _ZN17CXnControlAdapterD2Ev @ 173 NONAME
+ _ZN19MXnComponentFactory16MakeXnComponentLER15CXnNodePluginIfRP12CXnComponent @ 174 NONAME
+ _ZN19MXnComponentFactory18CreateXnComponentLER15CXnNodePluginIfRP12CXnComponent @ 175 NONAME
+ _ZN19MXnComponentFactory21MakeXnControlAdapterLER15CXnNodePluginIfP17CXnControlAdapter @ 176 NONAME
+ _ZN19MXnComponentFactory26DoesNodeNeedComponentImplLERK6TDesC8 @ 177 NONAME
+ _ZN19MXnComponentFactoryC2Ev @ 178 NONAME
+ _ZN19MXnComponentFactoryD0Ev @ 179 NONAME
+ _ZN19MXnComponentFactoryD1Ev @ 180 NONAME
+ _ZN19MXnComponentFactoryD2Ev @ 181 NONAME
+ _ZN19TXnUiEnginePluginIf10StringPoolEv @ 182 NONAME
+ _ZN19TXnUiEnginePluginIf11PluginNodeLEP15CXnNodePluginIf @ 183 NONAME
+ _ZN19TXnUiEnginePluginIf12EnableSwipeLEi @ 184 NONAME
+ _ZN19TXnUiEnginePluginIf12FocusVisibleEv @ 185 NONAME
+ _ZN19TXnUiEnginePluginIf12FocusedNodeLEv @ 186 NONAME
+ _ZN19TXnUiEnginePluginIf13ActivateViewLER15CXnNodePluginIf @ 187 NONAME
+ _ZN19TXnUiEnginePluginIf13AddDirtyNodeLER15CXnNodePluginIf @ 188 NONAME
+ _ZN19TXnUiEnginePluginIf13FindNodeByIdLERK6TDesC8S2_ @ 189 NONAME
+ _ZN19TXnUiEnginePluginIf13FindNodeByIdLERK7TDesC16S2_ @ 190 NONAME
+ _ZN19TXnUiEnginePluginIf13SwipeEnabledLEv @ 191 NONAME
+ _ZN19TXnUiEnginePluginIf14SetFocusedNodeEP15CXnNodePluginIf @ 192 NONAME
+ _ZN19TXnUiEnginePluginIf16FindNodeByClassLERK7TDesC16 @ 193 NONAME
+ _ZN19TXnUiEnginePluginIf16IsMenuDisplayingEv @ 194 NONAME
+ _ZN19TXnUiEnginePluginIf16ScreenDeviceSizeEv @ 195 NONAME
+ _ZN19TXnUiEnginePluginIf16SetFocusVisibleLEi @ 196 NONAME
+ _ZN19TXnUiEnginePluginIf17DisableRenderUiLCEv @ 197 NONAME
+ _ZN19TXnUiEnginePluginIf18IsDialogDisplayingEv @ 198 NONAME
+ _ZN19TXnUiEnginePluginIf18VerticalTwipValueLEP11CXnPropertyi @ 199 NONAME
+ _ZN19TXnUiEnginePluginIf19VerticalPixelValueLEP11CXnPropertyi @ 200 NONAME
+ _ZN19TXnUiEnginePluginIf20HorizontalTwipValueLEP11CXnPropertyi @ 201 NONAME
+ _ZN19TXnUiEnginePluginIf21HorizontalPixelValueLEP11CXnPropertyi @ 202 NONAME
+ _ZN19TXnUiEnginePluginIf22DeactivateFocusedNodeLEv @ 203 NONAME
+ _ZN19TXnUiEnginePluginIf23EnablePartialTouchInputER15CXnNodePluginIfi @ 204 NONAME
+ _ZN19TXnUiEnginePluginIf26RestorePreviousFocusedNodeEv @ 205 NONAME
+ _ZN19TXnUiEnginePluginIf8EditModeEv @ 206 NONAME
+ _ZN19TXnUiEnginePluginIf9LayoutUILEP15CXnNodePluginIf @ 207 NONAME
+ _ZN19TXnUiEnginePluginIf9RenderUILEP15CXnNodePluginIf @ 208 NONAME
+ _ZN19TXnUiEnginePluginIf9ResourcesEv @ 209 NONAME
+ _ZN19TXnUiEnginePluginIf9RootNodeLEv @ 210 NONAME
+ _ZN19TXnUiEnginePluginIf9ShowFocusEv @ 211 NONAME
+ _ZN20CXnComponentNodeImpl10ConstructLEP7CXnType @ 212 NONAME
+ _ZN20CXnComponentNodeImpl12SetComponentEP12CXnComponent @ 213 NONAME
+ _ZN20CXnComponentNodeImpl14MakeInterfaceLERK6TDesC8 @ 214 NONAME
+ _ZN20CXnComponentNodeImpl25SetComponentNeedsCreationEi @ 215 NONAME
+ _ZN20CXnComponentNodeImpl4NewLEP7CXnType @ 216 NONAME
+ _ZN20CXnComponentNodeImpl9ComponentEv @ 217 NONAME
+ _ZN20CXnComponentNodeImplC1Ev @ 218 NONAME
+ _ZN20CXnComponentNodeImplC2Ev @ 219 NONAME
+ _ZN20CXnComponentNodeImplD0Ev @ 220 NONAME
+ _ZN20CXnComponentNodeImplD1Ev @ 221 NONAME
+ _ZN20CXnComponentNodeImplD2Ev @ 222 NONAME
+ _ZN8CXnUtils11CreateFontLER15CXnNodePluginIfRP5CFontRi @ 223 NONAME
+ _ZN8CXnUtils11CreateFontLERK7TDesC16i10TFontStyleRP5CFontRi @ 224 NONAME
+ _ZN8CXnUtils11GetRgbValueER4TRgbRK6TDesC8 @ 225 NONAME
+ _ZN8CXnUtils11StripQuotesERP7HBufC16 @ 226 NONAME
+ _ZN8CXnUtils12FindResourceER12CArrayPtrSegI11CXnResourceERK7TDesC16Ri @ 227 NONAME
+ _ZN8CXnUtils12ScaleBitmapLERK5TRectP10CFbsBitmapS4_ @ 228 NONAME
+ _ZN8CXnUtils13TextAlignmentER15CXnNodePluginIf @ 229 NONAME
+ _ZN8CXnUtils15ConvertHslToRgbEiii @ 230 NONAME
+ _ZN8CXnUtils18CollapseWhiteSpaceER15CXnNodePluginIfR6TDes16 @ 231 NONAME
+ _ZN8CXnUtils18ResolveSkinItemIDLERK7TDesC16R11TAknsItemIDRi @ 232 NONAME
+ _ZN8CXnUtils20HandlePowerSaveModeLEP7CXnNodeii @ 233 NONAME
+ _ZNK11CXnProperty7EqualsLERS_ @ 234 NONAME
+ _ZNK12CXnNodeAppIf12GetPropertyLER11CXnProperty @ 235 NONAME
+ _ZNK12CXnNodeAppIf12GetPropertyLERK6TDesC8 @ 236 NONAME
+ _ZNK12CXnNodeAppIf19InternalDomNodeTypeEv @ 237 NONAME
+ _ZNK12CXnNodeAppIf7ParentLEv @ 238 NONAME
+ _ZNK12CXnNodeAppIf9GetPCDataEv @ 239 NONAME
+ _ZNK14CXnApplication9AppDllUidEv @ 240 NONAME
+ _ZNK15CXnAppUiAdapter4ViewEv @ 241 NONAME
+ _ZNK15CXnNodePluginIf12GetPropertyLER11CXnProperty @ 242 NONAME
+ _ZNK15CXnNodePluginIf12GetPropertyLERK6TDesC8 @ 243 NONAME
+ _ZNK15CXnNodePluginIf7ControlEv @ 244 NONAME
+ _ZNK15CXnNodePluginIf7ParentLEv @ 245 NONAME
+ _ZNK15CXnNodePluginIf9GetPCDataEv @ 246 NONAME
+ _ZNK16TXnUiEngineAppIf14WidgetsVisibleEv @ 247 NONAME
+ _ZNK17CXnControlAdapter15LongTapDetectorEv @ 248 NONAME
+ _ZNK17CXnControlAdapter16ComponentControlEi @ 249 NONAME
+ _ZNK17CXnControlAdapter16DrawContentImageEv @ 250 NONAME
+ _ZNK17CXnControlAdapter16IsDrawingAllowedEv @ 251 NONAME
+ _ZNK17CXnControlAdapter22CountComponentControlsEv @ 252 NONAME
+ _ZNK17CXnControlAdapter4DrawERK5TRect @ 253 NONAME
+ _ZNK17CXnControlAdapter4DrawERK5TRectR9CWindowGc @ 254 NONAME
+ _ZNK19TXnUiEnginePluginIf14WidgetsVisibleEv @ 255 NONAME
+ _ZNK19TXnUiEnginePluginIf9HitRegionEv @ 256 NONAME
+ _ZNK20CXnComponentNodeImpl25DoesComponentNeedCreationEv @ 257 NONAME
+ _ZTI11CXnDocument @ 258 NONAME
+ _ZTI11CXnProperty @ 259 NONAME
+ _ZTI12CXnComponent @ 260 NONAME
+ _ZTI14CXnApplication @ 261 NONAME
+ _ZTI15CXnAppUiAdapter @ 262 NONAME
+ _ZTI16CXnViewsNodeImpl @ 263 NONAME
+ _ZTI16MXnNodePredicate @ 264 NONAME
+ _ZTI17CXnControlAdapter @ 265 NONAME
+ _ZTI18CXnListQueryDialog @ 266 NONAME
+ _ZTI19MXnComponentFactory @ 267 NONAME
+ _ZTI20CXnComponentNodeImpl @ 268 NONAME
+ _ZTI27CXnNodeBreadthFirstIteratorI7CXnNodeE @ 269 NONAME
+ _ZTIN21CXnControlAdapterImpl13TIconProviderE @ 270 NONAME
+ _ZTV11CXnDocument @ 271 NONAME
+ _ZTV11CXnProperty @ 272 NONAME
+ _ZTV12CXnComponent @ 273 NONAME
+ _ZTV14CXnApplication @ 274 NONAME
+ _ZTV15CXnAppUiAdapter @ 275 NONAME
+ _ZTV16CXnViewsNodeImpl @ 276 NONAME
+ _ZTV16MXnNodePredicate @ 277 NONAME
+ _ZTV17CXnControlAdapter @ 278 NONAME
+ _ZTV18CXnListQueryDialog @ 279 NONAME
+ _ZTV19MXnComponentFactory @ 280 NONAME
+ _ZTV20CXnComponentNodeImpl @ 281 NONAME
+ _ZTV27CXnNodeBreadthFirstIteratorI7CXnNodeE @ 282 NONAME
+ _ZTVN21CXnControlAdapterImpl13TIconProviderE @ 283 NONAME
+ _ZThn52_N17CXnControlAdapter19HandleControlEventLEP11CCoeControlN19MCoeControlObserver9TCoeEventE @ 284 NONAME
+ _ZThn60_N17CXnControlAdapter19HandleLongTapEventLERK6TPointS2_ @ 285 NONAME
+ _ZN15CXnAppUiAdapter15ProcessMessageLE4TUidRK6TDesC8 @ 286 NONAME
--- a/idlehomescreen/xmluirendering/uiengine/group/xnlayoutengine.mmp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/group/xnlayoutengine.mmp Fri Mar 12 15:41:49 2010 +0200
@@ -150,6 +150,7 @@
LIBRARY extrenderingplugin.lib
LIBRARY disknotifyhandler.lib
LIBRARY platformenv.lib
+LIBRARY hspluginsettings.lib
#if defined(_XN3_DEBUG_) || defined(AI3_DEBUG_PERFORMANCE)
LIBRARY flogger.lib
--- a/idlehomescreen/xmluirendering/uiengine/inc/xnappuiadapterimpl.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/inc/xnappuiadapterimpl.h Fri Mar 12 15:41:49 2010 +0200
@@ -116,7 +116,15 @@
* @return Content control UI interface, NULL if not present
*/
MHsContentControlUi* HsContentController( const TDesC8& aType ) const;
-
+
+ /**
+ * Gets the Content control factory
+ *
+ * @since S60 5.0
+ * @return Content control factory
+ */
+ CHsContentControlFactory* HsContentControlFactory();
+
/**
* Get the effect manager
*
--- a/idlehomescreen/xmluirendering/uiengine/inc/xnbackgroundmanager.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/inc/xnbackgroundmanager.h Fri Mar 12 15:41:49 2010 +0200
@@ -175,7 +175,12 @@
void ReadWallpaperFromCenrepL();
void UpdateScreen();
void DrawEditModeBackgroundSkin() const;
-
+
+ /**
+ * Callback function to be used with CPeriodic.
+ */
+ static TInt TimerCallback( TAny *aPtr );
+
private: // data
/**
@@ -248,6 +253,12 @@
*/
HBufC* iBgImagePath;
+ /**
+ * Periodic timer.
+ * Own.
+ */
+ CPeriodic* iTimer;
+
};
#endif // CXNBACKGROUNDMANAGER_H
--- a/idlehomescreen/xmluirendering/uiengine/inc/xnbgcontrol.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/inc/xnbgcontrol.h Fri Mar 12 15:41:49 2010 +0200
@@ -104,12 +104,7 @@
* Service for removing grabbing controls
*/
void ResetGrabbingL();
-
- /**
- * Prepares control for destroying
- */
- void PrepareDestroy();
-
+
private:
// new functions
--- a/idlehomescreen/xmluirendering/uiengine/inc/xncontroladapterimpl.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/inc/xncontroladapterimpl.h Fri Mar 12 15:41:49 2010 +0200
@@ -483,6 +483,7 @@
void DrawBackgroundDataL( const TRect& aRect, CXnNode& aNode,
CWindowGc& aGc );
void DrawEditModeBgData( CXnNode& aNode, CWindowGc& aGc );
+ void DrawPlusSign( CXnNode& aNode, CWindowGc& aGc );
void DrawTransparentColorL( CXnNode& aNode, CWindowGc& aGc,
CFbsBitmap* aMask );
void DrawBackgroundSkinL( CXnNode& aNode, CFbsBitmap* aMask,
--- a/idlehomescreen/xmluirendering/uiengine/inc/xneditor.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/inc/xneditor.h Fri Mar 12 15:41:49 2010 +0200
@@ -139,7 +139,7 @@
* @since S60 5.0
* @param aContentInfo content info
*/
- void ReplaceWidgetL( CHsContentInfo& aContentInfo, TBool aUseHsps = ETrue );
+ void ReplaceWidgetL( CHsContentInfo& aContentInfo );
/**
* Commit a new order of plugins to the HSPS.
*
@@ -199,7 +199,9 @@
// from MHsContentController
TInt WidgetListL( CHsContentInfoArray& aArray );
-
+
+ TInt WidgetListL( CHsContentInfo& aInfo, CHsContentInfoArray& aArray );
+
TInt ViewListL( CHsContentInfoArray& aArray );
TInt AppListL( CHsContentInfoArray& aArray );
@@ -260,7 +262,13 @@
* Notifies the MHsContentControl and the MHsContentControlUi if view list was changed.
*/
void ViewListChanged();
-
+
+ /**
+ * Creates content info for defined plugin
+ */
+ CHsContentInfo* CreateContentInfoLC( CXnPluginData& aPlugin,
+ RPointerArray< CHsContentInfo >& aInfos );
+
private:
// from MXnViewObserver
--- a/idlehomescreen/xmluirendering/uiengine/inc/xneffectmanager.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/inc/xneffectmanager.h Fri Mar 12 15:41:49 2010 +0200
@@ -35,7 +35,6 @@
{
CXnNode* iNode;
TInt iState;
- TInt iType;
TInt iId;
};
@@ -60,20 +59,6 @@
~CXnEffectManager();
/**
- * Begin handling of control effect.
- * @param aId effect id
- * @aPlugin Plugin data
- */
- void BeginControlEffectL( TInt aId, CXnPluginData& aPlugin );
-
- /**
- * Begin handling of control effect.
- * @param aId effect id
- * @aPlugins Array of plugin datas
- */
- void BeginControlEffectL( TInt aId, RPointerArray<CXnPluginData>& aPlugins );
-
- /**
* Begin handling of fullscreen effect.
* @param aId effect id
* @aView view data
@@ -97,27 +82,12 @@
* @return ETrue if effect started, otherwise EFalse
*/
TBool DoBeginFullscreenEffect( TXnEffect& aEffect );
-
- /**
- * Starts control effect.
- * @param aEffect effect data
- * @return ETrue if effect started, otherwise EFalse
- */
- TBool DoBeginControlEffect( TXnEffect& aEffect );
/**
* Removes and destroys effect from effect list.
* @param aEffect effect data
*/
void RemoveEffect( TXnEffect* aEffect );
-
- /**
- * Return number of ongoing effects of given type.
- * @param aType effect type, fullscreen or control
- *
- * @return Number of ongoing effects of given type
- */
- TInt EffectCount( TInt aType );
/**
* C++ default constructor.
--- a/idlehomescreen/xmluirendering/uiengine/inc/xnfocuscontrol.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/inc/xnfocuscontrol.h Fri Mar 12 15:41:49 2010 +0200
@@ -22,9 +22,6 @@
// System includes
#include <e32base.h>
-// User includes
-#include "xninactivitymonitor.h"
-
// Forward declarations
class CXnAppUiAdapter;
class CWindowGc;
@@ -36,8 +33,7 @@
* @lib xn3layoutengine.lib
* @since S60 5.0
*/
-NONSHARABLE_CLASS( CXnFocusControl ) : public CBase,
- public MXnInactivityObserver
+NONSHARABLE_CLASS( CXnFocusControl ) : public CBase
{
public:
// Constructors and destructor
@@ -70,14 +66,6 @@
*/
CXnFocusControl( CXnAppUiAdapter& aAppUiAdapter );
-private:
- // from MXnInactivityObserver
-
- /**
- * @see MXnInactivityObserver
- */
- void InactivityTimerExpired();
-
public:
// new functions
@@ -116,8 +104,6 @@
/** AppUiAdapter, Not owned */
CXnAppUiAdapter& iAppUiAdapter;
- /** Inactivity monitor, Owned */
- CXnInactivityMonitor* iMonitor;
/** Flag to indicate whether it is allowed to show focus */
TBool iVisible;
/** Flag to indicate refusal */
--- a/idlehomescreen/xmluirendering/uiengine/inc/xnplugindata.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/inc/xnplugindata.h Fri Mar 12 15:41:49 2010 +0200
@@ -338,6 +338,13 @@
virtual void InitialFocusNodesL( RPointerArray< CXnNode >& aList ) const;
/**
+ * Returns list of popup nodes
+ *
+ * @param aList List of popup nodes
+ */
+ virtual void PopupNodesL( RPointerArray< CXnNode >& aList ) const;
+
+ /**
* Sets the plugin occupied
*/
inline void SetOccupied();
@@ -348,14 +355,7 @@
* @return ETrue when occupied EFalse when not
*/
inline TBool Occupied() const;
-
- /*
- * Sets the plugin removable
- *
- * @param aRemovable ETrue when removable EFalse when not
- */
- inline void SetRemovable( TBool aRemovable );
-
+
/*
* Checks whether removable
*
@@ -424,6 +424,13 @@
* Show oom error note
*/
void ShowOutOfMemError();
+
+ /**
+ * Sets locking_status attribute (locked/none)
+ *
+ * @param aStatus "locked" / "none"
+ */
+ void SetLockingStatus( const TDesC8& aStatus );
private:
// New functions
--- a/idlehomescreen/xmluirendering/uiengine/inc/xnplugindata.inl Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/inc/xnplugindata.inl Fri Mar 12 15:41:49 2010 +0200
@@ -162,22 +162,6 @@
};
// ---------------------------------------------------------------------------
-// Sets removable
-// ---------------------------------------------------------------------------
-//
-inline void CXnPluginData::SetRemovable( TBool aRemovable )
- {
- if( aRemovable )
- {
- iFlags.Set( EIsRemovable );
- }
- else
- {
- iFlags.Clear( EIsRemovable );
- }
- };
-
-// ---------------------------------------------------------------------------
// Returns removable
// ---------------------------------------------------------------------------
//
--- a/idlehomescreen/xmluirendering/uiengine/inc/xnuistatelistener.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/inc/xnuistatelistener.h Fri Mar 12 15:41:49 2010 +0200
@@ -156,6 +156,13 @@
public:
// New functions
+ /**
+ * Prepares for application exit
+ *
+ * @since S60 5.0
+ */
+ void PrepareToExit();
+
/*
* Adds MXnUiStateObserver
*
--- a/idlehomescreen/xmluirendering/uiengine/inc/xnviewadapter.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/inc/xnviewadapter.h Fri Mar 12 15:41:49 2010 +0200
@@ -77,7 +77,7 @@
*
* @since S60 5.0
*/
- void PrepareDestroy();
+ void PrepareToExit();
/**
* Gets event dispatcher
@@ -116,8 +116,15 @@
*
* @since S60 5.0
*/
- void UpdateRskByModeL();
-
+ void UpdateRskByModeL();
+
+ /**
+ * Closes all popups for this container.
+ *
+ * @since S60 5.0
+ */
+ void CloseAllPopupsL();
+
public:
// from CAknView
@@ -191,6 +198,29 @@
* @since S60 5.0
*/
void DeactivateContainerL();
+
+ /**
+ * Activates default container to view.
+ * Deactivates internally previous container if it exists.
+ *
+ * @since S60 5.0
+ * @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.
+ */
+ static TInt TimerCallback( TAny *aPtr );
private:
@@ -226,7 +256,9 @@
/** Active container, Not owned */
const CXnViewData* iContainer;
/** Flags */
- TBitFlags32 iFlags;
+ TBitFlags32 iFlags;
+ /** Timer to set window group order after default view is activated, owned */
+ CPeriodic* iTimer;
};
#endif // XNVIEWADAPTER_H
--- a/idlehomescreen/xmluirendering/uiengine/inc/xnviewdata.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/inc/xnviewdata.h Fri Mar 12 15:41:49 2010 +0200
@@ -93,6 +93,11 @@
* @see CXnPluginData
*/
void AppearanceNodesL( RPointerArray< CXnNode >& aList ) const;
+
+ /**
+ * @see CXnPluginData
+ */
+ void PopupNodesL( RPointerArray< CXnNode >& aList ) const;
public:
// New functions
@@ -143,7 +148,7 @@
* @param aNode Node
* @return Plugin data
*/
- CXnPluginData& Plugin( CXnNode* aNode );
+ CXnPluginData* Plugin( CXnNode* aNode );
/**
* Finds and reurns plugin/view data for namespace
@@ -196,22 +201,19 @@
* Returns KNullCDes if wallpaper has not been set.
*/
const TDesC& WallpaperImagePath() const;
-
+
/**
- * Sets view's locking_status attribute (locked/none) to determine if view
- * is prevented from removing/deleting or not
+ * Destroys all publishers in this view
*
- * @param aLockingStatusString attr. locking_status ("locked"/"none")
+ * @param aReason Destroy reason
*/
- void SetLockingStatus( const TDesC8& aLockingStatusString );
-
+ void DestroyPublishers( TInt aReason );
+
private:
// new functions
void LoadPublishers();
-
- void DestroyPublishers( TInt aReason );
-
+
static TInt DoLoadPublishersL( TAny* aAny );
void DoDestroyPublishersL( TInt aReason );
--- a/idlehomescreen/xmluirendering/uiengine/inc/xnwidgetextensionadapter.h Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/inc/xnwidgetextensionadapter.h Fri Mar 12 15:41:49 2010 +0200
@@ -39,7 +39,8 @@
* @since Series 60 5.0
*/
NONSHARABLE_CLASS( CXnWidgetExtensionAdapter ) : public CXnControlAdapter,
- public MXnUiStateObserver
+ public MXnUiStateObserver,
+ public MXnUiResourceChangeObserver
{
public: // Constructors and destructor
@@ -96,7 +97,20 @@
/**
* @see MXnUiStateObserver
*/
- void NotifyInCallStateChaged( TBool aInCall );
+ void NotifyInCallStateChaged( TBool aInCall );
+
+private:
+ // from MXnUiResourceChangeObserver
+
+ /**
+ * @see MXnUiResourceChangeObserver
+ */
+ void NotifyStatusPaneSizeChanged();
+
+ /**
+ * @see MXnUiResourceChangeObserver
+ */
+ void NotifyResourceChanged( TInt aType );
private:
// Constructors
@@ -129,7 +143,9 @@
/** AppUi, not owned */
CXnAppUiAdapter* iAppUiAdapter;
/** Flag to indicate whether <popup> is permanent */
- TBool iPermanent;
+ TBool iPermanent;
+ /** Is popup element */
+ TBool iPopup;
};
#endif // __XNWIDGETEXTENSIONADAPTER_H__
--- a/idlehomescreen/xmluirendering/uiengine/src/xnappuiadapter.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnappuiadapter.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -18,6 +18,7 @@
// System includes
#include <aknview.h>
#include <akntoolbar.h>
+#include <avkon.rsg>
// User includes
#include "xnappuiadapter.h"
@@ -25,12 +26,13 @@
#include "xnviewadapter.h"
#include "xnuiengineappif.h"
#include "xnfocuscontrol.h"
+#include "hscontentcontrolfactory.h"
+#include "xnviewadapter.h"
#include "xuikon_builds_cfg.hrh"
+#include "debug.h"
-#ifdef _XN_PERFORMANCE_TEST_
-#include "xntimemon.h"
-#endif
+_LIT8( KActivateDefaultView, "activatedefault" );
// ============================ MEMBER FUNCTIONS ===============================
@@ -52,16 +54,16 @@
//
EXPORT_C void CXnAppUiAdapter::ConstructL()
{
-#ifdef _XN_PERFORMANCE_TEST_
- TInt start( 0 );
- TInt end( 0 );
- TInt diff( 0 );
- CXnTimeMon::PrintUserMem( _L( "CXnAppUiAdapter::ConstructL(): - Calling CAknViewAppUi::BaseConstructL().." ) );
- User::AllocSize( start );
-#endif //_XN_PERFORMANCE_TEST_
+ __TICK( "CXnAppUiAdapter::ConstructL" );
+ __TIME_MARK( time );
+ __PRINTS( "*** CXnAppUiAdapter::ConstructL - BaseConstructL" );
+ __TIME_MARK( time2 );
+
+ EnableLocalScreenClearer( EFalse );
+
CAknViewAppUi::BaseConstructL( EAknEnableSkin | EAknEnableMSK | EAknSingleClickCompatible );
-
+
CAknToolbar* toolbar( CurrentFixedToolbar() );
if ( toolbar )
@@ -70,25 +72,13 @@
toolbar->DisableToolbarL( ETrue );
}
-
-#ifdef _XN_PERFORMANCE_TEST_
- User::AllocSize( end );
- diff = end - start;
- RDebug::Print( _L( "CAknViewAppUi::BaseConstructL allocation: %d" ), diff );
- CXnTimeMon::PrintUserMem( _L( "CXnAppUiAdapter::ConstructL(): - Calling CXnAppUiAdapterImpl::NewL().." ) );
- User::AllocSize( start );
-#endif //_XN_PERFORMANCE_TEST_
+
+ __TIME_ENDMARK( "CXnAppUiAdapter::ConstructL - BaseConstructL, done", time2 );
iImpl = CXnAppUiAdapterImpl::NewL( iApplicationUid, *this );
iImpl->ConstructL();
-
-#ifdef _XN_PERFORMANCE_TEST_
- User::AllocSize( end );
- diff = end-start;
- RDebug::Print( _L( "Xuikon launch allocation: %d" ), diff );
-
- CXnTimeMon::PrintUserMem( _L( "CXnAppUiAdapter::ConstructL() .. all done." ) );
-#endif //_XN_PERFORMANCE_TEST_
+
+ __TIME_ENDMARK( "CXnAppUiAdapter::ConstructL, done", time );
}
// -----------------------------------------------------------------------------
@@ -97,8 +87,7 @@
// -----------------------------------------------------------------------------
//
EXPORT_C CXnAppUiAdapter::~CXnAppUiAdapter()
- {
- iExitingApp = ETrue;
+ {
delete iUiEngineAppIf;
delete iImpl;
@@ -111,9 +100,8 @@
//
EXPORT_C void CXnAppUiAdapter::HandleResourceChangeL( TInt aType )
{
-#ifdef _XN_PERFORMANCE_TEST_
- RDebug::Print( _L( "CXnAppUiAdapter::HandleResourceChangeL - start" ) );
-#endif //_XN_PERFORMANCE_TEST_
+ __PRINTS( "*** CXnAppUiAdapter::HandleResourceChangeL" );
+ __TIME_MARK( time );
CAknViewAppUi::HandleResourceChangeL( aType );
@@ -122,9 +110,7 @@
iImpl->HandleResourceChangeL( aType );
}
-#ifdef _XN_PERFORMANCE_TEST_
- RDebug::Print( _L( "CXnAppUiAdapter::HandleResourceChangeL - end" ) );
-#endif //_XN_PERFORMANCE_TEST_
+ __TIME_ENDMARK( "CXnAppUiAdapter::HandleResourceChangeL, done", time );
}
// -----------------------------------------------------------------------------
@@ -281,14 +267,49 @@
EXPORT_C void CXnAppUiAdapter::PrepareToExit()
{
iExitingApp = ETrue;
- delete iUiEngineAppIf;
- iUiEngineAppIf = NULL;
- delete iImpl;
- iImpl = NULL;
+
+ if ( iImpl )
+ {
+ iImpl->UiStateListener().PrepareToExit();
+
+ iImpl->ViewAdapter().PrepareToExit();
+
+ iImpl->HsContentControlFactory()->PrepareToExit();
+ }
+
CAknViewAppUi::PrepareToExit();
}
// -----------------------------------------------------------------------------
+// CXnAppUiAdapter::UiActivated
+//
+// -----------------------------------------------------------------------------
+//
+EXPORT_C void CXnAppUiAdapter::UiActivated()
+ {
+ // Default empty implementation
+ }
+
+// -----------------------------------------------------------------------------
+// CXnAppUiAdapter::ProcessMessageL
+//
+// -----------------------------------------------------------------------------
+//
+EXPORT_C void CXnAppUiAdapter::ProcessMessageL( TUid aUid,
+ const TDesC8& /*aParams*/ )
+ {
+ if ( aUid.iUid == KUidApaMessageSwitchOpenFileValue )
+ {
+ // activate default homescreen view.
+ // customcontrol is set so that window group order is not changed
+ SetCustomControl( 1 );
+ TRAP_IGNORE( ActivateLocalViewL(
+ View().Id(), TUid::Null(), KActivateDefaultView() ) );
+ SetCustomControl( 0 );
+ }
+ }
+
+// -----------------------------------------------------------------------------
// CXnAppUiAdapter::ReloadUiL
//
// -----------------------------------------------------------------------------
--- a/idlehomescreen/xmluirendering/uiengine/src/xnappuiadapterimpl.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnappuiadapterimpl.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -19,6 +19,7 @@
#include <hsccproviderclient.h>
#include <hscontentcontroller.h>
#include <hscontentcontrolui.h>
+#include <hspluginsettings.h>
#include <bautils.h>
#include <data_caging_path_literals.hrh>
@@ -28,6 +29,7 @@
#include "xnviewmanager.h"
#include "xnviewadapter.h"
#include "xnuistatelistener.h"
+#include "xnbackgroundmanager.h"
#include "hscontentcontrolfactory.h"
#include "xneditor.h"
#include "xnwallpaperview.h"
@@ -35,6 +37,8 @@
#include "xnappuiadapterimpl.h"
+#include "debug.h"
+
// Constants
_LIT( KResourceDrive, "z:" );
_LIT( KResourceFile, "xnuiengine.rsc" );
@@ -72,9 +76,15 @@
//
void CXnAppUiAdapterImpl::ConstructL()
{
-#ifdef _XN_PERFORMANCE_TEST_
- RDebug::Print( _L( "CXnAppUiAdapterImpl::ConstructL() - start" ) );
-#endif //_XN_PERFORMANCE_TEST_
+ __PRINTS( "*** CXnAppUiAdapterImpl::ConstructL" );
+ __TIME_MARK( time );
+
+ const TInt KMaxUidLength( 10 );
+ _LIT8( KUint, "%u" );
+ TBuf8< KMaxUidLength > uid;
+ uid.Format( KUint, iApplicationUid.iUid );
+
+ HSPluginSettingsIf::CHomescreenSettings::InitializeL( uid );
TFileName resFile;
resFile.Append( KResourceDrive );
@@ -99,17 +109,19 @@
iViewAdapter = CXnViewAdapter::NewL( iAdapter );
iViewManager->LoadUiL();
-
+
iCcProviderClient = CHsCcProviderClient::NewL( iViewManager->Editor() );
CXnWallpaperView* wallpaper = CXnWallpaperView::NewL( *iUiEngine );
- iAdapter.AddViewL( wallpaper );
-
- iEffectManager = CXnEffectManager::NewL();
+ CleanupStack::PushL( wallpaper );
-#ifdef _XN_PERFORMANCE_TEST_
- RDebug::Print( _L( "CXnAppUiAdapterImpl::ConstructL() - end" ) );
-#endif //_XN_PERFORMANCE_TEST_
+ // wallpaper view is owned by CAknViewAppUi
+ iAdapter.AddViewL( wallpaper );
+ CleanupStack::Pop( wallpaper );
+
+ iEffectManager = CXnEffectManager::NewL();
+
+ __TIME_ENDMARK( "CXnAppUiAdapterImpl::ConstructL, done", time );
}
// -----------------------------------------------------------------------------
@@ -119,17 +131,14 @@
//
void CXnAppUiAdapterImpl::ReloadUiL()
{
-#ifdef _XN_PERFORMANCE_TEST_
- RDebug::Print( _L( "CXnAppUiAdapterImpl::ReloadUiL() - start" ) );
-#endif //_XN_PERFORMANCE_TEST_
+ __PRINTS( "*** CXnAppUiAdapterImpl::ReloadUiL" );
+ __TIME_MARK( time );
iViewAdapter->ReloadUiL();
iViewManager->ReloadUiL();
-
-#ifdef _XN_PERFORMANCE_TEST_
- RDebug::Print( _L( "CXnAppUiAdapterImpl::ReloadUiL() - end" ) );
-#endif //_XN_PERFORMANCE_TEST_
+
+ __TIME_ENDMARK( "CXnAppUiAdapterImpl::ReloadUiL, done", time );
}
// -----------------------------------------------------------------------------
@@ -139,13 +148,6 @@
//
CXnAppUiAdapterImpl::~CXnAppUiAdapterImpl()
{
- delete iContentControlFactory;
-
- if ( iViewAdapter )
- {
- iViewAdapter->PrepareDestroy();
- }
-
delete iUiEngine;
delete iUiStateListener;
@@ -155,8 +157,11 @@
delete iCcProviderClient;
delete iEffectManager;
+
+ CCoeEnv::Static()->DeleteResourceFile( iResourceOffset ) ;
+ HSPluginSettingsIf::CHomescreenSettings::UnInitialize();
- CCoeEnv::Static()->DeleteResourceFile( iResourceOffset ) ;
+ delete iContentControlFactory;
}
// -----------------------------------------------------------------------------
@@ -212,6 +217,16 @@
}
// -----------------------------------------------------------------------------
+// CXnAppUiAdapterImpl::HsContentControlFactory
+// Gets Content control factory
+// -----------------------------------------------------------------------------
+//
+CHsContentControlFactory* CXnAppUiAdapterImpl::HsContentControlFactory()
+ {
+ return iContentControlFactory;
+ }
+
+// -----------------------------------------------------------------------------
// CXnAppUiAdapterImpl::EffectManager
// Get effect manager.
// -----------------------------------------------------------------------------
--- a/idlehomescreen/xmluirendering/uiengine/src/xnbackgroundmanager.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnbackgroundmanager.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -93,7 +93,9 @@
User::LeaveIfError( iDiskNotifier->NotifyDisk() );
// Reads from cenrep wheteher page specific wallpaper is enabled or not
- CheckFeatureTypeL();
+ CheckFeatureTypeL();
+
+ iTimer = CPeriodic::NewL( CActive::EPriorityIdle );
}
// -----------------------------------------------------------------------------
@@ -117,6 +119,7 @@
//
CXnBackgroundManager::~CXnBackgroundManager()
{
+ delete iTimer;
CleanCache();
iSkinSrv.Close();
delete iDiskNotifier;
@@ -150,11 +153,11 @@
SystemGc().SetBrushColor( KRgbBlack );
SystemGc().Clear( aRect );
- SystemGc().BitBlt( point, wallpaper );
+ SystemGc().DrawBitmap( TRect( point, bitmapSize), wallpaper );
}
else
{
- SystemGc().BitBlt( TPoint( 0, 0 ), wallpaper );
+ SystemGc().DrawBitmap( iRect, wallpaper );
}
if( iViewManager.UiEngine().IsEditMode() )
@@ -178,11 +181,12 @@
SystemGc().SetBrushColor( KRgbBlack );
SystemGc().Clear( aRect );
- SystemGc().BitBlt( point, iBgImage );
+ SystemGc().DrawBitmap( TRect( point, bitmapSize ), iBgImage );
+
}
else
{
- SystemGc().BitBlt( TPoint( 0, 0 ), iBgImage );
+ SystemGc().DrawBitmap( iRect, iBgImage );
}
if( iViewManager.UiEngine().IsEditMode() )
{
@@ -363,11 +367,14 @@
aOldView.WallpaperImagePath().Compare( aNewView.WallpaperImagePath() ) )
{
UpdateScreen();
- TInt err = AknsWallpaperUtils::SetIdleWallpaper( aNewView.WallpaperImagePath(), NULL );
- if( err == KErrNone )
+
+ // Since AknsWallpaperUtils::SetIdleWallpaper() call is slow, it is called
+ // asynchronously. In that way we can avoid it slowing down page switching.
+ if ( iTimer->IsActive() )
{
- iIntUpdate++;
+ iTimer->Cancel();
}
+ iTimer->Start( 0, 1000, TCallBack( TimerCallback, this ) );
}
}
@@ -713,44 +720,42 @@
CXnViewData& viewData( iViewManager.ActiveViewData() );
const TDesC& old = viewData.WallpaperImagePath();
- if( aFileName.Compare( old ) )
+ // Remove old from the cache
+ if( old != KNullDesC )
{
- // Remove old from the cache
- if( old != KNullDesC )
- {
- RemoveWallpaperFromCache( old );
- }
+ RemoveWallpaperFromCache( old );
+ }
- // Add new to the cache
- if( aFileName != KNullDesC )
+ // Add new to the cache
+ if( aFileName != KNullDesC )
+ {
+ if( CacheWallpaperL( aFileName, viewData ) == KErrNone )
{
- if( CacheWallpaperL( aFileName, viewData ) == KErrNone )
- {
- SaveWallpaperL(); // to HSPS
- }
- else
- {
- // image is corrupted or format is not supported
- return KErrCACorruptContent;
- }
+ SaveWallpaperL(); // to HSPS
}
- // WallpaperImage changed back to default. Update view data.
else
{
- viewData.SetWallpaperImagePathL( KNullDesC );
- viewData.SetWallpaperImage( NULL );
- SaveWallpaperL(); // to HSPS
- }
-
- // Update screen
- UpdateScreen();
-
- err = AknsWallpaperUtils::SetIdleWallpaper( aFileName, NULL );
- if( err == KErrNone )
- {
- iIntUpdate++;
+ // image is corrupted or format is not supported
+ return KErrCACorruptContent;
}
}
+ // WallpaperImage changed back to default. Update view data.
+ else
+ {
+ viewData.SetWallpaperImagePathL( KNullDesC );
+ viewData.SetWallpaperImage( NULL );
+ SaveWallpaperL(); // to HSPS
+ }
+
+ // Update screen
+ UpdateScreen();
+
+ err = AknsWallpaperUtils::SetIdleWallpaper( aFileName, NULL );
+ if( err == KErrNone )
+ {
+ iIntUpdate++;
+ }
+
return err;
}
@@ -904,4 +909,23 @@
iRect, shrunkRect, KAknsIIDQgnHomeEditBg, KAknsIIDDefault );
}
+// -----------------------------------------------------------------------------
+// CXnBackgroundManager::TimerCallback
+// -----------------------------------------------------------------------------
+//
+TInt CXnBackgroundManager::TimerCallback(TAny *aPtr)
+ {
+ CXnBackgroundManager* bgManager = reinterpret_cast<CXnBackgroundManager*>( aPtr );
+ bgManager->iTimer->Cancel();
+
+ TInt err = AknsWallpaperUtils::SetIdleWallpaper( bgManager->
+ iViewManager.ActiveViewData().WallpaperImagePath(), NULL );
+ if( err == KErrNone )
+ {
+ bgManager->iIntUpdate++;
+ }
+ return EFalse;
+ }
+
+
// End of File
--- a/idlehomescreen/xmluirendering/uiengine/src/xnbgcontrol.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnbgcontrol.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -249,17 +249,6 @@
}
// -----------------------------------------------------------------------------
-// CXnBgControl::PrepareDestroy()
-// Prepares control for destroying
-// -----------------------------------------------------------------------------
-//
-void CXnBgControl::PrepareDestroy()
- {
- static_cast< CXnAppUiAdapter* >( iAvkonAppUi )
- ->UiStateListener().RemoveObserver( *this );
- }
-
-// -----------------------------------------------------------------------------
// CXnBgControl::RemoveGrabbingControL()
// Removes recursively grabbing controls
// -----------------------------------------------------------------------------
--- a/idlehomescreen/xmluirendering/uiengine/src/xncomposer.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xncomposer.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -45,7 +45,6 @@
_LIT8( KViews, "views" );
_LIT8( KWidget, "widget" );
_LIT8( KUseEmptyWidget, "use_empty_widget" );
-_LIT8( KRemovable, "removable" );
_LIT8( KEmptyWidgetUid, "0x2001F47F" );
@@ -347,25 +346,6 @@
return EFalse;
}
-// --------------------------------------------------------------------------
-// Removable
-// Determines whether this plugin is removable
-// --------------------------------------------------------------------------
-//
-static TBool Removable( CXnDomNode& aPlugin )
- {
- CXnDomAttribute* attribute(
- static_cast< CXnDomAttribute* >(
- aPlugin.AttributeList().FindByName( KRemovable ) ) );
-
- if ( attribute && attribute->Value() == XnPropertyNames::KFalse )
- {
- return EFalse;
- }
-
- return ETrue;
- }
-
// ======== MEMBER FUNCTIONS ========
// --------------------------------------------------------------------------
// CXnComposer::NewL
@@ -655,8 +635,12 @@
widget->SetOwner( node );
if ( count < plugins.Count() )
- {
- widget->SetPluginIdL( plugins[ count ]->PluginId() );
+ {
+ CPluginMap* plugin( plugins[count] );
+
+ widget->SetPluginIdL( plugin->PluginId() );
+
+ widget->SetLockingStatus( plugin->LockingStatus() );
}
count++;
@@ -767,9 +751,7 @@
}
}
}
-
- aPluginData.SetRemovable( Removable( *widgetRoot ) );
-
+
retval = KErrNone;
}
--- a/idlehomescreen/xmluirendering/uiengine/src/xncontroladapterimpl.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xncontroladapterimpl.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -75,7 +75,6 @@
const TInt KLongTapStartLongDelay( 500000 ); // 0.5s
const TInt KLongTapTimeShortDelay( 600000 ); // 0.6s for SK
const TInt KLongTapTimeLongDelay( 1500000 ); // 1.5s
-_LIT( KWidgetBg, "SKIN(268458534 9916)" );
// LOCAL FUNCTION PROTOTYPES
static TRgb ConvertHslToRgb( TInt aHue, TInt aSaturation, TInt aLightness );
@@ -4037,7 +4036,6 @@
{
// Remove pressed down
node->UnsetStateL( XnPropertyNames::style::common::KPressedDown );
- node->HideTooltipsL();
}
}
}
@@ -4058,7 +4056,9 @@
if ( feedback )
{
- feedback->InstantFeedback( ETouchFeedbackBasic );
+ feedback->InstantFeedback( iAdapter, ETouchFeedbackBasic,
+ ETouchFeedbackVibra,
+ aPointerEvent );
}
#endif
node->SetStateL( XnPropertyNames::style::common::KActive );
@@ -4090,6 +4090,12 @@
DrawFocusAppearance( node, aGc );
}
+ // Draw plus sign for empty plugins in edit mode.
+ if( node.UiEngine()->EditMode()->EditState() )
+ {
+ const_cast< CXnControlAdapterImpl* >( this )->DrawPlusSign( node, aGc );
+ }
+
if ( iAnimation )
{
TRect rect = iComponent->Node()->Rect();
@@ -4117,8 +4123,6 @@
CXnNode& aNode,
CWindowGc& aGc )
{
- // For widgets and plugins, drawing is handled differently in edit mode
- const TDesC8& widgetType = aNode.DomNode()->Name();
if( aNode.UiEngine()->EditMode()->EditState() )
{
DrawEditModeBgData( aNode, aGc );
@@ -4176,13 +4180,26 @@
{
TRect rect = aNode.PaddingRect();
DrawBackgroundSkin( KAknsIIDQgnHomeEditBgWidget, aGc, rect );
-
- CXnPluginData& data( aNode.UiEngine()->ViewManager()->ActiveViewData().Plugin( &aNode ) );
- if( !data.Occupied() ) // Empty widget
+ }
+ }
+
+// -----------------------------------------------------------------------------
+// CXnControlAdapterImpl::DrawPlusSign
+//
+// -----------------------------------------------------------------------------
+//
+void CXnControlAdapterImpl::DrawPlusSign( CXnNode& aNode, CWindowGc& aGc )
+ {
+ const TDesC8& widgetType = aNode.DomNode()->Name();
+ if( widgetType == XnPropertyNames::KPlugin )
+ {
+ CXnPluginData* data( aNode.UiEngine()->ViewManager()->ActiveViewData().Plugin( &aNode ) );
+ if( data && !data->Occupied() ) // Empty widget
{
// Draw + -icon
// Make rect as 50% of the widget's height.
// It needs to be square in order to keep aspect ratio.
+ TRect rect = aNode.PaddingRect();
TInt w = rect.Width();
TInt h = rect.Height();
rect.Shrink( ( w - h * 0.5 ) * 0.5, h * 0.25 );
@@ -4287,21 +4304,12 @@
aRect = aNode.PaddingRect();
}
- //CXnProperty* colorProperty( aNode.BackgroundColorL() );
CXnProperty* colorProperty( aBgColor );
if ( colorProperty )
{
HBufC* skinID = colorProperty->StringValueL();
CleanupStack::PushL( skinID );
- // Widget background should not be drawn in edit mode
- if( aNode.UiEngine()->EditMode()->EditState() &&
- skinID->Des() == KWidgetBg )
- {
- CleanupStack::PopAndDestroy( skinID );
- return;
- }
-
if ( skinID->Length() != 0 )
{
TAknsItemID itemID;
--- a/idlehomescreen/xmluirendering/uiengine/src/xneditmode.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xneditmode.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -18,9 +18,7 @@
// System includes
#include <AknUtils.h>
#include <gulgcmap.h>
-#include <akntitle.h>
#include <barsread.h>
-#include <xnuiengine.rsg>
#ifdef RD_TACTILE_FEEDBACK
#include <touchfeedback.h>
@@ -42,6 +40,7 @@
#include "xneditor.h"
#include "xntype.h"
#include "xnmenu.h"
+#include "xnbackgroundmanager.h"
#include "xneditmode.h"
@@ -358,14 +357,21 @@
Window().SetOrdinalPosition( 0 );
Window().SetPointerGrab( ETrue );
- Window().ClaimPointerGrab();
+ Window().ClaimPointerGrab();
+
+ TRAP_IGNORE( appui.HandleEnterEditModeL( ETrue ) );
}
else
{
Window().SetPointerGrab( EFalse );
- bg.DrawableWindow()->SetPointerGrab( ETrue );
+ bg.DrawableWindow()->SetPointerGrab( ETrue );
+
+ TRAP_IGNORE( appui.HandleEnterEditModeL( EFalse ) );
}
+
+ // Update background
+ appui.ViewAdapter().BgManager().DrawNow();
}
// -----------------------------------------------------------------------------
@@ -483,10 +489,10 @@
if ( node )
{
- CXnPluginData& plugin( iUiEngine.ViewManager()->
+ CXnPluginData* plugin( iUiEngine.ViewManager()->
ActiveViewData().Plugin( node ) );
- if ( plugin.Occupied() )
+ if ( plugin && plugin->Occupied() )
{
StartDragL( *node );
@@ -542,7 +548,10 @@
else if ( aPointerEvent.iType == TPointerEvent::EButton1Up )
{
#ifdef RD_TACTILE_FEEDBACK
- Feedback( ETouchFeedbackBasic );
+ MTouchFeedback* feedback( MTouchFeedback::Instance() );
+ feedback->InstantFeedback( this,ETouchFeedbackBasic,
+ ETouchFeedbackVibra,
+ aPointerEvent );
#endif
// Cancel
if ( !iTargetNode || !iDraggingNode ||
@@ -563,10 +572,10 @@
if ( node && !iDragged )
{
- CXnPluginData& plugin( iUiEngine.ViewManager()->
+ CXnPluginData* plugin( iUiEngine.ViewManager()->
ActiveViewData().Plugin( node ) );
- if ( plugin.Occupied() )
+ if ( plugin && plugin->Occupied() )
{
CXnNode* popup( iUiEngine.StylusPopupNode() );
@@ -637,10 +646,10 @@
if ( focused && ( aKeyEvent.iScanCode == EStdKeyDevice3 ||
aKeyEvent.iScanCode == EStdKeyEnter ) )
{
- CXnPluginData& plugin( iUiEngine.ViewManager()->
+ CXnPluginData* plugin( iUiEngine.ViewManager()->
ActiveViewData().Plugin( focused ) );
- if ( plugin.Occupied() )
+ if ( plugin && plugin->Occupied() )
{
// Open context menu
CXnNode* menubar( iUiEngine.MenuBarNode() );
@@ -706,7 +715,7 @@
void CXnEditMode::StartDragL( CXnNode& aNode )
{
CXnControlAdapter* control( aNode.Control() );
-
+
TRect rect( control->Rect() );
// Clear first with alpha
@@ -725,11 +734,25 @@
CWindowGc* gc( control->CustomGc() );
control->SetCustomGc( iMapGc );
+
+ TBool focusStateChanged( EFalse );
+ if( aNode.IsStateSet( XnPropertyNames::style::common::KFocus ) )
+ {
+ aNode.UnsetStateL( XnPropertyNames::style::common::KFocus );
+ focusStateChanged = ETrue;
+ }
+
control->DrawNow( rect );
-
+
control->SetCustomGc( gc );
-
+
+ if( focusStateChanged )
+ {
+ aNode.SetStateL( XnPropertyNames::style::common::KFocus );
+ iUiEngine.RenderUIL( &aNode );
+ }
+
if ( iWidget->SizeInPixels() != rect.Size() )
{
iWidget->Resize( rect.Size() );
@@ -797,10 +820,7 @@
if ( aState == CXnEditMode::EDragAndDrop )
{
iState = aState;
-
- iUiEngine.AppUiAdapter().HandleEnterEditModeL( ETrue );
- SetStatusPaneTitleL( ETrue );
-
+
MakeVisible( ETrue );
}
@@ -811,11 +831,7 @@
iTargetNode = NULL;
iState = aState;
-
- SetStatusPaneTitleL( EFalse );
-
- iUiEngine.AppUiAdapter().HandleEnterEditModeL( EFalse );
-
+
MakeVisible( EFalse );
}
}
@@ -831,35 +847,6 @@
}
// -----------------------------------------------------------------------------
-// CXnEditMode::SetStatusPaneTitleL( TBool aEdit )
-// -----------------------------------------------------------------------------
-//
-void CXnEditMode::SetStatusPaneTitleL( TBool aEdit )
- {
- TUid titlePaneUid = TUid::Uid( EEikStatusPaneUidTitle );
- CEikStatusPaneBase::TPaneCapabilities subPaneTitle =
- iUiEngine.AppUiAdapter().StatusPane()->PaneCapabilities( titlePaneUid );
- if ( subPaneTitle.IsPresent() && subPaneTitle.IsAppOwned() )
- {
- CAknTitlePane* title = static_cast< CAknTitlePane* >(
- iUiEngine.AppUiAdapter().StatusPane()->ControlL( titlePaneUid ) );
- if( aEdit )
- {
- TResourceReader reader;
- CEikonEnv::Static()->CreateResourceReaderLC(
- reader, R_QTN_HS_TITLE_EDITMODE );
- title->SetFromResourceL( reader );
- CleanupStack::PopAndDestroy(); // reader internal state
- }
- else
- {
- title->SetTextL( KNullDesC );
- }
-
- }
- }
-
-// -----------------------------------------------------------------------------
// CXnEditMode::StopDraggingL()
// -----------------------------------------------------------------------------
//
--- a/idlehomescreen/xmluirendering/uiengine/src/xneditor.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xneditor.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -68,13 +68,7 @@
_LIT8( KEventPluginUnInstalled, "PluginUninstalled" );
_LIT8( KEventRootConfActivated, "AppConfActivated" );
_LIT8( KEventPluginUpdated, "PluginUpdated" );
-_LIT8( KEventPluginActivated, "PluginActivated" );
_LIT8( KEventPluginInstalled, "PluginInstalled" );
-_LIT8( KEventPluginAdded, "PluginAdded" );
-_LIT8( KEventPluginRemoved, "PluginRemoved" );
-_LIT8( KEventPluginReplaced, "PluginReplaced" );
-
-_LIT8( KAi3Uid, "0x102750f0" );
_LIT8( KEmptyWidgetUid, "0x2001F47F" );
_LIT8( KDownload, "Editor/DownloadCaption" );
@@ -219,11 +213,11 @@
if ( aPredicate )
{
- CXnPluginData& plugin( viewData.Plugin( aPredicate ) );
+ CXnPluginData* plugin( viewData.Plugin( aPredicate ) );
- if ( !plugin.Occupied() )
+ if ( plugin && !plugin->Occupied() )
{
- return &plugin;
+ return plugin;
}
}
@@ -233,11 +227,11 @@
{
CXnNode* node( nodes[i] );
- CXnPluginData& plugin( viewData.Plugin( node ) );
+ CXnPluginData* plugin( viewData.Plugin( node ) );
- if ( !plugin.Occupied() )
+ if ( plugin && !plugin->Occupied() )
{
- return &plugin;
+ return plugin;
}
}
@@ -594,7 +588,7 @@
// CXnEditor::ReplaceWidgetL
// ---------------------------------------------------------------------------
//
-void CXnEditor::ReplaceWidgetL( CHsContentInfo& aContentInfo, TBool aUseHsps )
+void CXnEditor::ReplaceWidgetL( CHsContentInfo& aContentInfo )
{
RPointerArray< CXnPluginData > plugins;
CleanupClosePushL( plugins );
@@ -609,6 +603,15 @@
if( plugin->PluginId() == aContentInfo.PluginId() )
{
+ if ( aContentInfo.Type() == KNullDesC8 )
+ {
+ aContentInfo.SetTypeL( plugin->Type() );
+ }
+
+ if ( aContentInfo.PublisherId() == KNullDesC )
+ {
+ aContentInfo.SetPublisherIdL( plugin->PublisherName() );
+ }
match = plugin;
break;
}
@@ -616,7 +619,7 @@
if( match )
{
- iViewManager.ReplaceWidgetToPluginL( aContentInfo, *match, aUseHsps );
+ iViewManager.ReplaceWidgetToPluginL( aContentInfo, *match );
}
CleanupStack::PopAndDestroy( &plugins );
@@ -814,11 +817,11 @@
return;
}
- CXnPluginData& plugin( iViewManager.ActiveViewData().Plugin( aNode ) );
+ CXnPluginData* plugin( iViewManager.ActiveViewData().Plugin( aNode ) );
- if( plugin.Removable() )
+ if( plugin && plugin->Removable() )
{
- TRAPD( err, err = iViewManager.UnloadWidgetFromPluginL( plugin ) );
+ TRAPD( err, err = iViewManager.UnloadWidgetFromPluginL( *plugin ) );
if ( err != KErrNone )
{
@@ -850,15 +853,17 @@
for ( TInt i = 0; i < aPluginArray->Count(); i++ )
{
- CXnPluginData& plugin( viewData.Plugin( ( *aPluginArray )[i] ) );
-
- const TDesC8& id( plugin.PluginId() );
-
- if ( id != KNullDesC8 )
+ CXnPluginData* plugin( viewData.Plugin( ( *aPluginArray )[i] ) );
+ if ( plugin )
{
- ids->AppendL( id );
- }
- }
+ const TDesC8& id( plugin->PluginId() );
+
+ if ( id != KNullDesC8 )
+ {
+ ids->AppendL( id );
+ }
+ }
+ }
iHspsWrapper->MovePluginsL( configurationId, *ids );
@@ -878,19 +883,18 @@
RPointerArray< CPublisherInfo >& publisherInfo(
iPublisherMap->PublisherInfo() );
-
- const TDesC& widgetName( aContentInfo.Name() );
+
const TDesC& publisherId( aContentInfo.PublisherId() );
CPublisherInfo* info = NULL;
for ( TInt i = 0; i < publisherInfo.Count(); i++ )
{
- info = publisherInfo[i];
+ CPublisherInfo* temp = publisherInfo[i];
- if ( info->WidgetName() == widgetName &&
- info->PublisherId() == publisherId )
+ if ( temp->PublisherId() == publisherId )
{
+ info = temp;
break;
}
}
@@ -1425,6 +1429,7 @@
//
void CXnEditor::NotifyViewDeactivatedL( const CXnViewData& /*aViewData*/)
{
+ iTargetPlugin = NULL;
}
// ---------------------------------------------------------------------------
@@ -1472,30 +1477,11 @@
const TDesC8& aEvent,
const TDesC8& /*aAppConfUid*/,
const TDesC8& aPluginName,
- const TDesC8& aOrigUid,
+ const TDesC8& /*aOrigUid*/,
const TDesC8& aPluginUid,
const TDesC8& aPluginId )
{
- // Someone else has modified the configuration. Handle UI side here.
- if( aEvent == KEventPluginAdded ||
- aEvent == KEventPluginRemoved ||
- aEvent == KEventPluginReplaced )
- {
- if( aOrigUid != KNullDesC8 &&
- aOrigUid != KAi3Uid )
- {
- CHsContentInfo* info = CHsContentInfo::NewLC();
-
- info->SetNameL( aPluginName );
- info->SetUidL( aPluginUid );
- info->SetPluginIdL( aPluginId );
-
- ReplaceWidgetL( *info, EFalse );
-
- CleanupStack::PopAndDestroy( info );
- }
- }
- else if ( aEvent == KEventPluginUnInstalled )
+ if ( aEvent == KEventPluginUnInstalled )
{
CHsContentInfo* info = CHsContentInfo::NewLC();
@@ -1529,9 +1515,6 @@
CleanupStack::PopAndDestroy( info );
}
WidgetListChanged();
- }
- else if ( aEvent == KEventPluginActivated )
- {
}
return KErrNone;
@@ -1607,7 +1590,7 @@
// get installed widgets from HSPS
TemplatedWidgetsL( array );
- FilterWidgetListL( aArray, EFalse );
+ FilterWidgetListL( aArray, ETrue );
return KErrNone;
}
@@ -1616,6 +1599,65 @@
// from MHsContentController
// -----------------------------------------------------------------------------
//
+TInt CXnEditor::WidgetListL( CHsContentInfo& aInfo, CHsContentInfoArray& aArray )
+ {
+ TInt err( KErrNone );
+ RPointerArray< CXnPluginData > widgets;
+ CleanupClosePushL( widgets );
+
+ if ( aInfo.Type() == KApplication )
+ {
+ if ( aInfo.Uid().CompareF( iViewManager.ActiveAppData().PluginUid() ) == 0 )
+ {
+ // Get widgets included in active application configuration
+ err = iViewManager.PluginDataL( KNullDesC8(), widgets );
+ }
+ else
+ {
+ // Invalid application configuration
+ err = KErrArgument;
+ }
+ }
+ else if ( aInfo.Type() == KView )
+ {
+ // Get widgets included in a view
+ err = iViewManager.PluginDataL( aInfo.PluginId(), widgets );
+ }
+ else
+ {
+ err = KErrArgument;
+ }
+
+ if ( !err )
+ {
+ // Get installed widget content infos
+ RPointerArray< CHsContentInfo > array;
+ CleanupClosePushL( array );
+ HSPSPluginsL( array, KKeyWidget );
+ TemplatedWidgetsL( array );
+
+ // Create content info for each found widget
+ for ( TInt i = 0; i < widgets.Count(); i++ )
+ {
+ CHsContentInfo* info = CreateContentInfoLC( *widgets[i], array );
+ if ( info )
+ {
+ aArray.Array().AppendL( info );
+ CleanupStack::Pop( info );
+ }
+ }
+ CleanupStack::PopAndDestroy(); // array
+ }
+
+ CleanupStack::PopAndDestroy(); // widgets
+
+ return err;
+ }
+
+// -----------------------------------------------------------------------------
+// from MHsContentController
+// -----------------------------------------------------------------------------
+//
TInt CXnEditor::ViewListL( CHsContentInfoArray& aArray )
{
RPointerArray< CHsContentInfo >& array( aArray.Array() );
@@ -1658,18 +1700,16 @@
return KErrArgument;
}
- if ( !aInfo.CanBeAdded() )
+ // the widget can not be added. Return proper error code
+ if ( IsCurrentViewFull() )
{
- // the widget can not be added. Return proper error code
- if ( IsCurrentViewFull() )
- {
- return KHsErrorViewFull;
- }
- else
- {
- return KHsErrorMaxInstanceCountExceeded;
- }
+ return KHsErrorViewFull;
}
+ else if ( !aInfo.CanBeAdded() )
+ {
+ return KHsErrorMaxInstanceCountExceeded;
+ }
+
CXnPluginData* plugin( NULL );
@@ -1829,6 +1869,7 @@
CleanupStack::PushL( view );
aInfo.SetNameL( view->PluginInfo().Name() );
+ aInfo.SetPluginIdL( plugin->PluginId() );
aInfo.SetUidL( view->PluginInfo().Uid() );
aInfo.SetTypeL( view->PluginInfo().Type() );
aInfo.SetDescriptionL( view->PluginInfo().Description() );
@@ -1873,4 +1914,30 @@
return err;
}
+// -----------------------------------------------------------------------------
+// CXnEditor::CreateContentInfoLC
+// -----------------------------------------------------------------------------
+//
+CHsContentInfo* CXnEditor::CreateContentInfoLC( CXnPluginData& aPlugin,
+ RPointerArray< CHsContentInfo >& aInfos )
+ {
+ CHsContentInfo* contentInfo( NULL );
+ if ( aPlugin.Occupied() )
+ {
+ for ( TInt i = 0; i < aInfos.Count() && !contentInfo; i++ )
+ {
+ CHsContentInfo* info = aInfos[i];
+ if ( aPlugin.PluginUid().CompareF( info->Uid() ) == 0 &&
+ ( ( aPlugin.PublisherName().Length() == 0 ) ||
+ ( aPlugin.PublisherName().CompareF( info->PublisherId() ) == 0 ) ) )
+ {
+ contentInfo = info->CloneL();
+ CleanupStack::PushL( contentInfo );
+ contentInfo->SetPluginIdL( aPlugin.PluginId() );
+ }
+ }
+ }
+ return contentInfo;
+ }
+
// End of file
--- a/idlehomescreen/xmluirendering/uiengine/src/xneffectmanager.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xneffectmanager.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -31,9 +31,6 @@
#include <akntranseffect.h> // For transition effects
// CONSTANTS
-const TInt KEffectTypeFullscreen = 1;
-const TInt KEffectTypeControl = 2;
-
const TInt KWaitForLayout = 1;
const TInt KEffectStarted = 2;
@@ -79,53 +76,13 @@
}
// -----------------------------------------------------------------------------
-// CXnEffectManager::BeginControlEffectL
-// -----------------------------------------------------------------------------
-//
-void CXnEffectManager::BeginControlEffectL( TInt /*aId*/, CXnPluginData& /*aPlugin*/ )
- {
- /*
- TXnEffect* effect = new (ELeave) TXnEffect;
- CleanupStack::PushL( effect );
- effect->iId = aId;
- effect->iType = KEffectTypeControl;
- effect->iNode = aPlugin.Node()->LayoutNode();
- iEffects.AppendL( effect );
- CleanupStack::Pop( effect );
-
- if ( effect->iNode && !effect->iNode->IsLaidOut() )
- {
- effect->iState = KWaitForLayout;
- }
- else
- {
- DoBeginControlEffect( *effect );
- }
- */
- }
-
-// -----------------------------------------------------------------------------
-// CXnEffectManager::BeginControlEffectL
-// -----------------------------------------------------------------------------
-//
-void CXnEffectManager::BeginControlEffectL( TInt aId,
- RPointerArray<CXnPluginData>& aPlugins )
- {
- TInt count = aPlugins.Count();
- for ( TInt i = 0; i < count; i++ )
- {
- BeginControlEffectL( aId, *aPlugins[i] );
- }
- }
-
-// -----------------------------------------------------------------------------
// CXnEffectManager::BeginFullscreenEffectL
// -----------------------------------------------------------------------------
//
void CXnEffectManager::BeginFullscreenEffectL( TInt aId, CXnViewData& aView )
{
// Only one fullscreen effect at time
- if ( EffectCount( KEffectTypeFullscreen ) != 0 )
+ if ( iEffects.Count() != 0 )
{
return;
}
@@ -133,7 +90,6 @@
TXnEffect* effect = new (ELeave) TXnEffect;
CleanupStack::PushL( effect );
effect->iId = aId;
- effect->iType = KEffectTypeFullscreen;
effect->iNode = aView.ViewNode();
iEffects.AppendL( effect );
CleanupStack::Pop( effect );
@@ -157,16 +113,10 @@
for ( TInt i = 0; i < iEffects.Count(); )
{
TXnEffect* effect = iEffects[i];
- if ( effect && effect->iState == KEffectStarted )
+ if ( effect &&
+ effect->iState == KEffectStarted )
{
- if ( effect->iType == KEffectTypeFullscreen )
- {
- GfxTransEffect::EndFullScreen();
- }
- else if ( effect->iType == KEffectTypeControl )
- {
- GfxTransEffect::End( effect->iNode->Control() );
- }
+ GfxTransEffect::EndFullScreen();
RemoveEffect( effect );
}
else
@@ -188,16 +138,9 @@
TXnEffect* effect = iEffects[i];
if ( effect && effect->iNode &&
effect->iState == KWaitForLayout &&
- effect->iNode->IsLaidOut())
+ effect->iNode->IsLaidOut() )
{
- if ( effect->iType == KEffectTypeFullscreen )
- {
- effectStarted = DoBeginFullscreenEffect( *effect );
- }
- else if ( effect->iType == KEffectTypeControl )
- {
- effectStarted = DoBeginControlEffect( *effect );
- }
+ effectStarted = DoBeginFullscreenEffect( *effect );
}
if ( effectStarted )
@@ -240,33 +183,6 @@
}
// -----------------------------------------------------------------------------
-// CXnEffectManager::DoBeginControlEffect
-// -----------------------------------------------------------------------------
-//
-TBool CXnEffectManager::DoBeginControlEffect( TXnEffect& aEffect )
- {
- TBool ret = EFalse;
- CCoeEnv* coe( CCoeEnv::Static() );
-
- if ( coe->WsSession().GetFocusWindowGroup() !=
- coe->RootWin().Identifier() )
- {
- // Window group is not focused
- return ret;
- }
-
- // Set effect begin point
- if ( aEffect.iNode )
- {
- GfxTransEffect::Begin( aEffect.iNode->Control() , aEffect.iId );
- aEffect.iState = KEffectStarted;
- ret = ETrue;
- }
-
- return ret;
- }
-
-// -----------------------------------------------------------------------------
// CXnEffectManager::RemoveEffect
// -----------------------------------------------------------------------------
//
@@ -281,22 +197,4 @@
}
}
-// -----------------------------------------------------------------------------
-// CXnEffectManager::EffectCount
-// -----------------------------------------------------------------------------
-//
-TInt CXnEffectManager::EffectCount( TInt aType )
- {
- TInt effectCount = 0;
- TInt count = iEffects.Count();
- for ( TInt i = 0; i < count; i++ )
- {
- if ( iEffects[i]->iType == aType )
- {
- effectCount++;
- }
- }
- return effectCount;
- }
-
// End of File
--- a/idlehomescreen/xmluirendering/uiengine/src/xnfocuscontrol.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnfocuscontrol.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -68,7 +68,6 @@
//
CXnFocusControl::~CXnFocusControl()
{
- delete iMonitor;
}
// -----------------------------------------------------------------------------
@@ -88,17 +87,6 @@
//
void CXnFocusControl::ConstructL()
{
- iMonitor = CXnInactivityMonitor::NewL( *this );
- }
-
-// -----------------------------------------------------------------------------
-// CXnFocusControl::InactivityTimerExpired()
-//
-// -----------------------------------------------------------------------------
-//
-void CXnFocusControl::InactivityTimerExpired()
- {
- MakeVisible( EFalse );
}
// -----------------------------------------------------------------------------
@@ -126,8 +114,6 @@
iRefused = EFalse;
- iMonitor->Stop();
-
CXnNode* node( iAppUiAdapter.UiEngine().FocusedNode() );
if ( node )
@@ -156,8 +142,6 @@
iRefused = EFalse;
iVisible = aVisible;
-
- iMonitor->Start();
}
}
}
--- a/idlehomescreen/xmluirendering/uiengine/src/xnkeyeventdispatcher.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnkeyeventdispatcher.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -195,7 +195,7 @@
{
CEikCba* cba =
static_cast< CEikCba* >( iCbaContainer->ButtonGroup() );
-
+
if ( destination == cba && iCbaContainer->IsVisible() )
{
CXnMenuAdapter* adapter( MenuAdapter( iMenuNode ) );
@@ -205,6 +205,18 @@
TRAP_IGNORE(
adapter->HandlePointerEventL( *aEvent.Pointer() ) );
}
+
+ // if focus was lost due to longtap & button not being released
+ // appui will set flag to ignorekeyevent for this control as it has
+ // lost focus ( voice command become active ) after longtap detected.
+ // this causes cba button to stay in pressed state. send this buttonup
+ // event manually so that cba can draw itself correctly
+ // case id: ou1cimx1#265200
+ if ( event.iType == TPointerEvent::EButton1Up &&
+ !cba->IsFocused() )
+ {
+ TRAP_IGNORE( cba->HandlePointerEventL( event ) );
+ }
}
}
}
@@ -480,7 +492,10 @@
}
else
{
- iCbaContainer->MakeVisible( ETrue );
+ if ( !iCbaContainer->IsVisible() )
+ {
+ iCbaContainer->MakeVisible( ETrue );
+ }
}
}
else
@@ -616,10 +631,10 @@
CXnViewData& activeViewData(
iUiEngine.ViewManager()->ActiveViewData() );
- const CXnPluginData& pluginData(
+ const CXnPluginData* pluginData(
activeViewData.Plugin( iNode ) );
- if ( &pluginData == &aPluginData )
+ if ( pluginData == &aPluginData )
{
// The plugin is removed which was holding focus
ClearStateL();
@@ -661,10 +676,10 @@
// first, search only in plugins which have popup window open
for ( TInt i = 0; i < list.Count(); i++ )
{
- CXnPluginData& plugin( activeView.Plugin( list[i] ) );
- if ( plugin.IsDisplayingPopup() )
+ CXnPluginData* plugin( activeView.Plugin( list[i] ) );
+ if ( plugin && plugin->IsDisplayingPopup() )
{
- plugin.InitialFocusNodesL( initial );
+ plugin->InitialFocusNodesL( initial );
}
}
@@ -674,8 +689,11 @@
{
for ( TInt i = 0; i < list.Count(); i++ )
{
- CXnPluginData& plugin( activeView.Plugin( list[i] ) );
- plugin.InitialFocusNodesL( initial );
+ CXnPluginData* plugin( activeView.Plugin( list[i] ) );
+ if ( plugin )
+ {
+ plugin->InitialFocusNodesL( initial );
+ }
}
}
--- a/idlehomescreen/xmluirendering/uiengine/src/xnlistquerydialogadapter.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnlistquerydialogadapter.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -35,7 +35,9 @@
#include "xndomlist.h"
#include "xndomattribute.h"
+
// ======== LOCAL FUNCTIONS ========
+
// ---------------------------------------------------------------------------
// Finds recursively node by type
// @return returns pointer to desired node, NULL if nothing found
@@ -225,9 +227,17 @@
// -----------------------------------------------------------------------------
//
void CXnListQueryDialogAdapter::ReplaceItemL(const TDesC& aText, TInt aIndex )
- {
+ {
+ if ( iDialog )
+ {
+ iDialog->DismissQueryL();
+ }
+
+ iDialog = NULL;
+
aIndex += iStaticItems.Count();
TInt count( iItemArray->Count());
+
if( aIndex >= count )
{
iItemArray->AppendL( aText );
@@ -236,7 +246,7 @@
{
iItemArray->Delete( aIndex );
iItemArray->InsertL( aIndex, aText );
- }
+ }
}
// -----------------------------------------------------------------------------
@@ -244,13 +254,22 @@
// -----------------------------------------------------------------------------
//
void CXnListQueryDialogAdapter::InsertItemL(const TDesC& aText, TInt aIndex )
- {
+ {
+ if ( iDialog )
+ {
+ iDialog->DismissQueryL();
+ }
+
+ iDialog = NULL;
+
aIndex += iStaticItems.Count();
TInt count( iItemArray->Count());
+
if( count < aIndex )
{
aIndex = count;
}
+
iItemArray->InsertL( aIndex, aText );
}
@@ -260,11 +279,19 @@
//
void CXnListQueryDialogAdapter::DeleteItem( TInt aIndex )
{
+ if ( iDialog )
+ {
+ TRAP_IGNORE( iDialog->DismissQueryL() );
+ }
+
+ iDialog = NULL;
+
aIndex += iStaticItems.Count();
+
if( aIndex < iItemArray->Count())
{
iItemArray->Delete( aIndex );
- }
+ }
}
// -----------------------------------------------------------------------------
@@ -273,16 +300,23 @@
//
void CXnListQueryDialogAdapter::TryDisplayingDialogL( )
{
+ if ( iDialog )
+ {
+ iDialog->DismissQueryL();
+ }
+
+ iDialog = NULL;
+
CXnAppUiAdapter& appui( static_cast< CXnAppUiAdapter& >( *iAvkonAppUi ) );
appui.HideFocus();
TInt selectedIndex( 0 );
- CAknListQueryDialog* query =
- new ( ELeave ) CAknListQueryDialog( &selectedIndex );
-
- query->PrepareLC( R_XML_LISTQUERY );
+ CAknListQueryDialog* dialog =
+ new ( ELeave ) CAknListQueryDialog( &selectedIndex );
+ dialog->PrepareLC( R_XML_LISTQUERY );
+
/* Not tested
CAknPopupHeadingPane* heading( query->QueryHeading() );
if ( heading )
@@ -303,13 +337,17 @@
}
}
*/
- query->SetItemTextArray( iItemArray );
- query->SetOwnershipType( ELbmDoesNotOwnItemArray );
-
- if ( query->RunLD() )
+ dialog->SetItemTextArray( iItemArray );
+ dialog->SetOwnershipType( ELbmDoesNotOwnItemArray );
+
+ iDialog = dialog;
+
+ if ( dialog->RunLD() )
{
ActivateItemL( selectedIndex );
- }
+ }
+
+ iDialog = NULL;
}
// -----------------------------------------------------------------------------
@@ -346,6 +384,11 @@
CXnDomAttribute* attribute = static_cast<CXnDomAttribute*>
(eventNode->AttributeList().FindByName( XnPropertyNames::action::event::KName ));
+ if ( !attribute )
+ {
+ return;
+ }
+
HBufC8* nameStr( attribute->Value().AllocLC());
TPtr8 namePtr = nameStr->Des();
--- a/idlehomescreen/xmluirendering/uiengine/src/xnnode.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnnode.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -822,41 +822,6 @@
return iImpl->NavIndexL();
}
-CXnProperty* CXnNode::VisibleRowsL()
- {
- return iImpl->VisibleRowsL();
- }
-
-CXnProperty* CXnNode::GridColumnsL()
- {
- return iImpl->GridColumnsL();
- }
-
-CXnProperty* CXnNode::GridOrientationL()
- {
- return iImpl->GridOrientationL();
- }
-
-CXnProperty* CXnNode::GridVerDirectionL()
- {
- return iImpl->GridVerDirectionL();
- }
-
-CXnProperty* CXnNode::GridHorDirectionL()
- {
- return iImpl->GridHorDirectionL();
- }
-
-CXnProperty* CXnNode::FocusHorLoopingL()
- {
- return iImpl->FocusHorLoopingL();
- }
-
-CXnProperty* CXnNode::FocusVerLoopingL()
- {
- return iImpl->FocusVerLoopingL();
- }
-
CXnProperty* CXnNode::ZIndexL()
{
return iImpl->ZIndexL();
@@ -877,21 +842,6 @@
return iImpl->FocusBackgroundL();
}
-CXnProperty* CXnNode::RefL()
- {
- return iImpl->RefL();
- }
-
-CXnProperty* CXnNode::GridScrollBarMarginL()
- {
- return iImpl->GridScrollBarMarginL();
- }
-
-CXnProperty* CXnNode::GridScrollBarWidthL()
- {
- return iImpl->GridScrollBarWidthL();
- }
-
// -----------------------------------------------------------------------------
// CXnNode::SetDomNode
// Sets the DOM node pointer
@@ -966,51 +916,6 @@
}
// -----------------------------------------------------------------------------
-// CXnNode::RestartTimedTrigger
-// Restarts the timed trigger.
-// -----------------------------------------------------------------------------
-//
-void CXnNode::RestartTimedTrigger( TInt aDelay )
- {
- CPeriodic* timer = iImpl->PeriodicTimer();
- if ( timer )
- {
- if ( timer->IsActive() )
- {
- timer->Cancel();
- if ( aDelay > 0 )
- {
- timer->After( aDelay );
- }
- else
- {
- iImpl->DeletePeriodic();
- }
- }
- }
- }
-
-// -----------------------------------------------------------------------------
-// CXnNode::SetTriggerDelay
-// Sets default trigger delay
-// -----------------------------------------------------------------------------
-//
-void CXnNode::SetTriggerDelay( TTimeIntervalMicroSeconds32 aDelay )
- {
- iTriggerDelay = aDelay;
- }
-
-// -----------------------------------------------------------------------------
-// CXnNode::TriggerDelay
-// Returns default trigger delay
-// -----------------------------------------------------------------------------
-//
-TTimeIntervalMicroSeconds32 CXnNode::TriggerDelay()
- {
- return iTriggerDelay;
- }
-
-// -----------------------------------------------------------------------------
// CXnNode::SetDirtyL
// Marks the node dirty
// -----------------------------------------------------------------------------
--- a/idlehomescreen/xmluirendering/uiengine/src/xnnodeimpl.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnnodeimpl.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -54,7 +54,6 @@
#include "xntexteditor.h"
// Local constants
-_LIT8( KRef, "ref" );
_LIT8( KId, "id" );
_LIT8( KName, "name" );
_LIT8( KToolTip, "tooltip" );
@@ -63,10 +62,6 @@
_LIT8( KActionsHandler, "actionshandler" );
-const TReal KS60ScrollbarDefaultWidth = 1.5;
-const TReal KS60ScrollbarDefaultMargin = 0.25;
-const TReal KS60ScrollbarDefaultWidthPenEnabled = 3;
-const TReal KS60ScrollbarDefaultMarginPenEnabled = 0.5;
const TInt KUnitMaxLen = 2;
const TInt KOneView = 1;
@@ -88,30 +83,6 @@
_LIT8( KGainEnd, "gainend" );
_LIT8( KLoseEnd, "loseend" );
-// Local classes
-struct TXnTimedTrigger
- {
- CXnNodeImpl* iNodeImpl;
- CXnUiEngine* iEngine;
- CXnNode* iNode;
- CXnNode* iEventData;
- CXnDomNode* iActionNode;
- CXnDomNode* iTriggerNode;
- };
-
-struct CGridPropertyCache : public CBase
- {
- CXnProperty* iVisibleRows;
- CXnProperty* iGridColumns;
- CXnProperty* iGridOrientation;
- CXnProperty* iGridVerDirection;
- CXnProperty* iGridHorDirection;
- CXnProperty* iFocusHorLooping;
- CXnProperty* iFocusVerLooping;
- CXnProperty* iGridScrollBarWidth;
- CXnProperty* iGridScrollBarMargin;
- };
-
struct CLayoutPropertyCache : public CBase
{
CLayoutPropertyCache() :
@@ -282,9 +253,6 @@
// Local function prototypes
static TBool IsTriggerRunnableL( CXnDomNode& aTriggerNode );
-static CXnNode* RefNodeL(
- CXnNodeImpl* aThis, CXnProperty* aRef, CXnUiEngine* aUiEngine );
-static const TDesC8* CheckRefAttributeL( CXnProperty* aRef );
static TBool DoMatchTriggerForKeyEventL(
const TKeyEvent& aKeyEvent,
TEventCode aType,
@@ -294,7 +262,6 @@
RPointerArray< CXnNode >& aFocusCandidates );
static void RunAppUiNotificationL( CXnUiEngine& aEngine, CXnNode& aNode,
CXnDomNode& aEventNode, CXnDomNode& aTriggerNode, CXnNode& aEventData );
-static void RunAppExit( CXnUiEngine& aEngine );
static void RunFullScreenEffectL(
CXnUiEngine& aEngine, CXnDomNode& aEventNode );
static void RunActivateViewL(
@@ -338,8 +305,6 @@
static void RunTryDisplayingListQueryDialogL(
CXnNodeImpl* aThis, CXnUiEngine& aEngine, CXnDomNode& aEventNode );
static void RunSetInitialFocusL( CXnUiEngine& aEngine );
-static void ResolveTriggerDelayL(
- CXnUiEngine& aEngine, CXnDomNode& aNode, TInt& aDelay );
static TBool RunEventL(
CXnNodeImpl* aThis, CXnUiEngine& aEngine, CXnNode& aNode,
CXnDomNode& aEventNode, CXnDomNode& aTriggerNode, CXnNode& aEventData );
@@ -1380,7 +1345,6 @@
static void SetCachedProperty(
CXnProperty* aProperty,
CLayoutPropertyCache*& aLayoutPropertyCache,
- CXnProperty*& aRef,
CXnProperty*& aName,
CXnProperty*& aValue,
CXnProperty*& aLabel,
@@ -1389,7 +1353,6 @@
CXnProperty*& aId,
CXnProperty*& aPath,
CXnProperty*& aMaskPath,
- CGridPropertyCache*& aGridPropertyCache,
TBool aInitializing,
TBool aArrayOnly)
{
@@ -1482,10 +1445,6 @@
{
aMaskPath = aProperty;
}
- else if ( name == KRef )
- {
- aRef = aProperty;
- }
else if ( name == XnPropertyNames::style::common::KMarginLeft )
{
DoSetCachedProperty(
@@ -1750,105 +1709,6 @@
aLayoutPropertyCache->iNavIndexes,
aInitializing, aArrayOnly );
}
- else if ( name == XnPropertyNames::grid::KS60VisibleRows )
- {
- if ( !aGridPropertyCache )
- {
- aGridPropertyCache = new CGridPropertyCache;
- }
- if ( aGridPropertyCache )
- {
- aGridPropertyCache->iVisibleRows = aProperty;
- }
- }
- else if ( name == XnPropertyNames::grid::KS60GridColumns )
- {
- if ( !aGridPropertyCache )
- {
- aGridPropertyCache = new CGridPropertyCache;
- }
- if ( aGridPropertyCache )
- {
- aGridPropertyCache->iGridColumns = aProperty;
- }
- }
- else if ( name == XnPropertyNames::grid::KS60GridOrientation )
- {
- if ( !aGridPropertyCache )
- {
- aGridPropertyCache = new CGridPropertyCache;
- }
- if ( aGridPropertyCache )
- {
- aGridPropertyCache->iGridOrientation = aProperty;
- }
- }
- else if ( name == XnPropertyNames::grid::KS60GridVerDirection )
- {
- if ( !aGridPropertyCache )
- {
- aGridPropertyCache = new CGridPropertyCache;
- }
- if ( aGridPropertyCache )
- {
- aGridPropertyCache->iGridVerDirection = aProperty;
- }
- }
- else if ( name == XnPropertyNames::grid::KS60GridHorDirection )
- {
- if ( !aGridPropertyCache )
- {
- aGridPropertyCache = new CGridPropertyCache;
- }
- if ( aGridPropertyCache )
- {
- aGridPropertyCache->iGridHorDirection = aProperty;
- }
- }
- else if ( name == XnPropertyNames::grid::KS60FocusHorLooping )
- {
- if ( !aGridPropertyCache )
- {
- aGridPropertyCache = new CGridPropertyCache;
- }
- if ( aGridPropertyCache )
- {
- aGridPropertyCache->iFocusHorLooping = aProperty;
- }
- }
- else if ( name == XnPropertyNames::grid::KS60FocusVerLooping )
- {
- if ( !aGridPropertyCache )
- {
- aGridPropertyCache = new CGridPropertyCache;
- }
- if ( aGridPropertyCache )
- {
- aGridPropertyCache->iFocusVerLooping = aProperty;
- }
- }
- else if ( name == XnPropertyNames::grid::KS60GridScrollbarWidth )
- {
- if ( !aGridPropertyCache )
- {
- aGridPropertyCache = new CGridPropertyCache;
- }
- if ( aGridPropertyCache )
- {
- aGridPropertyCache->iGridScrollBarWidth = aProperty;
- }
- }
- else if ( name == XnPropertyNames::grid::KS60GridScrollbarMargin )
- {
- if ( !aGridPropertyCache )
- {
- aGridPropertyCache = new CGridPropertyCache;
- }
- if ( aGridPropertyCache )
- {
- aGridPropertyCache->iGridScrollBarMargin = aProperty;
- }
- }
}
// -----------------------------------------------------------------------------
@@ -2315,20 +2175,6 @@
}
// -----------------------------------------------------------------------------
-// CheckRefAttributeL
-// -----------------------------------------------------------------------------
-//
-static const TDesC8* CheckRefAttributeL( CXnProperty* aRef )
- {
- if ( !aRef )
- {
- return NULL;
- }
-
- return &aRef->StringValue();
- }
-
-// -----------------------------------------------------------------------------
// DoMatchTriggerForKeyEventL
// -----------------------------------------------------------------------------
//
@@ -2471,187 +2317,6 @@
}
// -----------------------------------------------------------------------------
-// MatchTimedTriggerPropertiesL
-// -----------------------------------------------------------------------------
-//
-static TBool MatchTimedTriggerPropertiesL( CXnDomNode& aTriggerNode )
- {
- CXnDomList& children = aTriggerNode.ChildNodes();
- TInt count = children.Length();
- if ( count > 0 )
- {
- for ( TInt i = 0; i < count; ++i )
- {
- CXnDomNode* child = static_cast< CXnDomNode* >( children.Item( i ) );
- const TDesC8& name = child->AttributeValue( XnPropertyNames::action::KName );
- if ( name == XnPropertyNames::action::trigger::KDelay )
- {
- return ETrue;
- }
- }
- }
- return EFalse;
- }
-
-// -----------------------------------------------------------------------------
-// MatchStylusTriggerL
-// -----------------------------------------------------------------------------
-//
-static TBool MatchStylusTriggerL(
- CXnNode& aMatchingTriggerNode,
- CXnDomNode& aTreeTriggerNode )
- {
- TInt ret( EFalse );
-
- CXnDomList& treeChildren = aTreeTriggerNode.ChildNodes();
- TInt treeCount = treeChildren.Length();
-
- RPointerArray< CXnNode >& matchingChildren = aMatchingTriggerNode.Children();
- TInt matchCount = matchingChildren.Count();
-
- if ( treeCount == 0 )
- {
- // If stylus-trigger does not have properties, trigger is run with stylus up.
- for ( TInt i = 0; i < matchCount; ++i )
- {
- CXnNode* node = matchingChildren[i];
- CXnProperty* nameProperty = node->NameL();
- if ( nameProperty )
- {
- const TDesC8& name = nameProperty->StringValue();
- if ( name ==
- XnPropertyNames::action::trigger::name::stylus::KStylusEventType )
- {
- CXnProperty* valueProperty = node->ValueL();
- if ( valueProperty )
- {
- const TDesC8& name = valueProperty->StringValue();
- if ( name == XnPropertyNames::action::trigger::name::KDownAndUp )
- {
- return ETrue;
- }
- }
- }
- }
- }
- return EFalse;
- }
-
- // Fetch trigger data defined in the theme
- TInt treeTriggerState( 1 );
- HBufC8* treeTriggerType( NULL );
- for ( TInt i = 0; i < treeCount; ++i )
- {
- CXnDomNode* domNode = static_cast< CXnDomNode* >( treeChildren.Item( i ) );
- CXnDomList& attrs = domNode->AttributeList();
- CXnDomAttribute* nameAttribute = static_cast< CXnDomAttribute* >(
- attrs.FindByName( XnPropertyNames::action::KName ) );
- CXnDomAttribute* valueAttribute = static_cast< CXnDomAttribute* >(
- attrs.FindByName( XnPropertyNames::action::KValue ) );
- if ( !nameAttribute || !valueAttribute )
- {
- continue;
- }
- if ( nameAttribute->Value() ==
- XnPropertyNames::action::trigger::name::stylus::KStylusState )
- {
- TLex8 lex( valueAttribute->Value() );
- lex.Val( treeTriggerState );
- }
- else if ( nameAttribute->Value() ==
- XnPropertyNames::action::trigger::name::stylus::KStylusEventType )
- {
- // just in case
- if ( treeTriggerType )
- {
- CleanupStack::PopAndDestroy( treeTriggerType );
- treeTriggerType = NULL;
- }
- const TDesC8& value = valueAttribute->Value();
- treeTriggerType = HBufC8::NewL( value.Length() );
- TPtr8 ptr = treeTriggerType->Des();
- ptr = value;
- CleanupStack::PushL( treeTriggerType );
- }
- }
-
- // If not defined, use the default value 'up'
- if ( !treeTriggerType )
- {
- treeTriggerType = HBufC8::NewL( 10 );
- TPtr8 ptr = treeTriggerType->Des();
- ptr.Append( XnPropertyNames::action::trigger::name::KDownAndUp );
- CleanupStack::PushL( treeTriggerType );
- }
-
- // Fetch matching trigger data.
- TInt matchTriggerState( 1 );
- HBufC8* matchTriggerType( NULL );
- for ( TInt i = 0; i < matchCount; ++i )
- {
- CXnNode* matchNode = matchingChildren[i];
- CXnProperty* nameProperty = matchNode->NameL();
- CXnProperty* valueProperty = matchNode->ValueL();
- if ( nameProperty && valueProperty )
- {
- if ( nameProperty->StringValue() ==
- XnPropertyNames::action::trigger::name::stylus::KStylusState )
- {
- TLex8 lex( valueProperty->StringValue() );
- lex.Val( matchTriggerState );
- }
- else if ( nameProperty->StringValue() ==
- XnPropertyNames::action::trigger::name::stylus::KStylusEventType )
- {
- // just in case
- if ( matchTriggerType )
- {
- CleanupStack::PopAndDestroy( matchTriggerType );
- matchTriggerType = NULL;
- }
- const TDesC8& value = valueProperty->StringValue();
- matchTriggerType = HBufC8::NewL( value.Length() );
- TPtr8 ptr = matchTriggerType->Des();
- ptr = value;
- CleanupStack::PushL( matchTriggerType );
- }
- }
- }
-
- if ( treeTriggerState == matchTriggerState )
- {
- // just in case
- if ( !matchTriggerType )
- {
- ret = EFalse;
- }
- else if ( treeTriggerType->Des() == matchTriggerType->Des() )
- {
- ret = ETrue;
- }
- // still, if trigger type is 'KUp' it should match to 'KDownAndUp' event
- else if ( treeTriggerType->Des() ==
- XnPropertyNames::action::trigger::name::KUp )
- {
- if ( matchTriggerType->Des() ==
- XnPropertyNames::action::trigger::name::KDownAndUp )
- {
- ret = ETrue;
- }
- }
- }
- if ( matchTriggerType )
- {
- CleanupStack::PopAndDestroy( matchTriggerType );
- }
- if ( treeTriggerType )
- {
- CleanupStack::PopAndDestroy( treeTriggerType );
- }
- return ret;
- }
-
-// -----------------------------------------------------------------------------
// MatchActivateTriggerPropertiesL
// Checks if triggered node properties match
// ones defined in theme
@@ -2749,7 +2414,7 @@
CXnDomList& attributeList( aTriggerNode.AttributeList() );
const TDesC8& reason(
- XnPropertyNames::action::trigger::name::uidefinitionmodification::KReason );
+ XnPropertyNames::action::trigger::name::orientation::KReason );
CXnDomAttribute* attribute( static_cast< CXnDomAttribute* >
( attributeList.FindByName( reason ) ) );
@@ -2763,9 +2428,9 @@
const TDesC8& value( attribute->Value() );
if ( value ==
- XnPropertyNames::action::trigger::name::uidefinitionmodification::reason::KLandscape ||
+ XnPropertyNames::action::trigger::name::orientation::reason::KLandscape ||
value ==
- XnPropertyNames::action::trigger::name::uidefinitionmodification::reason::KPortrait )
+ XnPropertyNames::action::trigger::name::orientation::reason::KPortrait )
{
CXnProperty* reasonProp( aEventData.GetPropertyL( reason ) );
@@ -2914,7 +2579,7 @@
CXnNode& aEventData,
CXnDomNode& aActionNode,
CXnDomNode& aTriggerNode,
- TInt aSource )
+ TInt /*aSource*/ )
{
const TDesC8& nameString( aTriggerNode.AttributeValue( KName ) );
@@ -2928,61 +2593,15 @@
if ( nameString == eventNameString )
{
- if ( nameString == XnPropertyNames::action::trigger::name::KStylus )
- {
- if ( !MatchStylusTriggerL( aEventData, aTriggerNode ) )
- {
- return EFalse;
- }
- }
// Check if triggernode properties match the ones defined in theme
// This is for identifying keyup in activate-trigger
- else if ( nameString == XnPropertyNames::action::trigger::name::KActivate )
+ if ( nameString == XnPropertyNames::action::trigger::name::KActivate )
{
if ( !MatchActivateTriggerPropertiesL( aEventData, aTriggerNode ) )
{
return EFalse;
}
}
- // Check if the trigger is timed trigger
- else if ( MatchTimedTriggerPropertiesL( aTriggerNode ) )
- {
- if ( !aThis->PeriodicTimer() )
- {
- aThis->CreatePeriodicL();
- }
-
- if ( !aThis->PeriodicTimer()->IsActive() )
- {
- TXnTimedTrigger* params = new ( ELeave ) TXnTimedTrigger;
- CleanupStack::PushL( params );
-
- params->iNodeImpl = aThis;
- params->iEngine = &aEngine;
- params->iNode = &aNode;
- params->iEventData = &aEventData;
- params->iActionNode = &aActionNode;
- params->iTriggerNode = &aTriggerNode;
-
- TInt delay( 0 );
-
- ResolveTriggerDelayL( aEngine, aTriggerNode, delay );
- aNode.SetTriggerDelay( delay );
-
- CleanupStack::Pop( params );
-
- aThis->PeriodicTimer()->Start(
- TTimeIntervalMicroSeconds32( delay ),
- TTimeIntervalMicroSeconds32( delay ),
- TCallBack( CXnNodeImpl::PeriodicEventL, params ) );
-
- return ETrue;
- }
- else
- {
- return EFalse;
- }
- }
else if ( nameString == XnPropertyNames::action::trigger::name::KTitleToScroll ||
nameString == XnPropertyNames::action::trigger::name::KTitleScrolled )
{
@@ -3015,27 +2634,6 @@
return EFalse;
}
}
- else if ( aSource != XnEventSource::EUnknown )
- {
- CXnDomAttribute* attr = static_cast< CXnDomAttribute* >
- ( aTriggerNode.AttributeList().FindByName(
- XnPropertyNames::common::KEventFilter ) );
- if ( attr )
- {
- if ( attr->Value().Find(XnPropertyNames::action::trigger::name::KStylus)
- != KErrNotFound &&
- aSource == XnEventSource::EStylus )
- {
- return EFalse;
- }
- else if ( attr->Value().Find(XnPropertyNames::action::trigger::name::KKeyEvent)
- != KErrNotFound &&
- aSource == XnEventSource::EKey )
- {
- return EFalse;
- }
- }
- }
RunEventsL( aThis, aEngine, aNode, aActionNode, aTriggerNode, aEventData );
@@ -3159,17 +2757,6 @@
}
// -----------------------------------------------------------------------------
-// RunAppExit
-// -----------------------------------------------------------------------------
-//
-static void RunAppExit( CXnUiEngine& aEngine )
- {
- CXnAppUiAdapter& adapter( aEngine.AppUiAdapter() );
-
- adapter.Exit();
- }
-
-// -----------------------------------------------------------------------------
// RunFullScreenEffectL
// -----------------------------------------------------------------------------
//
@@ -3353,9 +2940,7 @@
CXnNodeImpl* aThis,
CXnUiEngine& aEngine,
CXnDomNode& aEventNode )
- {
- TBool keyEditMode(EFalse);
-
+ {
aEngine.DisableRenderUiLC();
// Set plugins to edit state
@@ -3420,68 +3005,28 @@
CleanupStack::PopAndDestroy( array );
}
- else if ( name == XnPropertyNames::common::KKeyMoveMode )
- {
- if ( value == XnPropertyNames::KTrue )
- {
- keyEditMode = ETrue;
- }
- }
- }
- }
- }
- if ( keyEditMode )
- {
- for ( TInt i = 0; i < plugins.Count(); i++ )
- {
- if ( plugins[i]->Occupied() )
- {
- CXnNode* node( plugins[i]->Owner()->LayoutNode() );
-
- node->SetStateL( XnPropertyNames::style::common::KEdit );
- }
- }
-
- aEngine.EditMode()->SetEditModeL( CXnEditMode::EKeyMove );
-
- // Put focus to parent plugin if focused node is not a plugin already
- CXnNode* focusedNode = aEngine.FocusedNode();
+ }
+ }
+ }
+ TBool useEmpty( aEngine.ViewManager()->ActiveViewData().UseEmptyWidget() );
+
+ for ( TInt i = 0; i < plugins.Count(); i++ )
+ {
+ CXnNode* node( plugins[i]->Owner()->LayoutNode() );
- if ( focusedNode && focusedNode->DomNode()->Name() != _L8( "plugin" ) )
- {
- for ( CXnNode* candidate =
- focusedNode; candidate; candidate = candidate->Parent() )
- {
- if ( candidate->DomNode()->Name() == _L8( "plugin" ) )
- {
- candidate->SetStateL( XnPropertyNames::style::common::KFocus );
- break;
- }
- }
- }
- }
- else
- {
- TBool useEmpty( aEngine.ViewManager()->ActiveViewData().UseEmptyWidget() );
-
- for ( TInt i = 0; i < plugins.Count(); i++ )
- {
- 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 );
- }
- }
-
+ 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 );
- aEngine.AppUiAdapter().ViewAdapter().BgManager().DrawNow();
- }
+ aEngine.AppUiAdapter().ViewAdapter().CloseAllPopupsL();
CleanupStack::PopAndDestroy();
@@ -3497,9 +3042,6 @@
CXnUiEngine& aEngine,
CXnDomNode& aEventNode )
{
- TBool keyEditMode(
- aEngine.EditMode()->EditState() == CXnEditMode::EKeyMove );
-
CXnDomList& children( aEventNode.ChildNodes() );
TInt count( children.Length() );
@@ -3558,40 +3100,24 @@
CXnDomStringPool* sp( aEventNode.StringPool() );
- if ( keyEditMode )
- {
- for ( TInt i = 0; i < plugins.Count(); i++ )
- {
- if ( plugins[i]->Occupied() )
- {
- CXnNode* node( plugins[i]->Owner()->LayoutNode() );
-
- node->UnsetStateL( XnPropertyNames::style::common::KEdit );
- }
- }
- }
- else
- {
- TBool useEmpty( aEngine.ViewManager()->ActiveViewData().UseEmptyWidget() );
+ TBool useEmpty( aEngine.ViewManager()->ActiveViewData().UseEmptyWidget() );
+
+ for ( TInt i = 0; i < plugins.Count(); i++ )
+ {
+ CXnNode* node( plugins[i]->Owner()->LayoutNode() );
+
+ node->UnsetStateL( XnPropertyNames::style::common::KEdit );
- for ( TInt i = 0; i < plugins.Count(); i++ )
- {
- CXnNode* node( plugins[i]->Owner()->LayoutNode() );
-
- node->UnsetStateL( XnPropertyNames::style::common::KEdit );
-
- if ( !plugins[i]->Occupied() && useEmpty )
- {
- // Make empty space blank
- SetStringPropertyToNodeL( *sp, *node,
- XnPropertyNames::style::common::KVisibility,
- XnPropertyNames::style::common::visibility::KBlank );
- }
- }
- }
+ if ( !plugins[i]->Occupied() && useEmpty )
+ {
+ // Make empty space blank
+ SetStringPropertyToNodeL( *sp, *node,
+ XnPropertyNames::style::common::KVisibility,
+ XnPropertyNames::style::common::visibility::KBlank );
+ }
+ }
aEngine.EditMode()->SetEditModeL( CXnEditMode::ENone );
- aEngine.AppUiAdapter().ViewAdapter().BgManager().DrawNow();
aEngine.AppUiAdapter().ViewAdapter().UpdateRskByModeL();
}
@@ -3832,28 +3358,6 @@
}
// -----------------------------------------------------------------------------
-// RunResetStylusCounterL
-// -----------------------------------------------------------------------------
-//
-static void RunResetStylusCounterL(
- CXnNodeImpl* aThis,
- CXnUiEngine& aEngine,
- const TDesC8& aId )
- {
- CXnNode* node( aEngine.FindNodeByIdL( aId, aThis->Namespace() ) );
-
- if ( node )
- {
- CXnControlAdapter* adapter( node->Control() );
-
- if ( adapter )
- {
- adapter->ResetStylusCounter();
- }
- }
- }
-
-// -----------------------------------------------------------------------------
// GetSystemSetDataL
// -----------------------------------------------------------------------------
//
@@ -4155,11 +3659,11 @@
for( TInt i = 0; i < pluginNodes.Count(); i++ )
{
- CXnPluginData& data( viewData.Plugin( pluginNodes[i] ) );
+ CXnPluginData* data( viewData.Plugin( pluginNodes[i] ) );
- if( data.Occupied() )
- {
- plugins.AppendL( &data );
+ if( data && data->Occupied() )
+ {
+ plugins.AppendL( data );
}
}
@@ -4302,35 +3806,6 @@
}
// -----------------------------------------------------------------------------
-// ResolveTriggerDelayL
-// -----------------------------------------------------------------------------
-//
-static void ResolveTriggerDelayL(
- CXnUiEngine& /*aEngine*/,
- CXnDomNode& aNode,
- TInt& aDelay )
- {
- CXnDomList& children = aNode.ChildNodes();
- for ( TInt i = 0; i < children.Length(); i++ )
- {
- CXnDomNode* child = static_cast< CXnDomNode* >( children.Item( i ) );
- const TDesC8& name = child->AttributeValue( XnPropertyNames::action::KName );
- if ( name == XnPropertyNames::action::trigger::KDelay )
- {
- const TDesC8& value = child->AttributeValue( XnPropertyNames::action::KValue );
- if ( value != KNullDesC8 )
- {
- TInt triggerDelay( 0 );
- TLex8 lex;
- lex.Assign( value );
- lex.Val( triggerDelay );
- aDelay = triggerDelay;
- }
- }
- }
- }
-
-// -----------------------------------------------------------------------------
// RunEventL
// -----------------------------------------------------------------------------
//
@@ -4402,19 +3877,6 @@
RunResetEditL( aThis, aEngine, aEventNode );
return ETrue;
}
- else if ( nameString == XnPropertyNames::action::event::KResetStylusCounter )
- {
- HBufC8* id( NULL );
-
- GetSystemSetDataL( aEventNode, id );
- CleanupStack::PushL( id );
-
- RunResetStylusCounterL( aThis, aEngine, *id );
-
- CleanupStack::PopAndDestroy( id );
-
- return EFalse;
- }
else if ( nameString == XnPropertyNames::action::event::KRunAddWidgetQuery )
{
aEngine.Editor()->AddWidgetL();
@@ -4465,10 +3927,6 @@
RunDeactivateL( aThis, aEngine, aEventNode );
return ETrue;
}
- else if ( nameString == XnPropertyNames::action::event::KExit )
- {
- RunAppExit( aEngine );
- }
else if ( nameString == XnPropertyNames::action::event::KTryDisplayingMenu )
{
RunTryDisplayingMenuL( aEngine, aEventNode );
@@ -4548,29 +4006,6 @@
return ETrue;
}
- else if ( nameString == XnPropertyNames::action::event::KRestartTriggerTimer )
- {
- TInt delay( 0 );
-
- ResolveTriggerDelayL( aEngine, aEventNode, delay );
-
- if ( delay > 0 )
- {
- aNode.RestartTimedTrigger( delay );
- }
- else
- {
- TTimeIntervalMicroSeconds32 delayms = aNode.TriggerDelay();
- aNode.RestartTimedTrigger( delayms.Int() );
- }
-
- return ETrue;
- }
- else if ( nameString == XnPropertyNames::action::event::KCancelTriggerTimer )
- {
- aNode.RestartTimedTrigger();
- return ETrue;
- }
else if ( nameString == XnPropertyNames::action::event::KSetWallpaper )
{
aEngine.AppUiAdapter().ViewAdapter().BgManager().SetWallpaperL();
@@ -4915,7 +4350,7 @@
{
const TDesC8& loopValue = navLoopProperty->StringValue();
if ( loopValue != KNullDesC8 &&
- loopValue == XnPropertyNames::grid::s60_focus_looping::KStop )
+ loopValue == XnPropertyNames::style::common::s60_focus_looping::KStop )
{
return NULL;
}
@@ -6556,13 +5991,12 @@
{
CXnAppUiAdapter& appui = static_cast< CXnAppUiAdapter& >( *iAvkonAppUi );
- CXnPluginData& plugin(
+ CXnPluginData* plugin(
appui.ViewManager().ActiveViewData().Plugin( &aNode ) );
- // find if node is in a widget that contatins some opened popup window
-
- TBool containsPopUp = plugin.IsDisplayingPopup();
-
+ // find if node is in a widget that contatins some opened popup window
+ TBool containsPopUp = ( plugin ? plugin->IsDisplayingPopup() : EFalse );
+
CXnNode* nextNode( NULL );
RPointerArray< CXnNode >& array = aEngine.ViewManager()->AppearanceNodes();
if ( aKeyEvent.iScanCode == EStdKeyDownArrow )
@@ -7081,7 +6515,7 @@
if ( navLoopProperty )
{
const TDesC8& loopValue = navLoopProperty->StringValue();
- if ( loopValue == XnPropertyNames::grid::s60_focus_looping::KStop )
+ if ( loopValue == XnPropertyNames::style::common::s60_focus_looping::KStop )
{
return EFalse;
}
@@ -7400,9 +6834,7 @@
iPropertyPseudoClasses.Reset();
iStates.Reset();
iChildren.ResetAndDestroy();
- delete iGridPropertyCache;
delete iLayoutPropertyCache;
- DeletePeriodic();
}
// -----------------------------------------------------------------------------
@@ -7601,17 +7033,6 @@
//
const TDesC8& CXnNodeImpl::GetPCData()
{
- if ( iRef )
- {
- CXnNode* refNode( NULL );
- TRAP_IGNORE( refNode = RefNodeL( this, iRef, iUiEngine ) );
-
- if ( refNode )
- {
- return refNode->GetPCData();
- }
- }
-
return iDomNode->PCData();
}
@@ -7630,7 +7051,7 @@
// Searchs and shoes tooltips
// -----------------------------------------------------------------------------
//
-void CXnNodeImpl::ShowPopupsL( TRect aRect, TInt /*aSource*/ )
+void CXnNodeImpl::ShowPopupsL( TRect aRect, TInt aSource )
{
if ( iHandleTooltip )
{
@@ -7647,7 +7068,17 @@
if ( popup )
{
- popup->ShowPopupL( aRect );
+ if ( aSource == XnEventSource::EStylus )
+ {
+ const TTimeIntervalMicroSeconds32 delay( 0 );
+ const TTimeIntervalMicroSeconds32 display( 1000 * 1000 * 6 );
+
+ popup->ShowPopupL( aRect, delay, display );
+ }
+ else
+ {
+ popup->ShowPopupL( aRect );
+ }
}
}
}
@@ -7858,15 +7289,6 @@
{
TInt level( XnDirtyLevel::ENone );
- const TDesC8* refid( CheckRefAttributeL( iRef ) );
-
- if ( refid && aProperty->Property()->Name() != XnPropertyNames::common::KId )
- {
- delete aProperty;
-
- return level;
- }
-
const TDesC8& name( aProperty->Property()->Name() );
CXnProperty* prop( GetPropertyL( name ) );
@@ -7895,7 +7317,6 @@
SetCachedProperty(
aProperty,
iLayoutPropertyCache,
- iRef,
iName,
iValue,
iLabel,
@@ -7904,7 +7325,6 @@
iId,
iPath,
iMaskPath,
- iGridPropertyCache,
EFalse,
EFalse );
}
@@ -7914,7 +7334,6 @@
SetCachedProperty(
aProperty,
iLayoutPropertyCache,
- iRef,
iName,
iValue,
iLabel,
@@ -7923,7 +7342,6 @@
iId,
iPath,
iMaskPath,
- iGridPropertyCache,
EFalse,
EFalse );
}
@@ -7983,15 +7401,6 @@
//
void CXnNodeImpl::InitializePropertyL( CXnProperty* aProperty )
{
- const TDesC8* refid( CheckRefAttributeL( iRef ) );
-
- if ( refid && aProperty->Property()->Name() != XnPropertyNames::common::KId )
- {
- delete aProperty;
-
- return;
- }
-
if ( aProperty->Property()->PseudoClass() != CXnDomProperty::ENone )
{
InsertPropertyPseudoClassL(
@@ -8000,7 +7409,6 @@
SetCachedProperty(
aProperty,
iLayoutPropertyCache,
- iRef,
iName,
iValue,
iLabel,
@@ -8009,7 +7417,6 @@
iId,
iPath,
iMaskPath,
- iGridPropertyCache,
ETrue,
ETrue );
}
@@ -8018,7 +7425,6 @@
SetCachedProperty(
aProperty,
iLayoutPropertyCache,
- iRef,
iName,
iValue,
iLabel,
@@ -8027,7 +7433,6 @@
iId,
iPath,
iMaskPath,
- iGridPropertyCache,
ETrue,
EFalse );
}
@@ -8042,13 +7447,6 @@
//
CXnProperty* CXnNodeImpl::GetPropertyL( const TDesC8& aKey )
{
- CXnNode* refNode( RefNodeL( this, iRef, iUiEngine ) ) ;
-
- if ( refNode && aKey != KRef && aKey != KId )
- {
- return refNode->GetPropertyL( aKey );
- }
-
CXnDomProperty* attribute = NULL;
CXnProperty* property = iPropertyList->GetProperty( aKey );
@@ -8581,17 +7979,10 @@
// Returns a property.
// -----------------------------------------------------------------------------
//
-static CXnProperty* PropertyL( CXnNodeImpl* aThis, CXnProperty* aProperty,
- CXnProperty* ( CXnNode::* aFunc )(), CXnUiEngine* aUiEngine,
- TAny* aLayoutPropertyCache, CXnNode* aParent, CXnProperty* aRef )
- {
- CXnNode* refNode( RefNodeL( aThis, aRef, aUiEngine ) ) ;
-
- if ( refNode )
- {
- return ( refNode->*aFunc )();
- }
-
+static CXnProperty* PropertyL( CXnProperty* aProperty,
+ CXnProperty* ( CXnNode::* aFunc )(),
+ TAny* aLayoutPropertyCache, CXnNode* aParent )
+ {
if ( aLayoutPropertyCache && aProperty )
{
CXnDomProperty* attribute = aProperty->Property();
@@ -8624,93 +8015,16 @@
}
// -----------------------------------------------------------------------------
-// ReferredPropertyL
-// Returns a referred property.
-// -----------------------------------------------------------------------------
-//
-static CXnProperty* ReferredPropertyL(
- RPointerArray< CXnProperty >* aPropertyArray,
- RArray< CXnDomProperty::TPseudoClass >& aStates )
- {
- if ( !aPropertyArray )
- {
- return NULL;
- }
- for ( TInt i = aPropertyArray->Count() - 1; i >= 0; --i )
- {
- CXnProperty* tmp = ( *aPropertyArray )[i];
- for ( TInt j = aStates.Count() - 1; j >= 0; --j )
- {
- if ( aStates[j] == tmp->Property()->PseudoClass() )
- {
- return tmp;
- }
- }
- for ( TInt j = aStates.Count() - 1; j >= 0; --j )
- {
- if ( tmp->Property()->PseudoClass() == CXnDomProperty::ENone )
- {
- return tmp;
- }
- }
- }
- for ( TInt i = aPropertyArray->Count() - 1; i >= 0; --i )
- {
- CXnProperty* tmp = ( *aPropertyArray )[i];
- if ( tmp->Property()->PseudoClass() == CXnDomProperty::ENone )
- {
- return tmp;
- }
- }
- return NULL;
- }
-
-// -----------------------------------------------------------------------------
-// RefNodeL
-// Returns referred node.
-// -----------------------------------------------------------------------------
-//
-static CXnNode* RefNodeL(
- CXnNodeImpl* aThis,
- CXnProperty* aRef,
- CXnUiEngine* aUiEngine )
- {
- const TDesC8* refid( CheckRefAttributeL( aRef ) );
-
- if ( refid )
- {
- CXnNode* node( aUiEngine->FindNodeByIdL( *refid, aThis->Namespace() ) );
-
- if ( node )
- {
- return node;
- }
- }
-
- return NULL;
- }
-
-// -----------------------------------------------------------------------------
// CXnNodeImpl::WidthL
// Returns width property.
// -----------------------------------------------------------------------------
//
CXnProperty* CXnNodeImpl::WidthL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iWidths ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iWidth : NULL;
- return PropertyL( this, property, &CXnNode::WidthL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::WidthL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -8720,20 +8034,10 @@
//
CXnProperty* CXnNodeImpl::HeightL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if (refNode)
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iHeights ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iHeight : NULL;
- return PropertyL( this, property, &CXnNode::HeightL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::HeightL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -8743,22 +8047,12 @@
//
CXnProperty* CXnNodeImpl::MarginLeftL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iMarginLefts ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ?
iLayoutPropertyCache->iMarginLeft :
NULL;
- return PropertyL( this, property, &CXnNode::MarginLeftL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::MarginLeftL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -8768,22 +8062,12 @@
//
CXnProperty* CXnNodeImpl::MarginRightL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iMarginRights ) :
- NULL;
- return ReferredPropertyL(propertyArray, iStates);
- }
CXnProperty* property =
iLayoutPropertyCache ?
iLayoutPropertyCache->iMarginRight :
NULL;
- return PropertyL( this, property, &CXnNode::MarginRightL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::MarginRightL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -8793,21 +8077,11 @@
//
CXnProperty* CXnNodeImpl::BorderLeftL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iBorderLefts ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property = iLayoutPropertyCache ?
iLayoutPropertyCache->iBorderLeft :
NULL;
- return PropertyL( this, property, &CXnNode::BorderLeftL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::BorderLeftL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -8817,22 +8091,12 @@
//
CXnProperty* CXnNodeImpl::BorderRightL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iBorderRights ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ?
iLayoutPropertyCache->iBorderRight :
NULL;
- return PropertyL( this, property, &CXnNode::BorderRightL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::BorderRightL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -8842,22 +8106,12 @@
//
CXnProperty* CXnNodeImpl::PaddingLeftL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iPaddingLefts ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ?
iLayoutPropertyCache->iPaddingLeft :
NULL;
- return PropertyL( this, property, &CXnNode::PaddingLeftL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::PaddingLeftL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -8867,20 +8121,10 @@
//
CXnProperty* CXnNodeImpl::PaddingRightL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iPaddingRights ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iPaddingRight : NULL;
- return PropertyL( this, property, &CXnNode::PaddingRightL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::PaddingRightL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -8890,20 +8134,10 @@
//
CXnProperty* CXnNodeImpl::MarginTopL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iMarginTops ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iMarginTop : NULL;
- return PropertyL( this, property, &CXnNode::MarginTopL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::MarginTopL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -8913,20 +8147,10 @@
//
CXnProperty* CXnNodeImpl::MarginBottomL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iMarginBottoms ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iMarginBottom : NULL;
- return PropertyL( this, property, &CXnNode::MarginBottomL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::MarginBottomL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -8936,20 +8160,10 @@
//
CXnProperty* CXnNodeImpl::BorderTopL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iBorderTops ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iBorderTop : NULL;
- return PropertyL( this, property, &CXnNode::BorderTopL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::BorderTopL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -8959,20 +8173,10 @@
//
CXnProperty* CXnNodeImpl::BorderBottomL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iBorderBottoms ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iBorderBottom : NULL;
- return PropertyL( this, property, &CXnNode::BorderBottomL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::BorderBottomL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -8982,20 +8186,10 @@
//
CXnProperty* CXnNodeImpl::PaddingTopL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iPaddingTops ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iPaddingTop : NULL;
- return PropertyL( this, property, &CXnNode::PaddingTopL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::PaddingTopL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9005,20 +8199,10 @@
//
CXnProperty* CXnNodeImpl::PaddingBottomL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iPaddingBottoms ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iPaddingBottom : NULL;
- return PropertyL( this, property, &CXnNode::PaddingBottomL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::PaddingBottomL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9028,20 +8212,10 @@
//
CXnProperty* CXnNodeImpl::BorderWidthL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iBorderWidths ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iBorderWidth : NULL;
- return PropertyL( this, property, &CXnNode::BorderWidthL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::BorderWidthL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9051,20 +8225,10 @@
//
CXnProperty* CXnNodeImpl::BlockProgressionL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iBlockProgressions ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iBlockProgression : NULL;
- return PropertyL( this, property, &CXnNode::BlockProgressionL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::BlockProgressionL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9074,20 +8238,10 @@
//
CXnProperty* CXnNodeImpl::DirectionL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iDirections ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iDirection : NULL;
- return PropertyL( this, property, &CXnNode::DirectionL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::DirectionL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9097,20 +8251,10 @@
//
CXnProperty* CXnNodeImpl::PositionL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iPositions ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iPosition : NULL;
- return PropertyL( this, property, &CXnNode::PositionL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::PositionL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9120,20 +8264,10 @@
//
CXnProperty* CXnNodeImpl::MaxHeightL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iMaxHeights ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iMaxHeight : NULL;
- return PropertyL( this, property, &CXnNode::MaxHeightL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::MaxHeightL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9143,20 +8277,10 @@
//
CXnProperty* CXnNodeImpl::MinHeightL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iMinHeights ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iMinHeight : NULL;
- return PropertyL( this, property, &CXnNode::MinHeightL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::MinHeightL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9166,20 +8290,10 @@
//
CXnProperty* CXnNodeImpl::MaxWidthL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iMaxWidths ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iMaxWidth : NULL;
- return PropertyL( this, property, &CXnNode::MaxWidthL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::MaxWidthL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9189,20 +8303,10 @@
//
CXnProperty* CXnNodeImpl::MinWidthL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iMinWidths ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iMinWidth : NULL;
- return PropertyL( this, property, &CXnNode::MinWidthL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::MinWidthL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9212,20 +8316,10 @@
//
CXnProperty* CXnNodeImpl::DisplayL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iDisplays ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iDisplay : NULL;
- return PropertyL( this, property, &CXnNode::DisplayL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::DisplayL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9235,20 +8329,10 @@
//
CXnProperty* CXnNodeImpl::LeftL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iLefts ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iLeft : NULL;
- return PropertyL( this, property, &CXnNode::LeftL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::LeftL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9258,20 +8342,10 @@
//
CXnProperty* CXnNodeImpl::RightL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iRights ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iRight : NULL;
- return PropertyL( this, property, &CXnNode::RightL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::RightL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9281,20 +8355,10 @@
//
CXnProperty* CXnNodeImpl::TopL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iTops ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iTop : NULL;
- return PropertyL( this, property, &CXnNode::TopL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::TopL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9304,20 +8368,10 @@
//
CXnProperty* CXnNodeImpl::BottomL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iBottoms ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iBottom : NULL;
- return PropertyL( this, property, &CXnNode::BottomL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::BottomL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9327,20 +8381,10 @@
//
CXnProperty* CXnNodeImpl::BorderLeftStyleL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iBorderLeftStyles ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iBorderLeftStyle : NULL;
- return PropertyL( this, property, &CXnNode::BorderLeftStyleL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::BorderLeftStyleL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9350,20 +8394,10 @@
//
CXnProperty* CXnNodeImpl::BorderRightStyleL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iBorderRightStyles ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iBorderRightStyle : NULL;
- return PropertyL( this, property, &CXnNode::BorderRightStyleL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::BorderRightStyleL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9373,20 +8407,10 @@
//
CXnProperty* CXnNodeImpl::BorderTopStyleL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iBorderTopStyles ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iBorderTopStyle : NULL;
- return PropertyL( this, property, &CXnNode::BorderTopStyleL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::BorderTopStyleL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9396,20 +8420,10 @@
//
CXnProperty* CXnNodeImpl::BorderBottomStyleL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iBorderBottomStyles ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iBorderBottomStyle : NULL;
- return PropertyL( this, property, &CXnNode::BorderBottomStyleL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::BorderBottomStyleL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9419,20 +8433,10 @@
//
CXnProperty* CXnNodeImpl::BorderStyleL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iBorderStyles ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iBorderStyle : NULL;
- return PropertyL( this, property, &CXnNode::BorderStyleL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::BorderStyleL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9444,9 +8448,8 @@
{
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iBorderImage : NULL;
- return PropertyL( this, property, &CXnNode::BorderImageL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::BorderImageL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9456,20 +8459,10 @@
//
CXnProperty* CXnNodeImpl::DisplayPriorityL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iDisplayPriorities ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iDisplayPriority : NULL;
- return PropertyL( this, property, &CXnNode::DisplayPriorityL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::DisplayPriorityL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9479,9 +8472,7 @@
//
CXnProperty* CXnNodeImpl::NameL()
{
- return PropertyL( this, iName, &CXnNode::NameL,
- iUiEngine, this,
- iParent, iRef );
+ return PropertyL( iName, &CXnNode::NameL, this, iParent );
}
// -----------------------------------------------------------------------------
@@ -9491,9 +8482,7 @@
//
CXnProperty* CXnNodeImpl::ValueL()
{
- return PropertyL( this, iValue, &CXnNode::ValueL,
- iUiEngine, this,
- iParent, iRef );
+ return PropertyL( iValue, &CXnNode::ValueL, this, iParent );
}
// -----------------------------------------------------------------------------
@@ -9503,20 +8492,10 @@
//
CXnProperty* CXnNodeImpl::VisibilityL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iVisibilities ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iVisibility : NULL;
- return PropertyL( this, property, &CXnNode::VisibilityL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::VisibilityL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9526,9 +8505,7 @@
//
CXnProperty* CXnNodeImpl::LabelL()
{
- return PropertyL( this, iLabel, &CXnNode::LabelL,
- iUiEngine, this,
- iParent, iRef );
+ return PropertyL( iLabel, &CXnNode::LabelL, this, iParent );
}
// -----------------------------------------------------------------------------
@@ -9538,9 +8515,7 @@
//
CXnProperty* CXnNodeImpl::InitialFocusL()
{
- return PropertyL( this, iInitialFocus, &CXnNode::InitialFocusL,
- iUiEngine, this,
- iParent, iRef );
+ return PropertyL( iInitialFocus, &CXnNode::InitialFocusL, this, iParent );
}
// -----------------------------------------------------------------------------
@@ -9550,9 +8525,7 @@
//
CXnProperty* CXnNodeImpl::ClassL()
{
- return PropertyL( this, iClass, &CXnNode::ClassL,
- iUiEngine, this,
- iParent, iRef );
+ return PropertyL( iClass, &CXnNode::ClassL, this, iParent );
}
// -----------------------------------------------------------------------------
@@ -9596,9 +8569,7 @@
//
CXnProperty* CXnNodeImpl::PathL()
{
- return PropertyL( this, iPath, &CXnNode::PathL,
- iUiEngine, this,
- iParent, iRef );
+ return PropertyL( iPath, &CXnNode::PathL, this, iParent );
}
// -----------------------------------------------------------------------------
@@ -9608,9 +8579,7 @@
//
CXnProperty* CXnNodeImpl::MaskPathL()
{
- return PropertyL( this, iMaskPath, &CXnNode::MaskPathL,
- iUiEngine, this,
- iParent, iRef );
+ return PropertyL( iMaskPath, &CXnNode::MaskPathL, this, iParent );
}
// -----------------------------------------------------------------------------
@@ -9620,118 +8589,10 @@
//
CXnProperty* CXnNodeImpl::NavIndexL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iNavIndexes ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iNavIndex : NULL;
- return PropertyL( this, property, &CXnNode::NavIndexL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
- }
-
-// -----------------------------------------------------------------------------
-// CXnNodeImpl::VisibleRowsL
-// Returns visible-rows property.
-// -----------------------------------------------------------------------------
-//
-CXnProperty* CXnNodeImpl::VisibleRowsL()
- {
- CXnProperty* property =
- iGridPropertyCache ? iGridPropertyCache->iVisibleRows : NULL;
- return PropertyL( this, property, &CXnNode::VisibleRowsL,
- iUiEngine, iGridPropertyCache,
- iParent, iRef );
- }
-
-// -----------------------------------------------------------------------------
-// CXnNodeImpl::GridColumnsL
-// Returns grid-columns property.
-// -----------------------------------------------------------------------------
-//
-CXnProperty* CXnNodeImpl::GridColumnsL()
- {
- CXnProperty* property =
- iGridPropertyCache ? iGridPropertyCache->iGridColumns : NULL;
- return PropertyL( this, property, &CXnNode::GridColumnsL,
- iUiEngine, iGridPropertyCache,
- iParent, iRef );
- }
-
-// -----------------------------------------------------------------------------
-// CXnNodeImpl::GridOrientationL
-// Returns grid-orientation property.
-// -----------------------------------------------------------------------------
-//
-CXnProperty* CXnNodeImpl::GridOrientationL()
- {
- CXnProperty* property =
- iGridPropertyCache ? iGridPropertyCache->iGridOrientation : NULL;
- return PropertyL( this, property, &CXnNode::GridOrientationL,
- iUiEngine, iGridPropertyCache,
- iParent, iRef );
- }
-
-// -----------------------------------------------------------------------------
-// CXnNodeImpl::GridVerDirectionL
-// Returns grid-ver-direction property.
-// -----------------------------------------------------------------------------
-//
-CXnProperty* CXnNodeImpl::GridVerDirectionL()
- {
- CXnProperty* property =
- iGridPropertyCache ? iGridPropertyCache->iGridVerDirection : NULL;
- return PropertyL( this, property, &CXnNode::GridVerDirectionL,
- iUiEngine, iGridPropertyCache,
- iParent, iRef );
- }
-
-// -----------------------------------------------------------------------------
-// CXnNodeImpl::GridHorDirectionL
-// Returns grid-hor-direction property.
-// -----------------------------------------------------------------------------
-//
-CXnProperty* CXnNodeImpl::GridHorDirectionL()
- {
- CXnProperty* property =
- iGridPropertyCache ? iGridPropertyCache->iGridHorDirection : NULL;
- return PropertyL( this, property, &CXnNode::GridHorDirectionL,
- iUiEngine, iGridPropertyCache,
- iParent, iRef );
- }
-
-// -----------------------------------------------------------------------------
-// CXnNodeImpl::FocusHorLoopingL
-// Returns focus-hor-looping property.
-// -----------------------------------------------------------------------------
-//
-CXnProperty* CXnNodeImpl::FocusHorLoopingL()
- {
- CXnProperty* property =
- iGridPropertyCache ? iGridPropertyCache->iFocusHorLooping : NULL;
- return PropertyL( this, property, &CXnNode::FocusHorLoopingL,
- iUiEngine, iGridPropertyCache,
- iParent, iRef );
- }
-
-// -----------------------------------------------------------------------------
-// CXnNodeImpl::FocusVerLoopingL
-// Returns focus-ver-looping property.
-// -----------------------------------------------------------------------------
-//
-CXnProperty* CXnNodeImpl::FocusVerLoopingL()
- {
- CXnProperty* property =
- iGridPropertyCache ? iGridPropertyCache->iFocusVerLooping : NULL;
- return PropertyL( this, property, &CXnNode::FocusVerLoopingL,
- iUiEngine, iGridPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::NavIndexL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9741,20 +8602,10 @@
//
CXnProperty* CXnNodeImpl::ZIndexL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iZIndexes ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iZIndex : NULL;
- return PropertyL( this, property, &CXnNode::ZIndexL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::ZIndexL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9764,20 +8615,10 @@
//
CXnProperty* CXnNodeImpl::BackgroundColorL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iBackgroundColors ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iBackgroundColor : NULL;
- return PropertyL( this, property, &CXnNode::BackgroundColorL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::BackgroundColorL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9787,20 +8628,10 @@
//
CXnProperty* CXnNodeImpl::BackgroundImageL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iBackgroundImages ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iBackgroundImage : NULL;
- return PropertyL( this, property, &CXnNode::BackgroundImageL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
+ return PropertyL( property, &CXnNode::BackgroundImageL,
+ iLayoutPropertyCache, iParent );
}
// -----------------------------------------------------------------------------
@@ -9810,174 +8641,11 @@
//
CXnProperty* CXnNodeImpl::FocusBackgroundL()
{
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
-
- if ( refNode )
- {
- RPointerArray< CXnProperty >* propertyArray =
- refNode->Impl()->iLayoutPropertyCache ?
- &( refNode->Impl()->iLayoutPropertyCache->iFocusBackgrounds ) :
- NULL;
- return ReferredPropertyL( propertyArray, iStates );
- }
-
CXnProperty* property =
iLayoutPropertyCache ? iLayoutPropertyCache->iFocusBackground : NULL;
- return PropertyL( this, property, &CXnNode::FocusBackgroundL,
- iUiEngine, iLayoutPropertyCache,
- iParent, iRef );
- }
-
-// -----------------------------------------------------------------------------
-// CXnNodeImpl::RefL
-// Returns ref property.
-// -----------------------------------------------------------------------------
-//
-CXnProperty* CXnNodeImpl::RefL()
- {
- return iRef;
- }
-
-// -----------------------------------------------------------------------------
-// CXnNodeImpl::GridScrollBarWidthL
-// Returns grid-scrollbar-width property.
-// -----------------------------------------------------------------------------
-//
-CXnProperty* CXnNodeImpl::GridScrollBarWidthL()
- {
- CXnProperty* property = NULL;
-
- if ( iGridPropertyCache && iGridPropertyCache->iGridScrollBarWidth)
- {
- property = PropertyL(
- this,
- iGridPropertyCache->iGridScrollBarWidth,
- &CXnNode::GridScrollBarWidthL,
- iUiEngine, iGridPropertyCache,
- iParent,
- iRef );
- }
-
- if ( !property && iRef )
- {
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
-
- if ( refNode )
- {
- property = refNode->GridScrollBarWidthL();
- }
- }
-
- if ( !property )
- {
- TReal sbWidth( KS60ScrollbarDefaultWidth );
- // Set default value
- CXnDomDocument& doc = iUiEngine->ODT()->DomDocument();
- CXnDomProperty* domProperty = CXnDomProperty::NewL(
- XnPropertyNames::grid::KS60GridScrollbarWidth, doc.StringPool() );
- CleanupStack::PushL( domProperty );
- CXnDomPropertyValue* propertyValue = CXnDomPropertyValue::NewL(
- doc.StringPool() );
- CleanupStack::PushL( propertyValue );
- if ( AknLayoutUtils::PenEnabled() )
- {
- sbWidth = KS60ScrollbarDefaultWidthPenEnabled;
- }
- propertyValue->SetFloatValueL( CXnDomPropertyValue::EUnitValue, sbWidth );
- domProperty->PropertyValueList().AddItemL( propertyValue );
- CleanupStack::Pop( propertyValue );
-
- property = CXnProperty::NewL( domProperty );
- CleanupStack::Pop( domProperty );
- CleanupStack::PushL( property );
-
- // If this is a reference node, set property to the referred node, not this.
- CXnNode* node = RefNodeL( this, iRef, iUiEngine );
- if ( node )
- {
- node->SetPropertyL( property );
- }
- else
- {
- this->SetPropertyL( property ); // deletes existing one
- }
-
- CleanupStack::Pop( property );
- }
-
- return property;
- }
-
-// -----------------------------------------------------------------------------
-// CXnNodeImpl::GridScrollBarMarginL
-// Returns grid-scrollbar-margin property.
-// -----------------------------------------------------------------------------
-//
-CXnProperty* CXnNodeImpl::GridScrollBarMarginL()
- {
- CXnProperty* property = NULL;
- if ( iGridPropertyCache && iGridPropertyCache->iGridScrollBarMargin )
- {
- property = PropertyL(
- this,
- iGridPropertyCache->iGridScrollBarMargin,
- &CXnNode::GridScrollBarMarginL,
- iUiEngine, iGridPropertyCache,
- iParent,
- iRef );
- }
-
- if ( !property && iRef )
- {
- CXnNode* refNode = RefNodeL( this, iRef, iUiEngine );
-
- if ( refNode )
- {
- property = refNode->GridScrollBarMarginL();
- }
- }
-
- if ( !property )
- {
- TReal sbMarginWidth( KS60ScrollbarDefaultMargin );
- // Set default value
- CXnDomDocument& doc = iUiEngine->ODT()->DomDocument();
- CXnDomProperty* domProperty =
- CXnDomProperty::NewL(
- XnPropertyNames::grid::KS60GridScrollbarMargin,
- doc.StringPool() );
- CleanupStack::PushL( domProperty );
- CXnDomPropertyValue* propertyValue = CXnDomPropertyValue::NewL(
- doc.StringPool() );
- CleanupStack::PushL( propertyValue );
- if ( AknLayoutUtils::PenEnabled() )
- {
- sbMarginWidth = KS60ScrollbarDefaultMarginPenEnabled;
- }
- propertyValue->SetFloatValueL(
- CXnDomPropertyValue::EUnitValue, sbMarginWidth );
- domProperty->PropertyValueList().AddItemL( propertyValue );
- CleanupStack::Pop( propertyValue );
-
- property = CXnProperty::NewL( domProperty );
- CleanupStack::Pop( domProperty );
- CleanupStack::PushL( property );
-
- // If this is a reference node, set property to the referred node, not this.
- CXnNode* node = RefNodeL( this, iRef, iUiEngine );
- if ( node )
- {
- node->SetPropertyL( property );
- }
- else
- {
- this->SetPropertyL( property ); // deletes existing one
- }
-
- CleanupStack::Pop(property);
- }
- return property;
+ return PropertyL( property, &CXnNode::FocusBackgroundL,
+ iLayoutPropertyCache, iParent );
}
// ----------------------------------------------------------------------------
@@ -10202,57 +8870,6 @@
}
}
-// ----------------------------------------------------------------------------
-// CXnNodeImpl::PeriodicEventL
-// ----------------------------------------------------------------------------
-//
-TInt CXnNodeImpl::PeriodicEventL( TAny* aPtr )
- {
- TXnTimedTrigger* params = static_cast< TXnTimedTrigger* >( aPtr );
- CXnNodeImpl* impl = params->iNodeImpl;
- CXnUiEngine* engine = params->iEngine;
- CXnNode* node = params->iNode;
- CXnNode* eventData = params->iEventData;
- CXnDomNode* actionNode = params->iActionNode;
- CXnDomNode* triggerNode = params->iTriggerNode;
- RunEventsL( impl, *engine, *node, *actionNode, *triggerNode, *eventData );
- delete params;
- impl->DeletePeriodic();
- return EFalse;
- }
-
-// ----------------------------------------------------------------------------
-// CXnNodeImpl::PeriodicTimer
-// ----------------------------------------------------------------------------
-//
-CPeriodic* CXnNodeImpl::PeriodicTimer()
- {
- return iPeriodicTimer;
- }
-
-// ----------------------------------------------------------------------------
-// CXnNodeImpl::CreatePeriodicL
-// ----------------------------------------------------------------------------
-//
-void CXnNodeImpl::CreatePeriodicL()
- {
- iPeriodicTimer = CPeriodic::NewL( CActive::EPriorityIdle );
- }
-
-// ---------------------------------------------------------
-// CXnNodeImpl::DeletePeriodic
-// ---------------------------------------------------------
-//
-void CXnNodeImpl::DeletePeriodic()
- {
- if ( iPeriodicTimer )
- {
- iPeriodicTimer->Cancel();
- delete iPeriodicTimer;
- iPeriodicTimer = NULL;
- }
- }
-
// -----------------------------------------------------------------------------
// CXnNodeImpl::SetDirtyL
// -----------------------------------------------------------------------------
@@ -10514,4 +9131,3 @@
}
return aRect;
}
-
--- a/idlehomescreen/xmluirendering/uiengine/src/xnnodepluginif.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnnodepluginif.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -366,96 +366,6 @@
}
// -----------------------------------------------------------------------------
-// CXnNodePluginIf::VisibleRowsL
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CXnProperty* CXnNodePluginIf::VisibleRowsL()
- {
- return iNode->VisibleRowsL();
- }
-
-// -----------------------------------------------------------------------------
-// CXnNodePluginIf::GridColumnsL
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CXnProperty* CXnNodePluginIf::GridColumnsL()
- {
- return iNode->GridColumnsL();
- }
-
-// -----------------------------------------------------------------------------
-// CXnNodePluginIf::GridOrientationL
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CXnProperty* CXnNodePluginIf::GridOrientationL()
- {
- return iNode->GridOrientationL();
- }
-
-// -----------------------------------------------------------------------------
-// CXnNodePluginIf::GridVerDirectionL
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CXnProperty* CXnNodePluginIf::GridVerDirectionL()
- {
- return iNode->GridVerDirectionL();
- }
-
-// -----------------------------------------------------------------------------
-// CXnNodePluginIf::GridHorDirectionL
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CXnProperty* CXnNodePluginIf::GridHorDirectionL()
- {
- return iNode->GridHorDirectionL();
- }
-
-// -----------------------------------------------------------------------------
-// CXnNodePluginIf::FocusHorLoopingL
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CXnProperty* CXnNodePluginIf::FocusHorLoopingL()
- {
- return iNode->FocusHorLoopingL();
- }
-
-// -----------------------------------------------------------------------------
-// CXnNodePluginIf::FocusVerLoopingL
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CXnProperty* CXnNodePluginIf::FocusVerLoopingL()
- {
- return iNode->FocusVerLoopingL();
- }
-
-// -----------------------------------------------------------------------------
-// CXnNodePluginIf::RefL
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CXnProperty* CXnNodePluginIf::RefL()
- {
- return iNode->RefL();
- }
-
-// -----------------------------------------------------------------------------
-// CXnNodePluginIf::GridScrollBarWidthL
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CXnProperty* CXnNodePluginIf::GridScrollBarWidthL()
- {
- return iNode->GridScrollBarWidthL();
- }
-
-// -----------------------------------------------------------------------------
-// CXnNodePluginIf::GridScrollBarMarginL
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CXnProperty* CXnNodePluginIf::GridScrollBarMarginL()
- {
- return iNode->GridScrollBarMarginL();
- }
-
-// -----------------------------------------------------------------------------
// CXnNodePluginIf::SetHandleTooltip
// -----------------------------------------------------------------------------
//
@@ -542,9 +452,7 @@
{
const TDesC8& type( iNode->Type()->Type() );
- if ( iNode->IsAdaptive( ETrue ) ||
- type == _L8( "grid" ) ||
- type == _L8( "list" ) )
+ if ( iNode->IsAdaptive( ETrue ) )
{
iNode->SetDirtyL( XnDirtyLevel::ELayoutAndRender );
}
--- a/idlehomescreen/xmluirendering/uiengine/src/xnodtparser.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnodtparser.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -60,8 +60,6 @@
_LIT8( KBoxNodeName, "box" );
_LIT8( KButtonNodeName, "button" );
_LIT8( KStylusPopupNodeName, "styluspopup" );
-_LIT8( KListNodeName, "list" );
-_LIT8( KGridNodeName, "grid" );
_LIT8( KImageNodeName, "image" );
_LIT8( KTooltipNodeName, "tooltip" );
_LIT8( KMenuBarNodeName, "menubar" );
@@ -74,8 +72,6 @@
_LIT8( KTriggerNodeName, "trigger" );
_LIT8( KEventNodeName, "event" );
_LIT8( KTextNodeName, "text" );
-_LIT8( KGridCellTemplateNodeName, "gridcelltemplate" );
-_LIT8( KListRowTemplateNodeName, "listrowtemplate" );
_LIT8( KMarqueeNodeName, "marquee" );
_LIT8( KObjectNodeName, "object" );
_LIT8( KTracksterNodeName, "trackster" );
@@ -502,12 +498,8 @@
returnValue->SetViewNodeImpl( impl );
CleanupStack::Pop( impl );
}
- else if ( name == KGridCellTemplateNodeName ||
- name == KListRowTemplateNodeName ||
- name == KBoxNodeName ||
+ else if ( name == KBoxNodeName ||
name == KButtonNodeName ||
- name == KListNodeName ||
- name == KGridNodeName ||
name == KImageNodeName ||
name == KMenuBarNodeName ||
name == KTooltipNodeName ||
--- a/idlehomescreen/xmluirendering/uiengine/src/xnplugindata.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnplugindata.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -35,7 +35,10 @@
#include "xnoomsyshandler.h"
#include "xnpanic.h"
+#include "debug.h"
+
// Constants
+_LIT8( KLockingStatusLocked, "locked" );
// ============================ LOCAL FUNCTIONS ================================
@@ -132,8 +135,7 @@
}
iFlags.Clear( EIsEmpty );
- iFlags.Set( EIsRemovable );
-
+
TInt err( KErrNone );
TRAP( err, err = iManager.Composer().ComposeWidgetL( *this ) );
@@ -224,7 +226,9 @@
// -----------------------------------------------------------------------------
//
TInt CXnPluginData::LoadPublishers( TInt aReason )
- {
+ {
+ __PRINTS( "*** CXnPluginData::LoadPublishers" );
+
TInt err( KErrNone );
TRAP( err,
@@ -250,6 +254,8 @@
return KErrNone;
}
+ __PRINTS( "*** CXnPluginData::LoadPublishers - done" );
+
return err;
}
@@ -259,7 +265,9 @@
// -----------------------------------------------------------------------------
//
void CXnPluginData::DestroyPublishers()
- {
+ {
+ __PRINTS( "*** CXnPluginData::DestroyPublishers" );
+
if ( Occupied() )
{
// If not all plugins loaded yet
@@ -269,6 +277,8 @@
User::Heap().Compress();
}
+
+ __PRINTS( "*** CXnPluginData::DestroyPublishers - done" );
}
// -----------------------------------------------------------------------------
@@ -288,6 +298,8 @@
//
void CXnPluginData::DoDestroyPublishersL()
{
+ __TIME_MARK( time );
+
for ( TInt i = 0; i < iContentSourceNodes.Count(); i++ )
{
CXnNodeAppIf& plugin( iContentSourceNodes[i]->AppIfL() );
@@ -296,6 +308,8 @@
iManager.AppUiAdapter().DestroyPublisher(
plugin, EAiFwPluginShutdown );
}
+
+ __TIME_ENDMARK( "CXnPluginData::DoDestroyPublishersL, done", time );
}
// -----------------------------------------------------------------------------
@@ -583,8 +597,7 @@
// Takes ownership
iPluginId = id;
- iFlags.Set( EIsEmpty );
- iFlags.Clear( EIsRemovable );
+ iFlags.Set( EIsEmpty );
}
// -----------------------------------------------------------------------------
@@ -619,6 +632,18 @@
return ( iPopupNodes.Count() > 0 );
}
+// -----------------------------------------------------------------------------
+// CXnPluginData::PopupNodesL()
+// -----------------------------------------------------------------------------
+//
+void CXnPluginData::PopupNodesL( RPointerArray< CXnNode >& aList ) const
+ {
+ for ( TInt i = 0; i < iPopupNodes.Count(); i++ )
+ {
+ aList.AppendL( iPopupNodes[i] );
+ }
+ }
+
//------------------------------------------------------------------------------
// CXnPluginData::ShowContentRemovedError()
//
@@ -657,4 +682,21 @@
TRAP_IGNORE( ViewManager().OomSysHandler().HandlePotentialOomL() );
}
+// -----------------------------------------------------------------------------
+// CXnViewData::SetLockingStatus
+//
+// -----------------------------------------------------------------------------
+//
+void CXnPluginData::SetLockingStatus( const TDesC8& aStatus )
+ {
+ if ( aStatus.CompareF( KLockingStatusLocked ) == 0 )
+ {
+ iFlags.Clear( EIsRemovable );
+ }
+ else
+ {
+ iFlags.Set( EIsRemovable );
+ }
+ }
+
// End of file
--- a/idlehomescreen/xmluirendering/uiengine/src/xnpopupcontroladapter.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnpopupcontroladapter.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -196,12 +196,13 @@
//
void CXnPopupControlAdapter::TryDisplayingStylusPopupL( CXnNode& aPlugin )
{
- CXnViewManager* manager( iUiEngine->ViewManager() );
-
- CXnPluginData& plugin( manager->ActiveViewData().Plugin( &aPlugin ) );
-
HideMenuL();
-
+ CXnViewManager* manager( iUiEngine->ViewManager() );
+ CXnPluginData* plugin( manager->ActiveViewData().Plugin( &aPlugin ) );
+ if ( !plugin )
+ {
+ return;
+ }
TPointerEvent event( iUiEngine->HitTest().PointerEvent() );
delete iStylusPopupMenu;
@@ -214,10 +215,10 @@
for ( TInt i = 0; i < children.Count(); i++ )
{
- PopulateMenuL( plugin, children[i] );
+ PopulateMenuL( *plugin, children[i] );
}
- ShowMenuL( plugin, event.iParentPosition );
+ ShowMenuL( *plugin, event.iParentPosition );
}
// -----------------------------------------------------------------------------
--- a/idlehomescreen/xmluirendering/uiengine/src/xnrootdata.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnrootdata.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -38,6 +38,8 @@
#include "xnplugindata.h"
#include "xnrootdata.h"
+#include "debug.h"
+
// Constants
const TInt KScheduleInterval( 2000000 );
@@ -468,6 +470,8 @@
//
/* static */ TInt CXnRootData::RunLoadL( TAny* aAny )
{
+ __PRINTS( "*** CXnRootData::RunLoadL" );
+
CXnRootData* self = static_cast< CXnRootData* >( aAny );
if ( self->iFlags.IsSet( EIsDispose ) )
@@ -541,6 +545,8 @@
}
}
+ __PRINTS( "*** CXnRootData::RunLoadL - done" );
+
return KErrNone;
}
@@ -571,6 +577,8 @@
//
/* static */ TInt CXnRootData::RunDestroyL( TAny* aAny )
{
+ __PRINTS( "*** CXnRootData::RunDestroyL" );
+
CXnRootData* self = static_cast< CXnRootData* >( aAny );
if( self->iFlags.IsSet( EIsDispose ) )
@@ -628,6 +636,8 @@
}
}
+ __PRINTS( "*** CXnRootData::RunDestroyL - done" );
+
return KErrNone;
}
--- a/idlehomescreen/xmluirendering/uiengine/src/xnuiengine.rss Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnuiengine.rss Fri Mar 12 15:41:49 2010 +0200
@@ -29,6 +29,7 @@
#include <avkon.mbg>
#include <e32keys.h>
#include <activeidle3.loc>
+
// ========== RESOURCE DEFINITIONS ============================================
RESOURCE RSS_SIGNATURE { }
@@ -102,11 +103,6 @@
buf = qtn_hs_delete_current_page;
}
-RESOURCE TITLE_PANE r_qtn_hs_title_editmode
- {
- txt = qtn_hs_title_editing;
- }
-
RESOURCE DIALOG r_yes_no_hs_remove_view
{
flags = EGeneralQueryFlags;
--- a/idlehomescreen/xmluirendering/uiengine/src/xnuiengineimpl.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnuiengineimpl.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -21,7 +21,7 @@
#include <eikapp.h>
#include <AknUtils.h>
#include <layoutmetadata.cdl.h>
-#include <aknpriv.hrh>
+#include <AknPriv.hrh>
// User includes
#include "xnuiengine.h"
@@ -56,6 +56,7 @@
#include "xneditor.h"
#include "xnbackgroundmanager.h"
#include "xntexteditor.h"
+#include "xnbgcontrol.h"
#ifdef _XN_PERFORMANCE_TEST_
#include "xntimemon.h"
@@ -271,7 +272,6 @@
CXnUiEngine& aUiEngine );
static void FillFocusCandidatesL( CXnNode* aParent,
RPointerArray< CXnNode >& aArray );
-static TInt DetermineStatusPaneLayout( CXnProperty* aProperty );
static TBool SetAdaptivesL( CXnNode& aNode );
static void FindNodeByClassL( CXnNode* aRootNode, const TDesC8& aClassId,
@@ -7901,18 +7901,18 @@
if ( Layout_Meta_Data::IsLandscapeOrientation() )
{
reasonString = &XnPropertyNames::action::trigger::name::
- uidefinitionmodification::reason::KLandscape;
+ orientation::reason::KLandscape;
}
else
{
reasonString = &XnPropertyNames::action::trigger::name::
- uidefinitionmodification::reason::KPortrait;
+ orientation::reason::KPortrait;
}
reasonValue->SetStringValueL( CXnDomPropertyValue::EString, *reasonString );
CXnProperty* reason = CXnProperty::NewL( XnPropertyNames::action::trigger::
- name::uidefinitionmodification::KReason, reasonValue, *sp );
+ name::orientation::KReason, reasonValue, *sp );
CleanupStack::Pop( reasonValue );
@@ -7943,52 +7943,6 @@
}
// -----------------------------------------------------------------------------
-// DetermineStatusPaneLayout
-// -----------------------------------------------------------------------------
-//
-static TInt DetermineStatusPaneLayout( CXnProperty* aProperty )
- {
- TInt spane( KErrNotFound );
-
- if ( aProperty )
- {
- const TDesC8& value( aProperty->StringValue() );
-
- // Currently supported status pane layout
- if ( value == XnPropertyNames::view::statuspanelayout::KNone )
- {
- spane = R_AVKON_STATUS_PANE_LAYOUT_EMPTY;
- }
- if ( value == XnPropertyNames::view::statuspanelayout::KBasic )
- {
- spane = R_AVKON_STATUS_PANE_LAYOUT_IDLE;
- }
- else if ( value == XnPropertyNames::view::statuspanelayout::KBasicFlat )
- {
- spane = R_AVKON_STATUS_PANE_LAYOUT_IDLE_FLAT;
- }
- else if ( value ==
- XnPropertyNames::view::statuspanelayout::KWideScreen )
- {
- spane = R_AVKON_WIDESCREEN_PANE_LAYOUT_IDLE;
- }
- else if ( value ==
- XnPropertyNames::view::statuspanelayout::KWideScreenFlat )
- {
- spane = R_AVKON_WIDESCREEN_PANE_LAYOUT_IDLE_FLAT;
- }
- else if ( value ==
- XnPropertyNames::view::statuspanelayout::
- KWideScreenFlat3Softkeys )
- {
- spane = R_AVKON_WIDESCREEN_PANE_LAYOUT_IDLE_FLAT_NO_SOFTKEYS;
- }
- }
-
- return spane;
- }
-
-// -----------------------------------------------------------------------------
// SetAdaptivesL
// -----------------------------------------------------------------------------
//
@@ -8542,7 +8496,10 @@
//
void CXnUiEngineImpl::SetFocusedNodeL( CXnNode* aFocusedNode, TInt aSource )
{
- iKeyEventDispatcher->SetNodeL( aFocusedNode, aSource );
+ if ( iKeyEventDispatcher )
+ {
+ iKeyEventDispatcher->SetNodeL( aFocusedNode, aSource );
+ }
}
// -----------------------------------------------------------------------------
@@ -8552,7 +8509,12 @@
//
CXnNode* CXnUiEngineImpl::FocusedNode()
{
- return iKeyEventDispatcher->FocusedNode();
+ if ( iKeyEventDispatcher )
+ {
+ return iKeyEventDispatcher->FocusedNode();
+ }
+
+ return NULL;
}
// -----------------------------------------------------------------------------
@@ -8579,31 +8541,16 @@
iDirtyList.Reset();
iRedrawRegions.ResetAndDestroy();
-
- // Set status pane layout
- CXnProperty* prop( iCurrentView->GetPropertyL(
- XnPropertyNames::view::KStatusPaneLayout ) );
-
- // Is there status pane declaration available
- TInt spane( DetermineStatusPaneLayout( prop ) );
-
- if ( spane != KErrNotFound )
- {
- CEikStatusPane* sp( iAppUiAdapter.StatusPane() );
-
- if ( sp && sp->CurrentLayoutResId() != spane )
- {
- sp->SwitchLayoutL( spane );
- sp->ApplyCurrentSettingsL();
- }
- }
// Remove previous menubar and stylus popup node
iMenuNode = NULL;
iStylusPopupNode = NULL;
- iKeyEventDispatcher->ResetMenuNodeL();
-
+ if ( iKeyEventDispatcher )
+ {
+ iKeyEventDispatcher->ResetMenuNodeL();
+ }
+
RPointerArray< CXnNode >& children( iCurrentView->Children() );
for ( TInt count = children.Count() - 1; count >= 0 ; --count )
@@ -8635,8 +8582,11 @@
// Set menu node even if its NULL, to allow keyevent dispatcher
// to handle no softkeys
- iKeyEventDispatcher->SetMenuNodeL( iMenuNode );
-
+ if ( iKeyEventDispatcher )
+ {
+ iKeyEventDispatcher->SetMenuNodeL( iMenuNode );
+ }
+
ReportScreenDeviceChangeL();
SetClientRectL( iAppUiAdapter.ClientRect(), EFalse );
@@ -8697,9 +8647,9 @@
{
if ( aPlugin && &aPlugin->Node() )
{
- CXnPluginData& data( viewData.Plugin( &aPlugin->Node() ) );
+ CXnPluginData* data( viewData.Plugin( &aPlugin->Node() ) );
- if ( !data.Occupied() )
+ if ( data && !data->Occupied() )
{
retval = ETrue;
}
@@ -8711,9 +8661,9 @@
if ( node )
{
- CXnPluginData& data( viewData.Plugin( node ) );
+ CXnPluginData* data( viewData.Plugin( node ) );
- if ( data.Removable() && data.Occupied() )
+ if ( data && data->Removable() && data->Occupied() )
{
retval = ETrue;
}
@@ -8842,7 +8792,11 @@
{
if ( iLayoutControl & XnLayoutControl::ERefreshMenu )
{
- iKeyEventDispatcher->RefreshMenuL();
+ if ( iKeyEventDispatcher )
+ {
+ iKeyEventDispatcher->RefreshMenuL();
+ }
+
iLayoutControl &= ~XnLayoutControl::ERefreshMenu;
}
}
@@ -8937,6 +8891,7 @@
DisableRenderUiLC();
HandlePartialTouchInputL( aType );
RootNode()->SetDirtyL();
+ ForceRenderUIL();
CleanupStack::PopAndDestroy();
}
}
@@ -8948,7 +8903,8 @@
DisableRenderUiLC();
HandlePartialTouchInputL( aType );
RootNode()->SetDirtyL();
- CleanupStack::PopAndDestroy();
+ ForceRenderUIL();
+ CleanupStack::PopAndDestroy();
}
}
@@ -9028,7 +8984,12 @@
//
TBool CXnUiEngineImpl::IsMenuDisplaying()
{
- return iKeyEventDispatcher->IsMenuFocused();
+ if ( iKeyEventDispatcher )
+ {
+ return iKeyEventDispatcher->IsMenuFocused();
+ }
+
+ return EFalse;
}
// -----------------------------------------------------------------------------
@@ -9057,7 +9018,10 @@
//
void CXnUiEngineImpl::AddPassiveFocusedNodeL( CXnNode* aNode )
{
- iKeyEventDispatcher->AddPassiveFocusedNodeL( aNode );
+ if ( iKeyEventDispatcher )
+ {
+ iKeyEventDispatcher->AddPassiveFocusedNodeL( aNode );
+ }
}
// -----------------------------------------------------------------------------
@@ -9066,7 +9030,10 @@
//
void CXnUiEngineImpl::RemovePassiveFocusedNodeL( CXnNode* aNode )
{
- iKeyEventDispatcher->RemovePassiveFocusedNodeL( aNode );
+ if ( iKeyEventDispatcher )
+ {
+ iKeyEventDispatcher->RemovePassiveFocusedNodeL( aNode );
+ }
}
// -----------------------------------------------------------------------------
@@ -9075,7 +9042,10 @@
//
void CXnUiEngineImpl::ClearPassiveFocusedNodesL()
{
- iKeyEventDispatcher->ClearPassiveFocusedNodesL();
+ if ( iKeyEventDispatcher )
+ {
+ iKeyEventDispatcher->ClearPassiveFocusedNodesL();
+ }
}
// -----------------------------------------------------------------------------
@@ -9758,7 +9728,11 @@
return;
}
if ( aType == KAknSplitInputEnabled )
- {
+ {
+ // make sure that we always get up event
+ CCoeControl& bg( iAppUiAdapter.ViewAdapter().BgControl() );
+ static_cast<CXnBgControl*>(&bg)->ResetGrabbingL();
+
// don't remove input from stack if split input is enabled
XnTextEditorInterface::MXnTextEditorInterface* editorControl = NULL;
XnComponentInterface::MakeInterfaceL( editorControl,
@@ -9912,7 +9886,7 @@
// -----------------------------------------------------------------------------
void CXnUiEngineImpl::NotifyStatusPaneSizeChanged()
{
- TRAP_IGNORE( iUiEngine->SetClientRectL( iAppUiAdapter.ClientRect() ) );
+ TRAP_IGNORE( iUiEngine->SetClientRectL( iAppUiAdapter.ClientRect(), EFalse ) );
}
// -----------------------------------------------------------------------------
--- a/idlehomescreen/xmluirendering/uiengine/src/xnuienginepluginif.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnuienginepluginif.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -370,14 +370,17 @@
if ( manager )
{
- CXnPluginData& pluginData(
+ CXnPluginData* pluginData(
manager->ActiveViewData().Plugin( &aNode->Node() ) );
+
+ if ( pluginData )
+ {
+ CXnDomNode* domNode( pluginData->Owner() );
- CXnDomNode* domNode( pluginData.Owner() );
-
- if ( domNode )
- {
- node = domNode->LayoutNode();
+ if ( domNode )
+ {
+ node = domNode->LayoutNode();
+ }
}
}
--- a/idlehomescreen/xmluirendering/uiengine/src/xnuistatelistener.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnuistatelistener.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -96,6 +96,17 @@
}
// -----------------------------------------------------------------------------
+// CXnUiStateListener::PrepareToExit()
+// Prepares for application exit
+// -----------------------------------------------------------------------------
+//
+void CXnUiStateListener::PrepareToExit()
+ {
+ iUiStateObservers.Reset();
+ iResourceChangeObservers.Reset();
+ }
+
+// -----------------------------------------------------------------------------
// CXnUiStateListener::AddObserver()
// Adds MXnUiStateObserver
// -----------------------------------------------------------------------------
--- a/idlehomescreen/xmluirendering/uiengine/src/xnviewadapter.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnviewadapter.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -18,6 +18,7 @@
// System includes
#include <aknViewAppUi.h>
#include <eikbtgpc.h>
+#include <avkon.rsg>
// User includes
#include "xnappuiadapter.h"
@@ -44,14 +45,19 @@
#include "xnviewadapter.h"
#include "xnmenu.h"
#include "xneditmode.h"
+#include "xnrootdata.h"
+
+#include "debug.h"
// Constants
const TUid KXmlViewUid = { 1 };
+_LIT8( KActivateDefaultView, "activatedefault" );
// Data types
enum
{
EIsActivated,
+ EIsFirstActivation,
EIsInCall,
EIsLightsOn,
EIsForeground,
@@ -61,6 +67,52 @@
// ============================= LOCAL FUNCTIONS ===============================
// -----------------------------------------------------------------------------
+// DetermineStatusPaneLayout
+// -----------------------------------------------------------------------------
+//
+static TInt DetermineStatusPaneLayout( CXnProperty* aProperty )
+ {
+ TInt spane( KErrNotFound );
+
+ if ( aProperty )
+ {
+ const TDesC8& value( aProperty->StringValue() );
+
+ // Currently supported status pane layout
+ if ( value == XnPropertyNames::view::statuspanelayout::KNone )
+ {
+ spane = R_AVKON_STATUS_PANE_LAYOUT_EMPTY;
+ }
+ if ( value == XnPropertyNames::view::statuspanelayout::KBasic )
+ {
+ spane = R_AVKON_STATUS_PANE_LAYOUT_IDLE;
+ }
+ else if ( value == XnPropertyNames::view::statuspanelayout::KBasicFlat )
+ {
+ spane = R_AVKON_STATUS_PANE_LAYOUT_IDLE_FLAT;
+ }
+ else if ( value ==
+ XnPropertyNames::view::statuspanelayout::KWideScreen )
+ {
+ spane = R_AVKON_WIDESCREEN_PANE_LAYOUT_IDLE;
+ }
+ else if ( value ==
+ XnPropertyNames::view::statuspanelayout::KWideScreenFlat )
+ {
+ spane = R_AVKON_WIDESCREEN_PANE_LAYOUT_IDLE_FLAT;
+ }
+ else if ( value ==
+ XnPropertyNames::view::statuspanelayout::
+ KWideScreenFlat3Softkeys )
+ {
+ spane = R_AVKON_WIDESCREEN_PANE_LAYOUT_IDLE_FLAT_NO_SOFTKEYS;
+ }
+ }
+
+ return spane;
+ }
+
+// -----------------------------------------------------------------------------
// BuildTriggerL
// -----------------------------------------------------------------------------
//
@@ -155,7 +207,8 @@
// -----------------------------------------------------------------------------
//
CXnViewAdapter::~CXnViewAdapter()
- {
+ {
+ delete iTimer;
delete iActivate;
delete iDeactivate;
delete iEditState;
@@ -187,6 +240,10 @@
{
BaseConstructL();
+ iTimer = CPeriodic::NewL( CActive::EPriorityIdle );
+
+ iFlags.Set( EIsFirstActivation );
+
// Base class CAknViewAppUi takes ownership of iViewAdapter
iAppUiAdapter.AddViewL( this );
iAppUiAdapter.SetDefaultViewL( *this );
@@ -241,21 +298,18 @@
}
// -----------------------------------------------------------------------------
-// CXnViewAdapter::PrepareDestroy
+// CXnViewAdapter::PrepareToExit
// Sets view to be destroyed
// -----------------------------------------------------------------------------
//
-void CXnViewAdapter::PrepareDestroy()
- {
- iAppUiAdapter.UiStateListener().RemoveObserver( *this );
- iBgControl->PrepareDestroy();
-
- TRAP_IGNORE( DeactivateContainerL() );
-
+void CXnViewAdapter::PrepareToExit()
+ {
iAppUiAdapter.RemoveFromStack( iEventDispatcher );
delete iEventDispatcher;
iEventDispatcher = NULL;
+ iAppUiAdapter.UiEngine().SetEventDispatcher( NULL );
+
iContainer = NULL;
iFlags.Set( EIsDestructionRunning );
@@ -318,12 +372,15 @@
//
void CXnViewAdapter::DoActivateL( const TVwsViewId& /*aPrevViewId*/,
TUid /*aCustomMessageId*/,
- const TDesC8& /*aCustomMessage*/ )
+ const TDesC8& aCustomMessage )
{
if ( iFlags.IsSet( EIsDestructionRunning ) )
{
return;
}
+
+ __TICK( "CXnViewAdapter::DoActivateL" );
+ __TIME_MARK( time );
iFlags.Set( EIsActivated );
@@ -342,9 +399,83 @@
iBgControl->MakeVisible( ETrue );
iBgManager->MakeVisible( ETrue );
+
+ // Set status pane layout
+ CXnViewData& viewData( iAppUiAdapter.ViewManager().ActiveViewData() );
+ CXnProperty* prop( viewData.Node()->LayoutNode()->GetPropertyL(
+ XnPropertyNames::view::KStatusPaneLayout ) );
+
+ // Is there status pane declaration available
+ TInt spane( DetermineStatusPaneLayout( prop ) );
+
+ if ( spane != KErrNotFound )
+ {
+ CEikStatusPane* sp( iAppUiAdapter.StatusPane() );
+
+ if ( sp && sp->CurrentLayoutResId() != spane )
+ {
+ sp->SwitchLayoutL( spane );
+ sp->ApplyCurrentSettingsL();
+ }
+ }
+
+ if ( iFlags.IsSet( EIsFirstActivation ) )
+ {
+ // Set the active container
+ ActivateContainerL( iAppUiAdapter.ViewManager().ActiveViewData() );
+
+ __TICK( "CXnViewAdapter::DoActivateL - Calling UiActivated" );
+ __TIME_MARK( time2 );
- // Set the active container
- ActivateContainerL( iAppUiAdapter.ViewManager().ActiveViewData() );
+ iFlags.Clear( EIsFirstActivation );
+
+ iAppUiAdapter.UiActivated();
+
+ __TIME_ENDMARK( "CXnViewAdapter::DoActivateL - Calling UiActivated", time );
+ }
+ else
+ {
+ // Set the active container
+ if ( aCustomMessage == KActivateDefaultView )
+ {
+ __PRINTS( "*** CXnViewAdapter::DoActivateL - activating default container" );
+
+ ActivateDefaultContainerL();
+
+ iTimer->Cancel();
+ iTimer->Start( 1000, 1000, TCallBack( TimerCallback, this ) );
+ }
+ else
+ {
+ __PRINTS( "*** CXnViewAdapter::DoActivateL - activating container" );
+
+ ActivateContainerL( viewData );
+ }
+ }
+
+ __TIME_ENDMARK( "CXnViewAdapter::DoActivateL, done", time );
+
+ __TICK( "CXnViewAdapter::DoActivateL - HS UI Ready" );
+ }
+
+// -----------------------------------------------------------------------------
+// CXnViewAdapter::TimerCallback
+//
+// -----------------------------------------------------------------------------
+//
+TInt CXnViewAdapter::TimerCallback( TAny *aPtr )
+ {
+ __PRINTS( "*** CXnViewAdapter::TimerCallback" );
+
+ CXnViewAdapter* self = reinterpret_cast< CXnViewAdapter* >( aPtr );
+ self->iTimer->Cancel();
+
+ self->iCoeEnv->WsSession().SetWindowGroupOrdinalPosition(
+ self->iCoeEnv->RootWin().Identifier(), 0 );
+
+ __PRINTS( "*** CXnViewAdapter::TimerCallback, done" );
+
+ return KErrNone;
}
// -----------------------------------------------------------------------------
@@ -359,6 +490,9 @@
return;
}
+ __PRINTS( "*** CXnViewAdapter::DoDeactivate" );
+ __TIME_MARK( time );
+
iAppUiAdapter.RemoveFromStack( iEventDispatcher );
TRAP_IGNORE( DeactivateContainerL() );
@@ -369,6 +503,8 @@
iFocusControl->MakeVisible( EFalse );
iFlags.Clear( EIsActivated );
+
+ __TIME_ENDMARK( "CXnViewAdapter::DoDeactivate, done", time );
}
// -----------------------------------------------------------------------------
@@ -379,7 +515,7 @@
void CXnViewAdapter::ActivateContainerL( CXnViewData& aContainer,
TBool aEnterEditState )
{
- if ( iContainer == &aContainer )
+ if ( iContainer == &aContainer || iFlags.IsSet( EIsDestructionRunning ) )
{
return;
}
@@ -422,31 +558,15 @@
iAppUiAdapter.ViewManager().NotifyContainerChangedL( aContainer );
- if ( !iEditState )
- {
- iEditState = BuildEditStateTriggerL( iAppUiAdapter.UiEngine() );
- }
-
- CXnProperty* prop( iEditState->GetPropertyL(
- XnPropertyNames::action::KValue ) );
-
if ( aEnterEditState || iAppUiAdapter.UiEngine().IsEditMode() )
{
- static_cast< CXnDomPropertyValue* >(
- prop->Property()->PropertyValueList().Item( 0 ) )
- ->SetStringValueL( CXnDomPropertyValue::EString,
- XnPropertyNames::action::trigger::name::editmode::KEnter() );
+ EnterEditStateL( aContainer, ETrue );
}
else
{
- static_cast< CXnDomPropertyValue* >(
- prop->Property()->PropertyValueList().Item( 0 ) )
- ->SetStringValueL( CXnDomPropertyValue::EString,
- XnPropertyNames::action::trigger::name::editmode::KExit() );
+ EnterEditStateL( aContainer, EFalse );
}
- node->ReportXuikonEventL( *iEditState );
-
CXnControlAdapter* adapter( node->Control() );
iBgControl->SetCompoundControl( adapter );
@@ -457,17 +577,90 @@
}
// -----------------------------------------------------------------------------
+// CXnViewAdapter::ActivateDefaultContainerL
+// Activates default container
+// -----------------------------------------------------------------------------
+//
+void CXnViewAdapter::ActivateDefaultContainerL( TBool aEnterEditState )
+ {
+ CXnRootData& rootData( iAppUiAdapter.ViewManager().ActiveAppData() );
+
+ RPointerArray< CXnPluginData >& views( rootData.PluginData() );
+
+ if ( !views.Count() )
+ {
+ return;
+ }
+
+ // Deactivate container even though it hasn't changed to close all popups
+ // and other windows
+ DeactivateContainerL();
+
+ // first view is default
+ CXnViewData* viewData = static_cast<CXnViewData*>( views[0] );
+
+ if ( viewData )
+ {
+ EnterEditStateL( *viewData, aEnterEditState );
+ ActivateContainerL( *viewData, aEnterEditState );
+ }
+ }
+
+// -----------------------------------------------------------------------------
+// CXnViewAdapter::EnterEditStateL
+// Sets edit state property
+// -----------------------------------------------------------------------------
+//
+void CXnViewAdapter::EnterEditStateL( CXnViewData& aView, TBool aEnter )
+ {
+ if ( !iEditState )
+ {
+ iEditState = BuildEditStateTriggerL( iAppUiAdapter.UiEngine() );
+ }
+
+ CXnProperty* prop( iEditState->GetPropertyL(
+ XnPropertyNames::action::KValue ) );
+
+ if ( !prop )
+ {
+ return;
+ }
+
+ if ( aEnter )
+ {
+ static_cast< CXnDomPropertyValue* >(
+ prop->Property()->PropertyValueList().Item( 0 ) )
+ ->SetStringValueL( CXnDomPropertyValue::EString,
+ XnPropertyNames::action::trigger::name::editmode::KEnter() );
+ }
+ else
+ {
+ static_cast< CXnDomPropertyValue* >(
+ prop->Property()->PropertyValueList().Item( 0 ) )
+ ->SetStringValueL( CXnDomPropertyValue::EString,
+ XnPropertyNames::action::trigger::name::editmode::KExit() );
+ }
+
+ if ( aView.Node() && aView.Node()->LayoutNode() )
+ {
+ aView.Node()->LayoutNode()->ReportXuikonEventL( *iEditState );
+ }
+ }
+
+// -----------------------------------------------------------------------------
// CXnViewAdapter::DeactivateContainerL
// Deactivates current container
// -----------------------------------------------------------------------------
//
void CXnViewAdapter::DeactivateContainerL()
{
- if ( !iContainer )
+ if ( !iContainer || iFlags.IsSet( EIsDestructionRunning ) )
{
return;
}
+ CloseAllPopupsL();
+
// Run controls to powersave mode
ChangeControlsStateL( EFalse );
@@ -678,5 +871,38 @@
}
}
+// -----------------------------------------------------------------------------
+// CXnViewAdapter::CloseAllPopupsL()
+//
+// -----------------------------------------------------------------------------
+//
+void CXnViewAdapter::CloseAllPopupsL()
+ {
+ if ( !iContainer )
+ {
+ return;
+ }
+
+ RPointerArray< CXnNode > popups;
+ CleanupClosePushL( popups );
+
+ iContainer->PopupNodesL( popups );
+
+ for ( TInt i = 0; i < popups.Count(); i++ )
+ {
+ CXnProperty* display = CXnProperty::NewL(
+ XnPropertyNames::style::common::KDisplay,
+ XnPropertyNames::style::common::display::KNone,
+ CXnDomPropertyValue::EString,
+ *iAppUiAdapter.UiEngine().ODT()->DomDocument().StringPool() );
+
+ CleanupStack::PushL( display );
+ popups[i]->SetPropertyL(display);
+ CleanupStack::Pop( display );
+ }
+
+ CleanupStack::PopAndDestroy( &popups );
+ }
+
// End of file
--- a/idlehomescreen/xmluirendering/uiengine/src/xnviewdata.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnviewdata.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -31,8 +31,10 @@
#include "xnoomsyshandler.h"
#include "xnpanic.h"
+#include "debug.h"
+
// Constants
-_LIT8( KLockingStatusLocked, "locked" );
+const TInt KInterval( 10000 );
// ============================ LOCAL FUNCTIONS ================================
@@ -213,14 +215,16 @@
// Finds plugin or view data based on node
// -----------------------------------------------------------------------------
//
-CXnPluginData& CXnViewData::Plugin( CXnNode* aNode )
- {
+CXnPluginData* CXnViewData::Plugin( CXnNode* aNode )
+ {
+ if ( !aNode ) { return NULL; }
+
if ( aNode->ViewNodeImpl() )
{
// Reached view, return self
if ( Node()->LayoutNode() == aNode )
{
- return *this;
+ return this;
}
}
@@ -228,7 +232,7 @@
{
if ( iPluginsData[i]->Owner()->LayoutNode() == aNode )
{
- return *iPluginsData[i];
+ return iPluginsData[i];
}
}
@@ -381,6 +385,23 @@
}
// -----------------------------------------------------------------------------
+// CXnViewData::PopupNodesL()
+// Gets this view data's popup nodes
+// -----------------------------------------------------------------------------
+//
+void CXnViewData::PopupNodesL( RPointerArray< CXnNode >& aList ) const
+ {
+ // Get my Popup nodes
+ CXnPluginData::PopupNodesL( aList );
+
+ for ( TInt i = 0; i < iPluginsData.Count(); i++ )
+ {
+ // And Popup nodes which my plugin holds
+ iPluginsData[i]->PopupNodesL( aList );
+ }
+ }
+
+// -----------------------------------------------------------------------------
// CXnViewData::InitialFocusNodesL()
// Gets this view data's initial focus nodes
// -----------------------------------------------------------------------------
@@ -444,9 +465,9 @@
iLoader->Cancel();
iLoadIndex = 0;
-
- iLoader->Start( TTimeIntervalMicroSeconds32( 50 ),
- TTimeIntervalMicroSeconds32( 50 ),
+
+ iLoader->Start( TTimeIntervalMicroSeconds32( KInterval ),
+ TTimeIntervalMicroSeconds32( KInterval ),
TCallBack( DoLoadPublishersL, this ) );
}
@@ -457,6 +478,8 @@
//
/* static */ TInt CXnViewData::DoLoadPublishersL( TAny* aAny )
{
+ __PRINTS( "*** CXnViewData::DoLoadPublishersL" );
+
CXnViewData* self = static_cast< CXnViewData* >( aAny );
RPointerArray< CXnPluginData >& plugins( self->PluginData() );
@@ -512,9 +535,11 @@
{
self->ShowContentRemovedError();
self->iShowContentRemoved = EFalse;
- }
+ }
}
+ __PRINTS( "*** CXnViewData::DoLoadPublishersL - done" );
+
return KErrNone;
}
@@ -525,6 +550,8 @@
//
void CXnViewData::DestroyPublishers( TInt aReason )
{
+ __PRINTS( "*** CXnViewData::DestroyPublishers" );
+
if ( Occupied() )
{
// If not all plugins loaded yet
@@ -534,6 +561,8 @@
User::Heap().Compress();
}
+
+ __PRINTS( "*** CXnViewData::DestroyPublishers - done" );
}
// -----------------------------------------------------------------------------
@@ -543,6 +572,8 @@
//
void CXnViewData::DoDestroyPublishersL( TInt aReason )
{
+ __TIME_MARK( time );
+
// Create list of data plugins to be removed
RPointerArray< CXnNode > publishers;
CleanupClosePushL( publishers );
@@ -556,25 +587,9 @@
publishers[i]->AppIfL(), aReason );
}
- CleanupStack::PopAndDestroy( &publishers );
- }
-
-// -----------------------------------------------------------------------------
-// CXnViewData::SetLockingStatus
-// Sets view's locking_status attribute ("locked"/"none")
-// -----------------------------------------------------------------------------
-//
-void CXnViewData::SetLockingStatus( const TDesC8& aLockingStatusString )
- {
- if( ( aLockingStatusString != KNullDesC8 ) &&
- ( aLockingStatusString.Match( KLockingStatusLocked ) == 0 ) )
- {
- iFlags.Clear( EIsRemovable );
- }
- else
- {
- iFlags.Set( EIsRemovable );
- }
+ CleanupStack::PopAndDestroy( &publishers );
+
+ __TIME_ENDMARK( "CXnViewData::DoDestroyPublishersL, done", time );
}
// End of file
--- a/idlehomescreen/xmluirendering/uiengine/src/xnviewmanager.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnviewmanager.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -16,6 +16,7 @@
*/
// System includes
+#include <startupdomainpskeys.h>
#include <AknUtils.h>
#include <AknsWallpaperUtils.h>
#include <AknSkinsInternalCRKeys.h>
@@ -23,6 +24,7 @@
#include <xnuiengine.rsg>
#include <aknnotewrappers.h>
#include <AknsConstants.h>
+#include <aifwdefs.h>
// User includes
#include "xnapplication.h"
@@ -60,6 +62,7 @@
const TInt KPSCrashCountKey = 1;
const TInt KStabilityInterval = 60000000; // 1 minute
const TInt KCrashRestoreThreshold = 3;
+
// ============================ LOCAL FUNCTIONS ===============================
// -----------------------------------------------------------------------------
// BuildTriggerL
@@ -272,6 +275,8 @@
//
CXnViewManager::~CXnViewManager()
{
+ delete iUiStartupPhase;
+
if( iStabilityTimer )
{
iStabilityTimer->Cancel();
@@ -301,12 +306,28 @@
}
// -----------------------------------------------------------------------------
+// CXnViewManager::PropertyChangedL()
+//
+// -----------------------------------------------------------------------------
+//
+void CXnViewManager::PropertyChangedL( const TUint32 aKey, const TInt aValue )
+ {
+ if ( aKey == KPSStartupUiPhase && aValue == EStartupUiPhaseAllDone )
+ {
+ if ( iRootData )
+ {
+ iRootData->LoadRemainingViews();
+ }
+ }
+ }
+
+// -----------------------------------------------------------------------------
// CXnViewManager::ConstructL()
// 2nd phase constructor
// -----------------------------------------------------------------------------
//
void CXnViewManager::ConstructL()
- {
+ {
iOomSysHandler = CXnOomSysHandler::NewL();
// Create resource list
@@ -364,6 +385,13 @@
iRootData->Load();
CleanupStack::PopAndDestroy(); // DisableRenderUiLC();
+
+ // Determine UI startup phase
+ delete iUiStartupPhase;
+ iUiStartupPhase = NULL;
+
+ iUiStartupPhase = CXnPropertySubscriber::NewL(
+ KPSUidStartup, KPSStartupUiPhase, *this );
}
// -----------------------------------------------------------------------------
@@ -404,7 +432,7 @@
// CXnViewManager::LoadWidgetToPluginL()
// -----------------------------------------------------------------------------
//
-TInt CXnViewManager::LoadWidgetToPluginL( CHsContentInfo& aContentInfo,
+TInt CXnViewManager::LoadWidgetToPluginL( const CHsContentInfo& aContentInfo,
CXnPluginData& aPluginData )
{
// Plugin must not have widget when about to add
@@ -494,10 +522,18 @@
TInt CXnViewManager::UnloadWidgetFromPluginL( CXnPluginData& aPluginData,
TBool aForce )
{
- if ( !aForce && !aPluginData.Occupied() )
+ if ( !aForce )
{
- // Plugin must have widget when about to remove
- return KErrNotFound;
+ if( !aPluginData.Occupied() )
+ {
+ // Plugin must have widget when about to remove
+ return KErrNotFound;
+ }
+ if ( !aPluginData.Removable() )
+ {
+ // Not allowed to remove locked
+ return KErrArgument;
+ }
}
CXnViewData& viewData(
@@ -566,18 +602,13 @@
// CXnViewManager::ReplaceWidgetToPluginL
// -----------------------------------------------------------------------------
//
-TInt CXnViewManager::ReplaceWidgetToPluginL( CHsContentInfo& aContentInfo,
- CXnPluginData& aPluginData, TBool aUseHsps )
+TInt CXnViewManager::ReplaceWidgetToPluginL( const CHsContentInfo& aContentInfo,
+ CXnPluginData& aPluginData )
{
TInt retval( KErrNone );
- // if aUseHsps is false, the plugin was already replaced by
- // another process
- if( aUseHsps )
- {
- retval = iHspsWrapper->ReplacePluginL( aPluginData.PluginId(),
+ retval = iHspsWrapper->ReplacePluginL( aPluginData.PluginId(),
aContentInfo.Uid() );
- }
if ( retval == KErrNone )
{
@@ -745,6 +776,41 @@
}
// -----------------------------------------------------------------------------
+// CXnViewManager::PluginDataL()
+// Returns list of plugins from all views or from the defined view
+// -----------------------------------------------------------------------------
+//
+TInt CXnViewManager::PluginDataL( const TDesC8& aViewId,
+ RPointerArray< CXnPluginData >& aList ) const
+ {
+ TInt err( KErrNone );
+ TBool found( EFalse );
+
+ RPointerArray< CXnPluginData >& views( iRootData->PluginData() );
+
+ for ( TInt i = 0; i < views.Count(); i++ )
+ {
+ if ( !aViewId.Length() || views[i]->PluginId().Compare( aViewId ) == 0 )
+ {
+ found = ETrue;
+ RPointerArray< CXnPluginData >& plugins( views[i]->PluginData() );
+
+ for ( TInt j = 0; j < plugins.Count(); j++ )
+ {
+ aList.AppendL( plugins[ j ] );
+ }
+ }
+ }
+ if ( !found )
+ {
+ // View not found
+ err = KErrArgument;
+ }
+
+ return err;
+ }
+
+// -----------------------------------------------------------------------------
// CXnViewManager::Resources()
// Finds the resources from the active view data
// -----------------------------------------------------------------------------
@@ -894,7 +960,7 @@
// Adds a new view based on info
// -----------------------------------------------------------------------------
//
-TInt CXnViewManager::AddViewL( CHsContentInfo& aInfo )
+TInt CXnViewManager::AddViewL( const CHsContentInfo& aInfo )
{
if ( iRootData->PluginData().Count() >= iRootData->MaxPages() )
{
@@ -1080,11 +1146,14 @@
{
if ( !view->Removable() )
{
- return retval;
+ return KErrArgument;
}
if ( view->Active() )
{
+ // Destroy publishers here, must be plugin shutdown
+ view->DestroyPublishers( EAiFwPluginShutdown );
+
// Activate the next view, or first if in the last view
CXnViewData& next( NextViewData() );
iAppUiAdapter.ViewAdapter().ActivateContainerL( next );
@@ -1155,10 +1224,13 @@
next.Load();
}
+ CXnViewData* view( static_cast< CXnViewData* >( views[ index ] ) );
+
+ // Destroy publishers here, must be plugin shutdown
+ view->DestroyPublishers( EAiFwPluginShutdown );
+
iAppUiAdapter.ViewAdapter().ActivateContainerL( next );
-
- CXnViewData* view( static_cast< CXnViewData* >( views[ index ] ) );
-
+
// Remove wallpaper from cache
iAppUiAdapter.ViewAdapter().BgManager().DeleteWallpaper( *view );
@@ -1214,7 +1286,7 @@
return KErrArgument;
}
- if ( iRootData->PluginUid().Compare( aPluginUid ) == 0 )
+ if ( iRootData->PluginUid().CompareF( aPluginUid ) == 0 )
{
// Nothing to do
return KErrNone;
@@ -1327,9 +1399,6 @@
// Cache update is needed after view activation
UpdateCachesL();
-
- // Schedule remainngs views load
- iRootData->LoadRemainingViews();
}
NotifyViewActivatedL( aViewToActivate );
--- a/idlehomescreen/xmluirendering/uiengine/src/xnwidgetextensionadapter.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/idlehomescreen/xmluirendering/uiengine/src/xnwidgetextensionadapter.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -46,6 +46,9 @@
#include "xnviewdata.h"
#include "xnplugindata.h"
+#include <gfxtranseffect/gfxtranseffect.h>
+#include <akntransitionutils.h>
+
// Constants
_LIT8( KPopup, "popup" );
_LIT8( KPositionHint, "_s60-position-hint" );
@@ -81,8 +84,12 @@
{
if ( iAppUiAdapter )
{
- iAppUiAdapter->UiStateListener().RemoveObserver( *this );
+ iAppUiAdapter->UiStateListener().RemoveObserver(
+ *( static_cast< MXnUiStateObserver* >( this ) ) );
+ iAppUiAdapter->UiStateListener().RemoveObserver(
+ *( static_cast< MXnUiResourceChangeObserver* >( this ) ) );
}
+ GfxTransEffect::Deregister( this );
}
// -----------------------------------------------------------------------------
@@ -112,10 +119,14 @@
// we have to decide which one of them is the recent one
CXnType* typeInfo = iNode.Node().Type();
+ User::LeaveIfNull( typeInfo );
const TDesC8& type = typeInfo->Type();
+
+ iPermanent = EFalse;
if ( type == KPopup )
{
+ iPopup = ETrue;
CXnProperty* prop( iNode.Node().GetPropertyL(
XnPropertyNames::popup::KPopupType ) );
@@ -136,7 +147,9 @@
iUiEngine = iNode.Node().UiEngine();
CXnControlAdapter::ConstructL( iNode );
- EnableDragEvents();
+ EnableDragEvents();
+
+ GfxTransEffect::Register( this, KGfxPreviewPopupControlUid );
}
// -----------------------------------------------------------------------------
@@ -145,46 +158,48 @@
// -----------------------------------------------------------------------------
//
void CXnWidgetExtensionAdapter::MakeVisible( TBool aVisible )
- {
- TBool visible( IsVisible() ? ETrue : EFalse );
+ {
+ if ( IsVisible() == aVisible )
+ {
+ return;
+ }
- if ( visible == aVisible )
+ CXnPluginData* plugin(
+ iAppUiAdapter->ViewManager().ActiveViewData().Plugin( &iNode.Node() ) );
+
+ if ( !plugin )
{
return;
}
SetPointerCapture( aVisible );
-
- CXnPluginData& plugin(
- iAppUiAdapter->ViewManager().ActiveViewData().Plugin( &iNode.Node() ) );
- plugin.SetIsDisplayingPopup( aVisible, &iNode.Node() );
+ plugin->SetIsDisplayingPopup( aVisible, &iNode.Node() );
- CXnType* typeInfo = iNode.Node().Type();
- const TDesC8& type = typeInfo->Type();
-
- TBool popup( type == KPopup );
-
- if ( !popup )
+ if ( !iPopup )
{
DrawableWindow()->FadeBehind( aVisible );
}
- else
+
+ if ( !iPermanent )
{
- if ( !iPermanent )
+ if ( aVisible )
{
- if ( aVisible )
- {
- iAppUiAdapter->UiStateListener().AddObserver( *this );
- }
- else
- {
- iAppUiAdapter->UiStateListener().RemoveObserver( *this );
- }
+ iAppUiAdapter->UiStateListener().AddObserver(
+ *( static_cast< MXnUiStateObserver* >( this ) ) );
+ iAppUiAdapter->UiStateListener().AddObserver(
+ *( static_cast< MXnUiResourceChangeObserver* >( this ) ) );
+ }
+ else
+ {
+ iAppUiAdapter->UiStateListener().RemoveObserver(
+ *( static_cast< MXnUiStateObserver* >( this ) ) );
+ iAppUiAdapter->UiStateListener().RemoveObserver(
+ *( static_cast< MXnUiResourceChangeObserver* >( this ) ) );
}
}
- if ( aVisible && popup )
+ if ( aVisible && iPopup )
{
// read position-hint property and set-up its variable
CXnProperty* positionHintProp = NULL;
@@ -240,7 +255,27 @@
}
}
- CCoeControl::MakeVisible( aVisible );
+ TBool effectStarted = EFalse;
+ if ( iAppUiAdapter->IsForeground() )
+ {
+ if ( aVisible )
+ {
+ GfxTransEffect::Begin( this, KGfxControlAppearAction );
+ }
+ else
+ {
+ GfxTransEffect::Begin( this, KGfxControlDisappearAction );
+ }
+ effectStarted = ETrue;
+ }
+
+ CCoeControl::MakeVisible( aVisible );
+
+ if ( effectStarted )
+ {
+ GfxTransEffect::SetDemarcation( this, iPosition );
+ GfxTransEffect::End( this );
+ }
}
// -----------------------------------------------------------------------------
@@ -250,14 +285,12 @@
//
void CXnWidgetExtensionAdapter::HandlePointerEventL(
const TPointerEvent& aPointerEvent )
- {
- CXnType* typeInfo = iNode.Node().Type();
- const TDesC8& type = typeInfo->Type();
+ {
// in case of popup, we have to make sure that
// it will be closed after tapping outside of the
// area of itself and its parent
- if ( type == KPopup )
+ if ( iPopup )
{
// check if the tap was inside of popup
TRect popupRect = this->Rect();
@@ -555,10 +588,17 @@
void CXnWidgetExtensionAdapter::NotifyForegroundChanged(
TForegroundStatus aStatus )
{
- if ( aStatus != EForeground )
+ if ( iPopup && aStatus != EForeground )
{
TRAP_IGNORE( HidePopupL() );
- }
+ }
+ else if ( !iPopup && aStatus == EForeground )
+ {
+ if ( !DrawableWindow()->IsFaded() )
+ {
+ DrawableWindow()->FadeBehind( ETrue );
+ }
+ }
}
// -----------------------------------------------------------------------------
@@ -605,4 +645,32 @@
}
}
+// -----------------------------------------------------------------------------
+// CXnWidgetExtensionAdapter::NotifyStatusPaneSizeChanged
+//
+// -----------------------------------------------------------------------------
+//
+void CXnWidgetExtensionAdapter::NotifyStatusPaneSizeChanged()
+ {
+ }
+
+// -----------------------------------------------------------------------------
+// CXnWidgetExtensionAdapter::NotifyResourceChanged
+//
+// -----------------------------------------------------------------------------
+//
+void CXnWidgetExtensionAdapter::NotifyResourceChanged( TInt aType )
+ {
+
+ // if type is widget extension and fade has changed
+ // we have to always fade main window
+ if ( !iPopup && aType == KEikMessageWindowsFadeChange )
+ {
+ if ( !DrawableWindow()->IsFaded() )
+ {
+ DrawableWindow()->FadeBehind( ETrue );
+ }
+ }
+ }
+
// End of File
--- a/menufw/menufwui/matrixmenu/group/matrixmenu.mmp Fri Feb 19 22:42:37 2010 +0200
+++ b/menufw/menufwui/matrixmenu/group/matrixmenu.mmp Fri Mar 12 15:41:49 2010 +0200
@@ -21,8 +21,6 @@
#include <data_caging_paths.hrh>
#include "../inc/mmguiuid.hrh"
-epocheapsize 1800000 4500000
-
TARGET matrixmenu.exe
TARGETTYPE exe
UID 0x100039CE _MATRIX_UID3
@@ -88,6 +86,7 @@
LIBRARY aknskins.lib
LIBRARY aknskinsrv.lib
LIBRARY aknswallpaperutils.lib
+LIBRARY MemMan.lib
#ifdef _MATRIX_MENU_TRACE_PERFORMANCE
LIBRARY flogger.lib
--- a/menufw/menufwui/matrixmenu/src/mmgui.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/menufw/menufwui/matrixmenu/src/mmgui.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -17,6 +17,7 @@
// INCLUDE FILES
+#include <mw/memorymanager.h>
#include <eikstart.h>
#include "mmapplication.h"
@@ -37,5 +38,8 @@
//
GLDEF_C TInt E32Main()
{
- return EikStart::RunApplication( NewApplication );
+ RAllocator* iAllocator = MemoryManager::SwitchToFastAllocator();
+ TInt err = EikStart::RunApplication( NewApplication );
+ MemoryManager::CloseFastAllocator(iAllocator);
+ return err;
}
--- a/menufw/menufwui/mmwidgets/src/mmwidgetcontainer.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/menufw/menufwui/mmwidgets/src/mmwidgetcontainer.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -12,7 +12,7 @@
* Contributors:
*
* Description:
-* Version : %version: MM_71.1.17.1.55 % << Don't touch! Updated by Synergy at check-out.
+* Version : %version: MM_71.1.17.1.56 % << Don't touch! Updated by Synergy at check-out.
*
*/
@@ -233,7 +233,12 @@
templateLibrary->CleanAndClearCache();
}
+ TBool highlightVisibleBefore = iWidget->IsVisible() && IsHighlightVisible();
CCoeControl::HandleResourceChange( aType );
+ if ( highlightVisibleBefore )
+ {
+ SetHighlightVisibilityL( ETrue );
+ }
if ( aType == KEikDynamicLayoutVariantSwitch && !IsHighlightVisible() )
{
@@ -1185,6 +1190,8 @@
numberOfItemsBefore = GetMmModel()->NumberOfItems();
GetMmModel()->SetSuiteModelL( aModel );
+
+ TBool highlightVisibleBefore = iWidget->IsVisible() && IsHighlightVisible();
// This needs to be in place (disabling redraw)
// to udpate widget internal state, however to wait for
@@ -1203,6 +1210,11 @@
SetupWidgetLayoutL();
}
iWidget->MakeVisible(ETrue);
+
+ if ( highlightVisibleBefore )
+ {
+ SetHighlightVisibilityL( ETrue );
+ }
Widget()->View()->ItemDrawer()->ClearFlags(
CListItemDrawer::EPressedDownState );
--- a/menufw/menusuites/foldersuite/data/matrixmenudata.xml Fri Feb 19 22:42:37 2010 +0200
+++ b/menufw/menusuites/foldersuite/data/matrixmenudata.xml Fri Mar 12 15:41:49 2010 +0200
@@ -18,7 +18,7 @@
<!--Contacts application-->
<menu:application uid="0x101F4CCE"/>
<!-- Music Player (MusicPlayer)-->
- <menu:application uid="0x102072C3"/>
+ <menu:application uid="0x102072C3"/>
<!--Internet folder-->
<!-- now using qgnmenugroupweb available in skin -->
<menu:folder title_name="&qtn_apps_browserng_title;"
@@ -126,13 +126,13 @@
<menu:application uid="0x100058EC"
view="0x10283321"
long_name="Installations"/>
-
+
<menu:shortcut uid="0x99999999"
long_name="New message"
- icon_file="z:\resource\apps\matrixmenudata.mif"
- icon_id="16392"
- mask_id="16393"
- icon_skin_minor_id="0x1327"
+ icon_file="aimcsplugin.mif"
+ icon_id="16406"
+ mask_id="16407"
+ icon_skin_minor_id="0x2056"
icon_skin_major_id="0x101F86E3"
param="messaging:msg"/>
@@ -141,15 +141,15 @@
icon_file="aimcsplugin.mif"
icon_id="16388"
mask_id="16389"
- icon_skin_minor_id=""
- icon_skin_major_id=""
+ icon_skin_minor_id="0x2058"
+ icon_skin_major_id="0x101F86E3"
param="messaging:seltype"/>
<menu:shortcut uid="0x99999997"
long_name="New email"
icon_file="aimcsplugin.mif"
- icon_id="16388"
- mask_id="16389"
+ icon_id="16402"
+ mask_id="16403"
icon_skin_minor_id=""
icon_skin_major_id=""
param="messaging:email"/>
@@ -159,24 +159,24 @@
icon_file="aimcsplugin.mif"
icon_id="16390"
mask_id="16391"
- icon_skin_minor_id=""
- icon_skin_major_id=""
+ icon_skin_minor_id="0x205a"
+ icon_skin_major_id="0x101F86E3"
param="messaging:syncmlmail"/>
<menu:shortcut uid="0x99999995"
long_name="New postcard"
icon_file="aimcsplugin.mif"
- icon_id="16388"
- mask_id="16389"
- icon_skin_minor_id=""
- icon_skin_major_id=""
+ icon_id="16400"
+ mask_id="16401"
+ icon_skin_minor_id="0x2057"
+ icon_skin_major_id="0x101F86E3"
param="messaging:postcard"/>
<menu:shortcut uid="0x99999994"
long_name="New audio message"
icon_file="aimcsplugin.mif"
- icon_id="16388"
- mask_id="16389"
+ icon_id="16404"
+ mask_id="16405"
icon_skin_minor_id=""
icon_skin_major_id=""
param="messaging:audiomsg"/>
@@ -217,6 +217,8 @@
<!-- Menu Application Launcher -->
<menu:application uid="0x101F4CD2"/>
+ <!-- Themes Application Launcher -->
+ <menu:application uid="0x10005A32"/>
<!-- Photos Suite launcher -->
<menu:application uid="0x200104E4"/>
<!-- Video Suite launcher -->
--- a/taskswitcher/contextengine/tsfswpreviewprovider/inc/previewmsg.h Fri Feb 19 22:42:37 2010 +0200
+++ b/taskswitcher/contextengine/tsfswpreviewprovider/inc/previewmsg.h Fri Mar 12 15:41:49 2010 +0200
@@ -38,7 +38,9 @@
// From PreviewProvider ECOM plugin to PreviewProviderClient.
EPreviewReady,
EAckPreviewReady,
- EUnregisterReady
+ EUnregisterReady,
+ EBitmapRotationNeeded90,
+ EBitmapRotationNeeded270
};
}
--- a/taskswitcher/contextengine/tsfswpreviewprovider/inc/tspreviewobserver.h Fri Feb 19 22:42:37 2010 +0200
+++ b/taskswitcher/contextengine/tsfswpreviewprovider/inc/tspreviewobserver.h Fri Mar 12 15:41:49 2010 +0200
@@ -51,7 +51,17 @@
*
* @param aWgId Window group id of the application.
*/
- virtual void HandleFswPpApplicationUnregistered( TInt aWgId ) = 0;
+ virtual void HandleFswPpApplicationUnregistered( TInt aWgId ) = 0;
+
+ /**
+ * Called when screenshot for the application needs rotation. Client should
+ * rotate bitmap for the given aWgId by 90 degrees, otherwise it will be
+ * displayed incorrectly.
+ *
+ * @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, TBool aClockwise ) = 0;
};
#endif // TSPREVIEWOBSERVER_H
--- a/taskswitcher/contextengine/tsfswpreviewprovider/inc/tspropertylistener.h Fri Feb 19 22:42:37 2010 +0200
+++ b/taskswitcher/contextengine/tsfswpreviewprovider/inc/tspropertylistener.h Fri Mar 12 15:41:49 2010 +0200
@@ -30,7 +30,9 @@
{
EOperationNone,
EOperationUnregister,
- EOperationBitmapUpdated
+ EOperationBitmapUpdated,
+ EOperationBitmapRotation90,
+ EOperationBitmapRotation270
};
/**
--- a/taskswitcher/contextengine/tsfswpreviewprovider/src/tspreviewproviderclient.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/taskswitcher/contextengine/tsfswpreviewprovider/src/tspreviewproviderclient.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -205,6 +205,20 @@
SetProperties( handle, id, EOperationUnregister );
}
break;
+ case NPreviewMsg::EBitmapRotationNeeded90:
+ {
+ const TInt id = in.ReadInt32L();
+ const TInt handle = in.ReadInt32L();
+ SetProperties( handle, id, EOperationBitmapRotation90 );
+ }
+ break;
+ case NPreviewMsg::EBitmapRotationNeeded270:
+ {
+ const TInt id = in.ReadInt32L();
+ const TInt handle = in.ReadInt32L();
+ SetProperties( handle, id, EOperationBitmapRotation270 );
+ }
+ break;
}
TSLOG_OUT();
--- a/taskswitcher/contextengine/tsfswpreviewprovider/src/tspropertylistener.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/taskswitcher/contextengine/tsfswpreviewprovider/src/tspropertylistener.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -69,6 +69,16 @@
iObs.HandleFswPpApplicationChange( iWgId, iFbsBitmapId );
break;
}
+ case EOperationBitmapRotation90:
+ {
+ iObs.HandleFswPpApplicationBitmapRotation( iWgId, ETrue );
+ break;
+ }
+ case EOperationBitmapRotation270:
+ {
+ iObs.HandleFswPpApplicationBitmapRotation( iWgId, EFalse );
+ break;
+ }
default:
break;
}
--- a/taskswitcher/contextengine/tsfswpreviewprovider/wsplugin/inc/previewprovidercrp.h Fri Feb 19 22:42:37 2010 +0200
+++ b/taskswitcher/contextengine/tsfswpreviewprovider/wsplugin/inc/previewprovidercrp.h Fri Mar 12 15:41:49 2010 +0200
@@ -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.
@@ -171,6 +176,8 @@
TSize iScreenshotSize;
TDisplayMode iScreenshotMode;
RArray<TInt> iWgIds;
+ TTime iScreenChangedTime; // fix for orientation changed/wg group changed problem
+ TBool iClockwiseRot; // for marking rotation direction
};
#endif // PREVIEWPROVIDERCRP_H
--- a/taskswitcher/contextengine/tsfswpreviewprovider/wsplugin/src/previewprovidercrp.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/taskswitcher/contextengine/tsfswpreviewprovider/wsplugin/src/previewprovidercrp.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -33,6 +33,7 @@
// CONSTANTS
const TInt KImpId( 0x20016BEC );
+const TInt KMinTimeForOrientationSwitch = 1; // 1 second
// --------------------------------------------------------------------------
// CPreviewProviderCRP::CreateL
@@ -145,7 +146,9 @@
TSLOG_IN();
BaseConstructL( aEnv, aId, aOwner );
- aEnv.RegisterEventHandler( this, this, TWservCrEvent::EWindowGroupChanged );
+ aEnv.RegisterEventHandler( this, this, TWservCrEvent::EWindowGroupChanged |
+ TWservCrEvent::EDeviceOrientationChanged );
+ iScreenChangedTime = 0;
TSLOG_OUT();
}
@@ -165,11 +168,30 @@
if ( iWgIds.FindInOrder( iPrevId ) >= 0 ||
( iPrevId == 0 && iPrevReg != 0 ) )
{
- TRAP_IGNORE( ScreenshotL() );
+ TTime currTime;
+ currTime.HomeTime();
+ TTimeIntervalSeconds secondsFrom;
+ TInt err = currTime.SecondsFrom( iScreenChangedTime, secondsFrom );
+ if ( err != KErrNone || secondsFrom.Int() > KMinTimeForOrientationSwitch )
+ {
+ 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;
}
iPrevId = wgId;
}
+ else if ( aEvent.Type() == TWservCrEvent::EDeviceOrientationChanged )
+ {
+ iScreenChangedTime.HomeTime();
+ TRAP_IGNORE( ScreenshotL() );
+ }
TSLOG_OUT();
}
@@ -217,6 +239,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<TInt[sizeof(msg) / sizeof(TInt)]> buf(msg);
+ SendMessage(buf);
+
+ TSLOG_OUT();
+ }
+
+
// --------------------------------------------------------------------------
// CPreviewProviderCRP::Register
// --------------------------------------------------------------------------
@@ -300,6 +344,10 @@
{
iScreenshotSize = sz;
}
+
+ // Mark direction for possible rotation
+ iClockwiseRot = iScreenshotSize.iWidth > iScreenshotSize.iHeight;
+
// Use the the same DisplayMode as for the source image
// so override the display mode, ignoring any requests.
iScreenshotMode = screenConfig->DisplayMode();
--- a/taskswitcher/contextengine/tsfswserver/engine/group/tsfswengine.mmp Fri Feb 19 22:42:37 2010 +0200
+++ b/taskswitcher/contextengine/tsfswserver/engine/group/tsfswengine.mmp Fri Mar 12 15:41:49 2010 +0200
@@ -50,6 +50,7 @@
LIBRARY egul.lib
LIBRARY widgetregistryclient.lib
LIBRARY featmgr.lib
+LIBRARY bitmaptransforms.lib
LIBRARY tspreviewprovider.lib
LIBRARY tsfswutils.lib
--- a/taskswitcher/contextengine/tsfswserver/engine/inc/tsfswengine.h Fri Feb 19 22:42:37 2010 +0200
+++ b/taskswitcher/contextengine/tsfswserver/engine/inc/tsfswengine.h Fri Mar 12 15:41:49 2010 +0200
@@ -39,6 +39,8 @@
class CTsFswIconCache;
class CTsFastSwapPreviewProvider;
class CApaWindowGroupName;
+class CBitmapRotator;
+class CTsRotationTask;
// descriptor big enough to store hex repr of 32-bit integer plus 0x prefix
typedef TBuf<10> TAppUidHexString;
@@ -104,6 +106,15 @@
*/
IMPORT_C TUid ForegroundAppUidL( TInt aType );
+ /**
+ * Callback for rotation completion. Takes ownership of a given
+ * bitmap.
+ */
+ void RotationComplete( TInt aWgId,
+ CFbsBitmap* aBitmap,
+ CTsRotationTask* aCompletedTask,
+ TInt aError );
+
private:
// from CActive
void RunL();
@@ -122,6 +133,9 @@
// from MTsFastSwapPreviewObserver
void HandleFswPpApplicationChange( TInt aWgId, TInt aFbsHandle );
void HandleFswPpApplicationUnregistered( TInt aWgId );
+ void HandleFswPpApplicationBitmapRotation( TInt aWgId, TBool aClockwise );
+
+ void RotateL( CFbsBitmap& aBitmap, TInt aWgId, TBool aClockwise );
private:
/**
@@ -271,11 +285,10 @@
void PublishFgAppUidL();
/**
- * Helper function to publish something to CFW.
- * @param aType context type
- * @param aValue value to publish
+ * Close running widget
+ * @param aOffset - widget info offset
*/
- //void PublishContextL( const TDesC& aType, const TDesC& aValue );
+ void CloseWidgetL(TInt aOffset);
private: // data
MTsFswEngineObserver& iObserver;
@@ -316,8 +329,6 @@
// true if web widgets are supported by the system
TBool iWidgetsSupported;
- // wgid of widget appui is saved here
- TInt iWidgetAppUiWgId;
// PS property to listen for swi status changes
RProperty iSwiProp;
@@ -338,6 +349,30 @@
TAppUidHexString iFgAppUidStr;
TUid iFgAppUid;
+ // For rotating bitmaps
+ RPointerArray<CTsRotationTask> iRotaTasks;
+ };
+
+
+/**
+ * Listener for rotation complete event
+ */
+NONSHARABLE_CLASS( CTsRotationTask ) : public CActive
+ {
+public:
+ CTsRotationTask( CTsFswEngine& aEngine );
+ ~CTsRotationTask();
+ void StartLD( TInt aWgId,
+ CFbsBitmap* aBitmapHandle,
+ TBool aClockwise );
+private:
+ void RunL();
+ void DoCancel();
+private: // Data
+ CTsFswEngine& iEngine;
+ TInt iWgId;
+ CFbsBitmap* iBitmap; // owned for the duration of transformation
+ CBitmapRotator* iRotator; // owned
};
#endif
--- a/taskswitcher/contextengine/tsfswserver/engine/inc/tsfswidgetlist.h Fri Feb 19 22:42:37 2010 +0200
+++ b/taskswitcher/contextengine/tsfswserver/engine/inc/tsfswidgetlist.h Fri Mar 12 15:41:49 2010 +0200
@@ -22,8 +22,12 @@
#include <e32base.h>
#include <widgetregistryclient.h>
+_LIT(KWidgetAppName, "widgetlauncher.exe");
+
const TUint32 KWidgetAppUidValue = 0x10282822;
+const TInt KCloseWidgetCmd(2);
+
/**
* class handling the list of running wrt widgets
*/
--- a/taskswitcher/contextengine/tsfswserver/engine/src/tsfswengine.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/taskswitcher/contextengine/tsfswserver/engine/src/tsfswengine.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -29,7 +29,8 @@
#include <mmf/common/mmfcontrollerpluginresolver.h> // for CleanupResetAndDestroyPushL
#include <featmgr.h>
#include <swi/swispubsubdefs.h>
-
+#include <s32mem.h>
+#include <bitmaptransforms.h>
#include "enginelogging.h"
// time to wait before refreshing content
@@ -148,6 +149,12 @@
iAppArcSession.Close();
iWsSession.Close();
+ for ( TInt i = 0; i < iRotaTasks.Count(); i++ )
+ {
+ iRotaTasks[i]->Cancel();
+ delete iRotaTasks[i];
+ }
+ iRotaTasks.Close();
// delete iContextUtility;
}
@@ -206,36 +213,12 @@
TSLOG_CONTEXT( CloseAppL, TSLOG_LOCAL );
TSLOG1_IN( "aWgId = %d", aWgId );
- if ( iWidgetsSupported && aWgId < 0 && iWidgetAppUiWgId )
+ if( iWidgetsSupported && 0 > aWgId )
{
- // for widgets clients see a wgid that is -1*(index+1)
- const RWidgetInfoArray& arr( iWidgetList->RunningWidgets() );
- // convert aWgId to an index in the list of running widgets
- TInt idx = -aWgId - 1;
- // if index is valid then handle the widget specially
- if ( idx >= 0 && idx < arr.Count() )
- {
- TWsEvent event;
- event.SetType( EEventUser );
- TUint8* eventData = event.EventData();
- // Fill bits 0-31 with widget application uid.
- reinterpret_cast<TUint32&>( *eventData ) = KWidgetAppUidValue;
- eventData += sizeof( TUint32 );
- // Fill bits 32-63 with uid of the widget that should be closed.
- reinterpret_cast<TUint32&>( *eventData ) = arr[idx]->iUid.iUid;
- // Send the event to Widget AppUi.
- iEnv->WsSession().SendEventToWindowGroup(
- iWidgetAppUiWgId, event );
- // closing a widget may not cause a window group change so trigger
- // the update manually
- UpdateTaskList();
- TSLOG0_OUT( "widget processing finished" );
- return;
- }
+ // convert aWgId to an index in the list of running widgets and close widget
+ CloseWidgetL( -aWgId -1 );
}
-
- TUid appUid = AppUidForWgIdL( aWgId );
- if ( !iAlwaysShownAppList->IsAlwaysShownApp( appUid ) )
+ else if( !iAlwaysShownAppList->IsAlwaysShownApp( AppUidForWgIdL( aWgId ) ) )
{
// send window group event to kill the app
TWsEvent event;
@@ -244,7 +227,6 @@
iEnv->WsSession().SendEventToWindowGroup( aWgId, event );
TSLOG0( TSLOG_INFO, "event sent to wg" );
}
-
TSLOG_OUT();
}
@@ -460,33 +442,24 @@
{
continue;
}
-
+
// get window group name
TInt wgId = allWgIds[i].iId;
CApaWindowGroupName* windowName =
CApaWindowGroupName::NewLC( iWsSession, wgId );
TUid appUid = windowName->AppUid();
-
+
// ignore entries with null uid
if ( !appUid.iUid )
{
CleanupStack::PopAndDestroy( windowName );
continue;
}
-
+
// will append the task to our own list only if it is not hidden
TBool onHiddenList = iHiddenAppList->IsHiddenL(
appUid, iWsSession, wgId );
- // if this is the widget app then save wgid for later use
- // and ignore it, but include running widgets instead
- if ( iWidgetsSupported && appUid.iUid == KWidgetAppUidValue )
- {
- iWidgetAppUiWgId = wgId;
- onHiddenList = ETrue;
- CheckWidgetsL( newList );
- }
-
// get screen number (-1=console, 0=main screen, 1=cover ui)
TInt appScreen = 0;
TInt scrNumErr = iAppArcSession.GetDefaultScreenNumber( appScreen, appUid );
@@ -502,9 +475,15 @@
windowName->Hidden(), onHiddenList, mustShow, appScreen );
#endif
+ // if this is the widget app then save wgid for later use
+ // and ignore it, but include running widgets instead
+ if ( iWidgetsSupported && appUid.iUid == KWidgetAppUidValue )
+ {
+ changed = ETrue;
+ }
// add item to task list if it is always-shown OR it is not hidden
// and it is not on cover ui
- if ( mustShow
+ else if ( mustShow
|| ( !onHiddenList
&& !windowName->Hidden()
&& ( appScreen == 0 || appScreen == -1 )
@@ -517,8 +496,9 @@
}
CleanupStack::PopAndDestroy( windowName );
}
- CleanupStack::PopAndDestroy( &allWgIds );
-
+ CleanupStack::PopAndDestroy( &allWgIds );
+ CheckWidgetsL(newList);
+
// if counts for old and new lists do not match then there is a change for sure,
// probably an app has been closed
if ( iData.Count() != newList.Count() )
@@ -628,15 +608,19 @@
//
void CTsFswEngine::CheckWidgetsL( RTsFswArray& aNewList )
{
- if ( iWidgetsSupported )
+ if( iWidgetsSupported )
{
iWidgetList->InitializeWidgetListL();
const RWidgetInfoArray& arr( iWidgetList->RunningWidgets() );
for ( TInt i = 0, ie = arr.Count(); i != ie; ++i )
{
- // wgid will be a special negative value
- // windowgroupname is not needed here so pass NULL
- AddEntryL( -(i+1), arr[i]->iUid, 0, aNewList, ETrue );
+ //verify if widget is working in full screen mode
+ if( arr[i]->iFileSize )
+ {
+ // wgid will be a special negative value
+ // windowgroupname is not needed here so pass NULL
+ AddEntryL( -(i+1), arr[i]->iUid, 0, aNewList, ETrue );
+ }
}
}
}
@@ -697,16 +681,16 @@
//
TInt CTsFswEngine::FindMostTopParentWgId( TInt aWgId )
{
- TInt parent( KErrNotFound );
- parent = FindParentWgId( aWgId );
- if( parent != KErrNotFound)
- {
- TInt topParent = FindMostTopParentWgId(parent);
- if( topParent != KErrNotFound )
- {
- parent = topParent;
- }
- }
+ TInt parent( KErrNotFound );
+ parent = FindParentWgId( aWgId );
+ if( parent != KErrNotFound)
+ {
+ TInt topParent = FindMostTopParentWgId(parent);
+ if( topParent != KErrNotFound )
+ {
+ parent = topParent;
+ }
+ }
return parent;
}
@@ -918,6 +902,94 @@
}
// --------------------------------------------------------------------------
+// CTsFswEngine::HandleFswPpApplicationBitmapRotation
+// Callback from CTsFastSwapPreviewProvider
+// --------------------------------------------------------------------------
+//
+void CTsFswEngine::HandleFswPpApplicationBitmapRotation( TInt aWgId, TBool aClockwise )
+ {
+ TSLOG_CONTEXT( HandleFswPpApplicationBitmapRotation, TSLOG_LOCAL );
+ TSLOG1_IN( "aWgId = %d", aWgId );
+
+ CFbsBitmap** bmp = iScreenshots.Find( aWgId );
+ if ( bmp )
+ {
+ // Rotate bitmap
+ TRAP_IGNORE( RotateL( **bmp, aWgId, aClockwise ) );
+ // Bitmap in a array is invalid, remove it
+ delete *bmp;
+ iScreenshots.Remove( aWgId );
+ AssignScreenshotHandle( aWgId, 0 );
+ }
+
+ TSLOG_OUT();
+ }
+
+
+// --------------------------------------------------------------------------
+// CTsFswEngine::RotateL
+// Callback from CTsFastSwapPreviewProvider
+// --------------------------------------------------------------------------
+//
+void CTsFswEngine::RotateL( CFbsBitmap& aBitmap, TInt aWgId, TBool aClockwise )
+ {
+ CFbsBitmap* rotaBitmap = new (ELeave) CFbsBitmap;
+ CleanupStack::PushL( rotaBitmap );
+ User::LeaveIfError( rotaBitmap->Duplicate( aBitmap.Handle() ) );
+ CTsRotationTask* rotaTask = new (ELeave) CTsRotationTask( *this );
+ CleanupStack::PushL( rotaTask );
+ User::LeaveIfError( iRotaTasks.Append( rotaTask ) );
+ rotaTask->StartLD( aWgId, rotaBitmap, aClockwise ); // ownership transferred
+ CleanupStack::Pop( rotaTask );
+ CleanupStack::Pop( rotaBitmap );
+ }
+
+
+// --------------------------------------------------------------------------
+// CTsFswEngine::RotationComplete
+// Callback from CTsFastSwapPreviewProvider
+// --------------------------------------------------------------------------
+//
+void CTsFswEngine::RotationComplete( TInt aWgId,
+ CFbsBitmap* aBitmap,
+ CTsRotationTask* aCompletedTask,
+ TInt aError )
+ {
+ TSLOG_CONTEXT( RotationComplete, TSLOG_LOCAL );
+ TSLOG_IN();
+
+ TSLOG1( TSLOG_INFO, "---> rotation completed with status: %d", aError );
+ TInt idx = iRotaTasks.Find( aCompletedTask );
+ if ( idx != KErrNotFound )
+ {
+ // Update task list
+ iRotaTasks.Remove(idx);
+ }
+
+ if ( aError == KErrNone )
+ {
+ if ( iScreenshots.Insert( aWgId, aBitmap ) != KErrNone )
+ {
+ delete aBitmap;
+ iScreenshots.Remove( aWgId );
+ AssignScreenshotHandle( aWgId, 0 );
+ }
+ else
+ {
+ AssignScreenshotHandle( aWgId, aBitmap->Handle() );
+ }
+ }
+ else
+ {
+ // Rotation failed, cleanup bitmap
+ delete aBitmap;
+ }
+
+ TSLOG_OUT();
+ }
+
+
+// --------------------------------------------------------------------------
// CTsFswEngine::AssignScreenshotHandle
// Called when a screenshot arrives to check if there is a corresponding
// application in the task list. Firstly try to match screenshot into parental
@@ -1080,5 +1152,119 @@
EColor64K ); // displaymode is ignored
}
+// --------------------------------------------------------------------------
+// CTsFswEngine::CloseWidgetL
+// --------------------------------------------------------------------------
+//
+void CTsFswEngine::CloseWidgetL(TInt aOffset )
+ {
+ TSLOG_CONTEXT( CloseWidgetL, TSLOG_LOCAL );
+ TSLOG1_IN( "aOffset = %d", aOffset );
+ if( iWidgetList->RunningWidgets().Count() <= aOffset )
+ {
+ User::Leave(KErrArgument);
+ }
+ const CWidgetInfo* widgetInfo(iWidgetList->RunningWidgets()[aOffset]);
+ const TPtrC bundleName(*widgetInfo->iBundleName);
+ RApaLsSession ls;
+ User::LeaveIfError( ls.Connect() );
+ CleanupClosePushL( ls );
+ CApaCommandLine* const cmdLine = CApaCommandLine::NewLC();
+
+ HBufC8* const
+ opaque( HBufC8::NewLC( bundleName.Size() + 3 * sizeof( TUint32 ) ) );
+ TPtr8 des ( opaque->Des() );
+ RDesWriteStream stream;
+ stream.Open( des );
+ CleanupClosePushL( stream );
+ stream.WriteUint32L ( widgetInfo->iUid.iUid );
+ stream.WriteUint32L ( bundleName.Length() );
+ stream.WriteL ( reinterpret_cast< const TUint8* >( bundleName.Ptr() ), bundleName.Size());
+ stream.WriteInt32L ( KCloseWidgetCmd );
+ CleanupStack::PopAndDestroy( &stream );
+ cmdLine->SetCommandL( EApaCommandBackgroundAndWithoutViews );
+ cmdLine->SetOpaqueDataL( *opaque );
+ CleanupStack::PopAndDestroy( opaque );
+ cmdLine->SetExecutableNameL( KWidgetAppName );
+ ls.StartApp( *cmdLine );
+ CleanupStack::PopAndDestroy( cmdLine );
+ CleanupStack::PopAndDestroy( &ls );
+ TSLOG_OUT();
+ }
+
+
+
+// --------------------------------------------------------------------------
+// CTsRotationListener::CTsRotationListener
+// --------------------------------------------------------------------------
+//
+CTsRotationTask::CTsRotationTask(CTsFswEngine& aEngine )
+: CActive(EPriorityStandard),
+ iEngine(aEngine)
+ {
+ CActiveScheduler::Add( this );
+ }
+
+
+// --------------------------------------------------------------------------
+// CTsRotationListener::~CTsRotationListener
+// --------------------------------------------------------------------------
+//
+CTsRotationTask::~CTsRotationTask()
+ {
+ Cancel();
+ delete iRotator;
+ delete iBitmap;
+ }
+
+
+// --------------------------------------------------------------------------
+// CTsRotationListener::Start
+// --------------------------------------------------------------------------
+//
+void CTsRotationTask::StartLD( TInt aWgId,
+ CFbsBitmap* aBitmap,
+ TBool aClockwise )
+ {
+ TSLOG_CONTEXT( StartLD, TSLOG_LOCAL );
+ TSLOG_IN();
+
+ iWgId = aWgId;
+ iBitmap = aBitmap;
+ iRotator = CBitmapRotator::NewL();
+ if ( aClockwise )
+ {
+ iRotator->Rotate(&iStatus, *iBitmap, CBitmapRotator::ERotation90DegreesClockwise);
+ }
+ else
+ {
+ iRotator->Rotate(&iStatus, *iBitmap, CBitmapRotator::ERotation270DegreesClockwise);
+ }
+ SetActive();
+
+ TSLOG_OUT();
+ }
+
+
+// --------------------------------------------------------------------------
+// CTsRotationListener::RunL
+// --------------------------------------------------------------------------
+//
+void CTsRotationTask::RunL()
+ {
+ iEngine.RotationComplete( iWgId, iBitmap, this, iStatus.Int() ); // bitmap ownership transferred
+ iBitmap = NULL;
+ delete this;
+ }
+
+
+// --------------------------------------------------------------------------
+// CTsRotationListener::DoCancel
+// --------------------------------------------------------------------------
+//
+void CTsRotationTask::DoCancel()
+ {
+ iRotator->Cancel();
+ }
// end of file
--- a/taskswitcher/contextengine/tsfswserver/engine/src/tsfswidgetlist.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/taskswitcher/contextengine/tsfswserver/engine/src/tsfswidgetlist.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -67,6 +67,12 @@
User::LeaveIfError( iWidgetRegistryClientSession.Connect() );
CleanupStack::PushL( TCleanupItem( CleanupConnect, this) );
iWidgetRegistryClientSession.RunningWidgetsL(iRunningWidgets);
+ //modify useless file size information with mode flag
+ for ( TInt i(iRunningWidgets.Count() - 1); 0 <= i; --i )
+ {
+ iRunningWidgets[i]->iFileSize =
+ iWidgetRegistryClientSession.IsWidgetInFullView(iRunningWidgets[i]->iUid);
+ }
CleanupStack::Pop(); // clean WidgetRegistryClientSession item
iWidgetRegistryClientSession.Disconnect();
}
--- a/taskswitcher/taskswitcherui/taskswitcherapp/inc/tseventcontroler.h Fri Feb 19 22:42:37 2010 +0200
+++ b/taskswitcher/taskswitcherui/taskswitcherapp/inc/tseventcontroler.h Fri Mar 12 15:41:49 2010 +0200
@@ -152,6 +152,11 @@
TBool aLandscape);
/**
+ * Returns ETrue if avkon physics is running, EFalse if not.
+ */
+ TBool IsPhysicsRunning();
+
+ /**
* Stops currently ongoing animation
*/
void StopAnimation();
--- a/taskswitcher/taskswitcherui/taskswitcherapp/inc/tsfastswaparea.h Fri Feb 19 22:42:37 2010 +0200
+++ b/taskswitcher/taskswitcherui/taskswitcherapp/inc/tsfastswaparea.h Fri Mar 12 15:41:49 2010 +0200
@@ -155,6 +155,12 @@
* Handling short/long app key.
*/
void HandleAppKey(TInt aType);
+
+ /*
+ * Updates components visibility, used to switch off
+ * grid scrollbar visibility for transition effects
+ */
+ void UpdateComponentVisibility();
private:
--- a/taskswitcher/taskswitcherui/taskswitcherapp/inc/tsphysicsengine.h Fri Feb 19 22:42:37 2010 +0200
+++ b/taskswitcher/taskswitcherui/taskswitcherapp/inc/tsphysicsengine.h Fri Mar 12 15:41:49 2010 +0200
@@ -71,10 +71,17 @@
void HandleDragEvent(AknTouchGestureFw::MAknTouchGestureFwDragEvent& aEvent);
/**
+ * Checks if the physics is running
*/
TBool IsRunning() const;
/**
+ * Checks if the physics is running drag
+ */
+ TBool IsDragging() const;
+
+ /**
+ * Stops physics
*/
void Stop();
--- a/taskswitcher/taskswitcherui/taskswitcherapp/src/tsappui.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/taskswitcher/taskswitcherui/taskswitcherapp/src/tsappui.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -247,7 +247,7 @@
TBool /*aLayers*/,
TUint aSubCom )
{
- this->RequestPopUpL();
+ TRAP_IGNORE( RequestPopUpL() );
const TDesC8* ptr = reinterpret_cast<const TDesC8*>(iAppView);
GfxTransEffect::Abort(iAppView);
GfxTransEffect::Begin( iAppView, aTranstionId );
@@ -268,11 +268,7 @@
void CTsAppUi::TransitionFinished(const CCoeControl* /*aControl*/,
TUint /*aAction*/)
{
- DisablePopUpL();
- /*if( aControl == iAppView )
- {
- @TODO IMPLEMENT
- }*/
+ TRAP_IGNORE( DisablePopUpL() );
}
// -----------------------------------------------------------------------------
--- a/taskswitcher/taskswitcherui/taskswitcherapp/src/tsappview.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/taskswitcher/taskswitcherui/taskswitcherapp/src/tsappview.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -484,6 +484,7 @@
MakeVisible( ETrue );
}
+ iFastSwapArea->UpdateComponentVisibility();
DrawDeferred();
TSLOG_OUT();
@@ -661,6 +662,7 @@
//
void CTsAppView::MoveOffset(const TPoint& aOffset)
{
+ DrawDeferred();
iFastSwapArea->MoveOffset(aOffset);
}
--- a/taskswitcher/taskswitcherui/taskswitcherapp/src/tseventcontroler.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/taskswitcher/taskswitcherui/taskswitcherapp/src/tseventcontroler.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -112,9 +112,14 @@
}
else if(EAknTouchGestureFwTap == aEvent.Type())
{
- if( iPhysicsHelper->IsRunning())
+ if( IsPhysicsRunning() )
{
+ TBool forwardTap = iPhysicsHelper->IsDragging();
iPhysicsHelper->Stop();
+ if ( forwardTap )
+ {
+ iObserver.TapL(aEvent.Position());
+ }
}
else
{
@@ -183,6 +188,15 @@
}
// -----------------------------------------------------------------------------
+// IsPhysicsRunning
+// -----------------------------------------------------------------------------
+//
+TBool CTsEventControler::IsPhysicsRunning()
+ {
+ return iPhysicsHelper->IsRunning();
+ }
+
+// -----------------------------------------------------------------------------
// StopAnimation
// -----------------------------------------------------------------------------
//
--- a/taskswitcher/taskswitcherui/taskswitcherapp/src/tsfastswaparea.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/taskswitcher/taskswitcherui/taskswitcherapp/src/tsfastswaparea.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -68,7 +68,7 @@
const TInt KRedrawTime = 250000; // 0.25 sec
const TInt KRedrawTimeForLayoutSwitch = 700000; // 0.7 sec
const TInt KHighlighActivationTime = 100000; // 100 ms
-const TInt KUpdateGridTime = 1000000; // 1 s
+const TInt KUpdateGridTime = 0; // imediately
const TInt KMaxGranularity = 4;
@@ -206,27 +206,16 @@
AknLayoutScalable_Apps::cell_tport_appsw_pane_ParamLimits( variety );
TPoint empty( ELayoutEmpty, ELayoutEmpty );
+ // Setup bitmap layout
AknListBoxLayouts::SetupFormGfxCell( *iGrid, iGrid->ItemDrawer(), 0,
AknLayoutScalable_Apps::cell_tport_appsw_pane_g1( variety ).LayoutLine(),
empty, empty );
// Setup text layout
- TAknLayoutText textLayout;
- textLayout.LayoutText(
- Rect(),
- AknLayoutScalable_Apps::cell_tport_appsw_pane_t1( variety ).LayoutLine() );
+ AknListBoxLayouts::SetupFormTextCell(*iGrid, iGrid->ItemDrawer(), 1,
+ AknLayoutScalable_Apps::cell_tport_appsw_pane_t1( variety ).LayoutLine(),
+ empty, empty);
- // Because textLayout.BaselineOffset() does not work (missing lib entry),
- // we need to calculate offset ourselves
- TInt baselineOffset = textLayout.TextRect().iBr.iY - textLayout.TextRect().iTl.iY;
- AknListBoxLayouts::SetupFormTextCell( *iGrid, iGrid->ItemDrawer(), 1 /*Column index*/,
- textLayout.Font() /*Font type*/,
- NULL /*color*/,
- textLayout.TextRect().iTl.iX /*Left margin*/, 0 /*unused*/,
- baselineOffset /*Baseline*/, 0 /*Text width*/,
- textLayout.Align() /*Text alignment*/,
- TPoint(0,0) /*Start pos*/,
- TPoint(0,0) /*End pos*/);
// Text colors
TRgb textColor;
AknsUtils::GetCachedColor( AknsUtils::SkinInstance(), textColor,
@@ -748,6 +737,9 @@
TSLOG_CONTEXT( CTsFastSwapArea::HandleSwitchToForegroundEvent, TSLOG_LOCAL );
TSLOG_IN();
+ // Reset grid
+ TRAP_IGNORE( ReCreateGridL() );
+
// get the current task list
HandleFswContentChanged();
// and then start listening for changes
@@ -1253,12 +1245,21 @@
if(visibleItem != SelectedIndex())
{
iGrid->SetCurrentDataIndex( visibleItem );
- DrawNow();
+ DrawDeferred();
}
}
- iUpdateGridTimer->Cancel();
- iUpdateGridTimer->After(aRedrawDelay);
+ // Check if view is outside of grid world
+ TPoint absViewPos = ViewPos();
+ absViewPos.iX -= Rect().Width() / 2;
+ if( !iEvtHandler.IsPhysicsRunning() &&
+ ( absViewPos.iX < 0 || absViewPos.iX + Rect().Width() > GridWorldSize().iWidth )
+ )
+ {
+ // View is outside of grid world - update view
+ iUpdateGridTimer->Cancel();
+ iUpdateGridTimer->After(aRedrawDelay);
+ }
}
// --------------------------------------------------------------------------
@@ -1363,7 +1364,7 @@
//
void CTsFastSwapArea::TapL(const TPoint& aPoint)
{
- if(iGrid->Rect().Contains(aPoint))
+ if(Rect().Contains(aPoint))
{
//provide tap pointer event to grid
iGrid->HandlePointerEventL(iTapEvent);
@@ -1623,4 +1624,20 @@
}
}
+
+// -----------------------------------------------------------------------------
+// CTsFastSwapArea::UpdateComponentVisibility
+// -----------------------------------------------------------------------------
+//
+void CTsFastSwapArea::UpdateComponentVisibility()
+ {
+ // Switch off scrollbars
+ CEikScrollBarFrame* scrollBar = iGrid->ScrollBarFrame();
+ if(scrollBar)
+ {
+ TRAP_IGNORE( scrollBar->SetScrollBarVisibilityL(CEikScrollBarFrame::EOff,
+ CEikScrollBarFrame::EOff));
+ }
+ }
+
// End of file
--- a/taskswitcher/taskswitcherui/taskswitcherapp/src/tsphysicsengine.cpp Fri Feb 19 22:42:37 2010 +0200
+++ b/taskswitcher/taskswitcherui/taskswitcherapp/src/tsphysicsengine.cpp Fri Mar 12 15:41:49 2010 +0200
@@ -86,6 +86,16 @@
return iPhysics->OngoingPhysicsAction() != CAknPhysics::EAknPhysicsActionNone;
}
+
+// -----------------------------------------------------------------------------
+// CTsPhysicsEngine::IsDragging
+// -----------------------------------------------------------------------------
+//
+TBool CTsPhysicsEngine::IsDragging() const
+ {
+ return iPhysics->OngoingPhysicsAction() == CAknPhysics::EAknPhysicsActionDragging;
+ }
+
// -----------------------------------------------------------------------------
// CTsPhysicsEngine::HandleDragEvent
// -----------------------------------------------------------------------------