added Forgetpassword page with no logic yet

This commit is contained in:
Alex
2026-04-12 01:08:25 -06:00
parent 3472b4bcd7
commit 870fa5488a
5 changed files with 159 additions and 0 deletions

View File

@@ -34,6 +34,9 @@
android:name=".activities.HomeActivity"
android:windowSoftInputMode="adjustResize"
android:exported="false" />
<activity
android:name=".activities.ForgotPasswordActivity"
android:exported="false" />
<activity
android:name=".activities.MainActivity"
android:exported="true">

View File

@@ -0,0 +1,46 @@
package com.example.petstoremobile.activities;
import android.os.Bundle;
import android.widget.Toast;
import androidx.activity.EdgeToEdge;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.graphics.Insets;
import androidx.core.view.ViewCompat;
import androidx.core.view.WindowInsetsCompat;
import com.example.petstoremobile.databinding.ActivityForgotPasswordBinding;
import com.example.petstoremobile.utils.InputValidator;
import dagger.hilt.android.AndroidEntryPoint;
@AndroidEntryPoint
public class ForgotPasswordActivity extends AppCompatActivity {
private ActivityForgotPasswordBinding binding;
@Override
protected void onCreate(Bundle savedInstanceState) {
EdgeToEdge.enable(this);
super.onCreate(savedInstanceState);
binding = ActivityForgotPasswordBinding.inflate(getLayoutInflater());
setContentView(binding.getRoot());
ViewCompat.setOnApplyWindowInsetsListener(binding.forgotPasswordRoot, (v, insets) -> {
Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars());
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);
return insets;
});
binding.btnSubmit.setOnClickListener(v -> {
if (InputValidator.isValidEmail(binding.etEmail)) {
String email = binding.etEmail.getText().toString().trim();
// TODO: Implement password reset logic here
Toast.makeText(this, "If this email is linked, a reset email will be sent.", Toast.LENGTH_LONG).show();
finish();
}
});
binding.btnBackToLogin.setOnClickListener(v -> finish());
}
}

View File

@@ -89,6 +89,11 @@ public class MainActivity extends AppCompatActivity {
performLogin(username, password);
});
// Set click listener for forgot password link
binding.tvForgotPassword.setOnClickListener(v -> {
startActivity(new Intent(this, ForgotPasswordActivity.class));
});
}
/**

View File

@@ -0,0 +1,93 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/forgot_password_root"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@color/primary_dark"
android:padding="32dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:layout_width="120dp"
android:layout_height="120dp"
android:layout_marginBottom="24dp"
android:scaleType="fitCenter"
android:src="@drawable/petstore_logo" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Forgot Password"
android:textColor="@color/white"
android:textSize="24sp"
android:textStyle="bold"
android:layout_marginBottom="8dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Enter your email to reset your password"
android:textColor="@color/text_light"
android:textSize="14sp"
android:textAlignment="center"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="@color/white"
android:padding="24dp"
android:elevation="4dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Email Address"
android:textColor="@color/text_dark"
android:textSize="12sp"
android:layout_marginBottom="4dp"/>
<EditText
android:id="@+id/etEmail"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="example@email.com"
android:inputType="textEmailAddress"
android:layout_marginBottom="24dp"
android:textColor="@color/text_dark"/>
<Button
android:id="@+id/btnSubmit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Send Reset Link"
android:backgroundTint="@color/accent_coral"
android:textColor="@color/white"
android:textSize="16sp"/>
<Button
android:id="@+id/btnBackToLogin"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Back to Login"
style="@style/Widget.MaterialComponents.Button.TextButton"
android:textColor="@color/accent_blue"
android:layout_marginTop="8dp"/>
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="0.5"/>
</LinearLayout>

View File

@@ -109,6 +109,18 @@
android:textColor="@color/white"
android:textSize="16sp"/>
<TextView
android:id="@+id/tvForgotPassword"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="16dp"
android:text="Forgot your password?"
android:textColor="@color/accent_blue"
android:textSize="14sp"
android:clickable="true"
android:focusable="true"/>
</LinearLayout>
</LinearLayout>