<?xml version="1.0" encoding="utf-8"?>
<!--
/*
** Copyright 2009, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License"); 
** you may not use this file except in compliance with the License. 
** You may obtain a copy of the License at 
**
**     http://www.apache.org/licenses/LICENSE-2.0 
**
** Unless required by applicable law or agreed to in writing, software 
** distributed under the License is distributed on an "AS IS" BASIS, 
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
** See the License for the specific language governing permissions and 
** limitations under the License.
*/
-->

<!-- These resources are around just to allow their values to be customized
     for different hardware and product builds. -->
<resources>
    <!-- The 2d accelerator can't do an alpha transformation of
         a surface with an alpha channel, so enable this special mode
         to avoid going into software rendering. -->
    <bool name="config_sf_limitedAlpha">true</bool>

    <!-- Component name of the service providing network location support. -->
    <string name="config_networkLocationProvider">com.google.android.location.NetworkLocationProvider</string>

    <!-- Component name of the service providing geocoder API support. -->
    <string name="config_geocodeProvider">com.google.android.location.GeocodeProvider</string>

    <!-- XXXXX NOTE THE FOLLOWING RESOURCES USE THE WRONG NAMING CONVENTION.
         Please don't copy them, copy anything else. -->

    <!-- This string array should be overridden by the device to present a list of network
         attributes.  This is used by the connectivity manager to decide which networks can coexist
         based on the hardware -->
    <!-- An Array of "[Connection name],[ConnectivityManager connection type],
        [associated radio-type],[priority]  -->
    <string-array translatable="false" name="networkAttributes">
        <item>"wifi,1,1,1"</item>
        <item>"mobile,0,0,0"</item>
        <item>"mobile_mms,2,0,2"</item>
        <item>"mobile_supl,3,0,2"</item>
        <item>"mobile_dun,4,0,4"</item>
        <item>"mobile_hipri,5,0,3"</item>
    </string-array>

    <!-- List of regexpressions describing the interface (if any) that represent tetherable
         USB interfaces.  If the device doesn't want to support tething over USB this should
         be empty.  An example would be "usb.*" -->
    <string-array translatable="false" name="config_tether_usb_regexs">
        <item>"usb0"</item>
    </string-array>

    <!-- Regex array of allowable upstream ifaces for tethering - for example if you want
         tethering on a new interface called "foo2" add <item>"foo\\d"</item> to the array -->
    <string-array translatable="false" name="config_tether_upstream_regexs">
        <item>"rmnet\\d"</item>
    </string-array>

    <!-- Boolean indicating if we require the use of DUN on mobile for tethering -->
    <bool translatable="false" name="config_tether_dun_required">false</bool>

</resources>
