<?xml version="1.0" encoding="utf-8"?><!--
  ~ Copyright 2023 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
  ~
  ~     https://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:tools="http://schemas.android.com/tools"
    xmlns:android="http://schemas.android.com/apk/res/android">

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

    <queries>
        <intent>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.HOME" />
        </intent>
    </queries>

    <application>

        <receiver
            android:name="com.example.platform.ui.appwidgets.AppWidgetPinnedReceiver"
            android:exported="false" />

        <!-- Toolbar variants -->

        <!-- Expressive Toolbar with a 4-sided cookie cut shape -->
        <receiver
            android:name=".glance.layout.toolbars.ExpressiveToolbarAppWidgetReceiver"
            android:enabled="@bool/glance_appwidget_available"
            android:exported="false"
            android:label="@string/sample_expressive_toolbar_app_widget_name">
            <intent-filter>
                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
                <action android:name="android.intent.action.LOCALE_CHANGED" />
            </intent-filter>
            <meta-data
                android:name="android.appwidget.provider"
                android:resource="@xml/sample_expressive_toolbar_widget_info" />
        </receiver>

        <!-- Toolbar with header -->
        <receiver
            android:name=".glance.layout.toolbars.ToolBarAppWidgetReceiver"
            android:enabled="@bool/glance_appwidget_available"
            android:exported="false"
            android:label="@string/sample_toolbar_app_widget_name">
            <intent-filter>
                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
                <action android:name="android.intent.action.LOCALE_CHANGED" />
            </intent-filter>
            <meta-data
                android:name="android.appwidget.provider"
                android:resource="@xml/sample_toolbar_widget_info" />
        </receiver>
        <!-- A search toolbar -->
        <receiver
            android:name=".glance.layout.toolbars.SearchToolBarAppWidgetReceiver"
            android:enabled="@bool/glance_appwidget_available"
            android:exported="false"
            android:label="@string/sample_search_toolbar_app_widget_name">
            <intent-filter>
                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
                <action android:name="android.intent.action.LOCALE_CHANGED" />
            </intent-filter>
            <meta-data
                android:name="android.appwidget.provider"
                android:resource="@xml/sample_search_toolbar_widget_info" />
        </receiver>

        <!-- Long text variants -->
        <receiver
            android:name=".glance.layout.text.LongTextAppWidgetReceiver"
            android:enabled="@bool/glance_appwidget_available"
            android:exported="false"
            android:label="@string/sample_long_text_app_widget_name">
            <intent-filter>
                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
                <action android:name="android.intent.action.LOCALE_CHANGED" />
            </intent-filter>
            <meta-data
                android:name="android.appwidget.provider"
                android:resource="@xml/sample_long_text_widget_info" />
        </receiver>
        <receiver
            android:name=".glance.layout.text.TextWithImageAppWidgetReceiver"
            android:enabled="@bool/glance_appwidget_available"
            android:exported="false"
            android:label="@string/sample_text_and_image_app_widget_name">
            <intent-filter>
                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
                <action android:name="android.intent.action.LOCALE_CHANGED" />
            </intent-filter>
            <meta-data
                android:name="android.appwidget.provider"
                android:resource="@xml/sample_text_with_image_widget_info" />
        </receiver>
        <receiver
            android:name=".glance.layout.text.FullBleedImageAppWidgetReceiver"
            android:enabled="@bool/glance_appwidget_available"
            android:exported="false"
            android:label="@string/sample_full_bleed_image_app_widget_name">
            <intent-filter>
                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
                <action android:name="android.intent.action.LOCALE_CHANGED" />
            </intent-filter>
            <meta-data
                android:name="android.appwidget.provider"
                android:resource="@xml/sample_full_bleed_image_widget_info" />
        </receiver>

        <!-- List of image + text -->
        <receiver
            android:name=".glance.layout.collections.ImageTextListAppWidgetReceiver"
            android:enabled="@bool/glance_appwidget_available"
            android:exported="false"
            android:label="@string/sample_text_and_image_list_app_widget_name">
            <intent-filter>
                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
                <action android:name="android.intent.action.LOCALE_CHANGED" />
            </intent-filter>
            <meta-data
                android:name="android.appwidget.provider"
                android:resource="@xml/sample_image_text_list_widget_info" />
        </receiver>

        <!-- List of Icon button + text -->
        <receiver
            android:name=".glance.layout.collections.CheckListAppWidgetReceiver"
            android:enabled="@bool/glance_appwidget_available"
            android:exported="false"
            android:label="@string/sample_check_list_app_widget_name">
            <intent-filter>
                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
                <action android:name="android.intent.action.LOCALE_CHANGED" />
            </intent-filter>
            <meta-data
                android:name="android.appwidget.provider"
                android:resource="@xml/sample_check_list_widget_info" />
        </receiver>

        <!-- Action List -->
        <activity android:name=".glance.layout.ActionDemonstrationActivity" />

        <activity android:name=".glance.layout.CanonicalLayoutActivity"/>

        <receiver
            android:name=".glance.layout.collections.ActionListAppWidgetAppWidgetReceiver"
            android:enabled="@bool/glance_appwidget_available"
            android:exported="false"
            android:label="@string/sample_action_list_app_widget_name">
            <intent-filter>
                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
                <action android:name="android.intent.action.LOCALE_CHANGED" />
            </intent-filter>
            <meta-data
                android:name="android.appwidget.provider"
                android:resource="@xml/sample_action_list_widget_info" />
        </receiver>

        <!-- Image Grid -->
        <receiver
            android:name=".glance.layout.collections.ImageGridAppWidgetReceiver"
            android:enabled="@bool/glance_appwidget_available"
            android:exported="false"
            android:label="@string/sample_image_grid_app_widget_name">
            <intent-filter>
                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
                <action android:name="android.intent.action.LOCALE_CHANGED" />
            </intent-filter>
            <meta-data
                android:name="android.appwidget.provider"
                android:resource="@xml/sample_image_grid_widget_info" />
        </receiver>

        <receiver
            android:name=".rv.weather.WeatherForecastAppWidget"
            android:enabled="@bool/weather_appwidget_enabled"
            android:label="@string/remote_views_weather"
            android:exported="false">
            <intent-filter>
                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
            </intent-filter>

            <meta-data
                android:name="android.appwidget.provider"
                android:resource="@xml/app_widget_weather_forecast" />
        </receiver>
        <receiver
            android:name=".glance.weather.WeatherGlanceWidgetReceiver"
            android:label="@string/glance_weather"
            android:enabled="@bool/glance_appwidget_available"
            android:exported="false"
            tools:targetApi="o">
            <intent-filter>
                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
            </intent-filter>

            <meta-data
                android:name="android.appwidget.provider"
                android:resource="@xml/app_widget_weather_forecast_glance" />
        </receiver>
    </application>

</manifest>