<?xml version="1.0" encoding="utf-8"?>
<!--
  ~ Copyright (C) 2014 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
  -->

<resources>
    <item type="id" name="translation_x_animator_tag"/>
    <item type="id" name="translation_y_animator_tag"/>
    <item type="id" name="translation_z_animator_tag"/>
    <item type="id" name="alpha_animator_tag"/>
    <item type="id" name="scale_x_animator_tag"/>
    <item type="id" name="scale_y_animator_tag"/>
    <item type="id" name="top_inset_animator_tag"/>
    <item type="id" name="height_animator_tag"/>
    <item type="id" name="x_animator_tag"/>
    <item type="id" name="y_animator_tag"/>
    <item type="id" name="translation_x_animator_end_value_tag"/>
    <item type="id" name="translation_y_animator_end_value_tag"/>
    <item type="id" name="translation_z_animator_end_value_tag"/>
    <item type="id" name="scale_x_animator_end_value_tag"/>
    <item type="id" name="scale_y_animator_end_value_tag"/>
    <item type="id" name="alpha_animator_end_value_tag"/>
    <item type="id" name="top_inset_animator_end_value_tag"/>
    <item type="id" name="height_animator_end_value_tag"/>
    <item type="id" name="x_animator_tag_end_value"/>
    <item type="id" name="y_animator_tag_end_value"/>
    <item type="id" name="translation_x_animator_start_value_tag"/>
    <item type="id" name="translation_y_animator_start_value_tag"/>
    <item type="id" name="translation_z_animator_start_value_tag"/>
    <item type="id" name="scale_x_animator_start_value_tag"/>
    <item type="id" name="scale_y_animator_start_value_tag"/>
    <item type="id" name="alpha_animator_start_value_tag"/>
    <item type="id" name="top_inset_animator_start_value_tag"/>
    <item type="id" name="height_animator_start_value_tag"/>
    <item type="id" name="x_animator_tag_start_value"/>
    <item type="id" name="y_animator_tag_start_value"/>
    <item type="id" name="doze_saved_filter_tag"/>
    <item type="id" name="qs_icon_tag"/>
    <item type="id" name="qs_slash_tag"/>
    <item type="id" name="scrim"/>
    <item type="id" name="scrim_alpha_start"/>
    <item type="id" name="scrim_alpha_end"/>
    <item type="id" name="notification_power"/>
    <item type="id" name="notification_screenshot"/>
    <item type="id" name="notification_hidden"/>
    <item type="id" name="notification_temperature"/>
    <item type="id" name="notification_plugin"/>
    <item type="id" name="transformation_start_x_tag"/>
    <item type="id" name="doze_intensity_tag"/>
    <item type="id" name="transformation_start_y_tag"/>
    <item type="id" name="transformation_start_actual_width"/>
    <item type="id" name="transformation_start_actual_height"/>
    <item type="id" name="transformation_start_scale_x_tag"/>
    <item type="id" name="transformation_start_scale_y_tag"/>
    <item type="id" name="continuous_clipping_tag"/>
    <item type="id" name="panel_alpha_animator_tag"/>
    <item type="id" name="panel_alpha_animator_start_tag"/>
    <item type="id" name="panel_alpha_animator_end_tag"/>
    <item type="id" name="cross_fade_layer_type_changed_tag"/>

    <!-- Whether the icon is from a notification for which targetSdk < L -->
    <item type="id" name="icon_is_pre_L"/>

    <!-- For notification icons for which targetSdk < L, this caches whether the icon is grayscale -->
    <item type="id" name="icon_is_grayscale" />
    <item type="id" name="image_icon_tag" />
    <item type="id" name="contains_transformed_view" />
    <item type="id" name="is_clicked_heads_up_tag" />

    <!-- Accessibility actions for the docked stack divider -->
    <item type="id" name="action_move_tl_full" />
    <item type="id" name="action_move_tl_70" />
    <item type="id" name="action_move_tl_50" />
    <item type="id" name="action_move_tl_30" />
    <item type="id" name="action_move_rb_full" />

    <item type="id" name="bottom_roundess_animator_tag"/>
    <item type="id" name="bottom_roundess_animator_start_tag"/>
    <item type="id" name="bottom_roundess_animator_end_tag"/>

    <item type="id" name="top_roundess_animator_tag"/>
    <item type="id" name="top_roundess_animator_start_tag"/>
    <item type="id" name="top_roundess_animator_end_tag"/>

    <item type="id" name="keyguard_hun_animator_tag"/>
    <item type="id" name="keyguard_hun_animator_start_tag"/>
    <item type="id" name="keyguard_hun_animator_end_tag"/>

    <item type="id" name="view_group_fade_helper_modified_views"/>
    <item type="id" name="view_group_fade_helper_animator"/>
    <item type="id" name="view_group_fade_helper_previous_value_tag"/>
    <item type="id" name="view_group_fade_helper_restore_tag"/>
    <item type="id" name="view_group_fade_helper_hardware_layer"/>

    <!-- Accessibility actions for the notification menu -->
    <item type="id" name="action_snooze_undo"/>
    <item type="id" name="action_snooze_shorter"/>
    <item type="id" name="action_snooze_short"/>
    <item type="id" name="action_snooze_long"/>
    <item type="id" name="action_snooze_longer"/>
    <item type="id" name="action_snooze_assistant_suggestion_1"/>
    <item type="id" name="action_snooze"/>

    <!-- Accessibility actions for bubbles. -->
    <item type="id" name="action_move_top_left"/>
    <item type="id" name="action_move_top_right"/>
    <item type="id" name="action_move_bottom_left"/>
    <item type="id" name="action_move_bottom_right"/>

    <!-- For StatusIconContainer to tag its icon views -->
    <item type="id" name="status_bar_view_state_tag" />

    <item type="id" name="display_cutout" />

    <item type="id" name="row_tag_for_content_view" />

    <!-- Optional cancel button on Keyguard -->
    <item type="id" name="cancel_button"/>

    <!-- For saving PhysicsAnimationLayout animations/animators as view tags. -->
    <item type="id" name="translation_x_dynamicanimation_tag"/>
    <item type="id" name="translation_y_dynamicanimation_tag"/>
    <item type="id" name="translation_z_dynamicanimation_tag"/>
    <item type="id" name="alpha_dynamicanimation_tag"/>
    <item type="id" name="scale_x_dynamicanimation_tag"/>
    <item type="id" name="scale_y_dynamicanimation_tag"/>
    <item type="id" name="physics_animator_tag"/>
    <item type="id" name="target_animator_tag" />

    <!-- Global Actions Menu -->
    <item type="id" name="global_actions_view" />
</resources>

