Skip to content

Commit

Permalink
feat: persist typed email between different AuthActivity fragments
Browse files Browse the repository at this point in the history
  • Loading branch information
robuxinc committed May 26, 2018
1 parent 920bc6b commit 160dba4
Show file tree
Hide file tree
Showing 4 changed files with 38 additions and 1 deletion.
Expand Up @@ -18,7 +18,7 @@
import dagger.android.DispatchingAndroidInjector;
import dagger.android.support.HasSupportFragmentInjector;

public class AuthActivity extends AppCompatActivity implements HasSupportFragmentInjector {
public class AuthActivity extends AppCompatActivity implements HasSupportFragmentInjector, LoginFragment.EmailIdTransfer {

@BindView(R.id.toolbar)
public Toolbar toolbar;
Expand All @@ -28,6 +28,8 @@ public class AuthActivity extends AppCompatActivity implements HasSupportFragmen
@Inject
BackPressHandler backPressHandler;

private String email;

@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Expand All @@ -54,4 +56,13 @@ public void onBackPressed() {
public AndroidInjector<Fragment> supportFragmentInjector() {
return dispatchingAndroidInjector;
}

public String getEmail() {
return email;
}

public void setEmail(String email) {
this.email = email;
}

}
Expand Up @@ -42,6 +42,11 @@ public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
binding = DataBindingUtil.inflate(inflater, R.layout.forgot_password_fragment, container, false);
validator = new Validator(binding);

getPresenter().getEmailId().setEmail(
((LoginFragment.EmailIdTransfer) getContext()).getEmail()
);

return binding.getRoot();
}

Expand Down Expand Up @@ -102,6 +107,7 @@ public void showError(String error) {

@Override
public void onSuccess(String message) {
((LoginFragment.EmailIdTransfer) getContext()).setEmail(binding.getForgotEmail().getEmail());
Toast.makeText(getActivity(), message, Toast.LENGTH_SHORT).show();
openSubmitTokenPage();
}
Expand Down
Expand Up @@ -73,6 +73,14 @@ public void onStart() {
binding.forgotPasswordLink.setOnClickListener(view -> openForgotPasswordPage());
}

@Override
public void onResume() {
super.onResume();
binding.getLogin().setEmail(
((EmailIdTransfer) getContext()).getEmail()
);
}

private void handleIntent(Boolean isLoggedIn) {
Intent intent = new Intent(getActivity(), MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
Expand All @@ -92,13 +100,15 @@ public void onStop() {
}

private void openSignUpPage() {
((EmailIdTransfer) getContext()).setEmail(binding.getLogin().getEmail());
getFragmentManager().beginTransaction()
.setCustomAnimations(R.anim.enter_from_left, R.anim.exit_from_right)
.replace(R.id.fragment_container, new SignUpFragment())
.commit();
}

private void openForgotPasswordPage() {
((EmailIdTransfer) getContext()).setEmail(binding.getLogin().getEmail());
getFragmentManager().beginTransaction()
.setCustomAnimations(R.anim.enter_from_left, R.anim.exit_from_right)
.replace(R.id.fragment_container, new ForgotPasswordFragment())
Expand Down Expand Up @@ -128,4 +138,9 @@ public void attachEmails(Set<String> emails) {
new ArrayAdapter<>(getActivity(), android.R.layout.simple_list_item_1, new ArrayList<>(emails))
);
}

public interface EmailIdTransfer {
void setEmail(String email);
String getEmail();
}
}
Expand Up @@ -42,6 +42,11 @@ public static SignUpFragment newInstance() {
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
binding = DataBindingUtil.inflate(inflater, R.layout.sign_up_fragment, container, false);
validator = new Validator(binding);

getPresenter().getUser().setEmail(
((LoginFragment.EmailIdTransfer) getContext()).getEmail()
);

return binding.getRoot();
}

Expand Down

0 comments on commit 160dba4

Please sign in to comment.