# HG changeset patch # User Nikita Kozlov # Date 1295175533 -3600 # Node ID 71bb53b42419f0cd5b88deee24fddf2cb1933e31 # Parent b5a404ef40f65f6300d9abf8da28e600679f4f79 Feature #316 Use the last used status when beem start diff -r b5a404ef40f6 -r 71bb53b42419 src/com/beem/project/beem/BeemService.java --- a/src/com/beem/project/beem/BeemService.java Mon Jan 03 00:49:06 2011 +0100 +++ b/src/com/beem/project/beem/BeemService.java Sun Jan 16 11:58:53 2011 +0100 @@ -231,7 +231,6 @@ @Override public void onDestroy() { super.onDestroy(); - resetStatus(); mNotificationManager.cancelAll(); unregisterReceiver(mReceiver); mSettings.unregisterOnSharedPreferenceChangeListener(mPreferenceListener); diff -r b5a404ef40f6 -r 71bb53b42419 src/com/beem/project/beem/service/XmppConnectionAdapter.java --- a/src/com/beem/project/beem/service/XmppConnectionAdapter.java Mon Jan 03 00:49:06 2011 +0100 +++ b/src/com/beem/project/beem/service/XmppConnectionAdapter.java Sun Jan 16 11:58:53 2011 +0100 @@ -115,6 +115,7 @@ private BeemApplication mApplication; private AvatarManager mAvatarManager; private PepSubManager mPepManager; + private SharedPreferences mPref; private final RemoteCallbackList mRemoteConnListeners = new RemoteCallbackList(); private final SubscribePacketListener mSubscribePacketListener = new SubscribePacketListener(); @@ -163,13 +164,13 @@ if (ctx instanceof BeemApplication) { mApplication = (BeemApplication) ctx; } - SharedPreferences pref = mService.getServicePreference(); + mPref = mService.getServicePreference(); try { - mPreviousPriority = Integer.parseInt(pref.getString("settings_key_priority", "0")); - mResource = pref.getString("settings_key_resource", "BEEM"); + mPreviousPriority = Integer.parseInt(mPref.getString("settings_key_priority", "0")); } catch (NumberFormatException ex) { mPreviousPriority = 0; } + mResource = mPref.getString("settings_key_resource", "BEEM"); } /** @@ -238,13 +239,14 @@ mAdaptee.login(mLogin, mPassword, mResource); mChatManager = new BeemChatManager(mAdaptee.getChatManager(), mService); mPrivacyListManager = new PrivacyListManagerAdapter(PrivacyListManager.getInstanceFor(mAdaptee)); - mService.resetStatus(); mService.initJingle(mAdaptee); discoverServerFeatures(); mRoster = new RosterAdapter(mAdaptee.getRoster(), mService, mAvatarManager); mApplication.setConnected(true); - changeStatus(Status.CONTACT_STATUS_AVAILABLE, mService.getServicePreference().getString("status_text", "")); + int mode = mPref.getInt(BeemApplication.STATUS_KEY, 0); + String status = mPref.getString(BeemApplication.STATUS_TEXT_KEY, ""); + changeStatus(mode, status); return true; } catch (XMPPException e) { Log.e(TAG, "Error while connecting", e); diff -r b5a404ef40f6 -r 71bb53b42419 src/com/beem/project/beem/ui/ChangeStatus.java --- a/src/com/beem/project/beem/ui/ChangeStatus.java Mon Jan 03 00:49:06 2011 +0100 +++ b/src/com/beem/project/beem/ui/ChangeStatus.java Sun Jan 16 11:58:53 2011 +0100 @@ -163,7 +163,6 @@ @Override protected void onPause() { super.onPause(); - Log.d("TAG", "pause"); unbindService(mServConn); }