web_plat/browser_platform_api/inc/Browser_platform_variant.hrh
author Kiiskinen Klaus (Nokia-D-MSW/Tampere) <klaus.kiiskinen@nokia.com>
Mon, 30 Mar 2009 12:54:55 +0300
changeset 0 dd21522fd290
child 1 7c90e6132015
permissions -rw-r--r--
Revision: 200911 Kit: 200912

/*
* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of the License "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 S60 platform variant for Browser
*               Allows Browser to build on multiple S60 platform releases
*
*/

/*
*
* NOTICE: Not for use outside of the Symbian Foundation packages 'web' and 'webuis'.
*         This header may be changed or removed at any time without notice.
*
*/

#ifndef BROWSER_PLATFORM_VARIANT_HRH
#define BROWSER_PLATFORM_VARIANT_HRH

/* NOTE:

   Format of browser domain feature flags:

   "BRDO_" | feature/component name | "_FF"

*/

// Defines Language InterWork and SAPI availability
#define BRDO_LIW_FF

// Defines ASX parser availability
#ifdef __WINDOWS_MEDIA
#define BRDO_ASX_FF
#endif

/** #BRDO_WML_DISABLED_FF 
Disable WML support using BRDO_WML_DISABLED_FF
Default is WML support enabled 
*/
#undef BRDO_WML_DISABLED_FF

// Defines if SecurityManager component is present
#define BRDO_WRT_SECURITY_MGR_FF

// Defines touch screen capability
#define BRDO_TOUCH_ENABLED_FF

// Defines Avkon extended toolbar support
#define BRDO_AVKON_EXT_TB_FF

// Defines Direct File IO support in RFile ( EFileWriteDirectIO )
#define BRDO_RFILE_WRITE_DIRECT_IO_FF

// Defines use of GestureHelper library
#define BRDO_USE_GESTURE_HELPER

// Defines WRT widgets feature to publish on homescreen
#define BRDO_WRT_HS_FF

/*
* ===================
*        S60 3.23
* ===================
*/ 
#if defined(__S60_32__)

// Defines Language InterWork and SAPI availability
#undef BRDO_LIW_FF

// Defines if SecurityManager component is present
#undef BRDO_WRT_SECURITY_MGR_FF

// Defines touch screen capability
#undef BRDO_TOUCH_ENABLED_FF

// Defines Avkon extended toolbar support
#undef BRDO_AVKON_EXT_TB_FF

// Defines Direct File IO support in RFile ( EFileWriteDirectIO )
#undef BRDO_RFILE_WRITE_DIRECT_IO_FF
#undef BRDO_USE_GESTURE_HELPER

#undef BRDO_WRT_HS_FF

// Missing from ProductVariant.hrh
#ifndef LANGUAGE_IDS
#define LANGUAGE_IDS LANG sc 01 02 03 04 05 06 07 08 09 10 13 14 15 16 17 18 25 26 27 28 29 30 31 32 33 37 39 42 44 45 49 50 51 54 57 58 59 67 68 70 76 78 79 83 93 94 96 102 103 129 157 158 159 160 161 230 326 327
#endif

#define BRDO_APP_VERSION_MAJOR 7
#define BRDO_APP_VERSION_MINOR 1

// Missing from 3.23 platform_paths.hrh

// Location, where the middleware layer localization .loc file should be exported
#define MW_LAYER_LOC_EXPORT_PATH(exported) MW_LAYER_PUBLIC_EXPORT_PATH(##exported)

// Location, where the middleware layer localization .loc file should be exported
#define APP_LAYER_LOC_EXPORT_PATH(exported) APP_LAYER_PUBLIC_EXPORT_PATH(##exported)




/*
* ===================
*        S60 5.0
* ===================
*/ 
#elif defined(__S60_50__)

// Defines must accumulate versions. ie for 5.01 you must define BRDO_BROWSER_50_FF and BRDO_BROWSER_501_FF(To be reviewed)
// The assumption is that anything that worked in 3.2 will work in 5.0 and 5.01.  For anything doesn't work
// in 3.2 but works in 5.0 and above, that code should be behind the BRDO_BROWSER_50_FF flag.
#define BRDO_BROWSER_50_FF

