From bbab6f12567616dd817e99b6ff0da49382153e5d Mon Sep 17 00:00:00 2001 From: korelstar Date: Fri, 16 Sep 2016 20:54:09 +0200 Subject: [PATCH] Fix error message for synchronization on first/unconfigured run --- .../notes/android/activity/NotesListViewActivity.java | 5 +++-- .../owncloud/notes/android/activity/SettingsActivity.java | 6 ++---- .../owncloud/notes/persistence/NoteServerSyncHelper.java | 5 ++++- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/it/niedermann/owncloud/notes/android/activity/NotesListViewActivity.java b/app/src/main/java/it/niedermann/owncloud/notes/android/activity/NotesListViewActivity.java index 322861cd4..df4aee2ba 100644 --- a/app/src/main/java/it/niedermann/owncloud/notes/android/activity/NotesListViewActivity.java +++ b/app/src/main/java/it/niedermann/owncloud/notes/android/activity/NotesListViewActivity.java @@ -30,6 +30,7 @@ import it.niedermann.owncloud.notes.model.ItemAdapter; import it.niedermann.owncloud.notes.model.SectionItem; import it.niedermann.owncloud.notes.persistence.NoteSQLiteOpenHelper; +import it.niedermann.owncloud.notes.persistence.NoteServerSyncHelper; import it.niedermann.owncloud.notes.util.ICallback; import it.niedermann.owncloud.notes.util.NotesClientUtil; @@ -72,7 +73,7 @@ protected void onCreate(Bundle savedInstanceState) { // First Run Wizard SharedPreferences preferences = PreferenceManager .getDefaultSharedPreferences(getApplicationContext()); - if (preferences.getBoolean(SettingsActivity.SETTINGS_FIRST_RUN, true)) { + if (!NoteServerSyncHelper.isConfigured(this)) { Intent settingsIntent = new Intent(this, SettingsActivity.class); startActivityForResult(settingsIntent, server_settings); } @@ -107,7 +108,7 @@ public void onRefresh() { */ @Override protected void onResume() { - if (db.getNoteServerSyncHelper().isSyncPossible() && !PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).getBoolean(SettingsActivity.SETTINGS_FIRST_RUN, true)) { + if (db.getNoteServerSyncHelper().isSyncPossible()) { synchronize(); } super.onResume(); diff --git a/app/src/main/java/it/niedermann/owncloud/notes/android/activity/SettingsActivity.java b/app/src/main/java/it/niedermann/owncloud/notes/android/activity/SettingsActivity.java index 953d064f7..8b5d14329 100644 --- a/app/src/main/java/it/niedermann/owncloud/notes/android/activity/SettingsActivity.java +++ b/app/src/main/java/it/niedermann/owncloud/notes/android/activity/SettingsActivity.java @@ -19,6 +19,7 @@ import android.widget.Toast; import it.niedermann.owncloud.notes.R; +import it.niedermann.owncloud.notes.persistence.NoteServerSyncHelper; import it.niedermann.owncloud.notes.util.NotesClientUtil; import it.niedermann.owncloud.notes.util.NotesClientUtil.LoginStatus; @@ -28,7 +29,6 @@ */ public class SettingsActivity extends AppCompatActivity { - public static final String SETTINGS_FIRST_RUN = "firstRun"; public static final String SETTINGS_URL = "settingsUrl"; public static final String SETTINGS_USERNAME = "settingsUsername"; public static final String SETTINGS_PASSWORD = "settingsPassword"; @@ -50,7 +50,7 @@ public void onCreate(Bundle savedInstanceState) { preferences = PreferenceManager .getDefaultSharedPreferences(getApplicationContext()); - if (preferences.getBoolean(SettingsActivity.SETTINGS_FIRST_RUN, true)) { + if (!NoteServerSyncHelper.isConfigured(this)) { first_run = true; getSupportActionBar().setDisplayHomeAsUpEnabled(false); } @@ -223,8 +223,6 @@ protected void onPostExecute(LoginStatus status) { editor.putString(SETTINGS_URL, url); editor.putString(SETTINGS_USERNAME, username); editor.putString(SETTINGS_PASSWORD, password); - // Now it is no more First Run - editor.putBoolean(SETTINGS_FIRST_RUN, false); editor.apply(); //NoteSQLiteOpenHelper db = new NoteSQLiteOpenHelper(getApplicationContext()); diff --git a/app/src/main/java/it/niedermann/owncloud/notes/persistence/NoteServerSyncHelper.java b/app/src/main/java/it/niedermann/owncloud/notes/persistence/NoteServerSyncHelper.java index 2690a639a..cb577ebe6 100644 --- a/app/src/main/java/it/niedermann/owncloud/notes/persistence/NoteServerSyncHelper.java +++ b/app/src/main/java/it/niedermann/owncloud/notes/persistence/NoteServerSyncHelper.java @@ -100,6 +100,9 @@ protected void finalize() throws Throwable { super.finalize(); } + public static boolean isConfigured(Context context) { + return !PreferenceManager.getDefaultSharedPreferences(context).getString(SettingsActivity.SETTINGS_URL, SettingsActivity.DEFAULT_SETTINGS).isEmpty(); + } /** * Synchronization is only possible, if there is an active network connection. @@ -108,7 +111,7 @@ protected void finalize() throws Throwable { * @return true if sync is possible, otherwise false. */ public boolean isSyncPossible() { - return networkConnected; + return networkConnected && isConfigured(appContext); }