Merge pull request #207 from misaochan/npe-onsaveinstance

Fix NPE for onSaveInstanceState
This commit is contained in:
Nicolas Raoul 2016-07-26 14:05:58 +09:00 committed by GitHub
commit 5f185dd1ed

View file

@ -42,13 +42,14 @@ public class ContributionsListFragment extends Fragment {
private TextView waitingMessage;
private TextView emptyMessage;
private fr.free.nrw.commons.contributions.ContributionController controller;
private ContributionController controller;
private static final String TAG = "ContributionsList";
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_contributions, container, false);
contributionsList = (GridView) v.findViewById(R.id.contributionsList);
waitingMessage = (TextView) v.findViewById(R.id.waitingMessage);
emptyMessage = (TextView) v.findViewById(R.id.emptyMessage);
@ -83,6 +84,9 @@ public class ContributionsListFragment extends Fragment {
@Override
public void onSaveInstanceState(Bundle outState) {
if (outState == null) {
outState = new Bundle();
}
super.onSaveInstanceState(outState);
controller.saveState(outState);
outState.putInt("grid-position", contributionsList.getFirstVisiblePosition());
@ -188,6 +192,7 @@ public class ContributionsListFragment extends Fragment {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
controller = new ContributionController(this);
setHasOptionsMenu(true);
}
@ -199,8 +204,6 @@ public class ContributionsListFragment extends Fragment {
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
controller = new fr.free.nrw.commons.contributions.ContributionController(this);
controller.loadState(savedInstanceState);
}