diff --git a/app/src/main/java/org/nuclearfog/twidda/MainActivity.java b/app/src/main/java/org/nuclearfog/twidda/MainActivity.java
index 43bbfbc7..efc0fb60 100644
--- a/app/src/main/java/org/nuclearfog/twidda/MainActivity.java
+++ b/app/src/main/java/org/nuclearfog/twidda/MainActivity.java
@@ -6,6 +6,7 @@ import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
+import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.app.AppCompatDelegate;
import androidx.appcompat.widget.SearchView;
@@ -36,6 +37,7 @@ public class MainActivity extends AppCompatActivity implements TabLayout.OnTabSe
private static final int LOGIN = 1;
private static final int SETTING = 2;
+ @Nullable
private FragmentAdapter adapter;
private TabLayout tablayout;
private ViewPager pager;
@@ -104,12 +106,16 @@ public class MainActivity extends AppCompatActivity implements TabLayout.OnTabSe
break;
case SETTING:
- if (returnCode == DB_CLEARED)
- adapter.clearData();
- else if (returnCode == APP_LOGOUT)
- adapter = null;
- else
- adapter.notifySettingsChanged();
+ if (adapter != null) {
+ if (returnCode == DB_CLEARED) {
+ adapter.clearData();
+ } else if (returnCode == APP_LOGOUT) {
+ adapter.clearData();
+ adapter = null;
+ } else {
+ adapter.notifySettingsChanged();
+ }
+ }
break;
}
super.onActivityResult(reqCode, returnCode, intent);
@@ -216,7 +222,8 @@ public class MainActivity extends AppCompatActivity implements TabLayout.OnTabSe
@Override
public void onTabUnselected(Tab tab) {
- adapter.scrollToTop(tab.getPosition());
+ if (adapter != null)
+ adapter.scrollToTop(tab.getPosition());
}
diff --git a/app/src/main/java/org/nuclearfog/twidda/window/LoginPage.java b/app/src/main/java/org/nuclearfog/twidda/window/LoginPage.java
index be4d70cc..d494e391 100644
--- a/app/src/main/java/org/nuclearfog/twidda/window/LoginPage.java
+++ b/app/src/main/java/org/nuclearfog/twidda/window/LoginPage.java
@@ -30,6 +30,7 @@ public class LoginPage extends AppCompatActivity implements OnClickListener {
private Registration registerAsync;
private EditText pin;
private View root;
+ private String link;
@Override
protected void onCreate(Bundle b) {
@@ -97,12 +98,18 @@ public class LoginPage extends AppCompatActivity implements OnClickListener {
switch (v.getId()) {
case R.id.linkButton:
- registerAsync = new Registration(this);
- registerAsync.execute();
+ if (link == null) {
+ registerAsync = new Registration(this);
+ registerAsync.execute();
+ } else {
+ connect(link);
+ }
break;
case R.id.verifier:
- if (pin.getText() != null) {
+ if (link == null) {
+ Toast.makeText(this, R.string.info_get_link, LENGTH_LONG).show();
+ } else if (pin.getText() != null) {
String twitterPin = pin.getText().toString();
if (!twitterPin.trim().isEmpty()) {
registerAsync = new Registration(this);
@@ -118,12 +125,11 @@ public class LoginPage extends AppCompatActivity implements OnClickListener {
public void connect(String link) {
ConnectivityManager mConnect = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
- if (mConnect != null && mConnect.getActiveNetworkInfo() != null) {
- if (mConnect.getActiveNetworkInfo().isConnected()) {
- Intent browser = new Intent(ACTION_VIEW);
- browser.setData(Uri.parse(link));
- startActivity(browser);
- }
+ if (mConnect != null && mConnect.getActiveNetworkInfo() != null && mConnect.getActiveNetworkInfo().isConnected()) {
+ Intent browser = new Intent(ACTION_VIEW);
+ browser.setData(Uri.parse(link));
+ startActivity(browser);
+ this.link = link;
} else {
Toast.makeText(this, R.string.connection_failed, LENGTH_SHORT).show();
}
diff --git a/app/src/main/res/values-de-rDE/strings.xml b/app/src/main/res/values-de-rDE/strings.xml
index 01e460cb..6148026b 100644
--- a/app/src/main/res/values-de-rDE/strings.xml
+++ b/app/src/main/res/values-de-rDE/strings.xml
@@ -125,4 +125,5 @@
GPS Position hinzugefügt
starte GPS lokalisierung…
GPS lokalisierung fehlgeschlagen!
+ PIN muss erst von Twitter abgefragt werden! Bitte den ersten Button drücken!
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 64728d0a..d6513d88 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -126,4 +126,5 @@
GPS position added
starting location…
could not fetch GPS data!
+ Get Twitter PIN from browser first. Please press the first button!
\ No newline at end of file