#filter substitution
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

# Defining FunnelcakeVersion will append the value of StubURLVersionAppend to
# StubURLVersion, append the value of URLManualDownloadAppend to
# URLManualDownload, and append the value of URLStubDownloadAppend to
# URLStubDownload. The value of FunnelcakeVersion should not be defined when it
# is not used and when it is defined its value should never be empty.
# !define FunnelcakeVersion        "999"

!ifdef FunnelcakeVersion
!define URLManualDownloadAppend  "&f=${FunnelcakeVersion}"
!define URLStubDownloadAppend    "-f${FunnelcakeVersion}"
!define StubURLVersionAppend     "-${FunnelcakeVersion}"
!else
!define URLManualDownloadAppend  ""
!define URLStubDownloadAppend    ""
!define StubURLVersionAppend     ""
!endif

# These defines should match application.ini settings
!define AppName               "Firefox"
!define AppVersion            "@APP_VERSION@"
!define GREVersion            @MOZILLA_VERSION@
!define AB_CD                 "@AB_CD@"

!define FileMainEXE           "@MOZ_APP_NAME@.exe"
!define WindowClass           "FirefoxMessageWindow"
!define DDEApplication        "Firefox"
!define AppRegName            "Firefox"

!define BrandShortName        "@MOZ_APP_DISPLAYNAME@"
!define BrandFullName         "${BrandFullNameInternal}"

!define NO_UNINSTALL_SURVEY

!define CERTIFICATE_NAME      "Mozilla Corporation"
!define CERTIFICATE_ISSUER    "DigiCert Assured ID Code Signing CA-1"

# LSP_CATEGORIES is the permitted LSP categories for the application. Each LSP
# category value is ANDed together to set multiple permitted categories.
# See http://msdn.microsoft.com/en-us/library/ms742253%28VS.85%29.aspx
# The value below removes all LSP categories previously set.
!define LSP_CATEGORIES "0x00000000"

!if "@MOZ_UPDATE_CHANNEL@" == ""
!define UpdateChannel "Unknown"
!else
!define UpdateChannel "@MOZ_UPDATE_CHANNEL@"
!endif

# Due to official and beta using the same branding this is needed to
# differentiante between the url used by the stub for downloading.
!if "@MOZ_UPDATE_CHANNEL@" == "beta"
!define BETA_UPDATE_CHANNEL
!endif

!define BaseURLStubPing "http://download-stats.mozilla.org/stub"

# ARCH is used when it is necessary to differentiate the x64 registry keys from
# the x86 registry keys (e.g. the uninstall registry key).
#ifdef HAVE_64BIT_OS
!define HAVE_64BIT_OS
!define ARCH "x64"
!define MinSupportedVer "Microsoft Windows Vista x64"
#else
!define ARCH "x86"
!define MinSupportedVer "Microsoft Windows XP SP2"
#endif

#ifdef MOZ_MAINTENANCE_SERVICE
!define MOZ_MAINTENANCE_SERVICE
#endif

#ifdef MOZ_METRO
!define MOZ_METRO
#endif

#ifdef MOZ_CONTENT_SANDBOX
!define MOZ_CONTENT_SANDBOX
#endif

# File details shared by both the installer and uninstaller
VIProductVersion "1.0.0.0"
VIAddVersionKey "ProductName"     "${BrandShortName}"
VIAddVersionKey "CompanyName"     "${CompanyName}"
#ifdef MOZ_OFFICIAL_BRANDING
VIAddVersionKey "LegalTrademarks" "${BrandShortName} is a Trademark of The Mozilla Foundation."
#endif
VIAddVersionKey "LegalCopyright"  "${CompanyName}"
VIAddVersionKey "FileVersion"     "${AppVersion}"
VIAddVersionKey "ProductVersion"  "${AppVersion}"
# Comments is not used but left below commented out for future reference
# VIAddVersionKey "Comments"        "Comments"

# It isn't possible to get the size of the installation prior to downloading
# so the stub installer uses an estimate.
!define APPROXIMATE_REQUIRED_SPACE_MB "42.2"

# Control positions in Dialog Units so they are placed correctly with
# non-default DPI settings
!define OPTIONS_ITEM_EDGE_DU 90u
!define OPTIONS_ITEM_WIDTH_DU 356u
!define OPTIONS_SUBITEM_EDGE_DU 119u
!define OPTIONS_SUBITEM_WIDTH_DU 327u
!define INSTALL_BLURB_TOP_DU 78u
!define APPNAME_BMP_EDGE_DU 19u
!define APPNAME_BMP_TOP_DU 12u
