• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<?xml version="1.0" encoding="utf-8"?>
2<!--
3  ~ Copyright (C) 2025 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<LinearLayout
18    xmlns:android="http://schemas.android.com/apk/res/android"
19    xmlns:tools="http://schemas.android.com/tools"
20    android:id="@+id/container"
21    android:orientation="vertical"
22    android:layout_width="match_parent"
23    android:layout_height="match_parent">
24    <ScrollView
25        android:layout_width="match_parent"
26        android:layout_height="0px"
27        android:layout_weight="1">
28
29        <LinearLayout
30            android:orientation="vertical"
31            android:padding="16dp"
32            android:layout_width="match_parent"
33            android:layout_height="wrap_content"
34        >
35
36            <TextView
37                android:layout_width="match_parent"
38                android:layout_height="wrap_content"
39                style="@style/title"
40                android:text="Media"
41            />
42
43            <RadioGroup
44                android:id="@+id/media_selection"
45                android:layout_width="match_parent"
46                android:layout_height="wrap_content"
47                android:orientation="horizontal">
48                <RadioButton
49                    android:id="@+id/no_media"
50                    android:layout_width="wrap_content"
51                    android:layout_height="wrap_content"
52                    android:text="Nothing"
53                />
54                <RadioButton
55                    android:id="@+id/one_image"
56                    android:layout_width="wrap_content"
57                    android:layout_height="wrap_content"
58                    android:text="One Image"
59                />
60                <RadioButton
61                    android:id="@+id/many_images"
62                    android:layout_width="wrap_content"
63                    android:layout_height="wrap_content"
64                    android:text="Many Images"
65                />
66            </RadioGroup>
67
68            <CheckBox
69                android:id="@+id/shareousel"
70                android:layout_width="match_parent"
71                android:layout_height="wrap_content"
72                android:text="Enable Shareousel"
73                />
74
75            <CheckBox
76                android:id="@+id/alt_intent"
77                android:layout_width="match_parent"
78                android:layout_height="wrap_content"
79                android:text="Include Alternate Share Text Intent"
80                />
81
82            <CheckBox
83                android:id="@+id/image_size_metadata"
84                android:layout_width="match_parent"
85                android:layout_height="wrap_content"
86                android:checked="true"
87                android:text="Report image size in metadata"
88                />
89
90            <TextView
91                android:id="@+id/media_type_header"
92                android:layout_width="match_parent"
93                android:layout_height="wrap_content"
94                style="@style/subtitle"
95                android:text="Media Type"
96                />
97
98            <Spinner
99                android:id="@+id/media_type_selection"
100                android:layout_width="match_parent"
101                android:layout_height="wrap_content"
102                android:layout_marginTop="8dp"
103                android:layout_marginBottom="8dp" />
104
105            <TextView
106                android:layout_width="match_parent"
107                android:layout_height="wrap_content"
108                style="@style/title"
109                android:text="Text"
110            />
111
112            <RadioGroup
113                android:id="@+id/text_selection"
114                android:layout_width="match_parent"
115                android:layout_height="wrap_content"
116                android:orientation="horizontal">
117                <RadioButton
118                    android:id="@+id/no_text"
119                    android:layout_width="wrap_content"
120                    android:layout_height="wrap_content"
121                    android:text="Nothing"
122                />
123                <RadioButton
124                    android:id="@+id/short_text"
125                    android:layout_width="wrap_content"
126                    android:layout_height="wrap_content"
127                    android:text="Short"
128                />
129                <RadioButton
130                    android:id="@+id/long_text"
131                    android:layout_width="wrap_content"
132                    android:layout_height="wrap_content"
133                    android:text="Long"
134                />
135                <RadioButton
136                    android:id="@+id/url_text"
137                    android:layout_width="wrap_content"
138                    android:layout_height="wrap_content"
139                    android:text="URL"
140                />
141
142            </RadioGroup>
143
144            <LinearLayout
145                android:layout_width="match_parent"
146                android:layout_height="wrap_content"
147                android:orientation="horizontal">
148
149                <LinearLayout
150                    android:layout_width="0dp"
151                    android:layout_height="wrap_content"
152                    android:layout_weight="1"
153                    android:orientation="vertical">
154
155                    <CheckBox
156                        android:id="@+id/include_title"
157                        android:layout_width="wrap_content"
158                        android:layout_height="wrap_content"
159                        android:text="Include Title"
160                    />
161
162                    <CheckBox
163                        android:id="@+id/include_icon"
164                        android:layout_width="wrap_content"
165                        android:layout_height="wrap_content"
166                        android:text="Include Icon" />
167                </LinearLayout>
168
169                <LinearLayout
170                    android:layout_width="0dp"
171                    android:layout_height="wrap_content"
172                    android:layout_weight="1"
173                    android:orientation="vertical">
174
175                    <CheckBox
176                        android:id="@+id/use_rich_text"
177                        android:layout_width="wrap_content"
178                        android:layout_height="wrap_content"
179                        android:text="Use Rich Text" />
180
181                    <CheckBox
182                        android:id="@+id/album_text"
183                        android:layout_width="wrap_content"
184                        android:layout_height="wrap_content"
185                        android:text="Mark as Album" />
186                </LinearLayout>
187            </LinearLayout>
188
189            <TextView
190                android:layout_width="match_parent"
191                android:layout_height="wrap_content"
192                style="@style/title"
193                android:text="Actions"
194            />
195
196            <RadioGroup
197                android:id="@+id/action_selection"
198                android:layout_width="match_parent"
199                android:layout_height="wrap_content"
200                android:orientation="horizontal">
201                <RadioButton
202                    android:id="@+id/no_actions"
203                    android:layout_width="wrap_content"
204                    android:layout_height="wrap_content"
205                    android:text="No Actions"
206                />
207                <RadioButton
208                    android:id="@+id/one_action"
209                    android:layout_width="wrap_content"
210                    android:layout_height="wrap_content"
211                    android:text="One Action"
212                />
213                <RadioButton
214                    android:id="@+id/five_actions"
215                    android:layout_width="wrap_content"
216                    android:layout_height="wrap_content"
217                    android:text="Five Actions"
218                />
219            </RadioGroup>
220
221            <CheckBox
222                android:id="@+id/include_modify_share"
223                android:layout_width="match_parent"
224                android:layout_height="wrap_content"
225                android:text="Include Modify Share"
226            />
227
228            <TextView
229                android:layout_width="match_parent"
230                android:layout_height="wrap_content"
231                style="@style/title"
232                android:text="Metadata"
233                />
234
235            <EditText
236                android:id="@+id/metadata"
237                android:layout_width="match_parent"
238                android:layout_height="wrap_content"
239                />
240
241            <TextView
242                android:layout_width="match_parent"
243                android:layout_height="wrap_content"
244                style="@style/title"
245                android:text="Advanced Options"
246            />
247
248            <TextView
249                android:layout_width="match_parent"
250                android:layout_height="wrap_content"
251                style="@style/subtitle"
252                android:text="Average image loading latency"
253            />
254
255            <RadioGroup
256                android:id="@+id/image_latency"
257                android:layout_width="match_parent"
258                android:layout_height="wrap_content"
259                android:orientation="horizontal">
260                <RadioButton
261                    android:id="@+id/image_latency_none"
262                    android:layout_width="wrap_content"
263                    android:layout_height="wrap_content"
264                    android:text="None"
265                />
266                <RadioButton
267                    android:id="@+id/image_latency_50"
268                    android:layout_width="wrap_content"
269                    android:layout_height="wrap_content"
270                    android:text="50ms"
271                />
272                <RadioButton
273                    android:id="@+id/image_latency_200"
274                    android:layout_width="wrap_content"
275                    android:layout_height="wrap_content"
276                    android:text="200ms"
277                />
278                <RadioButton
279                    android:id="@+id/image_latency_800"
280                    android:layout_width="wrap_content"
281                    android:layout_height="wrap_content"
282                    android:text="800ms"
283                />
284            </RadioGroup>
285
286            <TextView
287                android:layout_width="match_parent"
288                android:layout_height="wrap_content"
289                style="@style/subtitle"
290                android:text="Average image get type latency"
291            />
292
293            <RadioGroup
294                android:id="@+id/image_get_type_latency"
295                android:layout_width="match_parent"
296                android:layout_height="wrap_content"
297                android:orientation="horizontal">
298                <RadioButton
299                    android:id="@+id/image_get_type_latency_none"
300                    android:layout_width="wrap_content"
301                    android:layout_height="wrap_content"
302                    android:text="None"
303                />
304                <RadioButton
305                    android:id="@+id/image_get_type_latency_50"
306                    android:layout_width="wrap_content"
307                    android:layout_height="wrap_content"
308                    android:text="50ms"
309                />
310                <RadioButton
311                    android:id="@+id/image_get_type_latency_200"
312                    android:layout_width="wrap_content"
313                    android:layout_height="wrap_content"
314                    android:text="200ms"
315                />
316                <RadioButton
317                    android:id="@+id/image_get_type_latency_800"
318                    android:layout_width="wrap_content"
319                    android:layout_height="wrap_content"
320                    android:text="800ms"
321                />
322            </RadioGroup>
323
324            <TextView
325                android:layout_width="match_parent"
326                android:layout_height="wrap_content"
327                style="@style/subtitle"
328                android:text="Average metadata latency"
329                />
330
331            <RadioGroup
332                android:id="@+id/image_query_latency"
333                android:layout_width="match_parent"
334                android:layout_height="wrap_content"
335                android:orientation="horizontal">
336                <RadioButton
337                    android:id="@+id/image_query_latency_none"
338                    android:layout_width="wrap_content"
339                    android:layout_height="wrap_content"
340                    android:text="None"
341                    />
342                <RadioButton
343                    android:id="@+id/image_query_latency_50"
344                    android:layout_width="wrap_content"
345                    android:layout_height="wrap_content"
346                    android:text="50ms"
347                    />
348                <RadioButton
349                    android:id="@+id/image_query_latency_200"
350                    android:layout_width="wrap_content"
351                    android:layout_height="wrap_content"
352                    android:text="200ms"
353                    />
354                <RadioButton
355                    android:id="@+id/image_query_latency_800"
356                    android:layout_width="wrap_content"
357                    android:layout_height="wrap_content"
358                    android:text="800ms"
359                    />
360            </RadioGroup>
361            <TextView
362                android:layout_width="match_parent"
363                android:layout_height="wrap_content"
364                style="@style/subtitle"
365                android:text="Average selection latency"
366                />
367
368            <RadioGroup
369                android:id="@+id/selection_latency"
370                android:layout_width="match_parent"
371                android:layout_height="wrap_content"
372                android:orientation="horizontal">
373                <RadioButton
374                    android:id="@+id/selection_latency_none"
375                    android:layout_width="wrap_content"
376                    android:layout_height="wrap_content"
377                    android:text="None"
378                    />
379                <RadioButton
380                    android:id="@+id/selection_latency_50"
381                    android:layout_width="wrap_content"
382                    android:layout_height="wrap_content"
383                    android:text="50ms"
384                    />
385                <RadioButton
386                    android:id="@+id/selection_latency_200"
387                    android:layout_width="wrap_content"
388                    android:layout_height="wrap_content"
389                    android:text="200ms"
390                    />
391                <RadioButton
392                    android:id="@+id/selection_latency_800"
393                    android:layout_width="wrap_content"
394                    android:layout_height="wrap_content"
395                    android:text="800ms"
396                    />
397            </RadioGroup>
398
399            <TextView
400                android:layout_width="match_parent"
401                android:layout_height="wrap_content"
402                style="@style/subtitle"
403                android:text="Image load failure probability"
404            />
405
406            <RadioGroup
407                android:id="@+id/image_load_failure_rate"
408                android:layout_width="match_parent"
409                android:layout_height="wrap_content"
410                android:orientation="horizontal">
411                <RadioButton
412                    android:id="@+id/image_load_failure_rate_none"
413                    android:layout_width="wrap_content"
414                    android:layout_height="wrap_content"
415                    android:text="None"
416                />
417                <RadioButton
418                    android:id="@+id/image_load_failure_rate_50"
419                    android:layout_width="wrap_content"
420                    android:layout_height="wrap_content"
421                    android:text="50%"
422                />
423                <RadioButton
424                    android:id="@+id/image_load_failure_rate_100"
425                    android:layout_width="wrap_content"
426                    android:layout_height="wrap_content"
427                    android:text="100%"
428                />
429            </RadioGroup>
430            <TextView
431                android:layout_width="match_parent"
432                android:layout_height="wrap_content"
433                style="@style/subtitle"
434                android:text="Refinement"
435                />
436            <CheckBox
437                android:id="@+id/use_refinement"
438                android:layout_width="match_parent"
439                android:layout_height="wrap_content"
440                android:text="Use Refinement"
441                />
442
443            <TextView
444                android:layout_width="match_parent"
445                android:layout_height="wrap_content"
446                style="@style/subtitle"
447                android:text="Caller Target"
448                />
449            <CheckBox
450                android:id="@+id/caller_direct_target"
451                android:layout_width="match_parent"
452                android:layout_height="wrap_content"
453                android:text="Include Caller Direct Target"
454                />
455
456            <TextView
457                android:layout_width="match_parent"
458                android:layout_height="wrap_content"
459                style="@style/subtitle"
460                android:text="Exclude Targets"
461                />
462            <CheckBox
463                android:id="@+id/exclude_self"
464                android:layout_width="match_parent"
465                android:layout_height="wrap_content"
466                android:text="Exclude self from targets (for Shareousel payload change: set for an odd number of items)"
467                />
468        </LinearLayout>
469    </ScrollView>
470    <Button
471        android:id="@+id/share"
472        android:layout_width="match_parent"
473        android:layout_height="wrap_content"
474        android:text="Share"
475        android:padding="20dp"
476        android:textSize="28sp"
477    />
478</LinearLayout>
479