diff --git a/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java b/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java index dea0c050b418c253288ad3e75c9aa0b8aba815c5..831a54e126b04b5f35beb4aa2a9c4a0ccbe5c25a 100644 --- a/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java +++ b/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java @@ -401,10 +401,10 @@ public class XmppConnectionService extends Service { } } } - PowerManager pm = (PowerManager) this.getSystemService(Context.POWER_SERVICE); + /*PowerManager pm = (PowerManager) this.getSystemService(Context.POWER_SERVICE); if (!pm.isScreenOn()) { removeStaleListeners(); - } + }*/ if (wakeLock.isHeld()) { try { wakeLock.release(); @@ -1080,11 +1080,11 @@ public class XmppConnectionService extends Service { public void setOnConversationListChangedListener( OnConversationUpdate listener) { - if (!isScreenOn()) { + /*if (!isScreenOn()) { Log.d(Config.LOGTAG, "ignoring setOnConversationListChangedListener"); return; - } + }*/ synchronized (this.convChangedListenerCount) { if (checkListeners()) { switchToForeground(); @@ -1110,10 +1110,10 @@ public class XmppConnectionService extends Service { } public void setOnAccountListChangedListener(OnAccountUpdate listener) { - if (!isScreenOn()) { + /*if (!isScreenOn()) { Log.d(Config.LOGTAG, "ignoring setOnAccountListChangedListener"); return; - } + }*/ synchronized (this.accountChangedListenerCount) { if (checkListeners()) { switchToForeground(); @@ -1137,10 +1137,10 @@ public class XmppConnectionService extends Service { } public void setOnRosterUpdateListener(OnRosterUpdate listener) { - if (!isScreenOn()) { + /*if (!isScreenOn()) { Log.d(Config.LOGTAG, "ignoring setOnRosterUpdateListener"); return; - } + }*/ synchronized (this.rosterChangedListenerCount) { if (checkListeners()) { switchToForeground(); diff --git a/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java b/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java index c6ec63df6a348e3c736395d947ec68a952fb203c..8cb8a3aabd3c742351e02ccb4c938009ee65fb0b 100644 --- a/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java +++ b/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java @@ -896,12 +896,11 @@ public class ConversationActivity extends XmppActivity implements public void run() { updateConversationList(); if (conversationList.size() == 0) { - startActivity(new Intent(getApplicationContext(), - StartConversationActivity.class)); - finish(); - } else { - ConversationActivity.this.mConversationFragment.updateMessages(); + startActivity(new Intent(getApplicationContext(), + StartConversationActivity.class)); + finish(); } + ConversationActivity.this.mConversationFragment.updateMessages(); } }); } diff --git a/src/main/java/eu/siacs/conversations/ui/XmppActivity.java b/src/main/java/eu/siacs/conversations/ui/XmppActivity.java index 78d7956ae1b8f454c813d1062840f6d98bdbcbcf..2dafbd26d88dd096abee80b10696fdaf981abc83 100644 --- a/src/main/java/eu/siacs/conversations/ui/XmppActivity.java +++ b/src/main/java/eu/siacs/conversations/ui/XmppActivity.java @@ -105,7 +105,11 @@ public abstract class XmppActivity extends Activity { XmppConnectionBinder binder = (XmppConnectionBinder) service; xmppConnectionService = binder.getService(); xmppConnectionServiceBound = true; - onBackendConnected(); + if (!isFinishing() && !isDestroyed()) { + onBackendConnected(); + } else { + Log.d(Config.LOGTAG,"omitting call to onBackendConnected()"); + } } @Override