1<?xml version="1.0" encoding="utf-8"?>
2<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
3 xmlns:app="http://schemas.android.com/apk/res-auto"
4 xmlns:tools="http://schemas.android.com/tools"
5 android:layout_width="match_parent"
6 android:layout_height="match_parent"
7 android:background="?attr/color_background_secondary">
8
9 <ScrollView
10 android:layout_width="fill_parent"
11 android:layout_height="wrap_content"
12 android:layout_above="@+id/button_bar"
13 android:layout_alignParentTop="true">
14
15 <LinearLayout
16 android:id="@+id/account_main_layout"
17 android:layout_width="match_parent"
18 android:layout_height="wrap_content"
19 android:orientation="vertical">
20
21 <RelativeLayout
22 android:id="@+id/editor"
23 android:layout_width="fill_parent"
24 android:layout_height="wrap_content"
25 android:layout_marginBottom="@dimen/activity_vertical_margin"
26 android:layout_marginLeft="@dimen/activity_horizontal_margin"
27 android:layout_marginRight="@dimen/activity_horizontal_margin"
28 android:layout_marginTop="@dimen/activity_vertical_margin"
29 android:background="?attr/infocard_border"
30 android:orientation="vertical"
31 android:padding="@dimen/infocard_padding">
32 <com.makeramen.roundedimageview.RoundedImageView
33 android:id="@+id/avater"
34 android:layout_width="72dp"
35 android:layout_height="72dp"
36 android:layout_alignParentTop="true"
37 android:layout_marginRight="16dp"
38 android:contentDescription="@string/account_image_description"
39 app:riv_corner_radius="2dp"/>
40 <LinearLayout
41 android:layout_width="fill_parent"
42 android:layout_height="wrap_content"
43 android:layout_toRightOf="@+id/avater"
44 android:orientation="vertical">
45 <TextView
46 android:id="@+id/account_jid_label"
47 android:layout_width="wrap_content"
48 android:layout_height="wrap_content"
49 android:text="@string/account_settings_jabber_id"
50 android:textColor="?attr/color_text_primary"
51 android:textSize="?attr/TextSizeBody"/>
52
53 <AutoCompleteTextView
54 android:id="@+id/account_jid"
55 android:layout_width="match_parent"
56 android:layout_height="wrap_content"
57 android:hint="@string/account_settings_example_jabber_id"
58 android:inputType="textEmailAddress"
59 android:textColor="?attr/color_text_primary"
60 android:textColorHint="?attr/color_text_secondary"
61 android:textSize="?attr/TextSizeBody"/>
62
63 <TextView
64 android:layout_width="wrap_content"
65 android:layout_height="wrap_content"
66 android:layout_marginTop="8dp"
67 android:text="@string/account_settings_password"
68 android:textColor="?attr/color_text_primary"
69 android:textSize="?attr/TextSizeBody"/>
70
71 <EditText
72 android:id="@+id/account_password"
73 android:layout_width="match_parent"
74 android:layout_height="wrap_content"
75 android:hint="@string/password"
76 android:inputType="textPassword"
77 android:textColor="?attr/color_text_primary"
78 android:textColorHint="?attr/color_text_secondary"
79 android:textSize="?attr/TextSizeBody"/>
80
81 <LinearLayout
82 android:id="@+id/name_port"
83 android:layout_width="fill_parent"
84 android:layout_height="wrap_content"
85 android:layout_marginTop="8dp"
86 android:orientation="horizontal"
87 android:weightSum="1">
88 <LinearLayout
89 android:layout_width="0dp"
90 android:layout_height="match_parent"
91 android:layout_weight="0.8"
92 android:orientation="vertical">
93 <TextView
94 android:id="@+id/textView"
95 android:layout_width="wrap_content"
96 android:layout_height="wrap_content"
97 android:text="@string/account_settings_hostname"
98 android:textColor="?attr/color_text_primary"
99 android:textSize="?attr/TextSizeBody"/>
100 <EditText
101 android:id="@+id/hostname"
102 android:layout_width="fill_parent"
103 android:layout_height="wrap_content"
104 android:hint="@string/hostname_or_onion"
105 android:inputType="textNoSuggestions"
106 android:textColor="?attr/color_text_primary"
107 android:textColorHint="?attr/color_text_secondary"
108 android:textSize="?attr/TextSizeBody"/>
109 </LinearLayout>
110 <LinearLayout
111 android:layout_width="0dp"
112 android:layout_height="match_parent"
113 android:layout_weight="0.2"
114 android:orientation="vertical"
115 >
116 <TextView
117 android:layout_width="wrap_content"
118 android:layout_height="wrap_content"
119 android:text="@string/account_settings_port"
120 android:textColor="?attr/color_text_primary"
121 android:textSize="?attr/TextSizeBody"/>
122 <EditText
123 android:id="@+id/port"
124 android:layout_width="match_parent"
125 android:layout_height="match_parent"
126 android:inputType="number"
127 android:maxLength="5"
128 android:textColor="?attr/color_text_primary"
129 android:textColorHint="?attr/color_text_secondary"
130 android:textSize="?attr/TextSizeBody"/>
131 </LinearLayout>
132 </LinearLayout>
133 <CheckBox
134 android:id="@+id/account_register_new"
135 android:layout_width="wrap_content"
136 android:layout_height="wrap_content"
137 android:layout_marginTop="8dp"
138 android:text="@string/register_account"
139 android:textColor="?attr/color_text_primary"
140 android:textSize="?attr/TextSizeBody"/>
141
142 <TextView
143 android:id="@+id/account_confirm_password_desc"
144 android:layout_width="wrap_content"
145 android:layout_height="wrap_content"
146 android:text="@string/account_settings_confirm_password"
147 android:textColor="?attr/color_text_primary"
148 android:textSize="?attr/TextSizeBody"
149 android:visibility="gone"/>
150
151 <EditText
152 android:id="@+id/account_password_confirm"
153 android:layout_width="match_parent"
154 android:layout_height="wrap_content"
155 android:layout_marginTop="8dp"
156 android:hint="@string/confirm_password"
157 android:inputType="textPassword"
158 android:textColor="?attr/color_text_primary"
159 android:textColorHint="?attr/color_text_secondary"
160 android:textSize="?attr/TextSizeBody"
161 android:visibility="gone"/>
162 </LinearLayout>
163 </RelativeLayout>
164
165 <RelativeLayout
166 android:id="@+id/battery_optimization"
167 android:layout_width="fill_parent"
168 android:layout_height="wrap_content"
169 android:layout_marginBottom="@dimen/activity_vertical_margin"
170 android:layout_marginLeft="@dimen/activity_horizontal_margin"
171 android:layout_marginRight="@dimen/activity_horizontal_margin"
172 android:layout_marginTop="@dimen/activity_vertical_margin"
173 android:background="?attr/infocard_border"
174 android:orientation="vertical"
175 android:padding="@dimen/infocard_padding"
176 android:visibility="gone">
177 <TextView
178 android:id="@+id/batt_op_headline"
179 android:layout_width="wrap_content"
180 android:layout_height="wrap_content"
181 android:text="@string/battery_optimizations_enabled"
182 android:textColor="?attr/color_text_primary"
183 android:textSize="?attr/TextSizeHeadline"
184 android:textStyle="bold"/>
185 <TextView
186 android:id="@+id/batt_op_body"
187 android:layout_width="wrap_content"
188 android:layout_height="wrap_content"
189 android:layout_below="@+id/batt_op_headline"
190 android:layout_marginBottom="8dp"
191 android:layout_marginTop="8dp"
192 android:text="@string/battery_optimizations_enabled_explained"
193 android:textColor="?attr/color_text_primary"
194 android:textSize="?attr/TextSizeBody"/>
195 <Button
196 android:id="@+id/batt_op_disable"
197 style="?android:attr/borderlessButtonStyle"
198 android:layout_marginRight="-8dp"
199 android:layout_width="wrap_content"
200 android:layout_height="wrap_content"
201 android:layout_alignParentBottom="true"
202 android:layout_alignParentEnd="true"
203 android:layout_alignParentRight="true" android:layout_below="@+id/batt_op_body"
204 android:text="@string/disable" android:textColor="@color/accent"/>
205 </RelativeLayout>
206
207
208 <LinearLayout
209 android:id="@+id/stats"
210 android:layout_width="fill_parent"
211 android:layout_height="fill_parent"
212 android:layout_marginBottom="@dimen/activity_vertical_margin"
213 android:layout_marginLeft="@dimen/activity_horizontal_margin"
214 android:layout_marginRight="@dimen/activity_horizontal_margin"
215 android:layout_marginTop="@dimen/activity_vertical_margin"
216 android:background="?attr/infocard_border"
217 android:orientation="vertical"
218 android:padding="@dimen/infocard_padding"
219 android:visibility="gone">
220
221 <TableLayout
222 android:layout_width="match_parent"
223 android:layout_height="wrap_content"
224 android:shrinkColumns="0"
225 android:stretchColumns="1">
226
227 <TableRow
228 android:layout_width="fill_parent"
229 android:layout_height="wrap_content"
230 tools:ignore="UselessParent">
231
232 <TextView
233 android:layout_width="wrap_content"
234 android:layout_height="wrap_content"
235 android:text="@string/server_info_session_established"
236 android:textColor="?attr/color_text_primary"
237 android:textSize="?attr/TextSizeBody"
238 android:singleLine="true"
239 android:ellipsize="end"/>
240
241 <TextView
242 android:id="@+id/session_est"
243 android:layout_width="wrap_content"
244 android:layout_height="wrap_content"
245 android:layout_gravity="right"
246 android:paddingLeft="4dp"
247 android:textColor="?attr/color_text_primary"
248 android:textSize="?attr/TextSizeBody"
249 tools:ignore="RtlHardcoded"/>
250 </TableRow>
251
252 </TableLayout>
253 <TableLayout
254 android:id="@+id/server_info_more"
255 android:layout_width="match_parent"
256 android:layout_height="wrap_content"
257 android:shrinkColumns="0"
258 android:stretchColumns="1"
259 android:visibility="gone">
260
261 <TableRow
262 android:layout_width="fill_parent"
263 android:layout_height="wrap_content">
264
265 <TextView
266 android:layout_width="wrap_content"
267 android:layout_height="wrap_content"
268 android:text="@string/server_info_pep"
269 android:textColor="?attr/color_text_primary"
270 android:textSize="?attr/TextSizeBody"
271 android:singleLine="true"
272 android:ellipsize="end"/>
273
274 <TextView
275 android:id="@+id/server_info_pep"
276 android:layout_width="wrap_content"
277 android:layout_height="wrap_content"
278 android:layout_gravity="right"
279 android:paddingLeft="4dp"
280 android:textColor="?attr/color_text_primary"
281 android:textSize="?attr/TextSizeBody"
282 tools:ignore="RtlHardcoded"/>
283 </TableRow>
284
285 <TableRow
286 android:layout_width="fill_parent"
287 android:layout_height="wrap_content">
288
289 <TextView
290 android:layout_width="wrap_content"
291 android:layout_height="wrap_content"
292 android:text="@string/server_info_blocking"
293 android:textColor="?attr/color_text_primary"
294 android:textSize="?attr/TextSizeBody"
295 android:singleLine="true"
296 android:ellipsize="end"/>
297
298 <TextView
299 android:id="@+id/server_info_blocking"
300 android:layout_width="wrap_content"
301 android:layout_height="wrap_content"
302 android:layout_gravity="right"
303 android:paddingLeft="4dp"
304 android:textColor="?attr/color_text_primary"
305 android:textSize="?attr/TextSizeBody"
306 tools:ignore="RtlHardcoded"/>
307 </TableRow>
308
309 <TableRow
310 android:layout_width="fill_parent"
311 android:layout_height="wrap_content">
312
313 <TextView
314 android:layout_width="wrap_content"
315 android:layout_height="wrap_content"
316 android:text="@string/server_info_stream_management"
317 android:textColor="?attr/color_text_primary"
318 android:textSize="?attr/TextSizeBody"
319 android:singleLine="true"
320 android:ellipsize="end"/>
321
322 <TextView
323 android:id="@+id/server_info_sm"
324 android:layout_width="wrap_content"
325 android:layout_height="wrap_content"
326 android:layout_gravity="right"
327 android:paddingLeft="4dp"
328 android:textColor="?attr/color_text_primary"
329 android:textSize="?attr/TextSizeBody"
330 tools:ignore="RtlHardcoded"/>
331 </TableRow>
332
333 <TableRow
334 android:layout_width="fill_parent"
335 android:layout_height="wrap_content">
336
337 <TextView
338 android:layout_width="wrap_content"
339 android:layout_height="wrap_content"
340 android:text="@string/server_info_roster_version"
341 android:textColor="?attr/color_text_primary"
342 android:textSize="?attr/TextSizeBody"
343 android:singleLine="true"
344 android:ellipsize="end"/>
345
346 <TextView
347 android:id="@+id/server_info_roster_version"
348 android:layout_width="wrap_content"
349 android:layout_height="wrap_content"
350 android:layout_gravity="right"
351 android:paddingLeft="4dp"
352 android:textColor="?attr/color_text_primary"
353 android:textSize="?attr/TextSizeBody"
354 tools:ignore="RtlHardcoded"/>
355 </TableRow>
356
357 <TableRow
358 android:layout_width="fill_parent"
359 android:layout_height="wrap_content">
360
361 <TextView
362 android:layout_width="wrap_content"
363 android:layout_height="wrap_content"
364 android:text="@string/server_info_carbon_messages"
365 android:textColor="?attr/color_text_primary"
366 android:textSize="?attr/TextSizeBody"
367 android:singleLine="true"
368 android:ellipsize="end"/>
369
370 <TextView
371 android:id="@+id/server_info_carbons"
372 android:layout_width="wrap_content"
373 android:layout_height="wrap_content"
374 android:layout_gravity="right"
375 android:paddingLeft="4dp"
376 android:textColor="?attr/color_text_primary"
377 android:textSize="?attr/TextSizeBody"
378 tools:ignore="RtlHardcoded"/>
379 </TableRow>
380
381 <TableRow
382 android:layout_width="fill_parent"
383 android:layout_height="wrap_content">
384
385 <TextView
386 android:layout_width="wrap_content"
387 android:layout_height="wrap_content"
388 android:text="@string/server_info_mam"
389 android:textColor="?attr/color_text_primary"
390 android:textSize="?attr/TextSizeBody"
391 android:singleLine="true"
392 android:ellipsize="end"/>
393
394 <TextView
395 android:id="@+id/server_info_mam"
396 android:layout_width="wrap_content"
397 android:layout_height="wrap_content"
398 android:layout_gravity="right"
399 android:paddingLeft="4dp"
400 android:textColor="?attr/color_text_primary"
401 android:textSize="?attr/TextSizeBody"
402 tools:ignore="RtlHardcoded"/>
403 </TableRow>
404
405 <TableRow
406 android:layout_width="fill_parent"
407 android:layout_height="wrap_content">
408
409 <TextView
410 android:layout_width="wrap_content"
411 android:layout_height="wrap_content"
412 android:text="@string/server_info_csi"
413 android:textColor="?attr/color_text_primary"
414 android:textSize="?attr/TextSizeBody"
415 android:singleLine="true"
416 android:ellipsize="end"/>
417
418 <TextView
419 android:id="@+id/server_info_csi"
420 android:layout_width="wrap_content"
421 android:layout_height="wrap_content"
422 android:layout_gravity="right"
423 android:paddingLeft="4dp"
424 android:textColor="?attr/color_text_primary"
425 android:textSize="?attr/TextSizeBody"
426 tools:ignore="RtlHardcoded"/>
427 </TableRow>
428 <TableRow
429 android:id="@+id/push_row"
430 android:layout_width="fill_parent"
431 android:layout_height="wrap_content">
432
433 <TextView
434 android:layout_width="wrap_content"
435 android:layout_height="wrap_content"
436 android:text="@string/server_info_push"
437 android:textColor="?attr/color_text_primary"
438 android:textSize="?attr/TextSizeBody"
439 android:singleLine="true"
440 android:ellipsize="end"/>
441
442 <TextView
443 android:id="@+id/server_info_push"
444 android:layout_width="wrap_content"
445 android:layout_height="wrap_content"
446 android:layout_gravity="right"
447 android:paddingLeft="4dp"
448 android:textColor="?attr/color_text_primary"
449 android:textSize="?attr/TextSizeBody"/>
450 </TableRow>
451 <TableRow
452 android:layout_width="fill_parent"
453 android:layout_height="wrap_content">
454
455 <TextView
456 android:layout_width="wrap_content"
457 android:layout_height="wrap_content"
458 android:text="@string/server_info_http_upload"
459 android:textColor="?attr/color_text_primary"
460 android:textSize="?attr/TextSizeBody"
461 android:singleLine="true"
462 android:ellipsize="end"/>
463
464 <TextView
465 android:id="@+id/server_info_http_upload"
466 android:layout_width="wrap_content"
467 android:layout_height="wrap_content"
468 android:layout_gravity="right"
469 android:paddingLeft="4dp"
470 android:textColor="?attr/color_text_primary"
471 android:textSize="?attr/TextSizeBody"/>
472 </TableRow>
473 </TableLayout>
474
475 <RelativeLayout
476 android:id="@+id/otr_fingerprint_box"
477 android:layout_width="wrap_content"
478 android:layout_height="match_parent"
479 android:layout_marginTop="32dp">
480
481 <LinearLayout
482 android:layout_width="wrap_content"
483 android:layout_height="wrap_content"
484 android:layout_alignParentLeft="true"
485 android:layout_toLeftOf="@+id/action_copy_to_clipboard"
486 android:orientation="vertical">
487
488 <TextView
489 android:id="@+id/otr_fingerprint"
490 android:layout_width="wrap_content"
491 android:layout_height="wrap_content"
492 android:fontFamily="monospace"
493 android:textColor="?attr/color_text_primary"
494 android:textSize="?attr/TextSizeBody"
495 android:typeface="monospace"/>
496
497 <TextView
498 android:layout_width="wrap_content"
499 android:layout_height="wrap_content"
500 android:text="@string/otr_fingerprint"
501 android:textColor="?attr/color_text_secondary"
502 android:textSize="?attr/TextSizeInfo"/>
503 </LinearLayout>
504
505 <ImageButton
506 android:id="@+id/action_copy_to_clipboard"
507 android:layout_width="wrap_content"
508 android:layout_height="wrap_content"
509 android:layout_alignParentRight="true"
510 android:layout_centerVertical="true"
511 android:background="?android:selectableItemBackground"
512 android:contentDescription="@string/copy_otr_clipboard_description"
513 android:padding="@dimen/image_button_padding"
514 android:src="?attr/icon_copy"
515 android:alpha="?attr/icon_alpha"
516 android:visibility="visible"/>
517 </RelativeLayout>
518 <RelativeLayout
519 android:id="@+id/axolotl_fingerprint_box"
520 android:layout_width="wrap_content"
521 android:layout_height="match_parent"
522 android:layout_marginTop="32dp">
523
524 <LinearLayout
525 android:layout_width="wrap_content"
526 android:layout_height="wrap_content"
527 android:layout_alignParentLeft="true"
528 android:layout_toLeftOf="@+id/axolotl_actions"
529 android:orientation="vertical">
530
531 <TextView
532 android:id="@+id/axolotl_fingerprint"
533 android:layout_width="wrap_content"
534 android:layout_height="wrap_content"
535 android:fontFamily="monospace"
536 android:textColor="?attr/color_text_primary"
537 android:textSize="?attr/TextSizeBody"
538 android:typeface="monospace"/>
539
540 <TextView
541 android:id="@+id/own_fingerprint_desc"
542 android:layout_width="wrap_content"
543 android:layout_height="wrap_content"
544 android:text="@string/this_device_omemo_fingerprint"
545 android:textColor="?attr/color_text_secondary"
546 android:textSize="?attr/TextSizeInfo"/>
547 </LinearLayout>
548
549 <LinearLayout
550 android:id="@+id/axolotl_actions"
551 android:layout_width="wrap_content"
552 android:layout_height="wrap_content"
553 android:layout_alignParentRight="true"
554 android:layout_centerVertical="true"
555 android:orientation="vertical">
556
557 <ImageButton
558 android:id="@+id/action_copy_axolotl_to_clipboard"
559 android:layout_width="wrap_content"
560 android:layout_height="wrap_content"
561 android:background="?android:selectableItemBackground"
562 android:contentDescription="@string/copy_omemo_clipboard_description"
563 android:padding="@dimen/image_button_padding"
564 android:src="?attr/icon_copy"
565 android:alpha="?attr/icon_alpha"
566 android:visibility="visible"/>
567 <ImageButton
568 android:id="@+id/action_regenerate_axolotl_key"
569 android:layout_width="wrap_content"
570 android:layout_height="wrap_content"
571 android:background="?android:selectableItemBackground"
572 android:contentDescription="@string/regenerate_omemo_key"
573 android:padding="@dimen/image_button_padding"
574 android:alpha="?attr/icon_alpha"
575 android:src="?attr/icon_refresh"
576 android:visibility="gone"/>
577
578 </LinearLayout>
579 </RelativeLayout>
580 </LinearLayout>
581 <LinearLayout
582 android:id="@+id/other_device_keys_card"
583 android:layout_width="fill_parent"
584 android:layout_height="wrap_content"
585 android:layout_marginBottom="@dimen/activity_vertical_margin"
586 android:layout_marginLeft="@dimen/activity_horizontal_margin"
587 android:layout_marginRight="@dimen/activity_horizontal_margin"
588 android:layout_marginTop="@dimen/activity_vertical_margin"
589 android:background="?attr/infocard_border"
590 android:orientation="vertical"
591 android:padding="@dimen/infocard_padding"
592 android:visibility="gone">
593
594 <TextView
595 android:id="@+id/other_device_keys_title"
596 android:layout_width="wrap_content"
597 android:layout_height="wrap_content"
598 android:text="@string/other_devices"
599 android:textColor="?attr/color_text_primary"
600 android:textSize="?attr/TextSizeHeadline"
601 android:textStyle="bold"/>
602
603 <LinearLayout
604 android:id="@+id/other_device_keys"
605 android:layout_width="fill_parent"
606 android:layout_height="wrap_content"
607 android:divider="?android:dividerHorizontal"
608 android:orientation="vertical"
609 android:showDividers="middle">
610 </LinearLayout>
611 </LinearLayout>
612 </LinearLayout>
613 </ScrollView>
614
615 <LinearLayout
616 android:id="@+id/button_bar"
617 android:layout_width="wrap_content"
618 android:layout_height="wrap_content"
619 android:layout_alignParentBottom="true"
620 android:layout_alignParentEnd="true"
621 android:layout_alignParentLeft="true"
622 android:layout_alignParentRight="true"
623 android:layout_alignParentStart="true">
624
625 <Button
626 android:id="@+id/cancel_button"
627 style="?android:attr/borderlessButtonStyle"
628 android:layout_width="0dp"
629 android:layout_height="wrap_content"
630 android:layout_weight="1"
631 android:text="@string/cancel"
632 android:textColor="?attr/color_text_primary"/>
633
634 <View
635 android:layout_width="1dp"
636 android:layout_height="fill_parent"
637 android:layout_marginBottom="7dp"
638 android:layout_marginTop="7dp"
639 android:background="?attr/divider"/>
640
641 <Button
642 android:id="@+id/save_button"
643 style="?android:attr/borderlessButtonStyle"
644 android:layout_width="0dp"
645 android:layout_height="wrap_content"
646 android:layout_weight="1"
647 android:enabled="false"
648 android:text="@string/save"
649 android:textColor="?attr/color_text_secondary"/>
650 </LinearLayout>
651
652</RelativeLayout>