activity_welcome.xml

  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>