web_plat/browser_platform_api/inc/Browser_platform_variant.hrh
author Kiiskinen Klaus (Nokia-D-MSW/Tampere) <klaus.kiiskinen@nokia.com>
Fri, 08 May 2009 08:25:06 +0300
changeset 1 7c90e6132015
parent 0 dd21522fd290
child 5 10e98eab6f85
permissions -rw-r--r--
Revision: 200915 Kit: 200918

/*
* 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

// Gallery App is not present
#undef BRDO_APP_GALLERY_SUPPORTED_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

// Gallery App is present
#define BRDO_APP_GALLERY_SUPPORTED_FF
// Missing from ProductVariant.hrh
#ifndef LANGUAGE_IDS
#define LANGUAGE_IDS LANG sc
#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