1
0
mirror of https://github.com/moparisthebest/k-9 synced 2024-08-13 17:03:48 -04:00

Restore list state when recreating MessageListFragment

This commit is contained in:
cketti 2013-01-30 22:30:19 +01:00
parent 5b8fe64917
commit 1ab04587a9

View File

@ -312,6 +312,7 @@ public class MessageListFragment extends SherlockFragment implements OnItemClick
private static final String STATE_SELECTED_MESSAGES = "selectedMessages";
private static final String STATE_REMOTE_SEARCH_PERFORMED = "remoteSearchPerformed";
private static final String STATE_MESSAGE_LIST = "listState";
/**
* Maps a {@link SortType} to a {@link Comparator} implementation.
@ -473,8 +474,11 @@ public class MessageListFragment extends SherlockFragment implements OnItemClick
}
public void restoreListPosition() {
android.os.Message msg = android.os.Message.obtain(this, ACTION_RESTORE_LIST_POSITION);
sendMessage(msg);
if (!hasMessages(ACTION_RESTORE_LIST_POSITION)) {
android.os.Message msg = android.os.Message.obtain(this,
ACTION_RESTORE_LIST_POSITION);
sendMessage(msg);
}
}
@Override
@ -776,6 +780,7 @@ public class MessageListFragment extends SherlockFragment implements OnItemClick
saveSelectedMessages(outState);
outState.putBoolean(STATE_REMOTE_SEARCH_PERFORMED, mRemoteSearchPerformed);
outState.putParcelable(STATE_MESSAGE_LIST, mListView.onSaveInstanceState());
}
/**
@ -791,6 +796,7 @@ public class MessageListFragment extends SherlockFragment implements OnItemClick
restoreSelectedMessages(savedInstanceState);
mRemoteSearchPerformed = savedInstanceState.getBoolean(STATE_REMOTE_SEARCH_PERFORMED);
mSavedListState = savedInstanceState.getParcelable(STATE_MESSAGE_LIST);
}
/**