#define BRDO_APP_VERSION_MAJOR 7
#define BRDO_APP_VERSION_MINOR 0

/*
* ===================
*        S60 5.1
* ===================
*/ 
#else  // until __S60_51__ is defined

#define BRDO_BROWSER_50_FF

#define BRDO_APP_VERSION_MAJOR 7
#define BRDO_APP_VERSION_MINOR 2

#endif // S60 VERSION ID's


#define BRDO_APP_VERSION BRDO_APP_VERSION_MAJOR##_##BRDO_APP_VERSION_MINOR

// Generic run-time definitions -- see WmlBrowserBuild.h for similar feature related definitions

// Browser Update - Independent Application Delivery
#if defined( KFeatureIdIAUpdate )
// Defines flag for activating changes to update Browser application - from the Browser application
#define BRDO_BROWSER_UPDATE_UI_FF FeatureManager::FeatureSupported( KFeatureIdIAUpdate )
#else
#define BRDO_BROWSER_UPDATE_UI_FF 0
#endif // KFeatureIdIAUpdate


#define APP_LAYER_LIBC_SYSTEMINCLUDE SYSTEMINCLUDE  OS_LAYER_PUBLIC_EXPORT_PATH(libc)
#define APP_LAYER_ECOM_SYSTEMINCLUDE SYSTEMINCLUDE  OS_LAYER_PUBLIC_EXPORT_PATH(ecom)
#define APP_LAYER_HTTP_SYSTEMINCLUDE SYSTEMINCLUDE  OS_LAYER_PUBLIC_EXPORT_PATH(http)
#define APP_LAYER_CONNECT_SYSTEMINCLUDE SYSTEMINCLUDE  OS_LAYER_PUBLIC_EXPORT_PATH(connect)
#define APP_LAYER_SWI_SYSTEMINCLUDE SYSTEMINCLUDE  OS_LAYER_PUBLIC_EXPORT_PATH(swi)
#define APP_LAYER_OSKERNEL_SYSTEMINCLUDE SYSTEMINCLUDE  OS_LAYER_PUBLIC_EXPORT_PATH(kernel)
#define APP_LAYER_PUSH_SYSTEMINCLUDE SYSTEMINCLUDE  OS_LAYER_PUBLIC_EXPORT_PATH(push)
#define APP_LAYER_STDAPIS_SYSTEMINCLUDE SYSTEMINCLUDE  OS_LAYER_PUBLIC_EXPORT_PATH(stdapis)

#define MW_LAYER_LIBC_SYSTEMINCLUDE SYSTEMINCLUDE  OS_LAYER_PUBLIC_EXPORT_PATH(libc)
#define MW_LAYER_ECOM_SYSTEMINCLUDE SYSTEMINCLUDE  OS_LAYER_PUBLIC_EXPORT_PATH(ecom)
#define MW_LAYER_HTTP_SYSTEMINCLUDE SYSTEMINCLUDE  OS_LAYER_PUBLIC_EXPORT_PATH(http)
#define MW_LAYER_CONNECT_SYSTEMINCLUDE SYSTEMINCLUDE  OS_LAYER_PUBLIC_EXPORT_PATH(connect)
#define MW_LAYER_SWI_SYSTEMINCLUDE SYSTEMINCLUDE  OS_LAYER_PUBLIC_EXPORT_PATH(swi)
#define MW_LAYER_OSKERNEL_SYSTEMINCLUDE SYSTEMINCLUDE  OS_LAYER_PUBLIC_EXPORT_PATH(kernel)
#define MW_LAYER_PUSH_SYSTEMINCLUDE SYSTEMINCLUDE  OS_LAYER_PUBLIC_EXPORT_PATH(push)
#define MW_LAYER_STDAPIS_SYSTEMINCLUDE SYSTEMINCLUDE  OS_LAYER_PUBLIC_EXPORT_PATH(stdapis)

#endif // BROWSER_PLATFORM_VARIANT_HRH