1<?xml version="1.0" encoding="utf-8"?>
2<layout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto">
3
4<androidx.constraintlayout.widget.ConstraintLayout
5 android:layout_width="match_parent"
6 android:layout_height="match_parent">
7
8 <androidx.viewpager.widget.ViewPager
9 android:id="@+id/slideshow_pager"
10 android:layout_width="0dp"
11 android:layout_height="0dp"
12 android:orientation="horizontal"
13 app:layout_constraintBottom_toTopOf="@id/gl_SlidePage"
14 app:layout_constraintEnd_toEndOf="parent"
15 app:layout_constraintStart_toStartOf="parent"
16 app:layout_constraintTop_toTopOf="parent">
17
18 <ScrollView
19 android:layout_width="match_parent"
20 android:layout_height="match_parent"
21 android:fillViewport="true">
22 <LinearLayout
23 android:layout_width="match_parent"
24 android:layout_height="wrap_content"
25 android:orientation="vertical"
26 android:padding="15dp">
27
28 <ImageView
29 android:layout_width="wrap_content"
30 android:layout_height="wrap_content"
31 android:layout_gravity="center"
32 android:padding="15dp"
33 android:src="@drawable/main_logo" />
34
35 <TextView
36 android:layout_width="wrap_content"
37 android:layout_height="wrap_content"
38 android:layout_marginBottom="15dp"
39 android:layout_gravity="center"
40 android:fontFamily="@font/archivoblack"
41 android:textColor="?colorOnSecondaryContainer"
42 android:textSize="18sp"
43 android:text="Welcome to Cheogram Android" />
44
45 <TextView
46 android:layout_width="wrap_content"
47 android:layout_height="wrap_content"
48 android:layout_marginBottom="15dp"
49 android:fontFamily="@font/poppins"
50 android:text="Cheogram Android is an app that connects you to a global network called Jabber. This network includes services, called gateways, for chatting with other networks such as SMS, IRC, Matrix, and more." />
51
52 <com.wefika.flowlayout.FlowLayout
53 android:layout_width="wrap_content"
54 android:layout_height="wrap_content"
55 android:layout_gravity="center"
56 android:gravity="center"
57 android:orientation="horizontal">
58
59 <com.caverock.androidsvg.SVGImageView
60 android:layout_width="60dp"
61 android:layout_height="60dp"
62 android:layout_margin="10dp"
63 app:svg="@raw/jmp" />
64
65 <ImageView
66 android:layout_width="60dp"
67 android:layout_height="60dp"
68 android:layout_margin="10dp"
69 android:adjustViewBounds="true"
70 android:src="@drawable/android_messages" />
71
72 <ImageView
73 android:layout_width="60dp"
74 android:layout_height="60dp"
75 android:layout_margin="10dp"
76 android:adjustViewBounds="true"
77 android:src="@drawable/ic_call_24dp" />
78
79 <ImageView
80 android:layout_width="60dp"
81 android:layout_height="60dp"
82 android:layout_margin="10dp"
83 android:adjustViewBounds="true"
84 android:src="@drawable/ic_email_48dp" />
85
86 <ImageView
87 android:layout_width="60dp"
88 android:layout_height="60dp"
89 android:layout_margin="10dp"
90 android:adjustViewBounds="true"
91 android:src="@drawable/irc" />
92
93 <ImageView
94 android:layout_width="60dp"
95 android:layout_height="60dp"
96 android:layout_margin="10dp"
97 android:adjustViewBounds="true"
98 android:src="@drawable/matrix" />
99
100 <ImageView
101 android:layout_width="60dp"
102 android:layout_height="60dp"
103 android:layout_margin="10dp"
104 android:adjustViewBounds="true"
105 android:src="@drawable/jabber" />
106
107 <ImageView
108 android:layout_width="60dp"
109 android:layout_height="60dp"
110 android:layout_margin="10dp"
111 android:adjustViewBounds="true"
112 android:src="@drawable/snikket" />
113
114 <com.caverock.androidsvg.SVGImageView
115 android:layout_width="60dp"
116 android:layout_height="60dp"
117 android:layout_margin="10dp"
118 app:svg="@raw/xmpp" />
119
120 </com.wefika.flowlayout.FlowLayout>
121
122 </LinearLayout>
123 </ScrollView>
124
125 <ScrollView
126 android:layout_width="match_parent"
127 android:layout_height="match_parent"
128 android:fillViewport="true">
129 <LinearLayout
130 android:layout_width="match_parent"
131 android:layout_height="wrap_content"
132 android:orientation="vertical"
133 android:weightSum="1"
134 android:padding="15dp">
135
136 <ImageView
137 android:layout_width="128dp"
138 android:layout_height="128dp"
139 android:layout_gravity="center"
140 android:padding="15dp"
141 android:src="@drawable/jabber" />
142
143 <TextView
144 android:layout_width="wrap_content"
145 android:layout_height="wrap_content"
146 android:layout_marginBottom="15dp"
147 android:layout_gravity="center"
148 android:fontFamily="@font/archivoblack"
149 android:textColor="?colorOnSecondaryContainer"
150 android:textSize="18sp"
151 android:text="How the Jabber network works" />
152
153 <TextView
154 android:layout_width="wrap_content"
155 android:layout_height="wrap_content"
156 android:layout_marginBottom="15dp"
157 android:fontFamily="@font/poppins"
158 android:text="The Jabber network is powered by a protocol called XMPP. It is a decentralized network, which means no one owns or controls the whole thing. It is a federated network which means anyone can run a Jabber service. Messages to other Jabber users can be end-to-end encrypted by enabling OMEMO for the conversation.\n\nAddresses are called Jabber IDs and look similar to email addresses:" />
159
160 <TextView
161 android:layout_width="wrap_content"
162 android:layout_height="wrap_content"
163 android:layout_marginBottom="30dp"
164 android:layout_gravity="center"
165 android:fontFamily="@font/archivoblack"
166 android:textColor="?colorOnSecondaryContainer"
167 android:textSize="18sp"
168 android:text="username@service.com" />
169
170 <com.caverock.androidsvg.SVGImageView
171 android:layout_width="match_parent"
172 android:layout_height="wrap_content"
173 android:layout_weight="1"
174 android:layout_gravity="center"
175 app:svg="@raw/federation_diagram" />
176 </LinearLayout>
177 </ScrollView>
178
179 <LinearLayout
180 android:layout_width="match_parent"
181 android:layout_height="match_parent"
182 android:orientation="vertical">
183
184 <ScrollView
185 android:layout_width="match_parent"
186 android:layout_height="match_parent"
187 android:fillViewport="true">
188
189 <LinearLayout
190 android:layout_width="match_parent"
191 android:layout_height="wrap_content"
192 android:weightSum="2"
193 android:orientation="vertical"
194 android:background="?colorSurface">
195
196 <RelativeLayout
197 android:layout_width="match_parent"
198 android:layout_height="wrap_content"
199 android:layout_weight="1"
200 android:layout_above="@+id/linearLayout"
201 android:layout_alignParentStart="true"
202 android:layout_alignParentLeft="true">
203
204 <ImageView
205 android:layout_width="wrap_content"
206 android:layout_height="wrap_content"
207 android:layout_centerHorizontal="true"
208 android:layout_centerVertical="true"
209 android:padding="8dp"
210 android:src="@drawable/main_logo" />
211 </RelativeLayout>
212
213 <LinearLayout
214 android:id="@+id/linearLayout"
215 android:layout_width="match_parent"
216 android:layout_height="wrap_content"
217 android:layout_weight="1"
218 android:orientation="vertical"
219 android:paddingLeft="16dp"
220 android:paddingRight="16dp"
221 android:paddingBottom="10dp">
222
223 <com.google.android.material.button.MaterialButton
224 android:id="@+id/register_new_account"
225 style="@style/Widget.Material3.Button.TextButton"
226 android:textAllCaps="false"
227 android:textSize="20sp"
228 android:layout_width="match_parent"
229 android:layout_height="wrap_content"
230 android:layout_marginBottom="10dp"
231 android:layout_gravity="center"
232 android:drawableLeft="@drawable/getjid"
233 android:fontFamily="@font/poppins"
234 android:text="@string/create_new_account" />
235
236 <com.google.android.material.button.MaterialButton
237 android:id="@+id/use_existing"
238 style="@style/Widget.Material3.Button.TextButton"
239 android:textAllCaps="false"
240 android:textSize="20sp"
241 android:layout_width="match_parent"
242 android:layout_height="wrap_content"
243 android:layout_marginBottom="10dp"
244 android:layout_gravity="center"
245 android:drawableLeft="@drawable/havejid"
246 android:fontFamily="@font/poppins"
247 android:text="@string/i_already_have_an_account" />
248
249 <com.google.android.material.button.MaterialButton
250 android:id="@+id/use_snikket"
251 style="@style/Widget.Material3.Button.TextButton"
252 android:textAllCaps="false"
253 android:textSize="20sp"
254 android:layout_width="match_parent"
255 android:layout_height="wrap_content"
256 android:layout_gravity="center"
257 android:drawableLeft="@drawable/snikket"
258 android:fontFamily="@font/poppins"
259 android:text="@string/i_am_snikket_user" />
260
261 <com.google.android.material.button.MaterialButton
262 android:id="@+id/use_backup"
263 style="@style/Widget.Material3.Button.TextButton"
264 android:textAllCaps="false"
265 android:textSize="20sp"
266 android:layout_width="match_parent"
267 android:layout_height="wrap_content"
268 android:layout_gravity="center"
269 android:drawableLeft="@drawable/restore"
270 android:fontFamily="@font/poppins"
271 android:text="@string/restore_backup" />
272 </LinearLayout>
273 </LinearLayout>
274 </ScrollView>
275 </LinearLayout>
276
277 </androidx.viewpager.widget.ViewPager>
278
279 <androidx.constraintlayout.widget.Guideline
280 android:id="@+id/gl_SlidePage"
281 android:layout_width="wrap_content"
282 android:layout_height="wrap_content"
283 android:orientation="horizontal"
284 app:layout_constraintGuide_end="130dp" />
285
286 <androidx.constraintlayout.widget.ConstraintLayout
287 android:id="@+id/frameLayout"
288 android:layout_width="match_parent"
289 android:layout_height="130dp"
290 android:background="?colorPrimaryContainer"
291 app:layout_constraintEnd_toEndOf="parent"
292 app:layout_constraintStart_toStartOf="parent"
293 app:layout_constraintTop_toBottomOf="@+id/gl_SlidePage">
294
295 <com.tbuonomo.viewpagerdotsindicator.DotsIndicator
296 android:id="@+id/dots_indicator"
297 android:layout_width="wrap_content"
298 android:layout_height="wrap_content"
299 android:layout_gravity="center"
300 android:layout_marginTop="32dp"
301 app:dotsColor="?colorTertiary"
302 app:layout_constraintEnd_toEndOf="parent"
303 app:layout_constraintStart_toStartOf="parent"
304 app:layout_constraintTop_toTopOf="parent"
305 app:selectedDotColor="#FFFFFF" />
306
307 <com.google.android.material.button.MaterialButton
308 android:id="@+id/button_next"
309 android:layout_width="wrap_content"
310 android:layout_height="wrap_content"
311 android:layout_gravity="center"
312 android:layout_marginTop="16dp"
313 android:layout_marginEnd="32dp"
314 android:layout_marginRight="32dp"
315 android:layout_marginBottom="32dp"
316 android:text="Next"
317 android:textColor="?colorOnTertiary"
318 app:backgroundTint="?colorTertiary"
319 app:layout_constraintBottom_toBottomOf="parent"
320 app:layout_constraintEnd_toEndOf="parent"
321 app:layout_constraintTop_toBottomOf="@id/dots_indicator" />
322
323 <com.google.android.material.button.MaterialButton
324 android:id="@+id/button_privacy"
325 android:layout_width="wrap_content"
326 android:layout_height="wrap_content"
327 android:layout_gravity="center"
328 android:layout_marginTop="16dp"
329 android:layout_marginEnd="32dp"
330 android:layout_marginRight="32dp"
331 android:layout_marginBottom="32dp"
332 android:text="View Privacy Policy"
333 android:textColor="?colorOnTertiary"
334 android:visibility="gone"
335 app:backgroundTint="?colorTertiary"
336 app:layout_constraintBottom_toBottomOf="parent"
337 app:layout_constraintEnd_toEndOf="parent"
338 app:layout_constraintTop_toBottomOf="@id/dots_indicator" />
339 </androidx.constraintlayout.widget.ConstraintLayout>
340
341 </androidx.constraintlayout.widget.ConstraintLayout>
342
343</layout>