Skip to content

Commit 52007fe

Browse files
authored
refactor(auth): remove RelativeLayout usage (#1237)
1 parent 368ff73 commit 52007fe

15 files changed

+480
-415
lines changed

auth/app/src/main/java/com/google/firebase/quickstart/auth/java/MultiFactorActivity.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ private void updateUI(FirebaseUser user) {
175175
mBinding.mfaInfo.setText(sb.toString());
176176
}
177177

178-
mBinding.emailPasswordButtons.setVisibility(View.GONE);
178+
mBinding.emailSignInButton.setVisibility(View.GONE);
179179
mBinding.signedInButtons.setVisibility(View.VISIBLE);
180180

181181
int reloadVisibility = secondFactors.isEmpty() ? View.VISIBLE : View.GONE;
@@ -193,7 +193,7 @@ private void updateUI(FirebaseUser user) {
193193
mBinding.detail.setText(null);
194194
mBinding.mfaInfo.setText(null);
195195

196-
mBinding.emailPasswordButtons.setVisibility(View.VISIBLE);
196+
mBinding.emailSignInButton.setVisibility(View.VISIBLE);
197197
mBinding.signedInButtons.setVisibility(View.GONE);
198198
}
199199
}

auth/app/src/main/java/com/google/firebase/quickstart/auth/java/PasswordlessActivity.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -219,13 +219,13 @@ private void updateUI(@Nullable FirebaseUser user) {
219219
mBinding.status.setText(getString(R.string.passwordless_status_fmt,
220220
user.getEmail(), user.isEmailVerified()));
221221

222-
mBinding.passwordlessFields.setVisibility(View.GONE);
222+
mBinding.fieldEmail.setVisibility(View.GONE);
223223
mBinding.passwordlessButtons.setVisibility(View.GONE);
224-
mBinding.signedInButtons.setVisibility(View.VISIBLE);
224+
mBinding.signOutButton.setVisibility(View.VISIBLE);
225225
} else {
226-
mBinding.passwordlessFields.setVisibility(View.VISIBLE);
226+
mBinding.fieldEmail.setVisibility(View.VISIBLE);
227227
mBinding.passwordlessButtons.setVisibility(View.VISIBLE);
228-
mBinding.signedInButtons.setVisibility(View.GONE);
228+
mBinding.signOutButton.setVisibility(View.GONE);
229229
}
230230
}
231231

auth/app/src/main/java/com/google/firebase/quickstart/auth/java/PhoneAuthActivity.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -317,13 +317,13 @@ private void updateUI(int uiState, FirebaseUser user, PhoneAuthCredential cred)
317317
if (user == null) {
318318
// Signed out
319319
mBinding.phoneAuthFields.setVisibility(View.VISIBLE);
320-
mBinding.signedInButtons.setVisibility(View.GONE);
320+
mBinding.signOutButton.setVisibility(View.GONE);
321321

322322
mBinding.status.setText(R.string.signed_out);
323323
} else {
324324
// Signed in
325325
mBinding.phoneAuthFields.setVisibility(View.GONE);
326-
mBinding.signedInButtons.setVisibility(View.VISIBLE);
326+
mBinding.signOutButton.setVisibility(View.VISIBLE);
327327

328328
enableViews(mBinding.fieldPhoneNumber, mBinding.fieldVerificationCode);
329329
mBinding.fieldPhoneNumber.setText(null);

auth/app/src/main/java/com/google/firebase/quickstart/auth/kotlin/MultiFactorActivity.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ class MultiFactorActivity : BaseActivity(), View.OnClickListener {
128128
sb.setLength(sb.length - delimiter.length)
129129
binding.mfaInfo.text = sb.toString()
130130
}
131-
findViewById<View>(R.id.emailPasswordButtons).visibility = View.GONE
131+
findViewById<View>(R.id.emailSignInButton).visibility = View.GONE
132132
findViewById<View>(R.id.signedInButtons).visibility = View.VISIBLE
133133
val reloadVisibility = if (secondFactors.isEmpty()) View.VISIBLE else View.GONE
134134
findViewById<View>(R.id.reloadButton).visibility = reloadVisibility
@@ -143,7 +143,7 @@ class MultiFactorActivity : BaseActivity(), View.OnClickListener {
143143
binding.status.setText(R.string.multi_factor_signed_out)
144144
binding.detail.text = null
145145
binding.mfaInfo.text = null
146-
findViewById<View>(R.id.emailPasswordButtons).visibility = View.VISIBLE
146+
findViewById<View>(R.id.emailSignInButton).visibility = View.VISIBLE
147147
findViewById<View>(R.id.signedInButtons).visibility = View.GONE
148148
}
149149
}

