mirror of
https://github.com/moparisthebest/k-9
synced 2024-11-02 00:25:10 -04:00
remember which message was selected in MessageList in case the list changes while the dialog is up
Fixes issue 906
This commit is contained in:
parent
91599ae963
commit
cc71273c4b
@ -152,6 +152,7 @@ public class MessageList
|
|||||||
private FontSizes mFontSizes = K9.getFontSizes();
|
private FontSizes mFontSizes = K9.getFontSizes();
|
||||||
|
|
||||||
private Bundle mState = null;
|
private Bundle mState = null;
|
||||||
|
private MessageInfoHolder mSelectedMessage = null;
|
||||||
|
|
||||||
class MessageListHandler extends Handler
|
class MessageListHandler extends Handler
|
||||||
{
|
{
|
||||||
@ -1490,7 +1491,13 @@ public class MessageList
|
|||||||
public boolean onContextItemSelected(MenuItem item)
|
public boolean onContextItemSelected(MenuItem item)
|
||||||
{
|
{
|
||||||
AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
|
AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
|
||||||
MessageInfoHolder holder = (MessageInfoHolder) mAdapter.getItem(info.position);
|
MessageInfoHolder holder = mSelectedMessage;
|
||||||
|
// don't need this anymore
|
||||||
|
mSelectedMessage = null;
|
||||||
|
if (holder == null)
|
||||||
|
{
|
||||||
|
holder = (MessageInfoHolder) mAdapter.getItem(info.position);
|
||||||
|
}
|
||||||
|
|
||||||
switch (item.getItemId())
|
switch (item.getItemId())
|
||||||
{
|
{
|
||||||
@ -1644,6 +1651,9 @@ public class MessageList
|
|||||||
|
|
||||||
AdapterContextMenuInfo info = (AdapterContextMenuInfo) menuInfo;
|
AdapterContextMenuInfo info = (AdapterContextMenuInfo) menuInfo;
|
||||||
MessageInfoHolder message = (MessageInfoHolder) mAdapter.getItem(info.position);
|
MessageInfoHolder message = (MessageInfoHolder) mAdapter.getItem(info.position);
|
||||||
|
// remember which message was originally selected, in case the list changes while the
|
||||||
|
// dialog is up
|
||||||
|
mSelectedMessage = message;
|
||||||
|
|
||||||
if (message == null)
|
if (message == null)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user