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