--- a/fbs/fontandbitmapserver/bwins/FBSCLI2U.DEF Mon Jun 21 17:08:43 2010 +0300
+++ b/fbs/fontandbitmapserver/bwins/FBSCLI2U.DEF Thu Jul 15 20:08:02 2010 +0300
@@ -229,4 +229,19 @@
?CreateExtendedBitmap@CFbsBitmap@@QAEHABVTSize@@W4TDisplayMode@@VTUid@@PBXH@Z @ 228 NONAME ; int CFbsBitmap::CreateExtendedBitmap(class TSize const &, enum TDisplayMode, class TUid, void const *, int)
?UpdateLinkedTypeface@CFbsTypefaceStore@@QAEHABVCLinkedTypefaceSpecification@@@Z @ 229 NONAME ; int CFbsTypefaceStore::UpdateLinkedTypeface(class CLinkedTypefaceSpecification const &)
?GetExtraBuffer@CFbsBitmap@@SAPAVHBufC8@@H@Z @ 230 NONAME ; class HBufC8 * CFbsBitmap::GetExtraBuffer(int)
+ ?Rect@RFbsGlyphDataIterator@@QBEABVTRect@@XZ @ 231 NONAME ABSENT ; class TRect const & RFbsGlyphDataIterator::Rect(void) const
+ ?Image@RFbsGlyphDataIterator@@QBEABVRSgImage@@XZ @ 232 NONAME ABSENT ; class RSgImage const & RFbsGlyphDataIterator::Image(void) const
+ ??0RFbsGlyphMetricsArray@@QAE@XZ @ 233 NONAME ABSENT ; RFbsGlyphMetricsArray::RFbsGlyphMetricsArray(void)
+ ?Count@RFbsGlyphMetricsArray@@QBEHXZ @ 234 NONAME ABSENT ; int RFbsGlyphMetricsArray::Count(void) const
+ ?Next@RFbsGlyphDataIterator@@QAEHXZ @ 235 NONAME ABSENT ; int RFbsGlyphDataIterator::Next(void)
+ ?Metrics@RFbsGlyphDataIterator@@QBEABVTOpenFontCharMetrics@@XZ @ 236 NONAME ABSENT ; class TOpenFontCharMetrics const & RFbsGlyphDataIterator::Metrics(void) const
+ ?Close@RFbsGlyphMetricsArray@@QAEXXZ @ 237 NONAME ABSENT ; void RFbsGlyphMetricsArray::Close(void)
+ ??0RFbsGlyphDataIterator@@QAE@XZ @ 238 NONAME ABSENT ; RFbsGlyphDataIterator::RFbsGlyphDataIterator(void)
+ ??ARFbsGlyphMetricsArray@@QBEABVTOpenFontCharMetrics@@H@Z @ 239 NONAME ABSENT ; class TOpenFontCharMetrics const & RFbsGlyphMetricsArray::operator[](int) const
+ ?GlyphCode@RFbsGlyphDataIterator@@QBEIXZ @ 240 NONAME ABSENT ; unsigned int RFbsGlyphDataIterator::GlyphCode(void) const
+ ?Close@RFbsGlyphDataIterator@@QAEXXZ @ 241 NONAME ABSENT ; void RFbsGlyphDataIterator::Close(void)
+ ?Get@RFbsGlyphMetricsArray@@QAEHAAVCFbsFont@@PBIH@Z @ 242 NONAME ABSENT ; int RFbsGlyphMetricsArray::Get(class CFbsFont &, unsigned int const *, int)
+ ?Open@RFbsGlyphDataIterator@@QAEHAAVCFbsFont@@PBIH@Z @ 243 NONAME ABSENT ; int RFbsGlyphDataIterator::Open(class CFbsFont &, unsigned int const *, int)
+ ?GetGlyphCacheMetrics@RFbsSession@@QAEHAAVTGlyphCacheMetrics@@@Z @ 244 NONAME ABSENT ; int RFbsSession::GetGlyphCacheMetrics(class TGlyphCacheMetrics &)
+
--- a/fbs/fontandbitmapserver/bwins/fbservu.def Mon Jun 21 17:08:43 2010 +0300
+++ b/fbs/fontandbitmapserver/bwins/fbservu.def Thu Jul 15 20:08:02 2010 +0300
@@ -1,4 +1,5 @@
EXPORTS
?KFbServSharedHeapMaxSize@@3HB @ 1 NONAME ; int const KFbServSharedHeapMaxSize
?KFbServWritableDataPagingMode@@3HB @ 2 NONAME ; int const KFbServWritableDataPagingMode
+ ?KFbServGlyphAtlasCacheLimit@@3HB @ 3 NONAME ABSENT ; int const KFbServGlyphAtlasCacheLimit
--- a/fbs/fontandbitmapserver/eabi/FBSCLI2U.DEF Mon Jun 21 17:08:43 2010 +0300
+++ b/fbs/fontandbitmapserver/eabi/FBSCLI2U.DEF Thu Jul 15 20:08:02 2010 +0300
@@ -264,4 +264,20 @@
_ZNK10CFbsBitmap8DataSizeEv @ 263 NONAME
_ZN17CFbsTypefaceStore20UpdateLinkedTypefaceERK28CLinkedTypefaceSpecification @ 264 NONAME
_ZN10CFbsBitmap14GetExtraBufferEi @ 265 NONAME
-
+ _ZN21RFbsGlyphDataIterator4NextEv @ 266 NONAME ABSENT
+ _ZN21RFbsGlyphDataIterator4OpenER8CFbsFontPKji @ 267 NONAME ABSENT
+ _ZN21RFbsGlyphDataIterator5CloseEv @ 268 NONAME ABSENT
+ _ZN21RFbsGlyphDataIteratorC1Ev @ 269 NONAME ABSENT
+ _ZN21RFbsGlyphDataIteratorC2Ev @ 270 NONAME ABSENT
+ _ZN21RFbsGlyphMetricsArray3GetER8CFbsFontPKji @ 271 NONAME ABSENT
+ _ZN21RFbsGlyphMetricsArray5CloseEv @ 272 NONAME ABSENT
+ _ZN21RFbsGlyphMetricsArrayC1Ev @ 273 NONAME ABSENT
+ _ZN21RFbsGlyphMetricsArrayC2Ev @ 274 NONAME ABSENT
+ _ZNK21RFbsGlyphDataIterator4RectEv @ 275 NONAME ABSENT
+ _ZNK21RFbsGlyphDataIterator5ImageEv @ 276 NONAME ABSENT
+ _ZNK21RFbsGlyphDataIterator7MetricsEv @ 277 NONAME ABSENT
+ _ZNK21RFbsGlyphDataIterator9GlyphCodeEv @ 278 NONAME ABSENT
+ _ZNK21RFbsGlyphMetricsArray5CountEv @ 279 NONAME ABSENT
+ _ZNK21RFbsGlyphMetricsArrayixEi @ 280 NONAME ABSENT
+ _ZN11RFbsSession20GetGlyphCacheMetricsER18TGlyphCacheMetrics @ 281 NONAME ABSENT
+
--- a/fbs/fontandbitmapserver/eabi/fbservu.def Mon Jun 21 17:08:43 2010 +0300
+++ b/fbs/fontandbitmapserver/eabi/fbservu.def Thu Jul 15 20:08:02 2010 +0300
@@ -1,4 +1,5 @@
EXPORTS
KFbServSharedHeapMaxSize @ 1 NONAME DATA 4
KFbServWritableDataPagingMode @ 2 NONAME DATA 4
-
+ KFbServGlyphAtlasCacheLimit @ 3 NONAME ABSENT
+
--- a/graphicstest/graphicstestharness/automation/h4/roms.tb92.txt Mon Jun 21 17:08:43 2010 +0300
+++ b/graphicstest/graphicstestharness/automation/h4/roms.tb92.txt Thu Jul 15 20:08:02 2010 +0300
@@ -7,6 +7,7 @@
RomAndAutoRom('armv5','h4hrp pagedrom techview platsec graphics_testharness.iby openvgtest.iby','-D_NAND2 -DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24UBPP_DISPLAY_VARIANT_TV -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW','h4hrp_graphics3_armv5_dpdef','Graphics Test ROM (3) - OpenVG DP Default','\epoc32\data\z\graphics\wsini_integ.ini,\epoc32\data\z\system\data\wsini.ini','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h4\tests_03.txt','')
RomAndAutoRom('armv5','h4hrp pagedrom techview platsec graphics_testharness.iby supplieropenvgtest.iby','-D_NAND2 -DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24UBPP_DISPLAY_VARIANT_TV -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW','h4hrp_graphics3a_armv5_dpdef','Graphics Test ROM (3a) - OpenVG tests requiring USB/Memory Card support DP Default','\epoc32\data\z\graphics\wsini_integ.ini,\epoc32\data\z\system\data\wsini.ini','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h4\tests_03a.txt' ,'')
RomAndAutoRom('armv5','h4hrp pagedrom techview platsec wserv.oby','-D_NAND2 -DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24UBPP_DISPLAY_VARIANT_TV -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW','h4hrp_graphics4_armv5_dpdef','Graphics Test ROM (4) - WServ DP Default','\epoc32\data\z\system\data\ws_test.ini,\epoc32\data\z\system\data\wsini.ini','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h4\tests_04.txt','')
+RomAndAutoRom('armv5','h4hrp pagedrom techview platsec wserv.oby','-D_NAND2 -DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24UBPP_DISPLAY_VARIANT_TV -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW','h4hrp_graphics4yshifting_armv5_dpdef','Graphics Test ROM (YShifting) - Linear reduction of YOffset DP Default','\epoc32\data\z\system\data\wsini_pointershift.ini,\epoc32\data\z\system\data\wsini.ini','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h4\tests_04a.txt','')
RomAndAutoRom('armv5','h4hrp pagedrom techview platsec wserv.oby','-D_NAND2 -DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24UBPP_DISPLAY_VARIANT_TV -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW','h4hrp_graphics4ct_armv5_dpdef','Graphics Test ROM (4ct) - WServ Change Tracking DP Default','\epoc32\data\z\system\data\ws_test_changetracking.ini,\epoc32\data\z\system\data\wsini.ini','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h4\tests_04ct.txt','')
RomAndAutoRom('armv5','h4hrp pagedrom techview platsec graphics_testharness.iby te_uibench.iby','-D_NAND2 -DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24UBPP_DISPLAY_VARIANT_TV -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW -DFBSRASTERIZER_DRV="^<"fbsrasterizer_test.iby"^>"','h4hrp_graphics5a_armv5_dpdef','Graphics Test ROM (5a) - UIBench DP Default','','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h4\tests_05a.txt','')
RomAndAutoRom('armv5','h4hrp pagedrom techview platsec graphics_testharness.iby internaltestfonts.iby te_outlineshadow.iby','-D_NAND2 -DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24UBPP_DISPLAY_VARIANT_TV -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW -DGRAPHICS_EXCLUDE_FREETYPE','h4hrp_graphics5b_armv5_dpdef','Graphics Test ROM (5b) - UIBench - Outline Shadow DP Default','','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h4\tests_05b.txt','')
--- a/graphicstest/graphicstestharness/automation/h4/roms.wdp.tb92.txt Mon Jun 21 17:08:43 2010 +0300
+++ b/graphicstest/graphicstestharness/automation/h4/roms.wdp.tb92.txt Thu Jul 15 20:08:02 2010 +0300
@@ -7,6 +7,7 @@
RomAndAutoRom('armv5','h4hrp pagedrom techview platsec graphics_testharness.iby openvgtest.iby dptestcons.oby','-DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24UBPP_DISPLAY_VARIANT_TV -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW -D_SSMSTARTUPMODE=5 -DWITH_FLEXIBLE_MM -D_INTERNAL_MMC -DUSE_DATA_PAGING','h4hrp_graphics3_armv5_wdp','Graphics Test ROM (3) - OpenVG WDP','\epoc32\data\z\graphics\wsini_integ.ini,\epoc32\data\z\system\data\wsini.ini','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h4\tests_03.txt','')
RomAndAutoRom('armv5','h4hrp pagedrom techview platsec graphics_testharness.iby supplieropenvgtest.iby dptestcons.oby','-DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24UBPP_DISPLAY_VARIANT_TV -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW -D_SSMSTARTUPMODE=5 -DWITH_FLEXIBLE_MM -D_INTERNAL_MMC -DUSE_DATA_PAGING','h4hrp_graphics3a_armv5_wdp','Graphics Test ROM (3a) - OpenVG tests requiring USB/Memory Card support WDP','\epoc32\data\z\graphics\wsini_integ.ini,\epoc32\data\z\system\data\wsini.ini','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h4\tests_03a.txt','')
RomAndAutoRom('armv5','h4hrp pagedrom techview platsec wserv.oby dptestcons.oby','-DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24UBPP_DISPLAY_VARIANT_TV -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW -D_SSMSTARTUPMODE=5 -DWITH_FLEXIBLE_MM -D_INTERNAL_MMC -DUSE_DATA_PAGING','h4hrp_graphics4_armv5_wdp','Graphics Test ROM (4) - WServ WDP','\epoc32\data\z\system\data\ws_test.ini,\epoc32\data\z\system\data\wsini.ini','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h4\tests_04.txt','')
+RomAndAutoRom('armv5','h4hrp pagedrom techview platsec wserv.oby dptestcons.oby','-DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24UBPP_DISPLAY_VARIANT_TV -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW -D_SSMSTARTUPMODE=5 -DWITH_FLEXIBLE_MM -D_INTERNAL_MMC -DUSE_DATA_PAGING','h4hrp_graphics4yshifting_armv5_wdp','Graphics Test ROM (YShifting) - Linear reduction of YOffset WDP','\epoc32\data\z\system\data\ws_test.ini,\epoc32\data\z\system\data\wsini_pointershift.ini','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h4\tests_04a.txt','')
RomAndAutoRom('armv5','h4hrp pagedrom techview platsec wserv.oby dptestcons.oby','-DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24UBPP_DISPLAY_VARIANT_TV -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW -D_SSMSTARTUPMODE=5 -DWITH_FLEXIBLE_MM -D_INTERNAL_MMC -DUSE_DATA_PAGING','h4hrp_graphics4ct_armv5_wdp','Graphics Test ROM (4ct) - WServ Change Tracking WDP','\epoc32\data\z\system\data\ws_test_changetracking.ini,\epoc32\data\z\system\data\wsini.ini','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h4\tests_04ct.txt','')
RomAndAutoRom('armv5','h4hrp pagedrom techview platsec graphics_testharness.iby te_uibench.iby internaltestfonts.iby dptestcons.oby','-DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24UBPP_DISPLAY_VARIANT_TV -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW -DFBSRASTERIZER_DRV="^<"fbsrasterizer_test.iby"^>" -D_SSMSTARTUPMODE=5 -DWITH_FLEXIBLE_MM -D_INTERNAL_MMC -DUSE_DATA_PAGING','h4hrp_graphics5a_armv5_wdp','Graphics Test ROM (5a) - UIBench WDP','','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h4\tests_05a.txt','')
RomAndAutoRom('armv5','h4hrp pagedrom techview platsec graphics_testharness.iby internaltestfonts.iby te_outlineshadow.iby dptestcons.oby','-DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24UBPP_DISPLAY_VARIANT_TV -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW -DGRAPHICS_EXCLUDE_FREETYPE -D_SSMSTARTUPMODE=5 -DWITH_FLEXIBLE_MM -D_INTERNAL_MMC -DUSE_DATA_PAGING','h4hrp_graphics5b_armv5_wdp','Graphics Test ROM (5b) - UIBench - Outline Shadow WDP','','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h4\tests_05b.txt','')
--- a/graphicstest/graphicstestharness/automation/h4/runroms.tb92.cmd Mon Jun 21 17:08:43 2010 +0300
+++ b/graphicstest/graphicstestharness/automation/h4/runroms.tb92.cmd Thu Jul 15 20:08:02 2010 +0300
@@ -1,4 +1,4 @@
-rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+rem Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
rem All rights reserved.
rem This component and the accompanying materials are made available
rem under the terms of "Eclipse Public License v1.0"
@@ -22,6 +22,7 @@
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/h4hrp_graphics3_armv5_dpdef_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 2400
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/h4hrp_graphics3a_armv5_dpdef_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 3600 --sendFiles "stress_tests,stress_tests;functional_tests,functional_tests" --retrieveFiles "functional_results_copy/test_results,functional_results/test_results;functional_tests,functional_results/functional_tests;stress_results_copy/test_results,stress_results/test_results"
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/h4hrp_graphics4_armv5_dpdef_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 2400
+call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/h4hrp_graphics4yshifting_armv5_dpdef_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 2400
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/h4hrp_graphics4ct_armv5_dpdef_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 2400
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/h4hrp_graphics5a_armv5_dpdef_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 2400
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/h4hrp_graphics5b_armv5_dpdef_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 2400
--- a/graphicstest/graphicstestharness/automation/h4/runroms.wdp.tb92.cmd Mon Jun 21 17:08:43 2010 +0300
+++ b/graphicstest/graphicstestharness/automation/h4/runroms.wdp.tb92.cmd Thu Jul 15 20:08:02 2010 +0300
@@ -1,4 +1,4 @@
-rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+rem Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
rem All rights reserved.
rem This component and the accompanying materials are made available
rem under the terms of "Eclipse Public License v1.0"
@@ -22,6 +22,7 @@
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/h4hrp_graphics3_armv5_wdp_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 2400
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/h4hrp_graphics3a_armv5_wdp_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 3600 --sendFiles "stress_tests,stress_tests;functional_tests,functional_tests" --retrieveFiles "functional_results_copy/test_results,functional_results/test_results;functional_tests,functional_results/functional_tests;stress_results_copy/test_results,stress_results/test_results"
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/h4hrp_graphics4_armv5_wdp_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 2400 --timeout 240
+call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/h4hrp_graphics4yshifting_armv5_wdp_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 2400 --timeout 240
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/h4hrp_graphics4ct_armv5_wdp_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 2400 --timeout 240
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/h4hrp_graphics5a_armv5_wdp_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 2400
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/h4hrp_graphics5b_armv5_wdp_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 2400
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/graphicstest/graphicstestharness/automation/h4/tests_04a.txt Thu Jul 15 20:08:02 2010 +0300
@@ -0,0 +1,21 @@
+# tests_04a.txt
+# Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+# All rights reserved.
+# This component and the accompanying materials are made available
+# under the terms of "Eclipse Public License v1.0"
+# which accompanies this distribution, and is available
+# at the URL "http://www.eclipse.org/legal/epl-v10.html".
+#
+# Initial Contributors:
+# Nokia Corporation - initial contribution.
+#
+# Contributors:
+#
+# Description: Used for YOffset tests
+
+#
+# program,log,commdb,script,timeout,release,pre cmd,post cmd
+
+# Wserv
+TESTEXECUTE, \logs\testexecute\wstest_t_pointershifttest_nga.htm, , z:\wstest\wstest_t_pointershifttest_nga.script, 600
+# program,log,commdb,script,timeout,release,pre cmd,post cmd
--- a/graphicstest/graphicstestharness/automation/h6/roms.tb92.txt Mon Jun 21 17:08:43 2010 +0300
+++ b/graphicstest/graphicstestharness/automation/h6/roms.tb92.txt Thu Jul 15 20:08:02 2010 +0300
@@ -7,6 +7,7 @@
RomAndAutoRom('armv5','34xx_sdp pagedrom techview platsec graphics_testharness.iby openvgtest.iby','-D_NAND2 -DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24BPP_DISPLAY_VARIANT -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW','34xx_sdp_graphics3_armv5_dpdef','Graphics Test ROM (3) - OpenVG DP Default','\epoc32\data\z\graphics\wsini_integ.ini,\epoc32\data\z\system\data\wsini.ini','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h6\tests_03.txt','')
RomAndAutoRom('armv5','34xx_sdp pagedrom techview platsec graphics_testharness.iby supplieropenvgtest.iby graphics_screencomparison.iby graphics_imagecomparison.iby','-D_NAND2 -DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24BPP_DISPLAY_VARIANT -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW','34xx_sdp_graphics3a_armv5_dpdef','Graphics Test ROM (3a) - OpenVG tests requiring USB/Memory Card support DP Default','\epoc32\data\z\graphics\wsini_integ.ini,\epoc32\data\z\system\data\wsini.ini','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h6\tests_03a.txt','')
RomAndAutoRom('armv5','34xx_sdp pagedrom techview platsec wserv.oby','-D_NAND2 -DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24BPP_DISPLAY_VARIANT -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW','34xx_sdp_graphics4_armv5_dpdef','Graphics Test ROM (4) - WServ DP Default','\epoc32\data\z\system\data\ws_test.ini,\epoc32\data\z\system\data\wsini.ini','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h6\tests_04.txt','')
+RomAndAutoRom('armv5','34xx_sdp pagedrom techview platsec wserv.oby','-D_NAND2 -DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24BPP_DISPLAY_VARIANT -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW','34xx_sdp_graphics4yshifting_armv5_dpdef','Graphics Test ROM (YShifting) - Linear reduction of YOffset DP Default','\epoc32\data\z\system\data\wsini_pointershift.ini,\epoc32\data\z\system\data\wsini.ini','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h6\tests_04a.txt','')
RomAndAutoRom('armv5','34xx_sdp pagedrom techview platsec wserv.oby','-D_NAND2 -DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24BPP_DISPLAY_VARIANT -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW','34xx_sdp_graphics4ct_armv5_dpdef','Graphics Test ROM (4ct) - WServ Change Tracking DP Default','\epoc32\data\z\system\data\wservu_om_h6_changetracking.ini,\epoc32\data\z\system\data\wsini.ini','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h6\tests_04ct.txt','')
RomAndAutoRom('armv5','34xx_sdp pagedrom techview platsec graphics_testharness.iby te_uibench.iby internaltestfonts.iby','-D_NAND2 -DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24BPP_DISPLAY_VARIANT -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW -DFBSRASTERIZER_DRV="^<"fbsrasterizer_test.iby"^>"','34xx_sdp_graphics5a_armv5_dpdef','Graphics Test ROM (5a) - UIBench DP Default','','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h6\tests_05a.txt','')
RomAndAutoRom('armv5','34xx_sdp pagedrom techview platsec graphics_testharness.iby internaltestfonts.iby te_outlineshadow.iby','-D_NAND2 -DUSE_SDIO_SD_MMC -DWITH_TVOUT -DUSE_24BPP_DISPLAY_VARIANT -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW -DGRAPHICS_EXCLUDE_FREETYPE','34xx_sdp_graphics5b_armv5_dpdef','Graphics Test ROM (5b) - UIBench - Outline Shadow DP Default','','..\sf\os\graphics\graphicstest\graphicstestharness\automation\h6\tests_05b.txt','')
--- a/graphicstest/graphicstestharness/automation/h6/runroms.tb92.cmd Mon Jun 21 17:08:43 2010 +0300
+++ b/graphicstest/graphicstestharness/automation/h6/runroms.tb92.cmd Thu Jul 15 20:08:02 2010 +0300
@@ -1,4 +1,4 @@
-rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+rem Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
rem All rights reserved.
rem This component and the accompanying materials are made available
rem under the terms of "Eclipse Public License v1.0"
@@ -22,6 +22,7 @@
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/34xx_sdp_graphics3_armv5_dpdef_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 2400
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/34xx_sdp_graphics3a_armv5_dpdef_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 3600 --sendFiles "stress_tests,stress_tests;functional_tests,functional_tests" --retrieveFiles "functional_results_copy/test_results,functional_results/test_results;functional_tests,functional_results/functional_tests;stress_results_copy/test_results,stress_results/test_results"
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/34xx_sdp_graphics4_armv5_dpdef_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 3600
+call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/34xx_sdp_graphics4yshifting_armv5_dpdef_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 3600
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/34xx_sdp_graphics4ct_armv5_dpdef_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 3600
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/34xx_sdp_graphics5a_armv5_dpdef_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 2400
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/34xx_sdp_graphics5b_armv5_dpdef_auto" --nandLoader %1 --resource %2 --jobId %3 --listenTimeout 2400
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/graphicstest/graphicstestharness/automation/h6/tests_04a.txt Thu Jul 15 20:08:02 2010 +0300
@@ -0,0 +1,21 @@
+# tests_04a.txt
+# Copyright (c) 1995-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:Used for YOffset tests
+
+#
+# program,log,commdb,script,timeout,release,pre cmd,post cmd
+
+# Wserv
+TESTEXECUTE, \logs\testexecute\wstest_t_pointershifttest_nga.htm, , z:\wstest\wstest_t_pointershifttest_nga.script, 600
+# program,log,commdb,script,timeout,release,pre cmd,post cmd
\ No newline at end of file
--- a/graphicstest/graphicstestharness/automation/ne1/roms.tb92.txt Mon Jun 21 17:08:43 2010 +0300
+++ b/graphicstest/graphicstestharness/automation/ne1/roms.tb92.txt Thu Jul 15 20:08:02 2010 +0300
@@ -5,6 +5,7 @@
RomAndAutoRom('armv5','naviengine techview platsec graphics_test2.iby internaltestfonts.iby','-DUSE_SDIO_SD_MMC -DSMP -DUSE_24BPP_DISPLAY_VARIANT -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW','naviengine_graphics2_armv5','Graphics Test ROM (2)','','..\sf\os\graphics\graphicstest\graphicstestharness\automation\ne1\tests_02.txt','')
RomAndAutoRom('armv5','naviengine techview platsec graphics_testharness.iby openvgtest.iby','-DUSE_SDIO_SD_MMC -DSMP -DUSE_24BPP_DISPLAY_VARIANT -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW','naviengine_graphics3_armv5','Graphics Test ROM (3) - OpenVG','\epoc32\data\z\graphics\wsini_integ_norotation.ini,\epoc32\data\z\system\data\wsini.ini','..\sf\os\graphics\graphicstest\graphicstestharness\automation\ne1\tests_03.txt','')
RomAndAutoRom('armv5','naviengine techview platsec wserv.oby','-DUSE_SDIO_SD_MMC -DSMP -DUSE_24BPP_DISPLAY_VARIANT -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW','naviengine_graphics4_armv5','Graphics Test ROM (4) - WServ','\epoc32\data\z\system\data\ws_test_singlescreen.ini,\epoc32\data\z\system\data\wsini.ini','..\sf\os\graphics\graphicstest\graphicstestharness\automation\ne1\tests_04.txt','')
+RomAndAutoRom('armv5','naviengine techview platsec wserv.oby','-DUSE_SDIO_SD_MMC -DSMP -DUSE_24BPP_DISPLAY_VARIANT -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW','naviengine_graphics4yshifting_armv5','Graphics Test ROM (YShifting) - Linear reduction of YOffset','\epoc32\data\z\system\data\wsini_pointershift.ini,\epoc32\data\z\system\data\wsini.ini','..\sf\os\graphics\graphicstest\graphicstestharness\automation\ne1\tests_04a.txt','')
RomAndAutoRom('armv5','naviengine techview platsec wserv.oby','-DUSE_SDIO_SD_MMC -DSMP -DUSE_24BPP_DISPLAY_VARIANT -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW','naviengine_graphics4ct_armv5','Graphics Test ROM (4ct) - WServ Change Tracking','\epoc32\data\z\system\data\wservu_om_singlescreen_changetracking.ini,\epoc32\data\z\system\data\wsini.ini','..\sf\os\graphics\graphicstest\graphicstestharness\automation\ne1\tests_04ct.txt','')
RomAndAutoRom('armv5','naviengine techview platsec graphics_testharness.iby te_uibench.iby internaltestfonts.iby','-DUSE_SDIO_SD_MMC -DSMP -DUSE_24BPP_DISPLAY_VARIANT -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW -DFBSRASTERIZER_DRV="^<"fbsrasterizer_test.iby"^>"','naviengine_graphics5a_armv5','Graphics Test ROM (5a) - UIBench','','..\sf\os\graphics\graphicstest\graphicstestharness\automation\ne1\tests_05a.txt','')
RomAndAutoRom('armv5','naviengine techview platsec graphics_testharness.iby internaltestfonts.iby te_outlineshadow.iby','-DUSE_SDIO_SD_MMC -DSMP -DUSE_24BPP_DISPLAY_VARIANT -DSYMBIAN_BASE_USE_GCE -DSYMBIAN_GRAPHICS_USE_GCE -DSYMBIAN_GRAPHICS_ADAPTATION=SGA_SW -DGRAPHICS_EXCLUDE_FREETYPE','naviengine_graphics5b_armv5','Graphics Test ROM (5b) - UIBench - Outline Shadow','','..\sf\os\graphics\graphicstest\graphicstestharness\automation\ne1\tests_05b.txt','')
--- a/graphicstest/graphicstestharness/automation/ne1/runroms.tb92.cmd Mon Jun 21 17:08:43 2010 +0300
+++ b/graphicstest/graphicstestharness/automation/ne1/runroms.tb92.cmd Thu Jul 15 20:08:02 2010 +0300
@@ -1,4 +1,4 @@
-rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+rem Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
rem All rights reserved.
rem This component and the accompanying materials are made available
rem under the terms of "Eclipse Public License v1.0"
@@ -20,6 +20,7 @@
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/naviengine_graphics2_armv5_auto" --nandLoader %1 --resource %2 --jobId %3 --timeout 120 --listenTimeout 2400 --transferMode serial
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/naviengine_graphics3_armv5_auto" --nandLoader %1 --resource %2 --jobId %3 --timeout 60 --listenTimeout 2400 --transferMode serial
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/naviengine_graphics4_armv5_auto" --nandLoader %1 --resource %2 --jobId %3 --timeout 120 --listenTimeout 2400 --transferMode serial
+call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/naviengine_graphics4yshifting_auto" --nandLoader %1 --resource %2 --jobId %3 --timeout 120 --listenTimeout 2400 --transferMode serial
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/naviengine_graphics4ct_armv5_auto" --nandLoader %1 --resource %2 --jobId %3 --timeout 120 --listenTimeout 2400 --transferMode serial
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/naviengine_graphics5a_armv5_auto" --nandLoader %1 --resource %2 --jobId %3 --timeout 240 --listenTimeout 2400 --transferMode serial
call ec-perl w:\scripts\rom\runrom.pl --romDirectory "roms/naviengine_graphics5b_armv5_auto" --nandLoader %1 --resource %2 --jobId %3 --timeout 60 --listenTimeout 2400 --transferMode serial
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/graphicstest/graphicstestharness/automation/ne1/tests_04a.txt Thu Jul 15 20:08:02 2010 +0300
@@ -0,0 +1,20 @@
+# tests_04a.txt
+# Copyright (c) 1995-2010 Nokia Corporation and/or its subsidiary(-ies).
+# All rights reserved.
+# This component and the accompanying materials are made available
+# under the terms of "Eclipse Public License v1.0"
+# which accompanies this distribution, and is available
+# at the URL "http://www.eclipse.org/legal/epl-v10.html".
+#
+# Initial Contributors:
+# Nokia Corporation - initial contribution.
+#
+# Contributors:
+#
+# Description: Used for YOffset tests
+#
+# program,log,commdb,script,timeout,release,pre cmd,post cmd
+
+# Wserv
+TESTEXECUTE, \logs\testexecute\wstest_t_pointershifttest_nga.htm, , z:\wstest\wstest_t_pointershifttest_nga.script, 600
+# program,log,commdb,script,timeout,release,pre cmd,post cmd
\ No newline at end of file
--- a/graphicstest/graphicstestharness/automation/winscw/tests.tb92.txt Mon Jun 21 17:08:43 2010 +0300
+++ b/graphicstest/graphicstestharness/automation/winscw/tests.tb92.txt Thu Jul 15 20:08:02 2010 +0300
@@ -225,6 +225,9 @@
TESTEXECUTE, C:\logs\testexecute\graphics-wserv-screenconstruct-scrmodes.htm, , z:\wstest\screenconstruct\graphics-wserv-screenconstruct-scrmodes.script, 300, , z\wstest\screenconstruct\tscreenconstruct.bat install scrmodes, z\wstest\screenconstruct\tscreenconstruct.bat uninstall
TESTEXECUTE, C:\logs\testexecute\wservstresstest.htm, , z:\wstest\wservstresstest.script, 4200
+# DevCR SIMR-7TBHYR tests and defect fix ou1cimx1#435306 Gradual reduction of Yoffset in wserv for better UI experinece
+TESTEXECUTE, C:\logs\testexecute\wstest_t_pointershifttest_nga.htm, , z:\wstest\wstest_t_pointershifttest_nga.script, 8000, ,z\wstest\wspointershifttest_run.bat install, z\wstest\wspointershifttest_run.bat uninstall
+
# PREQ2102 tests
TESTEXECUTE, C:\logs\testexecute\tdisplayconfiguration.htm, , z:\commonheadertest\tdisplayconfiguration.script, 600
--- a/windowing/windowserver/SERVER/openwfc/panics.h Mon Jun 21 17:08:43 2010 +0300
+++ b/windowing/windowserver/SERVER/openwfc/panics.h Thu Jul 15 20:08:02 2010 +0300
@@ -160,7 +160,7 @@
EWsPanicUnexpectedBitmapHandleInArray = 125, //Bitmap handle in array with no matching bitmap object in bitmap ref array
EWsPanicBitmapNotFound = 126, //Failed to find a bitmap in the bitmap ref array
EWsPanicInvalidRotation = 127, //Invalid rotation used
- EWsPanicInvalidPointerOffset = 128, //The pointer offset value in wsini.ini is invalid.
+ EWsPanicInvalidPointerOffset = 128,//NOT USED //The pointer offset value in wsini.ini is invalid.
EWsPanicArrayInsertFailed = 129, //Array insert failed.
EWsPanicCompleteNullMessage = 130, //RMessage2 is NULL prior to calling Complete().
};
--- a/windowing/windowserver/group/openwfc/BLD.INF Mon Jun 21 17:08:43 2010 +0300
+++ b/windowing/windowserver/group/openwfc/BLD.INF Thu Jul 15 20:08:02 2010 +0300
@@ -382,6 +382,7 @@
../../test/scripts/wspointershifttest_run.bat z:/wstest/wspointershifttest_run.bat
../../test/scripts/epoc_pointershift.ini z:/wstest/epoc_pointershift.ini
../../group/wsini_pointershift_wins.ini z:/wstest/wsini_pointershift_wins.ini
+../../group/wsini_pointershift.ini /epoc32/data/z/system/data/wsini_pointershift.ini
#endif // SYMBIAN_BUILD_GCE
Binary file windowing/windowserver/group/wsini_pointershift.ini has changed
Binary file windowing/windowserver/group/wsini_pointershift_wins.ini has changed
--- a/windowing/windowserver/inc/Graphics/openwfc/WSGRAPHICDRAWERINTERFACE.H Mon Jun 21 17:08:43 2010 +0300
+++ b/windowing/windowserver/inc/Graphics/openwfc/WSGRAPHICDRAWERINTERFACE.H Thu Jul 15 20:08:02 2010 +0300
@@ -849,7 +849,11 @@
EAlphaChannelTransparencyEnabled,
/** True if a clipping rect should be applied when drawing a standard text cursor, false otherwise.
The default value is false. */
- ECursorClipRectSet
+ ECursorClipRectSet,
+ /** Implicitly defaults to true. Will remain true as long as the application's primary screendevice
+ is in the same orientation as the device. This information is only given for top-windows,
+ i.e. children of group-windows, and only when wsini.ini is configured with SIZE_MODE > 0. */
+ EScreenDeviceValid
};
/**
This enum encapsulates the set of non-boolean attribute changes that can be observed
--- a/windowing/windowserver/nga/SERVER/POINTER.CPP Mon Jun 21 17:08:43 2010 +0300
+++ b/windowing/windowserver/nga/SERVER/POINTER.CPP Thu Jul 15 20:08:02 2010 +0300
@@ -1,4 +1,4 @@
-// Copyright (c) 1995-2009 Nokia Corporation and/or its subsidiary(-ies).
+// Copyright (c) 1995-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"
@@ -53,7 +53,9 @@
CWsPointerBuffer* CWsPointerBuffer::iCurrentBuffer=NULL;
CCirBuf<TPoint>* CWsPointerBuffer::iPointerBuffer=NULL;
TSglQue<CWsPointerBuffer> CWsPointerBuffer::iList(_FOFF(CWsPointerBuffer,iQue));
-TInt TWsPointer::iYOffset;
+TInt TWsPointer::iYOffsetTop;
+TInt TWsPointer::iYOffsetBottom;
+TInt TWsPointer::iYOffsetMax;
#if defined(__WINS__)
TBool TWsPointer::iEmulatorRotatePointerCoords;
#endif
@@ -62,17 +64,20 @@
void TWsPointer::InitStaticsL()
{
- //This iYOffset setting is specific for capacitive touch screens, where user's finger is the pointer device.
+ //This iYOffsetTop setting is specific for capacitive touch screens, where user's finger is the pointer device.
//This is typically used so that the pointer event location is more inline with where the user perceives their
//finger to be on the screen (for example, due to refraction and the relatively large touch area of a finger).
- iYOffset = 0;
- _LIT( KWSERVIniFileVarYShifting, "YSHIFTING");
- TBool fetchingSucceeded = WsIniFile->FindVar(KWSERVIniFileVarYShifting, iYOffset);
- WS_ASSERT_ALWAYS(iYOffset>=0, EWsPanicInvalidPointerOffset);
- if ( !fetchingSucceeded )
- {
- iYOffset = 0;
- }
+ //The logic used here is to use Yoffset value such that it is max the finger is at the top and keeps on reducing
+ //when the finger input is moved towards bottom of the screen
+ iYOffsetTop = 0;
+ iYOffsetBottom = 0;
+ iYOffsetMax = 0;
+ _LIT( KWSERVIniFileVarYShiftingTop, "YSHIFTINGTOP");
+ _LIT( KWSERVIniFileVarYShiftingBottom, "YSHIFTINGBOTTOM");
+ _LIT( KWSERVIniFileVarYShiftingMax, "YSHIFTINGMAX");
+ WsIniFile->FindVar(KWSERVIniFileVarYShiftingTop, iYOffsetTop);
+ WsIniFile->FindVar(KWSERVIniFileVarYShiftingBottom, iYOffsetBottom);
+ WsIniFile->FindVar(KWSERVIniFileVarYShiftingMax, iYOffsetMax);
#if defined(__WINS__)
//An emulator may or may not deploy a renderchain or displaydriver that supports rotated drawing.
@@ -1526,19 +1531,40 @@
will shift all pointer events by a specified Y displacement.
@param aY Current y coordinate pointer position.
-
- */
+*/
void TWsPointer::ShiftYCoordinate(TInt& aY)
{
- WS_ASSERT_DEBUG(iYOffset>=0, EWsPanicInvalidPointerOffset);
- if (aY >= iYOffset)
- {
- aY -=iYOffset;
- }
- else
- {
- aY=0;
- }
+ // If iYOffsetMax is zero or both topOffset and bottomOffset is zero then return without doing anything
+ if (!iYOffsetMax || !(iYOffsetTop || iYOffsetBottom))
+ return;
+
+ if (aY >= iYOffsetMax )
+ {
+ CScreen* screen=iRootWindow->Screen();
+ TInt displayHeight = screen->SizeInPixels().iHeight;
+
+ // Gradual reduction of Yoffset depending upon the aY value
+ TInt offset = iYOffsetTop + iYOffsetBottom - ( iYOffsetTop *
+ aY / displayHeight );
+
+ if ( offset > iYOffsetMax )
+ {
+ offset = iYOffsetMax;
+ }
+ aY -=offset;
+
+ // As the pixels are zero counted, digitiser would send a pointer with co-ordinates
+ // from 0 to 239 or 0 to 639, if hieght of the screen was 240 or 640.
+ // And here we are calulating the Yvalue so it cannot be more than 239 or 639
+ if ( aY > (displayHeight-1) )
+ {
+ aY = displayHeight-1;
+ }
+ }
+ else
+ {
+ aY = 0;
+ }
}
//
CWsPointerTimer::CWsPointerTimer(MPointerTimerCallback& aPointerTimerCallback)
--- a/windowing/windowserver/nga/SERVER/openwfc/WINDOW.CPP Mon Jun 21 17:08:43 2010 +0300
+++ b/windowing/windowserver/nga/SERVER/openwfc/WINDOW.CPP Thu Jul 15 20:08:02 2010 +0300
@@ -674,6 +674,11 @@
aWindowTreeObserver.FlagChanged(*this, MWsWindowTreeObserver::ENonFading, ETrue);
}
+ if(IsTopClientWindow() && (iFlags&EFlagScreenDeviceInvalid) )
+ {
+ aWindowTreeObserver.FlagChanged(*this, MWsWindowTreeObserver::EScreenDeviceValid, EFalse);
+ }
+
if(iAnimList)
iAnimList->SendState(aWindowTreeObserver);
--- a/windowing/windowserver/nga/SERVER/openwfc/cliwin.cpp Mon Jun 21 17:08:43 2010 +0300
+++ b/windowing/windowserver/nga/SERVER/openwfc/cliwin.cpp Thu Jul 15 20:08:02 2010 +0300
@@ -1426,6 +1426,13 @@
iFlags&=~EFlagScreenDeviceInvalid;
else
iFlags|=EFlagScreenDeviceInvalid;
+
+ MWsWindowTreeObserver* windowTreeObserver = iScreen->WindowTreeObserver();
+ if (windowTreeObserver)
+ {
+ windowTreeObserver->FlagChanged(*this, MWsWindowTreeObserver::EScreenDeviceValid, aState);
+ }
+
return ETrue;
}
return EFalse;
--- a/windowing/windowserver/nga/SERVER/pointer.h Mon Jun 21 17:08:43 2010 +0300
+++ b/windowing/windowserver/nga/SERVER/pointer.h Thu Jul 15 20:08:02 2010 +0300
@@ -1,4 +1,4 @@
-// Copyright (c) 2006-2009 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"
@@ -229,7 +229,10 @@
static TInt iExitHighPressureThreshold;
/** Used to offset the y pointer */
- static TInt iYOffset;
+ /** upgraded to use dynamic value */
+ static TInt iYOffsetTop;
+ static TInt iYOffsetBottom;
+ static TInt iYOffsetMax;
#if defined(__WINS__)
/** Tell whether to rotate pointer coords in _WINS_ builds */
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/windowing/windowserver/tauto/tptroffset.cpp Thu Jul 15 20:08:02 2010 +0300
@@ -0,0 +1,484 @@
+// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+// All rights reserved.
+// This component and the accompanying materials are made available
+// under the terms of "Eclipse Public License v1.0"
+// which accompanies this distribution, and is available
+// at the URL "http://www.eclipse.org/legal/epl-v10.html".
+//
+// Initial Contributors:
+// Nokia Corporation - initial contribution.
+//
+// Contributors:
+//
+// Description:
+// YShifting, Wserv gradual reduction of YOffset test code
+//
+//
+
+/**
+ @file
+ @test
+ @internalComponent - Internal Symbian test code
+*/
+
+#include "PARSEINIDATA.H"
+#include "tptroffset.h"
+#include <e32cmn.h>
+#include <hal.h>
+
+//#define FAILLOG 1 // Uncomment this code to get detailed log
+
+//CTPointerOffsetBuffer
+CTPointerOffsetBuffer::CTPointerOffsetBuffer(RWsSession *aWs, CTPointerOffsetTest *aTest, CTPointerOffsetClient* aClient)
+ : CTEvent(aWs), iTest(aTest), iClient(aClient)
+ {
+ }
+
+CTPointerOffsetBuffer::~CTPointerOffsetBuffer()
+ {
+ }
+
+void CTPointerOffsetBuffer::ConstructL()
+ {
+ CTEventBase::Construct();
+ iEventBuffer.SetLengthL(EEventBufferSize);
+ }
+
+void CTPointerOffsetBuffer::AddExpectedEvent(TWsEvent &aEvent)
+ {
+ iEventBuffer.Add(&aEvent);
+ }
+
+TInt CTPointerOffsetBuffer::EventsRemaining()
+ {
+ return iEventBuffer.Count();
+ }
+
+
+// Main function which gets the event, checks with the event in buffer
+// Then calls function NextSetOfEventsL for running other tests of a particualar test case
+void CTPointerOffsetBuffer::doRunL()
+ {
+ // Get the event from wserv
+ TWsEvent wsEvent;
+ iWs->GetEvent(wsEvent);
+
+ TWsEvent expectedEvent;
+ TInt wsType=wsEvent.Type();
+
+ // if this is called accidentally
+ TInt count=iEventBuffer.Count();
+ if (count==0 && wsType==EEventFocusGained)
+ {
+ goto End;
+ }
+
+ iEventBuffer.Remove(&expectedEvent);
+ iEventCount++;
+
+#if defined(FAILLOG)
+ TLogMessageText logText;
+ _LIT(KEventCountCheck, "Checking event number = %d");
+ logText.Format(KEventCountCheck, iEventCount);
+ iTest->LOG_MESSAGE(logText);
+ _LIT(KEventType, "Actual Event type from Wserv = %d Expected Event Type = %d ");
+ logText.Format(KEventType, wsEvent.Type(), expectedEvent.Type());
+ iTest->LOG_MESSAGE(logText);
+#endif
+
+ TestL(wsEvent.Type() == expectedEvent.Type());
+
+#if defined(FAILLOG)
+ _LIT(KEventHandle, "Actual Window Handle from Wserv = %d Expected Window Handle = %d ");
+ logText.Format(KEventHandle, wsEvent.Handle(), expectedEvent.Handle());
+ iTest->LOG_MESSAGE(logText);
+#endif
+ TestL(wsEvent.Handle() == expectedEvent.Handle());
+
+ TAdvancedPointerEvent *expectedPointerEvent = expectedEvent.Pointer();
+ TAdvancedPointerEvent *actualPointerEvent = wsEvent.Pointer();
+
+ if (wsType == EEventPointer)
+ {
+#if defined(FAILLOG)
+ _LIT(KPointerType, "Actual PointerType from Wserv = %d Expected PointerType = %d ");
+ logText.Format(KPointerType, actualPointerEvent->iType, expectedPointerEvent->iType);
+ iTest->LOG_MESSAGE(logText);
+#endif
+ TestL(actualPointerEvent->iType == expectedPointerEvent->iType);
+
+#if defined(FAILLOG)
+ _LIT(KPointerPosition, "Actual PointerPosition from Wserv = (%d, %d) Expected PointerPosition = (%d, %d) ");
+ logText.Format(KPointerPosition, actualPointerEvent->iPosition.iX, actualPointerEvent->iPosition.iY, expectedPointerEvent->iPosition.iX, expectedPointerEvent->iPosition.iY);
+ iTest->LOG_MESSAGE(logText);
+#endif
+ TestL(actualPointerEvent->iPosition == expectedPointerEvent->iPosition);
+
+#if defined(FAILLOG)
+ _LIT(KPointerNumber, "Actual PointerNumber from Wserv = %d Expected PointerNumber = %d ");
+ logText.Format(KPointerNumber, actualPointerEvent->PointerNumber(), expectedPointerEvent->PointerNumber());
+ iTest->LOG_MESSAGE(logText);
+#endif
+ TestL(actualPointerEvent->PointerNumber() == expectedPointerEvent->PointerNumber());
+ }
+
+End:
+ // Call NextSetOfEvents() when all the events have been checked
+ if (iEventBuffer.Count()==0)
+ {
+ iTest->NextSetOfEventsL(); // Cannot Leave
+ }
+ }
+
+void CTPointerOffsetBuffer::TestL(TInt aTest)
+ {
+ if (!aTest)
+ {
+ iTest->Failed();
+ User::Leave(ETestFailed);
+ }
+ }
+
+//CTPointerOffsetClient
+CTPointerOffsetClient::CTPointerOffsetClient(CTPointerOffsetTest *aTest)
+ : iTest(aTest)
+ {
+ }
+
+CTPointerOffsetClient::~CTPointerOffsetClient()
+ {
+ delete iWin;
+ }
+
+void CTPointerOffsetClient::ConstructL()
+ {
+ CTClient::ConstructL();
+
+ // Create a group window and assign it iGroup
+ iGroup = new(ELeave) CTWindowGroup(this);
+ iGroup->ConstructL();
+
+ iWinSize = iScreen->SizeInPixels();
+ iWinPos = TPoint();
+
+ // Create window for this client so that events can come to this client
+ iWin=new(ELeave) CTBlankWindow();
+ iWin->ConstructL(*iGroup);
+ iWin->SetExt(iWinPos, iWinSize);
+ iWin->SetColor(KRgbRed);
+ iWin->BaseWin()->EnableAdvancedPointers();
+ iWin->Activate();
+ iWs.Flush();
+ }
+
+void CTPointerOffsetClient::AddExpectedPointerEvent(TPointerEvent::TType aType, TPoint aPos, TUint8 aPointerNumber, TUint aHandle)
+ {
+ TWsEvent ptrEvent;
+ ptrEvent.SetType(EEventPointer);
+ ptrEvent.Pointer()->iParentPosition = aPos;
+ ptrEvent.Pointer()->iType = aType;
+ ptrEvent.Pointer()->iPosition = aPos;
+ ptrEvent.SetPointerNumber(aPointerNumber);
+ if (!aHandle)
+ ptrEvent.SetHandle((TUint)iWin);
+ else
+ ptrEvent.SetHandle(aHandle);
+
+ static_cast<CTPointerOffsetBuffer*>(iEventHandler)->AddExpectedEvent(ptrEvent);
+ }
+
+void CTPointerOffsetClient::AddExpectedWsEvent(TEventCode aType, TInt /*aPointerNumber*/, TUint aHandle)
+ {
+ TWsEvent ptrEvent;
+ ptrEvent.SetType(aType);
+ if (!aHandle)
+ ptrEvent.SetHandle((TUint)iGroup);
+ else
+ ptrEvent.SetHandle(aHandle);
+ static_cast<CTPointerOffsetBuffer*>(iEventHandler)->AddExpectedEvent(ptrEvent);
+ }
+
+// Create and store CTPointerOffsetBuffer in iEventHandler
+void CTPointerOffsetClient::ConstructEventHandlerL()
+ {
+ CTPointerOffsetBuffer* eventBufferAndHandler = new(ELeave) CTPointerOffsetBuffer(&iWs, iTest, this);
+ eventBufferAndHandler->ConstructL();
+ iEventHandler = eventBufferAndHandler;
+ }
+
+//CTPointerOffsetTest
+CTPointerOffsetTest::CTPointerOffsetTest(CTestStep* aStep)
+ : CTWsGraphicsBase(aStep)
+ {
+ }
+
+CTPointerOffsetTest::~CTPointerOffsetTest()
+ {
+ delete iPointerOffsetClient;
+ }
+
+void CTPointerOffsetTest::ConstructL()
+ {
+ // If YOffsetValues are not defined in wsini file then just return without doing anything
+ _LIT(KWsIniFile, "z:\\system\\data\\wsini.ini");
+ CIniData* iniData = CIniData::NewL(KWsIniFile, ' ');
+ _LIT( KWsiniYShiftingTop, "YSHIFTINGTOP");
+ if (iniData->FindVar(KWsiniYShiftingTop, iYOffsetTop) == EFalse)
+ goto FAIL;
+ _LIT( KWsiniYShiftingBottom, "YSHIFTINGBOTTOM");
+ if (iniData->FindVar(KWsiniYShiftingBottom, iYOffsetBottom) == EFalse)
+ goto FAIL;
+ _LIT( KWsiniYShiftingMax, "YSHIFTINGMAX");
+ if (iniData->FindVar(KWsiniYShiftingMax, iYOffsetMax) == EFalse)
+ goto FAIL;
+ delete iniData;
+
+ if (!iYOffsetTop || !iYOffsetBottom || !iYOffsetMax)
+ {
+FAIL:
+ delete iniData;
+ TLogMessageText logText1;
+ _LIT(KWrongHALConfig, "Y Offset values are incorrect. \n");
+ logText1.Append(KWrongHALConfig);
+ LOG_MESSAGE(logText1);
+ TEST(EFalse);
+ User::Leave(KErrArgument);
+ }
+ iPhysicalScreenSize = TheClient->iScreen->SizeInPixels();
+
+ // If we fail to get the maxpointernumber then just test with single pointer
+ TInt ret = HAL::Get(HALData::EPointerMaxPointers, iMaxPointerNumbers);
+ if (ret != KErrNone || iMaxPointerNumbers < 2 || iMaxPointerNumbers > 8)
+ {
+ iMaxPointerNumbers = 1;
+ }
+ }
+
+// Common function for all tests
+// Important point to remember is that this function should not leave when running tests
+void CTPointerOffsetTest::NextSetOfEventsL()
+ {
+ // For each test case calls its respective tests
+ switch (iTest->iState)
+ {
+ case 0:
+ TestYOffsetValues();
+ break;
+ case 1:
+ TestYOffsetValues();
+ break;
+ default:
+ AutoPanic(EAutoPanicWrongTest);
+ }
+ }
+
+void CTPointerOffsetTest::SimulatePointerEvent(TRawEvent::TType aType, TInt aX, TInt aY, TUint8 aPointerNumber)
+ {
+ TRawEvent rawEvent;
+ rawEvent.Set(aType, aX, aY, 0, aPointerNumber);
+ UserSvr::AddEvent(rawEvent);
+ }
+
+void CTPointerOffsetTest::AddExpectedPointerEvent(TPointerEvent::TType aType, TInt aX, TInt aY, TUint8 aPointerNumber, TUint aHandle)
+ {
+ iPointerOffsetClient->AddExpectedPointerEvent(aType, TPoint(aX, aY), aPointerNumber, aHandle);
+ }
+
+void CTPointerOffsetTest::AddExpectedWsEvent(TEventCode aType, TInt aPointerNumber, TUint aHandle)
+ {
+ iPointerOffsetClient->AddExpectedWsEvent(aType, aPointerNumber, aHandle);
+ }
+
+// If any of the Tests fails, bring the wserv in a consistent state for other test to run,
+// stop ActiveScheduler and display some logs where the fail occured.
+void CTPointerOffsetTest::Failed()
+ {
+ // Display the test case number, subtest case number and number of events left in the buffer which can be used to
+ // find out which event actually caused the failure when any test fails
+ TLogMessageText logText1;
+ _LIT(KEventsAdded, "Test case number %d Sub test case number %d Events remaining in the buffer %d \n");
+ logText1.AppendFormat(KEventsAdded, iTest->iState, iEventSet, iPointerOffsetClient->EventBuffer()->EventsRemaining());
+ LOG_MESSAGE(logText1);
+ RDebug::Printf("Test case number %d Sub test case number %d Events remaining in the buffer %d \n", iTest->iState, iEventSet, iPointerOffsetClient->EventBuffer()->EventsRemaining());
+
+ CActiveScheduler::Stop();
+ iFailed=ETrue;
+ }
+
+// Get YValue after applying YOffset using iYOffsetTop, iYOffsetBottom and iYOffsetMax variables.
+// Depending upon the Y poistion of input, yOffset is gradually reduced from top of the screen to
+// bottom of the screen.
+TInt CTPointerOffsetTest::GetShiftedYValue(TInt aY)
+ {
+ if (!iYOffsetTop || !iYOffsetMax || !iYOffsetBottom)
+ return aY;
+
+ TInt offset = 0;
+ TInt returnValue = aY;
+ TInt displayHeight = TheClient->iScreen->SizeInPixels().iHeight;
+ if (aY >= iYOffsetMax)
+ {
+ // Gradual reduction of Yoffset depending upon the aY value
+ offset = iYOffsetTop + iYOffsetBottom - (iYOffsetTop * aY / displayHeight );
+ if ( offset > iYOffsetMax )
+ {
+ offset = iYOffsetMax;
+ }
+ returnValue -= offset;
+ if (returnValue > (displayHeight-1))
+ {
+ returnValue = displayHeight-1;
+ }
+ }
+ else
+ {
+ returnValue = 0;
+ }
+
+ return returnValue;
+ }
+
+// Common function for all test cases
+void CTPointerOffsetTest::RunTestsL()
+ {
+ // Create CTPointerOffsetClient for each test case and call NextSetOfEventsL()
+ iPointerOffsetClient = new(ELeave) CTPointerOffsetClient(this);
+ iPointerOffsetClient->SetScreenNumber(iTest->iScreenNumber);
+ iPointerOffsetClient->ConstructL();
+
+ iEventSet=0;
+
+ TRAPD(err, NextSetOfEventsL());
+ if (err != KErrNone)
+ {
+ iFailed = ETrue;
+ }
+
+ // Start nested activescheduler if it is not failed
+ if (!iFailed)
+ {
+ CActiveScheduler::Start();
+ }
+
+ TInt eventsRem = iPointerOffsetClient->EventBuffer()->EventsRemaining();
+ if (eventsRem > 0)
+ {
+ iFailed=ETrue;
+ }
+
+ delete iPointerOffsetClient;
+ iPointerOffsetClient = NULL;
+ }
+
+// This function is called by TestExecute Framework, through which all the testcases are run
+void CTPointerOffsetTest::RunTestCaseL(TInt /*aCurTestCase*/)
+ {
+ _LIT(KTest0, "PointerOffset tests");
+ _LIT(KTest1, "PointerOffset tests for other pointer");
+
+ switch(iTest->iState)
+ {
+ case 0:
+ iTest->LogSubTest(KTest0);
+ iPointerNumber = 0;
+ RunTestsL();
+ break;
+ case 1:
+ if (iMaxPointerNumbers == 1)
+ {
+ TestComplete();
+ }
+ else
+ {
+ iTest->LogSubTest(KTest1);
+ iPointerNumber = iMaxPointerNumbers-1;
+ RunTestsL();
+ }
+ break;
+ case 2:
+ // Keep this code in last case statement for main test completion
+ TestComplete();
+ break;
+ default:
+ AutoPanic(EAutoPanicWrongTest);
+ }
+
+ //
+ if (iFailed)
+ {
+ TEST(EFalse);
+ iFailed=EFalse;
+ }
+ ++iTest->iState;
+ }
+
+
+void CTPointerOffsetTest::TestYOffsetValues()
+ {
+ TLogMessageText logText;
+ _LIT(KSet, "Offset tests number : %d of 5");
+ logText.AppendFormat(KSet, iEventSet);
+ LOG_MESSAGE(logText);
+
+ TPoint simulatedPos(iPhysicalScreenSize.iWidth/2, iPhysicalScreenSize.iHeight/2);
+ TPoint expectedPos(simulatedPos);
+ switch(iEventSet++)
+ {
+ case 0:
+ // Test any point which has Y value less than YOffsetMax, where Y position would be 0
+ simulatedPos.iY = iYOffsetMax - 1;
+ SimulatePointerEvent(TRawEvent::EButton1Down, simulatedPos.iX, simulatedPos.iY, iPointerNumber);
+ SimulatePointerEvent(TRawEvent::EButton1Up, simulatedPos.iX, simulatedPos.iY, iPointerNumber);
+
+ expectedPos.iY = 0;
+ AddExpectedWsEvent(EEventFocusGained);
+ AddExpectedPointerEvent(TPointerEvent::EButton1Down, expectedPos.iX, expectedPos.iY, iPointerNumber);
+ AddExpectedPointerEvent(TPointerEvent::EButton1Up, expectedPos.iX, expectedPos.iY, iPointerNumber);
+ break;
+ case 1:
+ // Test any point which has Y value just over YOffsetMax
+ simulatedPos.iY = iYOffsetMax + 1;
+ SimulatePointerEvent(TRawEvent::EButton1Down, simulatedPos.iX, simulatedPos.iY, iPointerNumber);
+ SimulatePointerEvent(TRawEvent::EButton1Up, simulatedPos.iX, simulatedPos.iY, iPointerNumber);
+
+ expectedPos.iY = GetShiftedYValue(simulatedPos.iY);
+ AddExpectedPointerEvent(TPointerEvent::EButton1Down, expectedPos.iX, expectedPos.iY, iPointerNumber);
+ AddExpectedPointerEvent(TPointerEvent::EButton1Up, expectedPos.iX, expectedPos.iY, iPointerNumber);
+ break;
+ case 2:
+ // Test any point which has Y value middle of the screen
+ SimulatePointerEvent(TRawEvent::EButton1Down, simulatedPos.iX, simulatedPos.iY, iPointerNumber);
+ SimulatePointerEvent(TRawEvent::EButton1Up, simulatedPos.iX, simulatedPos.iY, iPointerNumber);
+
+ expectedPos.iY = GetShiftedYValue(simulatedPos.iY);
+ AddExpectedPointerEvent(TPointerEvent::EButton1Down, expectedPos.iX, expectedPos.iY, iPointerNumber);
+ AddExpectedPointerEvent(TPointerEvent::EButton1Up, expectedPos.iX, expectedPos.iY, iPointerNumber);
+ break;
+ case 3:
+ // Test any point which has Y value less than bottommost of the screen
+ simulatedPos.iY = iPhysicalScreenSize.iHeight - 10;
+ SimulatePointerEvent(TRawEvent::EButton1Down, simulatedPos.iX, simulatedPos.iY, iPointerNumber);
+ SimulatePointerEvent(TRawEvent::EButton1Up, simulatedPos.iX, simulatedPos.iY, iPointerNumber);
+
+ expectedPos.iY = GetShiftedYValue(simulatedPos.iY);
+ AddExpectedPointerEvent(TPointerEvent::EButton1Down, expectedPos.iX, expectedPos.iY, iPointerNumber);
+ AddExpectedPointerEvent(TPointerEvent::EButton1Up, expectedPos.iX, expectedPos.iY, iPointerNumber);
+ break;
+ case 4:
+ // Test any point which has Y value at bottom of the screen
+ // As pixels are zero counted and so it cannot be >= iPhysicalScreenSize.iHeight
+ simulatedPos.iY = iPhysicalScreenSize.iHeight-1;
+ SimulatePointerEvent(TRawEvent::EButton1Down, simulatedPos.iX, simulatedPos.iY, iPointerNumber);
+ SimulatePointerEvent(TRawEvent::EButton1Up, simulatedPos.iX, simulatedPos.iY, iPointerNumber);
+
+ expectedPos.iY = GetShiftedYValue(simulatedPos.iY);
+ AddExpectedPointerEvent(TPointerEvent::EButton1Down, expectedPos.iX, expectedPos.iY, iPointerNumber);
+ AddExpectedPointerEvent(TPointerEvent::EButton1Up, expectedPos.iX, expectedPos.iY, iPointerNumber);
+ break;
+ default:
+ CActiveScheduler::Stop();
+ }
+ }
+// Macro which is used for construction of CTPointerOffsetTestStep object
+// and also used to call CreateTestL() which creates CTPointerOffsetTest and CTestBase objects
+__WS_CONSTRUCT_STEP__(PointerOffsetTest)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/windowing/windowserver/tauto/tptroffset.h Thu Jul 15 20:08:02 2010 +0300
@@ -0,0 +1,155 @@
+// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+// All rights reserved.
+// This component and the accompanying materials are made available
+// under the terms of "Eclipse Public License v1.0"
+// which accompanies this distribution, and is available
+// at the URL "http://www.eclipse.org/legal/epl-v10.html".
+//
+// Initial Contributors:
+// Nokia Corporation - initial contribution.
+//
+// Contributors:
+//
+// Description:
+//
+
+/**
+ @file
+ @test
+ @internalComponent - Internal Symbian test code
+ */
+
+#ifndef TPTROFFSET_H_
+#define TPTROFFSET_H_
+
+#include <e32std.h>
+#include <e32cmn.h>
+#include "w32std.h"
+#include "../tlib/testbase.h"
+#include "AUTO.H"
+#include "AUTODLL.H"
+#include "TGraphicsHarness.h"
+
+
+class CTPointerOffsetTest;
+class CTPointerOffsetClient;
+
+/*
+ * CTEvent derived class which acts as eventhandler and eventbuffer
+ * Stores the events in buffer, which is used for comparing events received from wserv.
+ */
+class CTPointerOffsetBuffer : public CTEvent
+ {
+ enum {EEventBufferSize=40};
+public:
+ CTPointerOffsetBuffer(RWsSession *aWs, CTPointerOffsetTest *aTest, CTPointerOffsetClient* aClient);
+ ~CTPointerOffsetBuffer();
+ void ConstructL();
+ void AddExpectedEvent(TWsEvent &aEvent);
+ TInt EventsRemaining();
+ void SetEventCount(TInt aCount) {iEventCount = aCount;}
+
+protected:
+ // Pure virtual from CTEventBase
+ void doRunL();
+private:
+ void TestL(TInt aTest);
+
+private:
+ CCirBuf<TWsEvent> iEventBuffer;
+ CTPointerOffsetTest* iTest;
+ TInt iEventCount;
+ CTPointerOffsetClient* iClient;
+ };
+
+/*
+ * CTClient derived class which gives Wserv client environment
+ * i,e iWs, iScreen, iGc, iGroup, iEventHandler etc...
+ * Owns CTPointerOffsetBuffer and stores in iEventhandler of its base class
+ * Accepts the event from test class and passes them on to buffer class
+ */
+class CTPointerOffsetClient : public CTClient
+ {
+public:
+ CTPointerOffsetClient(CTPointerOffsetTest *aTest);
+ ~CTPointerOffsetClient();
+ void ConstructL();
+
+ inline CTBlankWindow* Win() { return iWin; }
+ inline CTPointerOffsetBuffer* EventBuffer() {return static_cast<CTPointerOffsetBuffer*>(iEventHandler);}
+
+ void AddExpectedPointerEvent(TPointerEvent::TType aType, TPoint aPos, TUint8 aPointerNumber, TUint aHandle = 0);
+ void AddExpectedWsEvent(TEventCode aType, TInt aPointerNumber = 0, TUint aHandle = 0);
+
+ // Virtual from CTClient
+ void ConstructEventHandlerL();
+
+private:
+ CTPointerOffsetTest* iTest;
+ TSize iWinSize;
+ TPoint iWinPos;
+ CTBlankWindow* iWin;
+ };
+
+
+/*
+ * CTWsGraphicsBase derived class which implements RunTestCaseL pure virtual.
+ * Runs all the testcases for pointer events which have offset.
+ * For each test case it creates CTPointerOffsetClient object and creates a nested activescheduler
+ * Calls NextSetOfEventsL() which in turn calls respective tests depending upon the testcase number
+ * For each test, simulate the events and adds the same to CTPointerOffsetBuffer
+ * When all the tests for a particular testcase completes, stops activescheduler.
+ * Repeats the same for all testcases
+ */
+class CTPointerOffsetTest : public CTWsGraphicsBase
+ {
+public:
+ CTPointerOffsetTest(CTestStep* aStep);
+ ~CTPointerOffsetTest();
+ void ConstructL();
+ void NextSetOfEventsL();
+ void Failed();
+
+ // Function for simulating events, which use UserSvr::AddEvent
+ void SimulatePointerEvent(TRawEvent::TType aType, TInt aX, TInt aY, TUint8 aPointerNumber);
+
+ // Function for adding event, calls the client's AddExpectedPointer
+ void AddExpectedPointerEvent(TPointerEvent::TType aType, TInt aX, TInt aY, TUint8 aPointerNumber, TUint aHandle = 0);
+ void AddExpectedWsEvent(TEventCode aType, TInt aPointerNumber = 0, TUint aHandle = 0);
+
+ // Supplementary function for tests
+ TInt GetShiftedYValue(TInt aY);
+
+ // All tests function can come here
+ void TestYOffsetValues();
+
+protected:
+ void RunTestCaseL(TInt aCurTestCase);
+private:
+ void RunTestsL();
+private:
+ TInt iYOffsetTop;
+ TInt iYOffsetBottom;
+ TInt iYOffsetMax;
+
+ TInt iEventSet; // Set of events for one particular test case
+ TBool iFailed;
+ TSize iPhysicalScreenSize;
+ TInt iPointerNumber;
+ TInt iMaxPointerNumbers;
+
+ CTPointerOffsetClient *iPointerOffsetClient;
+ };
+
+class CTPointerOffsetTestStep : public CTGraphicsStep
+ {
+public:
+ CTPointerOffsetTestStep();
+protected:
+ //from CTGraphicsStep
+ virtual CTGraphicsBase* CreateTestL();
+ };
+
+_LIT(KTPointerOffsetTestStep, "TPointerOffsetTest");
+
+#endif /*TPTROFFSET_H_*/
--- a/windowing/windowserver/test/TAutoServer/TAutoServer.cpp Mon Jun 21 17:08:43 2010 +0300
+++ b/windowing/windowserver/test/TAutoServer/TAutoServer.cpp Thu Jul 15 20:08:02 2010 +0300
@@ -1,4 +1,4 @@
-// Copyright (c) 2005-2009 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"
@@ -85,6 +85,7 @@
#include "tmultiptrevent.h"
#include "tdrawresource.h"
#include "twindowsizecache.h"
+#include "tptroffset.h"
/* Path to the script
z:\GraphicsTest\gditest.script
@@ -336,6 +337,8 @@
testStep = new CTDrawResourceStep();
else if(aStepName == KTWindowSizeCacheTestStep)
testStep = new CTWindowSizeCacheTestStep();
+ else if(aStepName == KTPointerOffsetTestStep)
+ testStep = new CTPointerOffsetTestStep();
#endif
return testStep;
}
--- a/windowing/windowserver/test/TAutoServer/openwfc/TAutoServer_nga.mmp Mon Jun 21 17:08:43 2010 +0300
+++ b/windowing/windowserver/test/TAutoServer/openwfc/TAutoServer_nga.mmp Thu Jul 15 20:08:02 2010 +0300
@@ -1,4 +1,4 @@
-// Copyright (c) 2006-2009 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"
@@ -102,6 +102,8 @@
SOURCE tmultiptrevent.cpp
SOURCE tdrawresource.cpp
SOURCE twindowsizecache.cpp
+SOURCE tptroffset.cpp
+
//Required to test CommamdBuffer::Play using MWsGraphicsContext in tgc
SOURCE directgdigcwrapper.cpp
--- a/windowing/windowserver/test/scripts/wstest_t_pointershifttest_nga.script Mon Jun 21 17:08:43 2010 +0300
+++ b/windowing/windowserver/test/scripts/wstest_t_pointershifttest_nga.script Thu Jul 15 20:08:02 2010 +0300
@@ -1,5 +1,5 @@
//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+// Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
// All rights reserved.
// This component and the accompanying materials are made available
// under the terms of "Eclipse Public License v1.0"
@@ -14,24 +14,24 @@
// Description:
//
-PRINT Run WServ NGA pointer event tests on screen 0
+PRINT Run WServ YShifting pointer offset test on screen 0
LOAD_SUITE tautoserver_nga
PRINT Run Final WServ pointer shift tests on screen 0
DELAY 5000
//!@SYMTestCaseID graphics-wserv-CR2052-0001
-//!@SYMPREQ CR2052
-//!@SYMTestCaseDesc Test pointer event positions for offset YSHIFTING in wsini.ini
-//!@SYMTestActions Simulate the pointer click events in various positions/rotations. A keyword YSHIFTING with a value greater than 0 should required to test the pointer offset.
-//! Add those event in event queue and retrieve the positions from the event queue for verification
+//!@SYMPREQ CR2052
+//!@SYMTestCaseDesc Test pointer event positions for offset YSHIFTINGTOP, YSHIFTINGBOTTOM and YSHIFTINGMAX values in wsini.ini
+//!@SYMTestActions Simulate the pointer click events in various positions on the screen. The above keywords with a value other than 0
+//! is required to test the pointer offset. Add those event in event queue and retrieve the positions from the event queue for verification.
+//! Repeat the above tests for different pointer number.
//!@SYMTestStatus Implemented
//!@SYMTestPriority 2
-//!@SYMTestExpectedResults Simlated pointer position and expected pointer positions should match.
+//!@SYMTestExpectedResults Simlated pointer position and expected pointer positions should match.
//!@SYMTestType CT
-RUN_TEST_STEP 1500 tautoserver_nga TEventTest
-RUN_TEST_STEP 200 tautoserver_nga TMultiPtrEventTest
+RUN_TEST_STEP 1500 tautoserver_nga TPointerOffsetTest