auth/app/src/main/java/com/google/firebase/quickstart/auth/kotlin/PasswordlessActivity.kt

+2-5
Original file line numberDiff line numberDiff line change
@@ -195,14 +195,11 @@ class PasswordlessActivity : BaseActivity(), View.OnClickListener {
195195
if (user != null) {
196196
binding.status.text = getString(R.string.passwordless_status_fmt,
197197
user.email, user.isEmailVerified)
198-
199-
binding.passwordlessFields.visibility = View.GONE
200198
binding.passwordlessButtons.visibility = View.GONE
201-
binding.signedInButtons.visibility = View.VISIBLE
199+
binding.signOutButton.visibility = View.VISIBLE
202200
} else {
203-
binding.passwordlessFields.visibility = View.VISIBLE
204201
binding.passwordlessButtons.visibility = View.VISIBLE
205-
binding.signedInButtons.visibility = View.GONE
202+
binding.signOutButton.visibility = View.GONE
206203
}
207204
}
208205

auth/app/src/main/java/com/google/firebase/quickstart/auth/kotlin/PhoneAuthActivity.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -287,13 +287,13 @@ class PhoneAuthActivity : AppCompatActivity(), View.OnClickListener {
287287
if (user == null) {
288288
// Signed out
289289
binding.phoneAuthFields.visibility = View.VISIBLE
290-
binding.signedInButtons.visibility = View.GONE
290+
binding.signOutButton.visibility = View.GONE
291291

292292
binding.status.setText(R.string.signed_out)
293293
} else {
294294
// Signed in
295295
binding.phoneAuthFields.visibility = View.GONE
296-
binding.signedInButtons.visibility = View.VISIBLE
296+
binding.signOutButton.visibility = View.VISIBLE
297297

298298
enableViews(binding.fieldPhoneNumber, binding.fieldVerificationCode)
299299
binding.fieldPhoneNumber.text = null
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,44 @@
11
<?xml version="1.0" encoding="utf-8"?>
2-
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
2+
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
3+
xmlns:app="http://schemas.android.com/apk/res-auto"
34
xmlns:tools="http://schemas.android.com/tools"
45
android:layout_width="match_parent"
56
android:layout_height="match_parent"
6-
android:paddingBottom="@dimen/activity_vertical_margin"
7-
android:paddingLeft="@dimen/activity_horizontal_margin"
8-
android:paddingRight="@dimen/activity_horizontal_margin"
9-
android:paddingTop="@dimen/activity_vertical_margin"
107
tools:context="com.google.firebase.quickstart.auth.java.AnonymousAuthActivity">
118

129
<ProgressBar
1310
android:id="@+id/progressBar"
14-
android:indeterminate="true"
15-
android:layout_width="match_parent"
11+
style="?android:attr/progressBarStyleHorizontal"
12+
android:layout_width="0dp"
1613
android:layout_height="wrap_content"
14+
android:indeterminate="true"
1715
android:visibility="invisible"
18-
style="?android:attr/progressBarStyleHorizontal"/>
16+
app:layout_constraintEnd_toEndOf="parent"
17+
app:layout_constraintStart_toStartOf="parent"
18+
app:layout_constraintTop_toTopOf="parent" />
1919

2020
<ImageView
2121
android:id="@+id/icon"
2222
android:layout_width="wrap_content"
2323
android:layout_height="wrap_content"
24-
android:layout_centerHorizontal="true"
2524
android:layout_below="@+id/progressBar"
2625
android:contentDescription="@string/desc_firebase_lockup"
27-
android:src="@drawable/firebase_lockup_400" />
26+
android:src="@drawable/firebase_lockup_400"
27+
app:layout_constraintEnd_toEndOf="parent"
28+
app:layout_constraintStart_toStartOf="parent"
29+
app:layout_constraintTop_toBottomOf="@+id/progressBar" />
2830

2931
<TextView
3032
android:id="@+id/titleAnonymous"
3133
style="@style/TextAppearance.AppCompat.Medium"
3234
android:layout_width="wrap_content"
3335
android:layout_height="wrap_content"
3436
android:layout_below="@+id/icon"
35-
android:layout_marginBottom="8dp"
36-
android:text="Anonymous Sign In" />
37+
android:layout_marginStart="16dp"
38+
android:layout_marginLeft="16dp"
39+
android:text="Anonymous Sign In"
40+
app:layout_constraintStart_toStartOf="parent"
41+
app:layout_constraintTop_toBottomOf="@+id/icon" />
3742

3843
<TextView
3944
android:id="@+id/anonymousStatusId"
@@ -42,14 +47,18 @@
4247
android:layout_below="@+id/titleAnonymous"
4348
android:ellipsize="end"
4449
android:maxLines="1"
45-
android:text="@string/signed_out" />
50+
android:layout_marginTop="8dp"
51+
android:text="@string/signed_out"
52+
app:layout_constraintStart_toStartOf="@+id/titleAnonymous"
53+
app:layout_constraintTop_toBottomOf="@+id/titleAnonymous" />
4654

4755
<TextView
4856
android:id="@+id/anonymousStatusEmail"
4957
android:layout_width="wrap_content"
5058
android:layout_height="wrap_content"
5159
android:layout_below="@+id/anonymousStatusId"
52-
android:layout_marginBottom="8dp"
60+
app:layout_constraintStart_toStartOf="@+id/anonymousStatusId"
61+
app:layout_constraintTop_toBottomOf="@+id/anonymousStatusId"
5362
tools:text="Email: none" />
5463

5564
<Button
@@ -59,7 +68,10 @@
5968
android:layout_width="@dimen/field_width_standard"
6069
android:layout_height="wrap_content"
6170
android:layout_below="@+id/anonymousStatusEmail"
62-
android:text="@string/sign_in" />
71+
android:text="@string/sign_in"
72+
android:layout_marginTop="8dp"
73+
app:layout_constraintStart_toStartOf="@+id/anonymousStatusEmail"
74+
app:layout_constraintTop_toBottomOf="@+id/anonymousStatusEmail" />
6375

6476
<Button
6577
android:id="@+id/buttonAnonymousSignOut"
@@ -68,28 +80,35 @@
6880
android:layout_width="@dimen/field_width_standard"
6981
android:layout_height="wrap_content"
7082
android:layout_alignTop="@+id/buttonAnonymousSignIn"
83+
android:layout_toEndOf="@+id/buttonAnonymousSignIn"
7184
android:layout_toRightOf="@+id/buttonAnonymousSignIn"
7285
android:enabled="false"
7386
android:text="@string/sign_out"
74-
android:layout_toEndOf="@+id/buttonAnonymousSignIn" />
87+
app:layout_constraintBottom_toBottomOf="@+id/buttonAnonymousSignIn"
88+
app:layout_constraintStart_toEndOf="@+id/buttonAnonymousSignIn"
89+
app:layout_constraintTop_toTopOf="@+id/buttonAnonymousSignIn" />
7590

7691
<TextView
7792
android:id="@+id/titleLinking"
7893
style="@style/TextAppearance.AppCompat.Medium"
7994
android:layout_width="wrap_content"
8095
android:layout_height="wrap_content"
8196
android:layout_below="@+id/buttonAnonymousSignIn"
82-
android:layout_marginBottom="8dp"
8397
android:layout_marginTop="24dp"
84-
android:text="Account Linking" />
98+
android:text="Account Linking"
99+
app:layout_constraintStart_toStartOf="@+id/buttonAnonymousSignIn"
100+
app:layout_constraintTop_toBottomOf="@+id/buttonAnonymousSignIn" />
85101

86102
<EditText
87103
android:id="@+id/fieldEmail"
88104
android:layout_width="@dimen/field_width_standard"
89105
android:layout_height="wrap_content"
90106
android:layout_below="@+id/titleLinking"
91107
android:hint="@string/hint_email"
92-
android:inputType="textEmailAddress" />
108+
android:layout_marginTop="8dp"
109+
android:inputType="textEmailAddress"
110+
app:layout_constraintStart_toStartOf="@+id/titleLinking"
111+
app:layout_constraintTop_toBottomOf="@+id/titleLinking" />
93112

94113
<EditText
95114
android:id="@+id/fieldPassword"
@@ -98,7 +117,10 @@
98117
android:layout_alignTop="@+id/fieldEmail"
99118
android:layout_toRightOf="@+id/fieldEmail"
100119
android:hint="@string/hint_password"
101-
android:inputType="textPassword" />
120+
android:inputType="textPassword"
121+
app:layout_constraintBottom_toBottomOf="@+id/fieldEmail"
122+
app:layout_constraintStart_toEndOf="@+id/fieldEmail"
123+
app:layout_constraintTop_toTopOf="@+id/fieldEmail" />
102124

103125
<Button
104126
android:id="@+id/buttonLinkAccount"
@@ -108,8 +130,8 @@
108130
android:layout_height="wrap_content"
109131
android:layout_below="@+id/fieldEmail"
110132
android:enabled="false"
111-
android:text="Link Account" />
112-
113-
133+
android:text="Link Account"
134+
app:layout_constraintStart_toStartOf="@+id/fieldEmail"
135+
app:layout_constraintTop_toBottomOf="@+id/fieldEmail" />
114136

115-
</RelativeLayout>
137+
</androidx.constraintlayout.widget.ConstraintLayout>

0 commit comments

Comments
 (0)