# HG changeset patch # User William Roberts # Date 1279035394 -3600 # Node ID f8aba17c1a8c381f7e58b3186549c650e7eeff3b # Parent 3bd7be4c92788250eb4e72ca7fa799c140f3de91# Parent 16f8e3c1d75c49f68e0274fb1e24fe41491e4656 Re-merge fixes for bug 26, bug 2098, NVGRenderStage code and ini file changes diff -r 16f8e3c1d75c -r f8aba17c1a8c fontsupport/fontprovider/Src/FontProvider.cpp --- a/fontsupport/fontprovider/Src/FontProvider.cpp Wed Jun 30 12:29:41 2010 +0100 +++ b/fontsupport/fontprovider/Src/FontProvider.cpp Tue Jul 13 16:36:34 2010 +0100 @@ -234,6 +234,12 @@ //end +#define EElafLFLoReLangs ( EElafLangs \ + | EChineseLangsPRCLF) + + +#define EElafLFHiReLangs ( EElafLangs \ + | EChineseLangsPRCHiResLF) // Wildcard value for langs (font is to be used for all languages) #define EAnyLangs 0xffffffff const TInt KAknFontStylesSupported(3); @@ -334,6 +340,28 @@ } CDL_ARRAY_END(SHeightRequest, latinHeightRequestArray); +CDL_ARRAY_START( SHeightRequest, latinLFHeightRequestArray) + { + { 2, 2 }, + { 10, 8 }, + { 11, 9 }, + { 13, 11 }, + { 14, 12 }, + { 14, 13 }, + { 16, 14 }, + { 18, 15 }, + { 19, 16 }, + { 24, 21 }, + { 25, 22 }, + { 26, 24 }, + { 27, 25 }, + { 28, 26 }, + { 29, 26 }, + { 30, 27 }, + { 79, 72 }, + { 218, 200 }, + } +CDL_ARRAY_END(SHeightRequest, latinLFHeightRequestArray); CDL_ARRAY_START( SHeightRequest, agfaDigitalHeightRequestArray) { @@ -580,7 +608,9 @@ { EChineseLangsTaiwanHKHiResLF, LIT_AS_DESC_PTR(KS60TCHKHRSANSRLF) }, { EJapaneseLFLangs, LIT_AS_DESC_PTR(KS60JAPSANSRLF) }, { EKoreanLFLangs, LIT_AS_DESC_PTR(KS60KORSANSRLF) }, - //end + { EElafLFHiReLangs, LIT_AS_DESC_PTR(KS60SCHRSANSRLF) }, + { EElafLFLoReLangs, LIT_AS_DESC_PTR(KS60SCSANSRLF) }, + //end { EAnyLangs, LIT_AS_DESC_PTR(KS60Sans) } // Ultimate fallback } CDL_ARRAY_END(SAknLanguagesAndTypefaceTableLine, languagesAndTypefaceTable); @@ -764,6 +794,38 @@ { EAknFontCategoryTitle, EAny, EAny, EAny, EAny, EAny, ENotBold, EAntialiase, EKoreanLFLangs, LIT_AS_DESC_PTR(KS60KORSANSTTLSMBLDLF), LIT_AS_DESC_PTR(KS60Group), &koreanVectorFontBaselineArray, &koreanLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, { EAknFontCategoryAny, 8, 17, EAny, EAny, EAny, ENotBold, ENotAntialiase, EKoreanLFLangs, LIT_AS_DESC_PTR(KS60Korean), LIT_AS_DESC_PTR(KS60Group), &koreanVectorFontBaselineArray, &koreanLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, { EAknFontCategoryAny, EAny, EAny, EAny, EAny, EAny, ENotBold, EAntialiase, EKoreanLFLangs, LIT_AS_DESC_PTR(KS60Korean), LIT_AS_DESC_PTR(KS60Group), &koreanVectorFontBaselineArray, &koreanLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, +//western SC link + //stroke font + { EAknFontCategorySecondary, 10, 15, EStrokeWeightNormal, 0, EAny, ENotBold, ENotAntialiase, EElafLFLoReLangs, LIT_AS_DESC_PTR(KS60SCSANSRLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategorySecondary, EAny, EAny, EStrokeWeightNormal, EAny, EAny, ENotBold, EAntialiase, EElafLFLoReLangs, LIT_AS_DESC_PTR(KS60SCSANSRLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategorySecondary, 10, 15, EStrokeWeightBold, 0, EAny, ENotBold, ENotAntialiase, EElafLFLoReLangs, LIT_AS_DESC_PTR(KS60SCSANSSBLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategorySecondary, EAny, EAny, EStrokeWeightBold, EAny, EAny, ENotBold, EAntialiase, EElafLFLoReLangs, LIT_AS_DESC_PTR(KS60SCSANSSBLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategoryPrimarySmall, 10, 15, EAny, 0, EAny, ENotBold, ENotAntialiase, EElafLFLoReLangs, LIT_AS_DESC_PTR(KS60SCSANSSBLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategoryPrimarySmall, EAny, EAny, EAny, EAny, EAny, ENotBold, EAntialiase, EElafLFLoReLangs, LIT_AS_DESC_PTR(KS60SCSANSSBLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategoryPrimary, 10, 15, EAny, 0, EAny, ENotBold, ENotAntialiase, EElafLFLoReLangs, LIT_AS_DESC_PTR(KS60SCSANSSBLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategoryPrimary, EAny, EAny, EAny, EAny, EAny, ENotBold, EAntialiase, EElafLFLoReLangs, LIT_AS_DESC_PTR(KS60SCSANSSBLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategoryTitle, 10, 17, EAny, 0, EAny, ENotBold, ENotAntialiase, EElafLFLoReLangs, LIT_AS_DESC_PTR(KS60SCSANSTTLSMBLDLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategoryTitle, EAny, EAny, EAny, EAny, EAny, ENotBold, EAntialiase, EElafLFLoReLangs, LIT_AS_DESC_PTR(KS60SCSANSTTLSMBLDLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategoryAny, 10, 15, EStrokeWeightNormal, 0, EAny, ENotBold, ENotAntialiase, EElafLFLoReLangs, LIT_AS_DESC_PTR(KS60SCSANSRLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategoryAny, EAny, EAny, EStrokeWeightNormal, EAny, EAny, ENotBold, EAntialiase, EElafLFLoReLangs, LIT_AS_DESC_PTR(KS60SCSANSRLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategoryAny, 10, 15, EStrokeWeightBold, 0, EAny, ENotBold, ENotAntialiase, EElafLFLoReLangs, LIT_AS_DESC_PTR(KS60SCSANSSBLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategoryAny, EAny, EAny, EStrokeWeightBold, EAny, EAny, ENotBold, EAntialiase, EElafLFLoReLangs, LIT_AS_DESC_PTR(KS60SCSANSSBLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + + //hi-res fonts + { EAknFontCategorySecondary, 10, 15, EStrokeWeightNormal, 0, EAny, ENotBold, ENotAntialiase, EElafLFHiReLangs, LIT_AS_DESC_PTR(KS60SCSANSRLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategorySecondary, EAny, EAny, EStrokeWeightNormal, EAny, EAny, ENotBold, EAntialiase, EElafLFHiReLangs, LIT_AS_DESC_PTR(KS60SCSANSRLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategorySecondary, 10, 15, EStrokeWeightBold, 0, EAny, ENotBold, ENotAntialiase, EElafLFHiReLangs, LIT_AS_DESC_PTR(KS60SCSANSSBLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategorySecondary, EAny, EAny, EStrokeWeightBold, EAny, EAny, ENotBold, EAntialiase, EElafLFHiReLangs, LIT_AS_DESC_PTR(KS60SCSANSSBLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategoryPrimarySmall, 10, 15, EAny, 0, EAny, ENotBold, ENotAntialiase, EElafLFHiReLangs, LIT_AS_DESC_PTR(KS60SCSANSSBLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategoryPrimarySmall, EAny, EAny, EAny, EAny, EAny, ENotBold, EAntialiase, EElafLFHiReLangs, LIT_AS_DESC_PTR(KS60SCSANSSBLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategoryPrimary, 10, 15, EAny, 0, EAny, ENotBold, ENotAntialiase, EElafLFHiReLangs, LIT_AS_DESC_PTR(KS60SCSANSSBLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategoryPrimary, EAny, EAny, EAny, EAny, EAny, ENotBold, EAntialiase, EElafLFHiReLangs, LIT_AS_DESC_PTR(KS60SCSANSSBLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategoryTitle, 10, 17, EAny, 0, EAny, ENotBold, ENotAntialiase, EElafLFHiReLangs, LIT_AS_DESC_PTR(KS60SCSANSTTLSMBLDLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategoryTitle, EAny, EAny, EAny, EAny, EAny, ENotBold, EAntialiase, EElafLFHiReLangs, LIT_AS_DESC_PTR(KS60SCSANSTTLSMBLDLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategoryAny, 10, 15, EStrokeWeightNormal, 0, EAny, ENotBold, ENotAntialiase, EElafLFHiReLangs, LIT_AS_DESC_PTR(KS60SCSANSRLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategoryAny, EAny, EAny, EStrokeWeightNormal, EAny, EAny, ENotBold, EAntialiase, EElafLFHiReLangs, LIT_AS_DESC_PTR(KS60SCSANSRLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategoryAny, 10, 15, EStrokeWeightBold, 0, EAny, ENotBold, ENotAntialiase, EElafLFHiReLangs, LIT_AS_DESC_PTR(KS60SCSANSSBLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, + { EAknFontCategoryAny, EAny, EAny, EStrokeWeightBold, EAny, EAny, ENotBold, EAntialiase, EElafLFHiReLangs, LIT_AS_DESC_PTR(KS60SCSANSSBLF), LIT_AS_DESC_PTR(KS60Group), NULL, &latinLFHeightRequestArray, LIT_AS_DESC_PTR(KWesternFontMaxExtentText) }, //end }; // ============================ GLOBAL FUNCTIONS ======================================== @@ -925,7 +987,18 @@ } else { - requiredLangs |= EElafLangs; + if(fLinkedFonts && fHiResFonts) + { + requiredLangs |= EElafLFHiReLangs; + } + else if(fLinkedFonts) + { + requiredLangs |= EElafLFLoReLangs; + } + else + { + requiredLangs |= EElafLangs; + } } return requiredLangs; @@ -2236,6 +2309,10 @@ _LIT(KJAPStop, "[JAP_LINK_STOP]"); _LIT(KKORStart, "[KOR_LINK_START]"); _LIT(KKORStop, "[KOR_LINK_STOP]"); + _LIT(KWESTLINKLRStart, "[WESTERN_LINKLR_START]"); + _LIT(KWESTLINKLRStop, "[WESTERN_LINKLR_STOP]"); + _LIT(KWESTLINKHRStart, "[WESTERN_LINKHR_START]"); + _LIT(KWESTLINKHRStop, "[WESTERN_LINKHR_STOP]"); TInt ret = KErrNone; RPointerArray fontfiles; @@ -2309,7 +2386,23 @@ tfile.Seek(ESeekStart); ret = DoPopulateAndCreateLinkFontsL(tfile, startTok, stopTok); } - + if((!fChinese) && (!fKorean) && (!fJapanese) )//western linked fonts + { + if(fHiResFonts) + { + startTok.Copy(KWESTLINKHRStart); + stopTok.Copy(KWESTLINKHRStop); + tfile.Seek(ESeekStart); + ret = DoPopulateAndCreateLinkFontsL(tfile, startTok, stopTok); + } + else + { + startTok.Copy(KWESTLINKLRStart); + stopTok.Copy(KWESTLINKLRStop); + tfile.Seek(ESeekStart); + ret = DoPopulateAndCreateLinkFontsL(tfile, startTok, stopTok); + } + } } @@ -2364,6 +2457,8 @@ ref +=KAknFontStylesSupported; if(fKorean) ref +=KAknFontStylesSupported; + if((!fChinese) && (!fKorean) && (!fJapanese)) + ref +=KAknFontStylesSupported;//western linked fonts } for (TInt i = 0; i < noOfTypefaces; i++) { @@ -2431,6 +2526,25 @@ } } + if (!fChinese && !fJapanese && !fKorean && fHiResFonts) + { + if (typefaceInfo.iTypeface.iName.Compare(KS60SCHRSANSRLF)==0|| + typefaceInfo.iTypeface.iName.Compare(KS60SCHRSANSSBLF)==0|| + typefaceInfo.iTypeface.iName.Compare(KS60SCHRSANSTTLSMBLDLF)==0) + { + files++; + } + + } + else if (!fChinese && !fJapanese && !fKorean) + { + if (typefaceInfo.iTypeface.iName.Compare(KS60SCSANSRLF)==0|| + typefaceInfo.iTypeface.iName.Compare(KS60SCSANSSBLF)==0|| + typefaceInfo.iTypeface.iName.Compare(KS60SCSANSTTLSMBLDLF)==0) + { + files++; + } + } } } if (files && (ref == files) ) diff -r 16f8e3c1d75c -r f8aba17c1a8c fontsupport/fontprovider/data/link.ini Binary file fontsupport/fontprovider/data/link.ini has changed diff -r 16f8e3c1d75c -r f8aba17c1a8c fontsupport/fontutils/group/typefaces_s60_Japanese.xml --- a/fontsupport/fontutils/group/typefaces_s60_Japanese.xml Wed Jun 30 12:29:41 2010 +0100 +++ b/fontsupport/fontutils/group/typefaces_s60_Japanese.xml Tue Jul 13 16:36:34 2010 +0100 @@ -1,10 +1,10 @@ - + - + \ No newline at end of file diff -r 16f8e3c1d75c -r f8aba17c1a8c fontsupport/fontutils/group/typefaces_s60_Korean.xml --- a/fontsupport/fontutils/group/typefaces_s60_Korean.xml Wed Jun 30 12:29:41 2010 +0100 +++ b/fontsupport/fontutils/group/typefaces_s60_Korean.xml Tue Jul 13 16:36:34 2010 +0100 @@ -1,10 +1,10 @@ - + - + \ No newline at end of file diff -r 16f8e3c1d75c -r f8aba17c1a8c fontsupport/fontutils/group/typefaces_s60_Simplified_Chinese.xml --- a/fontsupport/fontutils/group/typefaces_s60_Simplified_Chinese.xml Wed Jun 30 12:29:41 2010 +0100 +++ b/fontsupport/fontutils/group/typefaces_s60_Simplified_Chinese.xml Tue Jul 13 16:36:34 2010 +0100 @@ -1,10 +1,10 @@ - + - + \ No newline at end of file diff -r 16f8e3c1d75c -r f8aba17c1a8c fontsupport/fontutils/group/typefaces_s60_Simplified_Traditional.xml --- a/fontsupport/fontutils/group/typefaces_s60_Simplified_Traditional.xml Wed Jun 30 12:29:41 2010 +0100 +++ b/fontsupport/fontutils/group/typefaces_s60_Simplified_Traditional.xml Tue Jul 13 16:36:34 2010 +0100 @@ -1,52 +1,52 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + \ No newline at end of file diff -r 16f8e3c1d75c -r f8aba17c1a8c fontsupport/fontutils/group/typefaces_s60_Traditional_Chinese.xml --- a/fontsupport/fontutils/group/typefaces_s60_Traditional_Chinese.xml Wed Jun 30 12:29:41 2010 +0100 +++ b/fontsupport/fontutils/group/typefaces_s60_Traditional_Chinese.xml Tue Jul 13 16:36:34 2010 +0100 @@ -1,10 +1,10 @@ - + - + \ No newline at end of file diff -r 16f8e3c1d75c -r f8aba17c1a8c fontsupport/fontutils/rom/fonts_variant.iby --- a/fontsupport/fontutils/rom/fonts_variant.iby Wed Jun 30 12:29:41 2010 +0100 +++ b/fontsupport/fontutils/rom/fonts_variant.iby Tue Jul 13 16:36:34 2010 +0100 @@ -23,8 +23,8 @@ #include #endif -// Rasteriser always included -ECOM_PLUGIN(ityperast.dll, ityperast.RSC) +// include ityperast.iby +#include // Include proper font set based on configuration #ifdef __CHINESE @@ -88,11 +88,32 @@ data=ABI_DIR\BUILD_DIR\Series60Korean.ttf resource\Fonts\Series60Korean.ttf #else // Must be western - +#ifndef FF_LINKED_FONTS_CHINESE data=ABI_DIR\BUILD_DIR\s60snr.ttf resource\Fonts\s60snr.ttf data=ABI_DIR\BUILD_DIR\s60ssb.ttf resource\Fonts\s60ssb.ttf data=ABI_DIR\BUILD_DIR\s60tsb.ttf resource\Fonts\s60tsb.ttf +#else + #ifdef FF_CHINESE_FONTS_HIRES + // HiRes fonts only used in high resolutions + #if defined(__LAYOUT_360_640_TOUCH) || defined(__LAYOUT_640_360_TOUCH) \ + || defined(__LAYOUT_320_480) || defined(__LAYOUT_320_480_TOUCH) \ + || defined(__LAYOUT_480_320) || defined(__LAYOUT_480_320_TOUCH) \ + || defined(__LAYOUT_480_640) || defined(__LAYOUT_480_640_TOUCH) \ + || defined(__LAYOUT_640_480) || defined(__LAYOUT_640_480_TOUCH) \ + || defined (FF_LAYOUT_480_640_VGA3) || defined (FF_LAYOUT_640_480_VGA3) + + // Reso OK, include HiRes font + data=ABI_DIR\BUILD_DIR\S60SC_C.ttf resource\Fonts\S60SC_C.ttf + #else + // Invalid configuration: HiRes fonts enabled in low or unknown resolution device + #error "Feature configuration error: Chinese HiRes fonts not supported in this resolution!" + #endif + + #else // Not FF_CHINESE_FONTS_HIRES - use regular stroke + data=ABI_DIR\BUILD_DIR\S60SC.ccc resource\Fonts\S60SC.ccc + #endif +#endif #endif //__CHINESE #ifdef FF_LINKED_FONTS_CHINESE @@ -133,7 +154,7 @@ #else // Must be western -data=ABI_DIR\BUILD_DIR\typefaces_s60_English.xml resource\Fonts\typefaces.xml +data=ABI_DIR\BUILD_DIR\typefaces_s60_Simplified_Chinese.xml resource\Fonts\typefaces.xml #endif //__CHINESE diff -r 16f8e3c1d75c -r f8aba17c1a8c locales/loce32/Coltab/group/Coltab.mmp --- a/locales/loce32/Coltab/group/Coltab.mmp Wed Jun 30 12:29:41 2010 +0100 +++ b/locales/loce32/Coltab/group/Coltab.mmp Tue Jul 13 16:36:34 2010 +0100 @@ -20,4 +20,4 @@ CAPABILITY CAP_APPLICATION SOURCEPATH ../src SOURCE coltab.cpp -//SYSTEMINCLUDE /epoc32/include + diff -r 16f8e3c1d75c -r f8aba17c1a8c locales/loce32/bld.inf --- a/locales/loce32/bld.inf Wed Jun 30 12:29:41 2010 +0100 +++ b/locales/loce32/bld.inf Tue Jul 13 16:36:34 2010 +0100 @@ -21,8 +21,8 @@ PRJ_EXPORTS -// IBY-files -rom/elocl.iby LANGUAGE_MW_LAYER_IBY_EXPORT_PATH(elocl.iby) +// languages.confml export +rom/languages.confml /epoc32/rom/config/global/confml/languages.confml PRJ_MMPFILES // List of MMP files diff -r 16f8e3c1d75c -r f8aba17c1a8c locales/loce32/region/src/region_gb.cpp --- a/locales/loce32/region/src/region_gb.cpp Wed Jun 30 12:29:41 2010 +0100 +++ b/locales/loce32/region/src/region_gb.cpp Tue Jul 13 16:36:34 2010 +0100 @@ -28,11 +28,11 @@ const TDateFormat RegionAspect::DateFormat = EDateEuropean; const TTimeFormat RegionAspect::TimeFormat = ETime12; const TLocalePos RegionAspect::CurrencySymbolPosition = ELocaleBefore; -const TBool RegionAspect::CurrencySpaceBetween = ETrue; +const TBool RegionAspect::CurrencySpaceBetween = EFalse; const TInt RegionAspect::CurrencyDecimalPlaces = 2; const TLocale::TNegativeCurrencyFormat RegionAspect::NegativeCurrencyFormat=TLocale::TNegativeCurrencyFormat(TLocale::ELeadingMinusSign); // replacing CurrencyNegativeInBrackets const TBool RegionAspect::CurrencyTriadsAllowed = ETrue; -const TText * const RegionAspect::ThousandsSeparator = _S(" "); +const TText * const RegionAspect::ThousandsSeparator = _S(","); const TText * const RegionAspect::DecimalSeparator = _S("."); const TText * const RegionAspect::DateSeparator[KMaxDateSeparators] = {_S(""),_S("/"),_S("/"),_S("")}; const TText * const RegionAspect::TimeSeparator[KMaxTimeSeparators] = {_S(""),_S(":"),_S(":"),_S("")}; diff -r 16f8e3c1d75c -r f8aba17c1a8c locales/loce32/region/src/region_sk.cpp --- a/locales/loce32/region/src/region_sk.cpp Wed Jun 30 12:29:41 2010 +0100 +++ b/locales/loce32/region/src/region_sk.cpp Tue Jul 13 16:36:34 2010 +0100 @@ -35,7 +35,7 @@ const TText * const RegionAspect::ThousandsSeparator = _S(" "); const TText * const RegionAspect::DecimalSeparator = _S(","); const TText * const RegionAspect::DateSeparator[KMaxDateSeparators] = {_S(""),_S(". "),_S(". "),_S("")}; -const TText * const RegionAspect::TimeSeparator[KMaxTimeSeparators] = {_S(""),_S("."),_S("."),_S("")}; +const TText * const RegionAspect::TimeSeparator[KMaxTimeSeparators] = {_S(""),_S(":"),_S(":"),_S("")}; const TLocalePos RegionAspect::AmPmSymbolPosition = ELocaleAfter; const TBool RegionAspect::AmPmSpaceBetween = ETrue; const TDaylightSavingZone RegionAspect::HomeDaylightSavingZone = EDstEuropean; diff -r 16f8e3c1d75c -r f8aba17c1a8c locales/loce32/rom/Elocl.iby --- a/locales/loce32/rom/Elocl.iby Wed Jun 30 12:29:41 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,377 +0,0 @@ -/* -* Copyright (c) 2003 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: Defines Series60 localized files -* -*/ - - - -#ifndef __ELOCL_IBY__ -#define __ELOCL_IBY__ - -#ifdef EKA2 - -#if defined __LOCALES_01_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.001 SHARED_LIB_DIR\elocl_lan.001 -file=ABI_DIR\BUILD_DIR\elocl_reg.826 SHARED_LIB_DIR\elocl_reg.826 -file=ABI_DIR\BUILD_DIR\elocl_col.001 SHARED_LIB_DIR\elocl_col.001 -#endif // __LOCALES_01_IBY__ - -#if defined __LOCALES_02_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.002 SHARED_LIB_DIR\elocl_lan.002 -file=ABI_DIR\BUILD_DIR\elocl_reg.250 SHARED_LIB_DIR\elocl_reg.250 -file=ABI_DIR\BUILD_DIR\elocl_col.002 SHARED_LIB_DIR\elocl_col.002 -#endif // __LOCALES_02_IBY__ - -#if defined __LOCALES_03_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.003 SHARED_LIB_DIR\elocl_lan.003 -file=ABI_DIR\BUILD_DIR\elocl_reg.276 SHARED_LIB_DIR\elocl_reg.276 -file=ABI_DIR\BUILD_DIR\elocl_col.003 SHARED_LIB_DIR\elocl_col.003 -#endif // __LOCALES_03_IBY__ - -#if defined __LOCALES_04_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.004 SHARED_LIB_DIR\elocl_lan.004 -file=ABI_DIR\BUILD_DIR\elocl_reg.724 SHARED_LIB_DIR\elocl_reg.724 -file=ABI_DIR\BUILD_DIR\elocl_col.004 SHARED_LIB_DIR\elocl_col.004 -#endif // __LOCALES_04_IBY__ - -#if defined __LOCALES_05_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.005 SHARED_LIB_DIR\elocl_lan.005 -file=ABI_DIR\BUILD_DIR\elocl_reg.380 SHARED_LIB_DIR\elocl_reg.380 -file=ABI_DIR\BUILD_DIR\elocl_col.005 SHARED_LIB_DIR\elocl_col.005 -#endif // __LOCALES_05_IBY__ - -#if defined __LOCALES_06_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.006 SHARED_LIB_DIR\elocl_lan.006 -file=ABI_DIR\BUILD_DIR\elocl_reg.752 SHARED_LIB_DIR\elocl_reg.752 -file=ABI_DIR\BUILD_DIR\elocl_col.006 SHARED_LIB_DIR\elocl_col.006 -#endif // __LOCALES_06_IBY__ - -#if defined __LOCALES_07_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.007 SHARED_LIB_DIR\elocl_lan.007 -file=ABI_DIR\BUILD_DIR\elocl_reg.208 SHARED_LIB_DIR\elocl_reg.208 -file=ABI_DIR\BUILD_DIR\elocl_col.007 SHARED_LIB_DIR\elocl_col.007 -#endif // __LOCALES_07_IBY__ - -#if defined __LOCALES_08_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.008 SHARED_LIB_DIR\elocl_lan.008 -file=ABI_DIR\BUILD_DIR\elocl_reg.578 SHARED_LIB_DIR\elocl_reg.578 -file=ABI_DIR\BUILD_DIR\elocl_col.008 SHARED_LIB_DIR\elocl_col.008 -#endif // __LOCALES_08_IBY__ - -#if defined __LOCALES_09_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.009 SHARED_LIB_DIR\elocl_lan.009 -file=ABI_DIR\BUILD_DIR\elocl_reg.246 SHARED_LIB_DIR\elocl_reg.246 -file=ABI_DIR\BUILD_DIR\elocl_col.009 SHARED_LIB_DIR\elocl_col.009 -#endif // __LOCALES_09_IBY__ - -#if defined __LOCALES_10_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.010 SHARED_LIB_DIR\elocl_lan.010 -file=ABI_DIR\BUILD_DIR\elocl_reg.840 SHARED_LIB_DIR\elocl_reg.840 -file=ABI_DIR\BUILD_DIR\elocl_col.010 SHARED_LIB_DIR\elocl_col.010 -#endif // __LOCALES_10_IBY__ - -#if defined __LOCALES_13_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.013 SHARED_LIB_DIR\elocl_lan.013 -file=ABI_DIR\BUILD_DIR\elocl_reg.620 SHARED_LIB_DIR\elocl_reg.620 -file=ABI_DIR\BUILD_DIR\elocl_col.013 SHARED_LIB_DIR\elocl_col.013 -#endif // __LOCALES_13_IBY__ - -#if defined __LOCALES_14_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.014 SHARED_LIB_DIR\elocl_lan.014 -file=ABI_DIR\BUILD_DIR\elocl_reg.792 SHARED_LIB_DIR\elocl_reg.792 -file=ABI_DIR\BUILD_DIR\elocl_col.014 SHARED_LIB_DIR\elocl_col.014 -#endif // __LOCALES_14_IBY__ - -#if defined __LOCALES_15_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.015 SHARED_LIB_DIR\elocl_lan.015 -file=ABI_DIR\BUILD_DIR\elocl_reg.352 SHARED_LIB_DIR\elocl_reg.352 -file=ABI_DIR\BUILD_DIR\elocl_col.015 SHARED_LIB_DIR\elocl_col.015 -#endif // __LOCALES_15_IBY__ - -#if defined __LOCALES_16_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.016 SHARED_LIB_DIR\elocl_lan.016 -file=ABI_DIR\BUILD_DIR\elocl_reg.643 SHARED_LIB_DIR\elocl_reg.643 -file=ABI_DIR\BUILD_DIR\elocl_col.016 SHARED_LIB_DIR\elocl_col.016 -#endif // __LOCALES_16_IBY__ - -#if defined __LOCALES_17_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.017 SHARED_LIB_DIR\elocl_lan.017 -file=ABI_DIR\BUILD_DIR\elocl_reg.348 SHARED_LIB_DIR\elocl_reg.348 -file=ABI_DIR\BUILD_DIR\elocl_col.017 SHARED_LIB_DIR\elocl_col.017 -#endif // __LOCALES_17_IBY__ - -#if defined __LOCALES_18_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.018 SHARED_LIB_DIR\elocl_lan.018 -file=ABI_DIR\BUILD_DIR\elocl_reg.528 SHARED_LIB_DIR\elocl_reg.528 -file=ABI_DIR\BUILD_DIR\elocl_col.018 SHARED_LIB_DIR\elocl_col.018 -#endif // __LOCALES_18_IBY__ - -#if defined __LOCALES_25_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.025 SHARED_LIB_DIR\elocl_lan.025 -file=ABI_DIR\BUILD_DIR\elocl_reg.203 SHARED_LIB_DIR\elocl_reg.203 -file=ABI_DIR\BUILD_DIR\elocl_col.025 SHARED_LIB_DIR\elocl_col.025 -#endif // __LOCALES_25_IBY__ - -#if defined __LOCALES_26_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.026 SHARED_LIB_DIR\elocl_lan.026 -file=ABI_DIR\BUILD_DIR\elocl_reg.703 SHARED_LIB_DIR\elocl_reg.703 -file=ABI_DIR\BUILD_DIR\elocl_col.026 SHARED_LIB_DIR\elocl_col.026 -#endif // __LOCALES_26_IBY__ - -#if defined __LOCALES_27_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.027 SHARED_LIB_DIR\elocl_lan.027 -file=ABI_DIR\BUILD_DIR\elocl_reg.616 SHARED_LIB_DIR\elocl_reg.616 -file=ABI_DIR\BUILD_DIR\elocl_col.027 SHARED_LIB_DIR\elocl_col.027 -#endif // __LOCALES_27_IBY__ - -#if defined __LOCALES_28_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.028 SHARED_LIB_DIR\elocl_lan.028 -file=ABI_DIR\BUILD_DIR\elocl_reg.705 SHARED_LIB_DIR\elocl_reg.705 -file=ABI_DIR\BUILD_DIR\elocl_col.028 SHARED_LIB_DIR\elocl_col.028 -#endif // __LOCALES_28_IBY__ - -#if defined __LOCALES_29_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.029 SHARED_LIB_DIR\elocl_lan.029 -file=ABI_DIR\BUILD_DIR\elocl_reg.158 SHARED_LIB_DIR\elocl_reg.158 -file=ABI_DIR\BUILD_DIR\elocl_col.029 SHARED_LIB_DIR\elocl_col.029 -#endif // __LOCALES_29_IBY__ - -#if defined __LOCALES_30_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.030 SHARED_LIB_DIR\elocl_lan.030 -file=ABI_DIR\BUILD_DIR\elocl_reg.344 SHARED_LIB_DIR\elocl_reg.344 -file=ABI_DIR\BUILD_DIR\elocl_col.030 SHARED_LIB_DIR\elocl_col.030 -#endif // __LOCALES_30_IBY__ - -#if defined __LOCALES_31_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.031 SHARED_LIB_DIR\elocl_lan.031 -file=ABI_DIR\BUILD_DIR\elocl_reg.156 SHARED_LIB_DIR\elocl_reg.156 -file=ABI_DIR\BUILD_DIR\elocl_col.031 SHARED_LIB_DIR\elocl_col.031 -#endif // __LOCALES_31_IBY__ - -#if defined __LOCALES_32_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.032 SHARED_LIB_DIR\elocl_lan.032 -file=ABI_DIR\BUILD_DIR\elocl_reg.392 SHARED_LIB_DIR\elocl_reg.392 -file=ABI_DIR\BUILD_DIR\elocl_col.032 SHARED_LIB_DIR\elocl_col.032 -#endif // __LOCALES_32_IBY__ - -#if defined __LOCALES_33_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.033 SHARED_LIB_DIR\elocl_lan.033 -file=ABI_DIR\BUILD_DIR\elocl_reg.764 SHARED_LIB_DIR\elocl_reg.764 -file=ABI_DIR\BUILD_DIR\elocl_col.033 SHARED_LIB_DIR\elocl_col.033 -#endif // __LOCALES_33_IBY__ - -#if defined __LOCALES_37_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.037 SHARED_LIB_DIR\elocl_lan.037 -file=ABI_DIR\BUILD_DIR\elocl_reg.682 SHARED_LIB_DIR\elocl_reg.682 -file=ABI_DIR\BUILD_DIR\elocl_col.037 SHARED_LIB_DIR\elocl_col.037 -#endif // __LOCALES_37_IBY__ - -#if defined __LOCALES_39_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.039 SHARED_LIB_DIR\elocl_lan.039 -file=ABI_DIR\BUILD_DIR\elocl_reg.608 SHARED_LIB_DIR\elocl_reg.608 -file=ABI_DIR\BUILD_DIR\elocl_col.039 SHARED_LIB_DIR\elocl_col.039 -#endif // __LOCALES_39_IBY__ - -#if defined __LOCALES_42_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.042 SHARED_LIB_DIR\elocl_lan.042 -file=ABI_DIR\BUILD_DIR\elocl_reg.100 SHARED_LIB_DIR\elocl_reg.100 -file=ABI_DIR\BUILD_DIR\elocl_col.042 SHARED_LIB_DIR\elocl_col.042 -#endif // __LOCALES_42_IBY__ - -#if defined __LOCALES_44_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.044 SHARED_LIB_DIR\elocl_lan.044 -file=ABI_DIR\BUILD_DIR\elocl_reg.724 SHARED_LIB_DIR\elocl_reg.724 -file=ABI_DIR\BUILD_DIR\elocl_col.044 SHARED_LIB_DIR\elocl_col.044 -#endif // __LOCALES_44_IBY__ - -#if defined __LOCALES_45_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.045 SHARED_LIB_DIR\elocl_lan.045 -file=ABI_DIR\BUILD_DIR\elocl_reg.191 SHARED_LIB_DIR\elocl_reg.191 -file=ABI_DIR\BUILD_DIR\elocl_col.045 SHARED_LIB_DIR\elocl_col.045 -#endif // __LOCALES_45_IBY__ - -#if defined __LOCALES_49_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.049 SHARED_LIB_DIR\elocl_lan.049 -file=ABI_DIR\BUILD_DIR\elocl_reg.233 SHARED_LIB_DIR\elocl_reg.233 -file=ABI_DIR\BUILD_DIR\elocl_col.049 SHARED_LIB_DIR\elocl_col.049 -#endif // __LOCALES_49_IBY__ - -#if defined __LOCALES_50_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.050 SHARED_LIB_DIR\elocl_lan.050 -file=ABI_DIR\BUILD_DIR\elocl_reg.364 SHARED_LIB_DIR\elocl_reg.364 -file=ABI_DIR\BUILD_DIR\elocl_col.050 SHARED_LIB_DIR\elocl_col.050 -#endif // __LOCALES_50_IBY__ - -#if defined __LOCALES_51_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.051 SHARED_LIB_DIR\elocl_lan.051 -file=ABI_DIR\BUILD_DIR\elocl_reg.124 SHARED_LIB_DIR\elocl_reg.124 -file=ABI_DIR\BUILD_DIR\elocl_col.051 SHARED_LIB_DIR\elocl_col.051 -#endif // __LOCALES_51_IBY__ - -#if defined __LOCALES_54_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.054 SHARED_LIB_DIR\elocl_lan.054 -file=ABI_DIR\BUILD_DIR\elocl_reg.300 SHARED_LIB_DIR\elocl_reg.300 -file=ABI_DIR\BUILD_DIR\elocl_col.054 SHARED_LIB_DIR\elocl_col.054 -#endif // __LOCALES_54_IBY__ - -#if defined __LOCALES_57_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.057 SHARED_LIB_DIR\elocl_lan.057 -file=ABI_DIR\BUILD_DIR\elocl_reg.376 SHARED_LIB_DIR\elocl_reg.376 -file=ABI_DIR\BUILD_DIR\elocl_col.057 SHARED_LIB_DIR\elocl_col.057 -#endif // __LOCALES_57_IBY__ - -#if defined __LOCALES_58_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.058 SHARED_LIB_DIR\elocl_lan.058 -file=ABI_DIR\BUILD_DIR\elocl_reg.356 SHARED_LIB_DIR\elocl_reg.356 -file=ABI_DIR\BUILD_DIR\elocl_col.058 SHARED_LIB_DIR\elocl_col.058 -#endif // __LOCALES_58_IBY__ - -#if defined __LOCALES_59_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.059 SHARED_LIB_DIR\elocl_lan.059 -file=ABI_DIR\BUILD_DIR\elocl_reg.360 SHARED_LIB_DIR\elocl_reg.360 -file=ABI_DIR\BUILD_DIR\elocl_col.059 SHARED_LIB_DIR\elocl_col.059 -#endif // __LOCALES_59_IBY__ - -#if defined __LOCALES_65_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.065 SHARED_LIB_DIR\elocl_lan.065 -file=ABI_DIR\BUILD_DIR\elocl_reg.410 SHARED_LIB_DIR\elocl_reg.410 -file=ABI_DIR\BUILD_DIR\elocl_col.065 SHARED_LIB_DIR\elocl_col.065 -#endif // __LOCALES_65_IBY__ - -#if defined __LOCALES_67_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.067 SHARED_LIB_DIR\elocl_lan.067 -file=ABI_DIR\BUILD_DIR\elocl_reg.428 SHARED_LIB_DIR\elocl_reg.428 -file=ABI_DIR\BUILD_DIR\elocl_col.067 SHARED_LIB_DIR\elocl_col.067 -#endif // __LOCALES_67_IBY__ - -#if defined __LOCALES_68_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.068 SHARED_LIB_DIR\elocl_lan.068 -file=ABI_DIR\BUILD_DIR\elocl_reg.440 SHARED_LIB_DIR\elocl_reg.440 -file=ABI_DIR\BUILD_DIR\elocl_col.068 SHARED_LIB_DIR\elocl_col.068 -#endif // __LOCALES_68_IBY__ - -#if defined __LOCALES_70_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.070 SHARED_LIB_DIR\elocl_lan.070 -file=ABI_DIR\BUILD_DIR\elocl_reg.458 SHARED_LIB_DIR\elocl_reg.458 -file=ABI_DIR\BUILD_DIR\elocl_col.070 SHARED_LIB_DIR\elocl_col.070 -#endif // __LOCALES_70_IBY__ - -#if defined __LOCALES_76_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.076 SHARED_LIB_DIR\elocl_lan.076 -file=ABI_DIR\BUILD_DIR\elocl_reg.076 SHARED_LIB_DIR\elocl_reg.076 -file=ABI_DIR\BUILD_DIR\elocl_col.076 SHARED_LIB_DIR\elocl_col.076 -#endif // __LOCALES_76_IBY__ - -#if defined __LOCALES_78_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.078 SHARED_LIB_DIR\elocl_lan.078 -file=ABI_DIR\BUILD_DIR\elocl_reg.642 SHARED_LIB_DIR\elocl_reg.642 -file=ABI_DIR\BUILD_DIR\elocl_col.078 SHARED_LIB_DIR\elocl_col.078 -#endif // __LOCALES_78_IBY__ - -#if defined __LOCALES_79_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.079 SHARED_LIB_DIR\elocl_lan.079 -file=ABI_DIR\BUILD_DIR\elocl_reg.891 SHARED_LIB_DIR\elocl_reg.891 -file=ABI_DIR\BUILD_DIR\elocl_col.079 SHARED_LIB_DIR\elocl_col.079 -#endif // __LOCALES_79_IBY__ - -#if defined __LOCALES_83_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.083 SHARED_LIB_DIR\elocl_lan.083 -file=ABI_DIR\BUILD_DIR\elocl_reg.484 SHARED_LIB_DIR\elocl_reg.484 -file=ABI_DIR\BUILD_DIR\elocl_col.083 SHARED_LIB_DIR\elocl_col.083 -#endif // __LOCALES_83_IBY__ - -#if defined __LOCALES_93_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.093 SHARED_LIB_DIR\elocl_lan.093 -file=ABI_DIR\BUILD_DIR\elocl_reg.804 SHARED_LIB_DIR\elocl_reg.804 -file=ABI_DIR\BUILD_DIR\elocl_col.093 SHARED_LIB_DIR\elocl_col.093 -#endif // __LOCALES_93_IBY__ - -#if defined __LOCALES_94_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.094 SHARED_LIB_DIR\elocl_lan.094 -file=ABI_DIR\BUILD_DIR\elocl_reg.526 SHARED_LIB_DIR\elocl_reg.526 -file=ABI_DIR\BUILD_DIR\elocl_col.094 SHARED_LIB_DIR\elocl_col.094 -#endif // __LOCALES_94_IBY__ - -#if defined __LOCALES_96_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.096 SHARED_LIB_DIR\elocl_lan.096 -file=ABI_DIR\BUILD_DIR\elocl_reg.704 SHARED_LIB_DIR\elocl_reg.704 -file=ABI_DIR\BUILD_DIR\elocl_col.096 SHARED_LIB_DIR\elocl_col.096 -#endif // __LOCALES_96_IBY__ - -#if defined __LOCALES_129_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.129 SHARED_LIB_DIR\elocl_lan.129 -file=ABI_DIR\BUILD_DIR\elocl_reg.826 SHARED_LIB_DIR\elocl_reg.826 -file=ABI_DIR\BUILD_DIR\elocl_col.129 SHARED_LIB_DIR\elocl_col.129 -#endif // __LOCALES_129_IBY__ - -#if defined __LOCALES_157_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.157 SHARED_LIB_DIR\elocl_lan.157 -file=ABI_DIR\BUILD_DIR\elocl_reg.158 SHARED_LIB_DIR\elocl_reg.158 -file=ABI_DIR\BUILD_DIR\elocl_col.157 SHARED_LIB_DIR\elocl_col.157 -#endif // __LOCALES_157_IBY__ - -#if defined __LOCALES_158_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.158 SHARED_LIB_DIR\elocl_lan.158 -file=ABI_DIR\BUILD_DIR\elocl_reg.344 SHARED_LIB_DIR\elocl_reg.344 -file=ABI_DIR\BUILD_DIR\elocl_col.158 SHARED_LIB_DIR\elocl_col.158 -#endif // __LOCALES_158_IBY__ - -#if defined __LOCALES_159_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.159 SHARED_LIB_DIR\elocl_lan.159 -file=ABI_DIR\BUILD_DIR\elocl_reg.156 SHARED_LIB_DIR\elocl_reg.156 -file=ABI_DIR\BUILD_DIR\elocl_col.159 SHARED_LIB_DIR\elocl_col.159 -#endif // __LOCALES_159_IBY__ - -#if defined __LOCALES_160_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.160 SHARED_LIB_DIR\elocl_lan.160 -file=ABI_DIR\BUILD_DIR\elocl_reg.392 SHARED_LIB_DIR\elocl_reg.392 -file=ABI_DIR\BUILD_DIR\elocl_col.160 SHARED_LIB_DIR\elocl_col.160 -#endif // __LOCALES_160_IBY__ - -#if defined __LOCALES_161_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.161 SHARED_LIB_DIR\elocl_lan.161 -file=ABI_DIR\BUILD_DIR\elocl_reg.764 SHARED_LIB_DIR\elocl_reg.764 -file=ABI_DIR\BUILD_DIR\elocl_col.161 SHARED_LIB_DIR\elocl_col.161 -#endif // __LOCALES_161_IBY__ - -#if defined __LOCALES_326_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.326 SHARED_LIB_DIR\elocl_lan.326 -file=ABI_DIR\BUILD_DIR\elocl_reg.458 SHARED_LIB_DIR\elocl_reg.458 -file=ABI_DIR\BUILD_DIR\elocl_col.326 SHARED_LIB_DIR\elocl_col.326 -#endif // __LOCALES_326_IBY__ - -#if defined __LOCALES_327_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.327 SHARED_LIB_DIR\elocl_lan.327 -file=ABI_DIR\BUILD_DIR\elocl_reg.360 SHARED_LIB_DIR\elocl_reg.360 -file=ABI_DIR\BUILD_DIR\elocl_col.327 SHARED_LIB_DIR\elocl_col.327 -#endif // __LOCALES_327_IBY__ - -#if defined __LOCALES_401_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.401 SHARED_LIB_DIR\elocl_lan.401 -file=ABI_DIR\BUILD_DIR\elocl_reg.724 SHARED_LIB_DIR\elocl_reg.724 -file=ABI_DIR\BUILD_DIR\elocl_col.401 SHARED_LIB_DIR\elocl_col.401 -#endif // __LOCALES_401_IBY__ - -#if defined __LOCALES_402_IBY__ -file=ABI_DIR\BUILD_DIR\elocl_lan.402 SHARED_LIB_DIR\elocl_lan.402 -file=ABI_DIR\BUILD_DIR\elocl_reg.727 SHARED_LIB_DIR\elocl_reg.724 -file=ABI_DIR\BUILD_DIR\elocl_col.402 SHARED_LIB_DIR\elocl_col.420 -#endif // __LOCALES_402_IBY__ - -#else -file=\epoc32\release\armi\DEBUG_DIR\Elocl.dll System\libs\Elocl.loc -#endif //EKA2 - -#endif diff -r 16f8e3c1d75c -r f8aba17c1a8c locales/loce32/rom/languages.confml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/locales/loce32/rom/languages.confml Tue Jul 13 16:36:34 2010 +0100 @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + When the default language / region is changed in the phone UI it will select a certain + the language, region and collation. + + The input language/region which is selected by user + + + + + + + + + + \ No newline at end of file diff -r 16f8e3c1d75c -r f8aba17c1a8c skins/AknSkins/sdcsrc/SDCInlOutput.cpp --- a/skins/AknSkins/sdcsrc/SDCInlOutput.cpp Wed Jun 30 12:29:41 2010 +0100 +++ b/skins/AknSkins/sdcsrc/SDCInlOutput.cpp Tue Jul 13 16:36:34 2010 +0100 @@ -291,8 +291,9 @@ fprintf( file, "\nCAPABILITY CAP_GENERAL_DLL\n" ); fprintf( file, "\nUSERINCLUDE \\s60\\AknSkins\\srvinc\n" ); - fprintf( file, "SYSTEMINCLUDE \\epoc32\\include \\epoc32\\include\\oem\n" ); - + fprintf( file, "#include \nMW_LAYER_SYSTEMINCLUDE\n" ); + fprintf( file, "SYSTEMINCLUDE \\epoc32\\include\\oem\n" ); + fprintf( file, "\nLIBRARY euser.lib\n" ); fprintf( file, "\nSOURCE %s_ContentDLL.cpp\n", aSkinName ); diff -r 16f8e3c1d75c -r f8aba17c1a8c skins/AknSkins/src/AknsAppSkinInstance.cpp --- a/skins/AknSkins/src/AknsAppSkinInstance.cpp Wed Jun 30 12:29:41 2010 +0100 +++ b/skins/AknSkins/src/AknsAppSkinInstance.cpp Tue Jul 13 16:36:34 2010 +0100 @@ -758,7 +758,6 @@ { // Do not create an entry for typed miss, otherwise we might hide // a real item - delete itemData; return NULL; } } diff -r 16f8e3c1d75c -r f8aba17c1a8c skins/AknSkins/srvsrc/AknsSrv.cpp --- a/skins/AknSkins/srvsrc/AknsSrv.cpp Wed Jun 30 12:29:41 2010 +0100 +++ b/skins/AknSkins/srvsrc/AknsSrv.cpp Tue Jul 13 16:36:34 2010 +0100 @@ -100,25 +100,24 @@ aStartFailed = EFalse; CAknsSrv* server = new CAknsSrv(); - server->iMergeType = (TAknsSkinSrvMergeType)( - EAknsSkinSrvSkin | EAknsSkinSrvIdleWp ); - server->iBootFinished = EFalse; - if ( server ) - { - if ( server->Start( KAknSkinSrvName ) != KErrNone ) - { - AKNS_TRACE_ERROR("CAknsSrv::New START FAILED!"); - - aStartFailed = ETrue; - delete server; - return NULL; - } - } - else + if ( !server ) { AKNS_TRACE_ERROR("CAknsSrv::New SERVER ALLOCATION FAILED!"); return NULL; } + + server->iMergeType = (TAknsSkinSrvMergeType)( + EAknsSkinSrvSkin | EAknsSkinSrvIdleWp ); + server->iBootFinished = EFalse; + if (server->Start(KAknSkinSrvName) != KErrNone) + { + AKNS_TRACE_ERROR("CAknsSrv::New START FAILED!"); + + aStartFailed = ETrue; + delete server; + return NULL; + } + server->iBitmapStore = new CAknsSrvBitmapStore; if( !server->iBitmapStore ) { diff -r 16f8e3c1d75c -r f8aba17c1a8c skins/AknSkins/srvsrc/AknsSrvChunkMaintainer.cpp --- a/skins/AknSkins/srvsrc/AknsSrvChunkMaintainer.cpp Wed Jun 30 12:29:41 2010 +0100 +++ b/skins/AknSkins/srvsrc/AknsSrvChunkMaintainer.cpp Tue Jul 13 16:36:34 2010 +0100 @@ -279,7 +279,7 @@ TAknsSrvEffectQueueDef applyGfxEffectQueue; applyGfxEffectQueue.iEffectQueueSize = sizeof(TAknsSrvEffectQueueDef) + 2*sizeof(TAknsSrvEffectDef) + 3*sizeof(TAknsSrvEffectParameterDef) - + 11*sizeof(TInt32); + + 8*sizeof(TInt32); applyGfxEffectQueue.iInputLayerIndex =0; applyGfxEffectQueue.iInputLayerMode = 2; //RGB applyGfxEffectQueue.iOutputLayerIndex = 2; diff -r 16f8e3c1d75c -r f8aba17c1a8c skins/AknSkins/srvsrc/tfxconfigparser.cpp --- a/skins/AknSkins/srvsrc/tfxconfigparser.cpp Wed Jun 30 12:29:41 2010 +0100 +++ b/skins/AknSkins/srvsrc/tfxconfigparser.cpp Tue Jul 13 16:36:34 2010 +0100 @@ -989,7 +989,7 @@ { CTFxTransition* transition = transitionarray->operator[](count); CTFxEffect* effect = transition->Effect(); - if (transition && effect && effect->PathIndex() >=0) + if ( effect && effect->PathIndex() >=0 ) { err = aTransSrv->RegisterFullscreenKml(transition->ContextId(), transition->Uid(), @@ -1014,7 +1014,7 @@ { CTFxCtrlTransition* ctrltransition = ctrltransitionarray->operator[](count); CTFxEffect* effect = ctrltransition->Effect(); - if (ctrltransition && effect && effect->PathIndex() >=0) + if ( effect && effect->PathIndex() >=0) { if (!ctrltransition->KmlRegistrationStatus()) { diff -r 16f8e3c1d75c -r f8aba17c1a8c uiconfig/s60config/src/epoc_360x640_nhd4.ini --- a/uiconfig/s60config/src/epoc_360x640_nhd4.ini Wed Jun 30 12:29:41 2010 +0100 +++ b/uiconfig/s60config/src/epoc_360x640_nhd4.ini Tue Jul 13 16:36:34 2010 +0100 @@ -72,6 +72,9 @@ KeyMap Home EStdKeyApplication0 KeyMap LeftAlt 1 EStdKeyDevice0 KeyMap LeftAlt 2 EStdKeyDevice1 +KeyMap LeftAlt 3 EStdKeyDevice4 +KeyMap LeftAlt 4 EStdKeyDevice5 +KeyMap LeftAlt 5 EStdKeyDeviceF diff -r 16f8e3c1d75c -r f8aba17c1a8c uiconfig/s60config/src/epoc_360x640_touch.ini --- a/uiconfig/s60config/src/epoc_360x640_touch.ini Wed Jun 30 12:29:41 2010 +0100 +++ b/uiconfig/s60config/src/epoc_360x640_touch.ini Tue Jul 13 16:36:34 2010 +0100 @@ -72,6 +72,9 @@ KeyMap Home EStdKeyApplication0 KeyMap LeftAlt 1 EStdKeyDevice0 KeyMap LeftAlt 2 EStdKeyDevice1 +KeyMap LeftAlt 3 EStdKeyDevice4 +KeyMap LeftAlt 4 EStdKeyDevice5 +KeyMap LeftAlt 5 EStdKeyDeviceF diff -r 16f8e3c1d75c -r f8aba17c1a8c uiconfig/s60config/src/epoc_640x360_nhd4_qwerty.ini --- a/uiconfig/s60config/src/epoc_640x360_nhd4_qwerty.ini Wed Jun 30 12:29:41 2010 +0100 +++ b/uiconfig/s60config/src/epoc_640x360_nhd4_qwerty.ini Tue Jul 13 16:36:34 2010 +0100 @@ -127,6 +127,9 @@ KeyMap Home EStdKeyApplication0 KeyMap LeftAlt 1 EStdKeyDevice0 KeyMap LeftAlt 2 EStdKeyDevice1 +KeyMap LeftAlt 3 EStdKeyDevice4 +KeyMap LeftAlt 4 EStdKeyDevice5 +KeyMap LeftAlt 5 EStdKeyDeviceF diff -r 16f8e3c1d75c -r f8aba17c1a8c uiconfig/s60config/src/epoc_640x360_touch_qwerty.ini --- a/uiconfig/s60config/src/epoc_640x360_touch_qwerty.ini Wed Jun 30 12:29:41 2010 +0100 +++ b/uiconfig/s60config/src/epoc_640x360_touch_qwerty.ini Tue Jul 13 16:36:34 2010 +0100 @@ -127,6 +127,9 @@ KeyMap Home EStdKeyApplication0 KeyMap LeftAlt 1 EStdKeyDevice0 KeyMap LeftAlt 2 EStdKeyDevice1 +KeyMap LeftAlt 3 EStdKeyDevice4 +KeyMap LeftAlt 4 EStdKeyDevice5 +KeyMap LeftAlt 5 EStdKeyDeviceF diff -r 16f8e3c1d75c -r f8aba17c1a8c uiconfig/s60config/src/epoc_640x480_touch_qwerty.ini --- a/uiconfig/s60config/src/epoc_640x480_touch_qwerty.ini Wed Jun 30 12:29:41 2010 +0100 +++ b/uiconfig/s60config/src/epoc_640x480_touch_qwerty.ini Tue Jul 13 16:36:34 2010 +0100 @@ -126,6 +126,9 @@ KeyMap Home EStdKeyApplication0 KeyMap LeftAlt 1 EStdKeyDevice0 KeyMap LeftAlt 2 EStdKeyDevice1 +KeyMap LeftAlt 3 EStdKeyDevice4 +KeyMap LeftAlt 4 EStdKeyDevice5 +KeyMap LeftAlt 5 EStdKeyDeviceF diff -r 16f8e3c1d75c -r f8aba17c1a8c uigraphics/AknIcon/SvgtFbsRasterizer/group/SvgtFbsRasterizer.mmp --- a/uigraphics/AknIcon/SvgtFbsRasterizer/group/SvgtFbsRasterizer.mmp Wed Jun 30 12:29:41 2010 +0100 +++ b/uigraphics/AknIcon/SvgtFbsRasterizer/group/SvgtFbsRasterizer.mmp Tue Jul 13 16:36:34 2010 +0100 @@ -40,6 +40,7 @@ SOURCE SvgtFbsRasterizer.cpp SOURCE svgtregisteredbitmap.cpp SOURCE svgtgraphicsinterface.cpp +SOURCE SvgtRasterizerOOMPropertyMonitor.cpp #ifdef _EGL_SUPPORT_ENABLED_ SOURCE eglgraphicsinterface.cpp diff -r 16f8e3c1d75c -r f8aba17c1a8c uigraphics/AknIcon/SvgtFbsRasterizer/inc/SvgtFbsRasterizer.h --- a/uigraphics/AknIcon/SvgtFbsRasterizer/inc/SvgtFbsRasterizer.h Wed Jun 30 12:29:41 2010 +0100 +++ b/uigraphics/AknIcon/SvgtFbsRasterizer/inc/SvgtFbsRasterizer.h Tue Jul 13 16:36:34 2010 +0100 @@ -21,6 +21,9 @@ #include "SvgtRegisteredBitmap.h" #include "svgtgraphicsinterface.h" #include +#include +#include "SvgtRasterizerCacheLimitHandler.h" + #include #include @@ -36,11 +39,14 @@ TBool operator==(const CFbsRasterizer::TBitmapDesc& aBitmapDesc1, const CFbsRasterizer::TBitmapDesc& aBitmapDesc2); +class CSvgtRasterizerOOMPropertyMonitor; /** Example implementation of a rasterizer that is used to generate pixel data for extended bitmaps of example type KUidExtendedBitmapExample. */ -NONSHARABLE_CLASS (CSvgtFbsRasterizer) : public CFbsRasterizer +NONSHARABLE_CLASS (CSvgtFbsRasterizer) : public CFbsRasterizer, + public MFbsRasterizerClearCache, + public MSvgtRasterizerCacheLimitHandler { public: IMPORT_C static CFbsRasterizer* New(); @@ -100,6 +106,13 @@ * Returns cache limit (if) specific to process */ TInt GetCacheLimit(TUid aProcessUID) const; + + //From MFbsRasterizerClearCache + virtual void ClearCache(); + + //from MSvgtRasterizerCacheLimitHandler + virtual void ChangeCacheLimit( TBool aChangeCacheLimit ); + private: //Data members /** List of currently registered extended bitmaps, the key is the bitmap id. */ @@ -114,6 +127,7 @@ */ CSvgtGraphicsInterface * iGraphicsInterface; + CSvgtRasterizerOOMPropertyMonitor* iMonitor; TBool iIsRasterizerValidState; TBool iMatricesUpdated; diff -r 16f8e3c1d75c -r f8aba17c1a8c uigraphics/AknIcon/SvgtFbsRasterizer/inc/SvgtRasterizerCacheLimitHandler.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/uigraphics/AknIcon/SvgtFbsRasterizer/inc/SvgtRasterizerCacheLimitHandler.h Tue Jul 13 16:36:34 2010 +0100 @@ -0,0 +1,30 @@ +/* +* Copyright (c) 2002 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: MSvgtRasterizerCacheLimitHandler class. +* +*/ + +#if !defined(_ENABLESVGTRASTERIZER_H_) +#define _ENABLESVGTRASTERIZER_H_ +#include + +const TUint32 KUidEnableSvgtRasterizer = 0x10286586; + +class MSvgtRasterizerCacheLimitHandler + { +public: + virtual void ChangeCacheLimit( TBool aChangeCacheLimit ) = 0; + }; + +#endif //_ENABLESVGTRASTERIZER_H_ diff -r 16f8e3c1d75c -r f8aba17c1a8c uigraphics/AknIcon/SvgtFbsRasterizer/inc/SvgtRasterizerOOMPropertyMonitor.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/uigraphics/AknIcon/SvgtFbsRasterizer/inc/SvgtRasterizerOOMPropertyMonitor.h Tue Jul 13 16:36:34 2010 +0100 @@ -0,0 +1,47 @@ +/* +* Copyright (c) 2002 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: CSvgtRasterizerOOMPropertyMonitor class for OOM implementation. +* +*/ +#if !defined(_SVGTRASTERIZEROOMPROPERTYMONITOR_H_) +#define _SVGTRASTERIZEROOMPROPERTYMONITOR_H_ + +#include +#include +#include "SvgtRasterizerKeyDefs.hrh" +class CFbsRasterizer; + +class CSvgtRasterizerOOMPropertyMonitor : public CActive + { +public: + static CSvgtRasterizerOOMPropertyMonitor* NewL(); + ~CSvgtRasterizerOOMPropertyMonitor(); + +private: //Class methods + CSvgtRasterizerOOMPropertyMonitor(); + void ConstructL(); + void Queue(); + +private: //From CActive + void RunL(); + void DoCancel(); + +private: + RProperty iOomWatcher; + CFbsRasterizer* iRasterizer; + }; + +#endif //_SVGTRASTERIZEROOMPROPERTYMONITOR_H_ + + diff -r 16f8e3c1d75c -r f8aba17c1a8c uigraphics/AknIcon/SvgtFbsRasterizer/src/SvgtFbsRasterizer.cpp --- a/uigraphics/AknIcon/SvgtFbsRasterizer/src/SvgtFbsRasterizer.cpp Wed Jun 30 12:29:41 2010 +0100 +++ b/uigraphics/AknIcon/SvgtFbsRasterizer/src/SvgtFbsRasterizer.cpp Tue Jul 13 16:36:34 2010 +0100 @@ -28,6 +28,8 @@ #include #include +#include "SvgtRasterizerOOMPropertyMonitor.h" + TBool operator==(const CFbsRasterizer::TBitmapDesc& aBitmapDesc1, const CFbsRasterizer::TBitmapDesc& aBitmapDesc2) { @@ -64,11 +66,10 @@ /** Constructor */ CSvgtFbsRasterizer::CSvgtFbsRasterizer() - :iRegisteredBmps(_FOFF(CSvgtRegisteredBitmap, iLink)), iRecentBmps(_FOFF(CSvgtRegisteredBitmap, iLink)) - { - RProcess currentProcess; - iCacheLimit = GetCacheLimit(currentProcess.SecureId()); - } +:iRegisteredBmps(_FOFF(CSvgtRegisteredBitmap, iLink)), iRecentBmps(_FOFF(CSvgtRegisteredBitmap, iLink)) + { + + } CSvgtFbsRasterizer::~CSvgtFbsRasterizer() { @@ -87,6 +88,18 @@ { RestoreMatrices(); } + delete iMonitor;//OOM + } + +void CSvgtFbsRasterizer::ChangeCacheLimit( TBool aChangeCacheLimit )//OOM + { + iCacheLimit = KMaxRecentBmpCacheSize; + + if(aChangeCacheLimit) + { + RProcess currentProcess; + iCacheLimit = GetCacheLimit(currentProcess.SecureId()); + } } /** Register a bitmap with this rasterizer for rendering. In this example the extended @@ -206,11 +219,28 @@ /** No extension interaces are available, KErrNotSupported for all aInterfaceId passed. @see CFbsRasterizer::GetInterface() */ -TInt CSvgtFbsRasterizer::GetInterface(TUid /*aInterfaceId*/, TAny*& aInterface) - { - aInterface = NULL; - return KErrExtensionNotSupported; - } +TInt CSvgtFbsRasterizer::GetInterface(TUid aInterfaceId, TAny*& aInterface) + { + aInterface = NULL; + TInt err = KErrNone; + + switch (aInterfaceId.iUid) + { + case KUidFbsRasterizerClearCache: + aInterface = static_cast(this); + break; + case KUidEnableSvgtRasterizer: + aInterface = static_cast(this); + break; + default: + err = KErrExtensionNotSupported; + break; + } + + return err; + + + } /** Gets a bitmap that has been registered with this rasterizer. @@ -253,6 +283,16 @@ void CSvgtFbsRasterizer::InitializeRasterizer() { + TBool cacheEnabled=TRUE; + RProperty::Get(KSvgtPropertyCategory, ESvgtPropertyBool, cacheEnabled); + iCacheLimit = KMaxRecentBmpCacheSize; + if(cacheEnabled) + { + RProcess currentProcess; + iCacheLimit = GetCacheLimit(currentProcess.SecureId()); + } + TRAPD(err, iMonitor = CSvgtRasterizerOOMPropertyMonitor::NewL()); + iIsRasterizerValidState = ( err == KErrNone); } void CSvgtFbsRasterizer::RenderBitmapL(CSvgtRegisteredBitmap& aPixMap, CFbsBitmap * aMask, @@ -639,11 +679,11 @@ } TInt CSvgtFbsRasterizer::GetCacheLimit(TUid aProcessUID) const - { +{ TInt cacheLimit = KMaxRecentBmpCacheSize; - + RProcess currentProcess; - + if(aProcessUID == TUid::Uid(0x10003B20)) // Alf { cacheLimit = 0x600000; @@ -654,4 +694,17 @@ } return cacheLimit; +} +void CSvgtFbsRasterizer::ClearCache()//OOM + { + CSvgtRegisteredBitmap* regBmp=NULL; + if(iCacheLimit>KMaxRecentBmpCacheSize) + { + while (!iRecentBmps.IsEmpty()&&(iTotalRecentBmpSize > KMaxRecentBmpCacheSize)) + { + regBmp = iRecentBmps.Last(); + iTotalRecentBmpSize -= regBmp->DataSize(); + delete regBmp; + } + } } diff -r 16f8e3c1d75c -r f8aba17c1a8c uigraphics/AknIcon/SvgtFbsRasterizer/src/SvgtRasterizerOOMPropertyMonitor.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/uigraphics/AknIcon/SvgtFbsRasterizer/src/SvgtRasterizerOOMPropertyMonitor.cpp Tue Jul 13 16:36:34 2010 +0100 @@ -0,0 +1,95 @@ +/* + * Copyright (c) 2002 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: CSvgtRasterizerOOMPropertyMonitor class for OOM implementation. + * + */ + +#include "SvgtRasterizerOOMPropertyMonitor.h" +#include +#include +#include "SvgtRasterizerCacheLimitHandler.h" +#include +//#include + +CSvgtRasterizerOOMPropertyMonitor* CSvgtRasterizerOOMPropertyMonitor::NewL() + { + CSvgtRasterizerOOMPropertyMonitor* self = new (ELeave) CSvgtRasterizerOOMPropertyMonitor(); + CleanupStack::PushL(self); + self->ConstructL(); + CleanupStack::Pop(); + return self; + } + +CSvgtRasterizerOOMPropertyMonitor::CSvgtRasterizerOOMPropertyMonitor() +: CActive(CActive::EPriorityStandard) + { + if (CActiveScheduler::Current()) + { + CActiveScheduler::Add(this); + } + + } + +CSvgtRasterizerOOMPropertyMonitor::~CSvgtRasterizerOOMPropertyMonitor() + { + if (CActiveScheduler::Current()) + { + Cancel(); + } + iOomWatcher.Close(); + } + +void CSvgtRasterizerOOMPropertyMonitor::ConstructL() + { + + if (CActiveScheduler::Current()) + { + User::LeaveIfError(iOomWatcher.Attach(KSvgtPropertyCategory, ESvgtPropertyBool)); + Queue(); + } + } + +void CSvgtRasterizerOOMPropertyMonitor::RunL() + { + TBool changeCacheLimit=ETrue; + iOomWatcher.Get(changeCacheLimit); + iRasterizer = CFbsBitmap::Rasterizer(); + if(!changeCacheLimit) + { + MFbsRasterizerClearCache* cacheInterfacePtr = NULL; + iRasterizer->GetInterface(TUid::Uid(KUidFbsRasterizerClearCache), (TAny*&)cacheInterfacePtr); + if(cacheInterfacePtr) + cacheInterfacePtr->ClearCache(); + } + MSvgtRasterizerCacheLimitHandler* interfacePtr = NULL; + iRasterizer->GetInterface(TUid::Uid(KUidEnableSvgtRasterizer), (TAny*&)interfacePtr); + if(interfacePtr) + interfacePtr->ChangeCacheLimit(changeCacheLimit); + Queue(); + } + +void CSvgtRasterizerOOMPropertyMonitor::DoCancel() + { + iOomWatcher.Cancel(); + } + +void CSvgtRasterizerOOMPropertyMonitor::Queue() + { + if (!IsActive()) + { + iOomWatcher.Subscribe(iStatus); + SetActive(); + } + } + diff -r 16f8e3c1d75c -r f8aba17c1a8c uigraphics/AknIcon/srvsrc/AknIconSrv.cpp --- a/uigraphics/AknIcon/srvsrc/AknIconSrv.cpp Wed Jun 30 12:29:41 2010 +0100 +++ b/uigraphics/AknIcon/srvsrc/AknIconSrv.cpp Tue Jul 13 16:36:34 2010 +0100 @@ -53,6 +53,8 @@ #include // KAknQwertyInputModeActive #include // KAknPowerMenuStatus #include + +#include "SvgtRasterizerKeyDefs.hrh" // CONSTANTS const TUid KZiUdbProterty = {0x101F8614}; @@ -114,6 +116,10 @@ TInt err10 = RProperty::Define(KPSUidAvkonDomain, KAknPowerMenuStatus, RProperty::EInt, KPassReadPolicy, KWriteDDPolicy); TInt err11 = RProperty::Define(KPSUidAvkonDomain, KAknEndKeyEvent, RProperty::EInt, KPassReadPolicy, KWriteDDPolicy); + TInt err12 = RProperty::Define(KSvgtPropertyCategory, ESvgtPropertyBool, RProperty::EInt); + + RProperty::Set( KSvgtPropertyCategory, ESvgtPropertyBool, ETrue ); + #ifdef _DEBUG RDebug::Print(_L("xxxx KAknQwertyInputModeActive err=%d"), err1); RDebug::Print(_L("xxxx KUikLayoutState err=%d"), err2); @@ -126,6 +132,8 @@ RDebug::Print(_L("xxxx KT9UdbProterty err=%d"), err9); RDebug::Print(_L("xxxx KAknPowerMenuStatus err=%d"), err10); RDebug::Print(_L("xxxx KAknEndKeyEvent err=%d"), err11); + + RDebug::Print(_L("xxxx ESvgtPropertyBool err=%d"), err12); #endif CRepository* repository = NULL; @@ -1163,6 +1171,9 @@ iCurrentIndex = -1; iCache->EnableCache(aEnable); + + RProperty::Set(KSvgtPropertyCategory, ESvgtPropertyBool, aEnable ); + } // ----------------------------------------------------------------------------- diff -r 16f8e3c1d75c -r f8aba17c1a8c uigraphics/Icons/data/A_H.zip Binary file uigraphics/Icons/data/A_H.zip has changed diff -r 16f8e3c1d75c -r f8aba17c1a8c uigraphics/Icons/data/Icons.zip Binary file uigraphics/Icons/data/Icons.zip has changed diff -r 16f8e3c1d75c -r f8aba17c1a8c uigraphics/Icons/data/Skin_Green.zip Binary file uigraphics/Icons/data/Skin_Green.zip has changed diff -r 16f8e3c1d75c -r f8aba17c1a8c uiresources_pub/scalable_icons_api/group/bld.inf --- a/uiresources_pub/scalable_icons_api/group/bld.inf Wed Jun 30 12:29:41 2010 +0100 +++ b/uiresources_pub/scalable_icons_api/group/bld.inf Tue Jul 13 16:36:34 2010 +0100 @@ -32,3 +32,4 @@ ../inc/AknInternalIconUtils.h MW_LAYER_PUBLIC_EXPORT_PATH(AknInternalIconUtils.h) ../inc/AknIconHeader.h MW_LAYER_PUBLIC_EXPORT_PATH(AknIconHeader.h) ../inc/AknIconHeader.inl MW_LAYER_PUBLIC_EXPORT_PATH(AknIconHeader.inl) +../inc/SvgtRasterizerKeyDefs.hrh MW_LAYER_PUBLIC_EXPORT_PATH(SvgtRasterizerKeyDefs.hrh) \ No newline at end of file diff -r 16f8e3c1d75c -r f8aba17c1a8c uiresources_pub/scalable_icons_api/inc/SvgtRasterizerKeyDefs.hrh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/uiresources_pub/scalable_icons_api/inc/SvgtRasterizerKeyDefs.hrh Tue Jul 13 16:36:34 2010 +0100 @@ -0,0 +1,27 @@ +/* +* Copyright (c) 2002 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: OOM related Publish n Subscribe UIDs for SvgtFbsrasterizer +* +*/ + +#ifndef SVGTRASTERIZERKEYDEFS_HRH_ +#define SVGTRASTERIZERKEYDEFS_HRH_ + +const TUid KSvgtPropertyCategory = {0x10012345}; +enum TSvgtPropertyKeys + { + ESvgtPropertyBool + }; + +#endif /* SVGTRASTERIZERKEYDEFS_HRH_ */