1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (C) 2015 The Android Open Source Project
3
4     Licensed under the Apache License, Version 2.0 (the "License");
5     you may not use this file except in compliance with the License.
6     You may obtain a copy of the License at
7
8          http://www.apache.org/licenses/LICENSE-2.0
9
10     Unless required by applicable law or agreed to in writing, software
11     distributed under the License is distributed on an "AS IS" BASIS,
12     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13     See the License for the specific language governing permissions and
14     limitations under the License.
15-->
16
17<!--
18  ~ A lot of content in this file is identical to grant_permissions_material3.xml
19  ~ Be sure to update both files when making changes.
20  -->
21
22<!-- In (hopefully very rare) case dialog is too high: allow scrolling -->
23<ScrollView
24    xmlns:android="http://schemas.android.com/apk/res/android"
25    android:layout_width="match_parent"
26    android:layout_height="match_parent"
27    style="@style/PermissionGrantScrollView">
28
29    <LinearLayout
30        android:id="@+id/grant_singleton"
31        android:importantForAccessibility="no"
32        android:focusable="false"
33        style="@style/PermissionGrantSingleton">
34
35        <!-- The dialog -->
36        <LinearLayout
37            android:id="@+id/grant_dialog"
38            android:theme="@style/Theme.PermissionGrantDialog"
39            android:importantForAccessibility="no"
40            android:focusable="false"
41            style="@style/PermissionGrantDialog">
42
43            <LinearLayout
44                android:id="@+id/content_container"
45                style="@style/PermissionGrantContent">
46
47                <LinearLayout
48                    style="@style/PermissionGrantDescription">
49
50                    <ImageView
51                        android:id="@+id/permission_icon"
52                        style="@style/PermissionGrantTitleIcon" />
53
54                    <TextView
55                        android:id="@+id/permission_message"
56                        android:accessibilityHeading="true"
57                        style="@style/PermissionGrantTitleMessage" />
58
59                </LinearLayout>
60
61                <TextView
62                    android:id="@+id/detail_message"
63                    style="@style/PermissionGrantDetailMessage" />
64
65            </LinearLayout>
66
67            <!-- permission rationale  -->
68            <LinearLayout
69                android:id="@+id/permission_rationale_container"
70                style="@style/PermissionGrantPermissionRationaleContent">
71
72                <ImageView
73                    android:id="@+id/permission_rationale_icon"
74                    android:importantForAccessibility="no"
75                    android:src="@drawable/ic_shield_exclamation_outline"
76                    style="@style/PermissionGrantPermissionRationaleIcon" />
77
78                <TextView
79                    android:id="@+id/permission_rationale_message"
80                    style="@style/PermissionGrantPermissionRationaleMessage" />
81
82                <ImageView
83                    android:id="@+id/permission_rationale_more_info_icon"
84                    android:importantForAccessibility="no"
85                    android:src="@drawable/ic_more_info_arrow"
86                    style="@style/PermissionGrantPermissionRationaleMoreInfoIcon" />
87
88            </LinearLayout>
89
90            <!-- location (precise/approximate) animations -->
91            <LinearLayout
92                android:layout_width="match_parent"
93                android:layout_height="wrap_content"
94                android:id="@+id/permission_location_accuracy">
95
96                <RadioGroup
97                    android:id="@+id/permission_location_accuracy_radio_group"
98                    style="@style/PermissionLocationAccuracyRadioGroup">
99
100                    <RadioButton
101                        android:id="@+id/permission_location_accuracy_radio_fine"
102                        android:text="@string/permgrouprequest_finelocation_imagetext"
103                        style="@style/PermissionLocationAccuracyRadioFine"/>
104
105                    <RadioButton
106                        android:id="@+id/permission_location_accuracy_radio_coarse"
107                        android:text="@string/permgrouprequest_coarselocation_imagetext"
108                        style="@style/PermissionLocationAccuracyRadioCoarse" />
109                </RadioGroup>
110
111                <ImageView
112                    android:id="@+id/permission_location_accuracy_fine_only"
113                    android:contentDescription="@string/precise_image_description"
114                    style="@style/PermissionLocationAccuracyFineImageView" />
115
116                <ImageView
117                    android:id="@+id/permission_location_accuracy_coarse_only"
118                    android:contentDescription="@string/approximate_image_description"
119                    style="@style/PermissionLocationAccuracyCoarseImageView" />
120
121            </LinearLayout>
122
123            <!-- Buttons on bottom of dialog -->
124            <LinearLayout
125                style="@style/PermissionGrantButtonList">
126
127                <Space
128                    style="@style/PermissionGrantButtonBarSpace"/>
129
130                <com.android.permissioncontroller.permission.ui.widget.SecureButton
131                    android:id="@+id/permission_allow_button"
132                    android:text="@string/grant_dialog_button_allow"
133                    style="@style/PermissionGrantButtonAllow" />
134
135                <com.android.permissioncontroller.permission.ui.widget.SecureButton
136                    android:id="@+id/permission_allow_foreground_only_button"
137                    android:text="@string/grant_dialog_button_allow_foreground"
138                    style="@style/PermissionGrantButtonAllowForeground" />
139
140                <com.android.permissioncontroller.permission.ui.widget.SecureButton
141                    android:id="@+id/permission_allow_one_time_button"
142                    android:text="@string/grant_dialog_button_allow_one_time"
143                    style="@style/PermissionGrantButtonAllowOneTime" />
144
145                <com.android.permissioncontroller.permission.ui.widget.SecureButton
146                    android:id="@+id/permission_allow_selected_button"
147                    android:text="@string/grant_dialog_button_allow_limited_access"
148                    style="@style/PermissionGrantButtonAllowSelected" />
149
150                <com.android.permissioncontroller.permission.ui.widget.SecureButton
151                    android:id="@+id/permission_allow_all_button"
152                    android:text="@string/grant_dialog_button_allow_all"
153                    style="@style/PermissionGrantButtonAllowAll" />
154
155                <com.android.permissioncontroller.permission.ui.widget.SecureButton
156                    android:id="@+id/permission_deny_button"
157                    android:text="@string/grant_dialog_button_deny"
158                    style="@style/PermissionGrantButtonDeny" />
159
160                <com.android.permissioncontroller.permission.ui.widget.SecureButton
161                    android:id="@+id/permission_deny_and_dont_ask_again_button"
162                    android:text="@string/grant_dialog_button_deny"
163                    style="@style/PermissionGrantButtonDeny" />
164
165                <com.android.permissioncontroller.permission.ui.widget.SecureButton
166                    android:id="@+id/permission_no_upgrade_button"
167                    android:text="@string/grant_dialog_button_no_upgrade"
168                    style="@style/PermissionGrantButtonNoUpgrade" />
169
170                <com.android.permissioncontroller.permission.ui.widget.SecureButton
171                    android:id="@+id/permission_no_upgrade_and_dont_ask_again_button"
172                    android:text="@string/grant_dialog_button_no_upgrade"
173                    style="@style/PermissionGrantButtonNoUpgrade" />
174
175                <com.android.permissioncontroller.permission.ui.widget.SecureButton
176                    android:id="@+id/permission_no_upgrade_one_time_button"
177                    android:text="@string/grant_dialog_button_no_upgrade_one_time"
178                    style="@style/PermissionGrantButtonNoUpgrade" />
179
180                <com.android.permissioncontroller.permission.ui.widget.SecureButton
181                    android:id="@+id/permission_no_upgrade_one_time_and_dont_ask_again_button"
182                    android:text="@string/grant_dialog_button_no_upgrade_one_time"
183                    style="@style/PermissionGrantButtonNoUpgrade" />
184
185                <com.android.permissioncontroller.permission.ui.widget.SecureButton
186                    android:id="@+id/permission_dont_allow_more_selected_button"
187                    android:text="@string/grant_dialog_button_dont_select_more"
188                    style="@style/PermissionGrantButtonDontAllowMore" />
189            </LinearLayout>
190
191        </LinearLayout>
192    </LinearLayout>
193</ScrollView>
194