From b56d990a04b5e8914cd84189a04d9f5ef4611b95 Mon Sep 17 00:00:00 2001 From: Eric House Date: Sat, 8 Feb 2014 16:50:27 -0800 Subject: [PATCH] go back to overriding onPause and onResume, but don't tear down the game unless isFinishing() returns true --- .../eehouse/android/xw4/BoardActivity.java | 28 +++++++++++-------- 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardActivity.java b/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardActivity.java index d632a7873..9bdcbd4fc 100644 --- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardActivity.java +++ b/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardActivity.java @@ -593,26 +593,30 @@ public class BoardActivity extends XWActivity } // onCreate @Override - protected void onStop() + protected void onPause() { - m_handler = null; - ConnStatusHandler.setHandler( null ); - waitCloseGame( true ); - super.onStop(); + if ( isFinishing() ) { + m_handler = null; + ConnStatusHandler.setHandler( null ); + waitCloseGame( true ); + } + super.onPause(); } @Override - protected void onStart() + protected void onResume() { - super.onStart(); - m_handler = new Handler(); - m_blockingDlgID = BLOCKING_DLG_NONE; + super.onResume(); + if ( null == m_handler ) { + m_handler = new Handler(); + m_blockingDlgID = BLOCKING_DLG_NONE; - setKeepScreenOn(); + setKeepScreenOn(); - loadGame(); + loadGame(); - ConnStatusHandler.setHandler( this ); + ConnStatusHandler.setHandler( this ); + } } @Override