<?xml version="1.0" encoding="utf-8"?>
<!--
/**
 * Copyright 2016, The CyanogenMod Project
 * Copyright 2017-2020, The LineageOS 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.
 */
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
    package="org.lineageos.lineageparts"
    android:versionCode="1"
    android:versionName="1.0"
    android:sharedUserId="android.uid.system">

    <uses-sdk android:minSdkVersion="24" android:targetSdkVersion="24" />

    <uses-permission android:name="android.permission.WRITE_MEDIA_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
    <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
    <uses-permission android:name="android.permission.DEVICE_POWER" />
    <uses-permission android:name="android.permission.CHANGE_CONFIGURATION" />
    <uses-permission android:name="android.permission.BIND_DEVICE_ADMIN" />
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    <uses-permission android:name="android.permission.READ_SEARCH_INDEXABLES" />
    <uses-permission android:name="android.permission.VIBRATE" />

    <uses-permission android:name="lineageos.permission.MANAGE_REMOTE_PREFERENCES" />

    <protected-broadcast android:name="lineageos.intent.action.UPDATE_POWER_MENU" />
    <protected-broadcast android:name="lineageos.platform.app.profiles.PROFILES_STATE_CHANGED" />
    <protected-broadcast android:name="org.lineageos.lineageparts.PART_CHANGED" />
    <protected-broadcast android:name="org.lineageos.lineageparts.REFRESH_PART" />
    <protected-broadcast android:name="org.lineageos.lineageparts.gestures.UPDATE_SETTINGS" />

    <application android:label="@string/lineageparts_title"
            android:icon="@mipmap/ic_launcher"
            android:theme="@style/Theme.Settings"
            android:hardwareAccelerated="true"
            android:supportsRtl="true"
            android:defaultToDeviceProtectedStorage="true"
            android:directBootAware="true">

        <activity android:name=".PartsActivity"
                android:configChanges="orientation|keyboardHidden|screenSize">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
            <meta-data
                android:name="org.lineageos.settings.summary.receiver"
                android:value="org.lineageos.lineageparts.PartsUpdater" />
        </activity>

        <activity android:name=".trust.TrustOnBoardingActivity"
            android:label="@string/trust_title"
            android:theme="@style/OnBoardingStyle"
            android:exported="true"
            android:enabled="true"
            android:excludeFromRecents="true">
            <intent-filter android:priority="-4">
                <action android:name="org.lineageos.lineageparts.TRUST_HINT" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <receiver android:name=".BootReceiver" android:enabled="true">
            <intent-filter android:priority="2147483647">
                <action android:name="android.intent.action.BOOT_COMPLETED" />
            </intent-filter>
        </receiver>

        <receiver android:name=".PartsUpdater" android:enabled="true">
            <intent-filter>
                <action android:name="lineageos.intent.action.UPDATE_PREFERENCE" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </receiver>

        <provider android:name=".search.LineagePartsSearchIndexablesProvider"
                  android:authorities="org.lineageos.lineageparts"
                  android:multiprocess="false"
                  android:grantUriPermissions="true"
                  android:permission="android.permission.READ_SEARCH_INDEXABLES"
                  android:exported="true">
            <intent-filter>
                <action android:name="android.content.action.SEARCH_INDEXABLES_PROVIDER" />
            </intent-filter>
        </provider>

        <!-- Button settings (System category) -->
        <activity-alias
            android:name=".input.ButtonSettings"
            android:label="@string/button_pref_title"
            android:targetActivity="PartsActivity">
            <intent-filter>
                <action android:name="com.android.settings.action.IA_SETTINGS" />
                <action android:name="org.lineageos.lineageparts.BUTTON_SETTINGS" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
            <meta-data
                android:name="com.android.settings.category"
                android:value="com.android.settings.category.ia.system" />
            <meta-data
                android:name="com.android.settings.icon"
                android:resource="@drawable/ic_settings_buttons" />
            <meta-data
                android:name="com.android.settings.icon_tintable"
                android:value="true" />
            <meta-data
                android:name="com.android.settings.order"
                android:value="-256" />
            <meta-data
                android:name="com.android.settings.summary"
                android:resource="@string/summary_empty" />
        </activity-alias>

        <activity android:name=".gestures.KeyHandler" />

        <!-- Profiles settings (System category) -->
        <activity-alias
            android:name=".profiles.ProfilesSettings"
            android:label="@string/profiles_settings_title"
            android:targetActivity="PartsActivity">
            <intent-filter>
                <action android:name="com.android.settings.action.IA_SETTINGS" />
                <action android:name="org.lineageos.lineageparts.PROFILES_SETTINGS" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
            <meta-data
                android:name="com.android.settings.category"
                android:value="com.android.settings.category.ia.system" />
            <meta-data
                android:name="com.android.settings.icon"
                android:resource="@drawable/ic_settings_profiles" />
            <meta-data
                android:name="com.android.settings.icon_tintable"
                android:value="true" />
            <meta-data
                android:name="com.android.settings.order"
                android:value="-255" />
            <meta-data
                android:name="com.android.settings.summary"
                android:resource="@string/summary_empty" />
        </activity-alias>

        <!-- Status bar settings (System category) -->
        <activity-alias
            android:name=".statusbar.StatusBarSettings"
            android:label="@string/status_bar_title"
            android:targetActivity="PartsActivity">
            <intent-filter>
                <action android:name="com.android.settings.action.IA_SETTINGS" />
                <action android:name="org.lineageos.lineageparts.STATUS_BAR_SETTINGS" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
            <meta-data
                android:name="com.android.settings.category"
                android:value="com.android.settings.category.ia.system" />
            <meta-data
                android:name="com.android.settings.icon"
                android:resource="@drawable/ic_settings_statusbar" />
            <meta-data
                android:name="com.android.settings.icon_tintable"
                android:value="true" />
            <meta-data
                android:name="com.android.settings.order"
                android:value="-254" />
            <meta-data
                android:name="com.android.settings.summary"
                android:resource="@string/summary_empty" />
        </activity-alias>

        <!-- Trust interface (Privacy category) -->
        <activity-alias
            android:name=".trust.TrustPreferences"
            android:label="@string/trust_title"
            android:targetActivity="PartsActivity">
            <intent-filter>
                <action android:name="com.android.settings.action.IA_SETTINGS" />
                <action android:name="org.lineageos.lineageparts.TRUST_INTERFACE" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
            <meta-data
                android:name="com.android.settings.category"
                android:value="com.android.settings.category.ia.privacy" />
            <meta-data
                android:name="com.android.settings.order"
                android:value="0" />
            <meta-data
                android:name="com.android.settings.summary"
                android:resource="@string/summary_empty" />
        </activity-alias>

        <!-- Contributors Cloud (MyDeviceInfo category) -->
        <activity-alias
            android:name=".contributors.ContributorsCloudFragment"
            android:label="@string/contributors_cloud_fragment_title"
            android:targetActivity="PartsActivity">
            <intent-filter>
                <action android:name="com.android.settings.action.IA_SETTINGS" />
                <action android:name="org.lineageos.lineageparts.CONTRIBUTORS_CLOUD" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
            <meta-data
                android:name="com.android.settings.category"
                android:value="com.android.settings.category.ia.my_device_info" />
            <meta-data
                android:name="com.android.settings.order"
                android:value="16" />
            <meta-data
                android:name="com.android.settings.summary"
                android:resource="@string/summary_empty" />
        </activity-alias>

        <!-- Anonymous Statistics -->
        <receiver android:name=".lineagestats.ReportingServiceManager"
            android:enabled="true"
            android:exported="false"
            android:label="ReportingServiceManager">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
                <action android:name="org.lineageos.lineageparts.action.TRIGGER_REPORT_METRICS" />
            </intent-filter>
        </receiver>

        <service android:label="ReportingService"
            android:enabled="true"
            android:exported="false"
            android:name=".lineagestats.ReportingService">
        </service>

        <service android:name=".lineagestats.StatsUploadJobService"
                 android:permission="android.permission.BIND_JOB_SERVICE" />

        <service android:name=".lineagestats.ReportingService"
                 android:label="ReportingService"
                 android:enabled="true"
                 android:exported="false" />

        <activity android:name=".profiles.NFCProfile">
            <intent-filter>
                <action android:name="android.nfc.action.NDEF_DISCOVERED"/>
                <category android:name="android.intent.category.DEFAULT"/>
                <data android:mimeType="lineage/profile" />
            </intent-filter>
        </activity>

        <activity
            android:name=".profiles.NFCProfileSelect"
            android:label="@string/profile_select"
            android:excludeFromRecents="true"/>

        <activity android:name=".logo.PlatLogoActivity"
                android:theme="@android:style/Theme.Wallpaper.NoTitleBar.Fullscreen"
                android:configChanges="orientation|keyboardHidden">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity android:name=".egg.octo.Ocquarium"
            android:theme="@android:style/Theme.DeviceDefault.NoActionBar.Fullscreen"
            android:label="@string/egg_title">
            <intent-filter>
                <action android:name="org.lineageos.lineageparts.EASTER_EGG"/>
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="com.android.internal.category.PLATLOGO" />
            </intent-filter>
        </activity>

    </application>
</manifest>
