summaryrefslogtreecommitdiffstats
path: root/app/src/main/java/app/fedilab/android/ui/fragment/login/FragmentLoginMain.java
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/app/fedilab/android/ui/fragment/login/FragmentLoginMain.java')
-rw-r--r--app/src/main/java/app/fedilab/android/ui/fragment/login/FragmentLoginMain.java45
1 files changed, 25 insertions, 20 deletions
diff --git a/app/src/main/java/app/fedilab/android/ui/fragment/login/FragmentLoginMain.java b/app/src/main/java/app/fedilab/android/ui/fragment/login/FragmentLoginMain.java
index af96e62ee..ec770860b 100644
--- a/app/src/main/java/app/fedilab/android/ui/fragment/login/FragmentLoginMain.java
+++ b/app/src/main/java/app/fedilab/android/ui/fragment/login/FragmentLoginMain.java
@@ -258,28 +258,33 @@ public class FragmentLoginMain extends Fragment {
scopes,
Helper.WEBSITE_VALUE
).observe(requireActivity(), app -> {
- client_idLogin = app.client_id;
- client_secretLogin = app.client_secret;
- String redirectUrl = MastodonHelper.authorizeURL(currentInstanceLogin, client_idLogin, ((LoginActivity) requireActivity()).requestedAdmin());
- SharedPreferences sharedpreferences = PreferenceManager.getDefaultSharedPreferences(requireActivity());
- boolean embedded_browser = sharedpreferences.getBoolean(getString(R.string.SET_EMBEDDED_BROWSER), true);
- if (embedded_browser) {
- Intent i = new Intent(requireActivity(), WebviewConnectActivity.class);
- i.putExtra("login_url", redirectUrl);
- i.putExtra("requestedAdmin", ((LoginActivity) requireActivity()).requestedAdmin());
- startActivity(i);
- requireActivity().finish();
- } else {
- Intent intent = new Intent(Intent.ACTION_VIEW);
- intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
- intent.setData(Uri.parse(redirectUrl));
- try {
- startActivity(intent);
- } catch (Exception e) {
- Toasty.error(requireActivity(), getString(R.string.toast_error), Toast.LENGTH_LONG).show();
- }
+ if (app != null) {
+ client_idLogin = app.client_id;
+ client_secretLogin = app.client_secret;
+ String redirectUrl = MastodonHelper.authorizeURL(currentInstanceLogin, client_idLogin, ((LoginActivity) requireActivity()).requestedAdmin());
+ SharedPreferences sharedpreferences = PreferenceManager.getDefaultSharedPreferences(requireActivity());
+ boolean embedded_browser = sharedpreferences.getBoolean(getString(R.string.SET_EMBEDDED_BROWSER), true);
+ if (embedded_browser) {
+ Intent i = new Intent(requireActivity(), WebviewConnectActivity.class);
+ i.putExtra("login_url", redirectUrl);
+ i.putExtra("requestedAdmin", ((LoginActivity) requireActivity()).requestedAdmin());
+ startActivity(i);
+ requireActivity().finish();
+ } else {
+ Intent intent = new Intent(Intent.ACTION_VIEW);
+ intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+ intent.setData(Uri.parse(redirectUrl));
+ try {
+ startActivity(intent);
+ } catch (Exception e) {
+ Toasty.error(requireActivity(), getString(R.string.toast_error), Toast.LENGTH_LONG).show();
+ }
+ }
+ } else {
+ Toasty.error(requireActivity(), getString(R.string.client_error), Toasty.LENGTH_SHORT).show();
}
+
});
}
} \ No newline at end of file