<?xml version="1.0" encoding="utf-8"?>
<!--
/*
 * Copyright (c) 2013 Google Inc.
 *
 * 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.
 */
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.android.printspooler">

    <!-- Allows an application to call APIs that give it access to all print jobs
         on the device. Usually an app can access only the print jobs it created. -->
    <permission
        android:name="com.android.printspooler.permission.ACCESS_ALL_PRINT_JOBS"
        android:protectionLevel="signature" />

    <!-- May be required by the settings and add printer activities of a
         print service if the developer wants only trusted system code to
         be able to launch these activities. -->
    <permission android:name="android.permission.START_PRINT_SERVICE_CONFIG_ACTIVITY"
        android:protectionLevel="signature" />

    <uses-permission android:name="com.android.printspooler.permission.ACCESS_ALL_PRINT_JOBS"/>
    <uses-permission android:name="android.permission.WAKE_LOCK"/>
    <uses-permission android:name="android.permission.START_PRINT_SERVICE_CONFIG_ACTIVITY"/>
    <uses-permission android:name="android.permission.READ_PRINT_SERVICES" />
    <uses-permission android:name="android.permission.READ_PRINT_SERVICE_RECOMMENDATIONS" />

    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"
                     android:dataSentOffDevice="no"
                     android:dataSharedWithThirdParty="no"
                     android:dataUsedForMonetization="no"
                     android:dataRetentionTime="unlimited"/>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"
                     android:dataSentOffDevice="no"
                     android:dataSharedWithThirdParty="no"
                     android:dataUsedForMonetization="no"
                     android:dataRetentionTime="unlimited"/>

    <application
        android:allowClearUserData="true"
        android:label="@string/app_label"
        android:supportsRtl="true">

        <service
            android:name=".model.PrintSpoolerService"
            android:exported="true"
            android:permission="android.permission.BIND_PRINT_SPOOLER_SERVICE">
        </service>

        <service
            android:name=".renderer.PdfManipulationService"
            android:isolatedProcess="true"
            android:process=":renderer">
        </service>

        <activity
            android:name=".ui.PrintActivity"
            android:configChanges="mnc|mnc|touchscreen|navigation|screenLayout|screenSize|smallestScreenSize|orientation|locale|keyboard|keyboardHidden|fontScale|uiMode|layoutDirection|density"
            android:permission="android.permission.BIND_PRINT_SPOOLER_SERVICE"
            android:theme="@style/Theme.PrintActivity">
            <intent-filter>
                <action android:name="android.print.PRINT_DIALOG" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:scheme="printjob" android:pathPattern="*" />
            </intent-filter>
        </activity>

        <activity
            android:name=".ui.SelectPrinterActivity"
            android:label="@string/all_printers_label"
            android:theme="@style/Theme.SelectPrinterActivity"
            android:parentActivityName=".ui.PrintActivity"
            android:exported="false">
        </activity>

        <activity
            android:name=".ui.AddPrinterActivity"
            android:label="@string/print_add_printer"
            android:theme="@style/Theme.AddPrinterActivity"
            android:parentActivityName=".ui.SelectPrinterActivity"
            android:exported="false">
        </activity>

        <receiver
            android:name=".model.NotificationController$NotificationBroadcastReceiver"
            android:exported="false" >
        </receiver>

    </application>

</manifest>
