properly catch and ignore IllegalStateException instead of using commitAllowStateLoss
This commit is contained in:
parent
2d7e5a12aa
commit
09276eb396
|
@ -424,7 +424,13 @@ public class ConversationsActivity extends XmppActivity implements OnConversatio
|
|||
FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
|
||||
fragmentTransaction.replace(R.id.main_fragment, conversationFragment);
|
||||
fragmentTransaction.addToBackStack(null);
|
||||
fragmentTransaction.commitAllowingStateLoss(); //allowing state loss is probably fine since view intents et all are already stored and a click can probably be 'ignored'
|
||||
try {
|
||||
fragmentTransaction.commit();
|
||||
} catch (IllegalStateException e) {
|
||||
Log.w(Config.LOGTAG,"sate loss while opening conversation",e);
|
||||
//allowing state loss is probably fine since view intents et all are already stored and a click can probably be 'ignored'
|
||||
return;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
mainNeedsRefresh = true;
|
||||
|
@ -563,7 +569,12 @@ public class ConversationsActivity extends XmppActivity implements OnConversatio
|
|||
}
|
||||
Fragment mainFragment = getFragmentManager().findFragmentById(R.id.main_fragment);
|
||||
if (mainFragment != null && mainFragment instanceof ConversationFragment) {
|
||||
getFragmentManager().popBackStack();
|
||||
try {
|
||||
getFragmentManager().popBackStack();
|
||||
} catch (IllegalStateException e) {
|
||||
Log.w(Config.LOGTAG,"state loss while popping back state after archiving conversation",e);
|
||||
//this usually means activity is no longer active; meaning on the next open we will run through this again
|
||||
}
|
||||
return;
|
||||
}
|
||||
Fragment secondaryFragment = getFragmentManager().findFragmentById(R.id.secondary_fragment);
|
||||
|
|
Loading…
Reference in a new issue