diff --git a/app/src/main/java/info/nerull7/mysqlbrowser/EntriesFragment.java b/app/src/main/java/info/nerull7/mysqlbrowser/EntriesFragment.java index f0a6583..e9f09f6 100644 --- a/app/src/main/java/info/nerull7/mysqlbrowser/EntriesFragment.java +++ b/app/src/main/java/info/nerull7/mysqlbrowser/EntriesFragment.java @@ -63,6 +63,8 @@ public class EntriesFragment extends Fragment implements AsyncDatabaseConnector. private TableRow headerRow; private int[] maxWidth; + private boolean isFirstCreate; + @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { @@ -70,11 +72,8 @@ public class EntriesFragment extends Fragment implements AsyncDatabaseConnector. initArguments(); initViewItems(rootView); + initListeners(); - Static.asyncDatabaseConnector.setIntegerReturnListener(this); - Static.asyncDatabaseConnector.setListReturnListener(this); - Static.asyncDatabaseConnector.setMatrixReturnListener(this); - Static.asyncDatabaseConnector.setOnPostExecuteListener(this); onPostExecuteListenerExecuted = 0; Static.asyncDatabaseConnector.getFields(tableName); Static.asyncDatabaseConnector.getEntriesCount(tableName); @@ -86,6 +85,7 @@ public class EntriesFragment extends Fragment implements AsyncDatabaseConnector. databaseName = getArguments().getString(Static.DATABASE_NAME_ARG); tableName = getArguments().getString(Static.TABLE_NAME_ARG); page = 1; + isFirstCreate = true; entriesLimit = PreferenceManager.getDefaultSharedPreferences(getActivity()).getInt(SettingsFragment.ENTRIES_PAGE_LIMIT, SettingsFragment.ENTRIES_PAGE_LIMIT_DEF); } @@ -111,6 +111,13 @@ public class EntriesFragment extends Fragment implements AsyncDatabaseConnector. layoutParams = new TableRow.LayoutParams(TableRow.LayoutParams.WRAP_CONTENT, TableRow.LayoutParams.MATCH_PARENT); } + private void initListeners(){ + Static.asyncDatabaseConnector.setIntegerReturnListener(this); + Static.asyncDatabaseConnector.setListReturnListener(this); + Static.asyncDatabaseConnector.setMatrixReturnListener(this); + Static.asyncDatabaseConnector.setOnPostExecuteListener(this); + } + @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { inflater.inflate(R.menu.entries_activity_actions, menu); @@ -309,6 +316,17 @@ public class EntriesFragment extends Fragment implements AsyncDatabaseConnector. startActivity(intent); } + @Override + public void onResume() { + super.onResume(); + if(!isFirstCreate) { + initListeners(); // Could be overwritten + loadAnotherPage(); // This reloads entries + } else { + isFirstCreate = false; + } + } + @Override public void onPostExecute() { if(++onPostExecuteListenerExecuted==3){