• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<?xml version="1.0" encoding="utf-8"?>
2<!--
3  Copyright (C) 2018 The Android Open Source Project
4
5  Licensed under the Apache License, Version 2.0 (the "License");
6  you may not use this file except in compliance with the License.
7  You may obtain a copy of the License at
8
9       http://www.apache.org/licenses/LICENSE-2.0
10
11  Unless required by applicable law or agreed to in writing, software
12  distributed under the License is distributed on an "AS IS" BASIS,
13  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  See the License for the specific language governing permissions and
15  limitations under the License.
16  -->
17
18<LinearLayout
19    xmlns:android="http://schemas.android.com/apk/res/android"
20    android:layout_width="match_parent"
21    android:layout_height="wrap_content"
22    android:orientation="vertical"
23    android:id="@+id/app_permission_root">
24
25    <androidx.core.widget.NestedScrollView
26        android:id="@+id/nested_scroll_view"
27        android:layout_width="match_parent"
28        android:layout_height="wrap_content"
29        android:clipChildren="false">
30
31        <LinearLayout
32            android:layout_width="match_parent"
33            android:layout_height="wrap_content"
34            style="@style/AppPermission">
35
36            <include layout="@layout/header_large" />
37
38            <LinearLayout
39                style="@style/AppPermissionSelection">
40
41                <LinearLayout
42                    android:id="@+id/app_permission_rationale_container"
43                    android:layout_width="match_parent"
44                    android:layout_height="wrap_content"
45                    style="@style/AppPermissionRationaleContainer">
46                    <TextView
47                        android:id="@+id/app_permission_rationale_message"
48                        android:text="@string/app_permission_rationale_message"
49                        style="@style/AppPermissionMessage" />
50
51                    <LinearLayout
52                        android:id="@+id/app_permission_rationale_content"
53                        android:layout_width="match_parent"
54                        android:layout_height="wrap_content"
55                        style="@style/AppPermissionRationaleContent" >
56
57                        <ImageView
58                            android:id="@+id/app_permission_rationale_icon"
59                            android:importantForAccessibility="no"
60                            android:src="@drawable/ic_shield_exclamation_outline"
61                            style="@style/AppPermissionRationaleIcon" />
62
63                        <LinearLayout
64                            android:layout_width="match_parent"
65                            android:layout_height="wrap_content"
66                            style="@style/AppPermissionRationaleTextContent">
67                            <TextView
68                                android:duplicateParentState="true"
69                                android:id="@+id/app_permission_rationale_title"
70                                android:text="@string/app_location_permission_rationale_title"
71                                style="@style/AppPermissionRationaleTitle" />
72                            <TextView
73                                android:duplicateParentState="true"
74                                android:id="@+id/app_permission_rationale_subtitle"
75                                android:text="@string/app_location_permission_rationale_subtitle"
76                                style="@style/AppPermissionRationaleSubtitle" />
77                        </LinearLayout>
78
79                    </LinearLayout>
80                </LinearLayout>
81
82                <TextView
83                    android:id="@+id/permission_message"
84                    style="@style/AppPermissionMessage" />
85
86                <RadioGroup
87                    android:id="@+id/radiogroup"
88                    android:animateLayoutChanges="true"
89                    android:layout_width="match_parent"
90                    android:layout_height="wrap_content">
91
92                    <RadioButton
93                        android:id="@+id/allow_radio_button"
94                        android:text="@string/app_permission_button_allow"
95                        style="@style/AppPermissionRadioButton" />
96
97                    <RadioButton
98                        android:id="@+id/allow_always_radio_button"
99                        android:text="@string/app_permission_button_allow_always"
100                        style="@style/AppPermissionRadioButton" />
101
102                    <RadioButton
103                        android:id="@+id/allow_foreground_only_radio_button"
104                        android:text="@string/app_permission_button_allow_foreground"
105                        style="@style/AppPermissionRadioButton" />
106
107                    <RadioButton
108                        android:id="@+id/select_radio_button"
109                        android:text="@string/app_permission_button_ask"
110                        style="@style/AppPermissionRadioButton" />
111
112                    <RadioButton
113                        android:id="@+id/ask_one_time_radio_button"
114                        android:text="@string/app_permission_button_ask"
115                        style="@style/AppPermissionRadioButton" />
116
117                    <RadioButton
118                        android:id="@+id/ask_radio_button"
119                        android:text="@string/app_permission_button_ask"
120                        style="@style/AppPermissionRadioButton" />
121
122                    <RadioButton
123                        android:id="@+id/deny_radio_button"
124                        android:text="@string/app_permission_button_deny"
125                        style="@style/AppPermissionRadioButton" />
126
127                    <RadioButton
128                        android:id="@+id/deny_foreground_radio_button"
129                        android:text="@string/app_permission_button_deny"
130                        style="@style/AppPermissionRadioButton" />
131
132                </RadioGroup>
133
134                <LinearLayout
135                    android:layout_width="match_parent"
136                    android:layout_height="wrap_content"
137                    android:id="@+id/location_accuracy"
138                    style="@style/AppPermissionLocationAccuracy">
139
140                    <LinearLayout
141                        android:duplicateParentState="true"
142                        style="@style/AppPermissionLocationAccuracyText">
143                        <TextView
144                            android:duplicateParentState="true"
145                            android:text="@string/app_permission_location_accuracy"
146                            style="@style/AppPermissionLocationAccuracyTitle" />
147                        <TextView
148                            android:duplicateParentState="true"
149                            android:text="@string/app_permission_location_accuracy_subtitle"
150                            style="@style/AppPermissionLocationAccuracySubtitle" />
151                    </LinearLayout>
152
153                    <Switch
154                        android:id="@+id/location_accuracy_switch"
155                        android:checked="true"
156                        android:duplicateParentState="true"
157                        style="@style/AppPermissionLocationAccuracySwitch" />
158
159                </LinearLayout>
160
161                <LinearLayout
162                    android:layout_width="match_parent"
163                    android:layout_height="wrap_content"
164                    android:orientation="horizontal">
165
166                    <TextView
167                        android:id="@+id/permission_details"
168                        style="@style/AppPermissionDetails"
169                        android:gravity="start"
170                        android:textAlignment="viewStart"/>
171
172                    <LinearLayout
173                        android:id="@+id/two_target_divider"
174                        style="@style/AppPermissionTwoTargetDivider">
175                        <View
176                            android:layout_width="1dp"
177                            android:layout_height="match_parent"
178                            android:background="@drawable/list_divider_dark" />
179                    </LinearLayout>
180
181                    <LinearLayout
182                        android:id="@+id/widget_frame"
183                        style="@style/AppPermissionWidgetFrame" />
184
185                </LinearLayout>
186
187            </LinearLayout>
188
189            <LinearLayout
190                style="@style/AppPermissionFooter">
191
192                <TextView
193                    android:id="@+id/footer_link_1"
194                    android:layout_width="wrap_content"
195                    android:layout_height="wrap_content"
196                    android:clickable="true"
197                    style="@style/AppPermissionFooterLink" />
198
199                <TextView
200                    android:id="@+id/footer_link_2"
201                    android:layout_width="wrap_content"
202                    android:layout_height="wrap_content"
203                    android:clickable="true"
204                    style="@style/AppPermissionFooterLink" />
205
206                <TextView
207                    android:id="@+id/footer_storage_special_app_access"
208                    android:clickable="false"
209                    android:layout_width="wrap_content"
210                    android:layout_height="wrap_content"
211                    android:drawableLeft="@drawable/ic_info_outline"
212                    style="@style/AppPermissionFooterTextWithIcon" />
213
214            </LinearLayout>
215
216            <LinearLayout
217                style="@style/AppPermissionFooter">
218
219                <ImageView
220                    android:id="@+id/app_additional_info_icon"
221                    android:clickable="false"
222                    android:src="@drawable/ic_info_outline"
223                    android:layout_marginBottom="16dp"
224                    android:layout_marginStart="24dp"
225                    style="@style/ImageViewIcon" />
226
227                <TextView
228                    android:id="@+id/app_additional_info_text"
229                    android:layout_width="wrap_content"
230                    android:layout_height="wrap_content"
231                    android:paddingStart="24dp"
232                    android:paddingEnd="24dp"
233                    android:clickable="true"
234                    android:textSize="14sp"
235                    android:lineHeight="20sp"
236                    style="@style/AppPermissionFooter" />
237
238            </LinearLayout>
239
240        </LinearLayout>
241
242    </androidx.core.widget.NestedScrollView>
243
244</LinearLayout>
245