diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml
index cef8c8c2..2a5bfc14 100644
--- a/android/app/src/main/AndroidManifest.xml
+++ b/android/app/src/main/AndroidManifest.xml
@@ -34,6 +34,9 @@
android:name=".activities.HomeActivity"
android:windowSoftInputMode="adjustResize"
android:exported="false" />
+
diff --git a/android/app/src/main/java/com/example/petstoremobile/activities/ForgotPasswordActivity.java b/android/app/src/main/java/com/example/petstoremobile/activities/ForgotPasswordActivity.java
new file mode 100644
index 00000000..385444ed
--- /dev/null
+++ b/android/app/src/main/java/com/example/petstoremobile/activities/ForgotPasswordActivity.java
@@ -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());
+ }
+}
diff --git a/android/app/src/main/java/com/example/petstoremobile/activities/MainActivity.java b/android/app/src/main/java/com/example/petstoremobile/activities/MainActivity.java
index 022192f1..25969757 100644
--- a/android/app/src/main/java/com/example/petstoremobile/activities/MainActivity.java
+++ b/android/app/src/main/java/com/example/petstoremobile/activities/MainActivity.java
@@ -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));
+ });
}
/**
diff --git a/android/app/src/main/res/layout/activity_forgot_password.xml b/android/app/src/main/res/layout/activity_forgot_password.xml
new file mode 100644
index 00000000..b63ae318
--- /dev/null
+++ b/android/app/src/main/res/layout/activity_forgot_password.xml
@@ -0,0 +1,93 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/android/app/src/main/res/layout/activity_main.xml b/android/app/src/main/res/layout/activity_main.xml
index 35692e3c..4a2d8c88 100644
--- a/android/app/src/main/res/layout/activity_main.xml
+++ b/android/app/src/main/res/layout/activity_main.xml
@@ -109,6 +109,18 @@
android:textColor="@color/white"
android:textSize="16sp"/>
+
+
\ No newline at end of file