# HG changeset patch # User Nikita Kozlov # Date 1253920519 -7200 # Node ID 4684a42ae0add109527dc24b5b107b2a61d53d28 # Parent 551bc80197f5d0883707d174c197ef048152c656# Parent 6aeddf8aa255bfd085fd8890da0c7dbbd95d6237 pas mal de cleannance et aussi du debug sur les decos diff -r 551bc80197f5 -r 4684a42ae0ad libs/jingle-namespace.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/libs/jingle-namespace.patch Sat Sep 26 01:15:19 2009 +0200 @@ -0,0 +1,100 @@ +diff -Nru source-org/org/jivesoftware/smackx/jingle/JingleManager.java source/org/jivesoftware/smackx/jingle/JingleManager.java +--- source-org/org/jivesoftware/smackx/jingle/JingleManager.java 2009-09-25 18:06:18.671020248 +0200 ++++ source/org/jivesoftware/smackx/jingle/JingleManager.java 2009-09-25 18:28:51.645104395 +0200 +@@ -255,7 +255,7 @@ + */ + public static void setJingleServiceEnabled() { + ProviderManager providerManager = ProviderManager.getInstance(); +- providerManager.addIQProvider("jingle", "urn:xmpp:tmp:jingle", new JingleProvider()); ++ providerManager.addIQProvider("jingle", "urn:xmpp:jingle:1", new JingleProvider()); + + // Enable the Jingle support on every established connection + // The ServiceDiscoveryManager class should have been already +@@ -623,4 +623,4 @@ + } + } + } +-} +\ Pas de fin de ligne à la fin du fichier. ++} +diff -Nru source-org/org/jivesoftware/smackx/packet/JingleContentDescription.java source/org/jivesoftware/smackx/packet/JingleContentDescription.java +--- source-org/org/jivesoftware/smackx/packet/JingleContentDescription.java 2009-09-25 18:06:18.676020534 +0200 ++++ source/org/jivesoftware/smackx/packet/JingleContentDescription.java 2009-09-25 18:29:00.788020599 +0200 +@@ -172,7 +172,7 @@ + */ + public static class Audio extends JingleContentDescription { + +- public static final String NAMESPACE = "urn:xmpp:tmp:jingle:apps:rtp"; ++ public static final String NAMESPACE = "urn:xmpp:jingle:apps:rtp:1"; + + public Audio() { + super(); +diff -Nru source-org/org/jivesoftware/smackx/packet/JingleContentInfo.java source/org/jivesoftware/smackx/packet/JingleContentInfo.java +--- source-org/org/jivesoftware/smackx/packet/JingleContentInfo.java 2009-09-25 18:06:18.677020522 +0200 ++++ source/org/jivesoftware/smackx/packet/JingleContentInfo.java 2009-09-25 18:29:10.384025608 +0200 +@@ -96,7 +96,7 @@ + */ + public static class Audio extends JingleContentInfo { + +- public static final String NAMESPACE = "urn:xmpp:tmp:jingle:apps:rtp"; ++ public static final String NAMESPACE = "urn:xmpp:jingle:apps:rtp:1"; + + public Audio(final ContentInfo mi) { + super(mi); +diff -Nru source-org/org/jivesoftware/smackx/packet/JingleDescription.java source/org/jivesoftware/smackx/packet/JingleDescription.java +--- source-org/org/jivesoftware/smackx/packet/JingleDescription.java 2009-09-25 18:06:18.677020522 +0200 ++++ source/org/jivesoftware/smackx/packet/JingleDescription.java 2009-09-25 18:42:05.559023786 +0200 +@@ -179,7 +179,7 @@ + */ + public static class Audio extends JingleDescription { + +- public static final String NAMESPACE = "urn:xmpp:tmp:jingle:apps:rtp"; ++ public static final String NAMESPACE = "urn:xmpp:jingle:apps:rtp:1"; + + public Audio() { + super(); +diff -Nru source-org/org/jivesoftware/smackx/packet/JingleError.java source/org/jivesoftware/smackx/packet/JingleError.java +--- source-org/org/jivesoftware/smackx/packet/JingleError.java 2009-09-25 18:06:18.677020522 +0200 ++++ source/org/jivesoftware/smackx/packet/JingleError.java 2009-09-25 18:29:32.331099677 +0200 +@@ -27,7 +27,7 @@ + + public class JingleError implements PacketExtension { + +- public static String NAMESPACE = "urn:xmpp:tmp:jingle:errors"; ++ public static String NAMESPACE = "urn:xmpp:jingle:errors:1"; + + public static final JingleError OUT_OF_ORDER = new JingleError("out-of-order"); + +diff -Nru source-org/org/jivesoftware/smackx/packet/Jingle.java source/org/jivesoftware/smackx/packet/Jingle.java +--- source-org/org/jivesoftware/smackx/packet/Jingle.java 2009-09-25 18:06:18.676020534 +0200 ++++ source/org/jivesoftware/smackx/packet/Jingle.java 2009-09-25 18:29:39.937485756 +0200 +@@ -44,7 +44,7 @@ + + // static + +- public static final String NAMESPACE = "urn:xmpp:tmp:jingle"; ++ public static final String NAMESPACE = "urn:xmpp:jingle:1"; + + public static final String NODENAME = "jingle"; + +diff -Nru source-org/org/jivesoftware/smackx/packet/JingleTransport.java source/org/jivesoftware/smackx/packet/JingleTransport.java +--- source-org/org/jivesoftware/smackx/packet/JingleTransport.java 2009-09-25 18:06:18.676020534 +0200 ++++ source/org/jivesoftware/smackx/packet/JingleTransport.java 2009-09-25 18:44:09.198082560 +0200 +@@ -270,7 +270,7 @@ + * RTP-ICE profile + */ + public static class Ice extends JingleTransport { +- public static final String NAMESPACE = "urn:xmpp:tmp:jingle:transports:ice-udp"; ++ public static final String NAMESPACE = "urn:xmpp:jingle:transports:ice-udp:1"; + + public Ice() { + super(); +@@ -352,7 +352,7 @@ + * Raw UDP profile. + */ + public static class RawUdp extends JingleTransport { +- public static final String NAMESPACE = "http://www.xmpp.org/extensions/xep-0177.html#ns"; ++ public static final String NAMESPACE = "urn:xmpp:jingle:transports:ice-udp:1"; + + public RawUdp() { + super(); diff -r 551bc80197f5 -r 4684a42ae0ad libs/smackx-jingle.jar Binary file libs/smackx-jingle.jar has changed diff -r 551bc80197f5 -r 4684a42ae0ad res/values-en/strings.xml --- a/res/values-en/strings.xml Fri Sep 25 22:14:53 2009 +0200 +++ b/res/values-en/strings.xml Sat Sep 26 01:15:19 2009 +0200 @@ -95,6 +95,10 @@ You have been disconnected + + Accept contact request + Accept contact request from + diff -r 551bc80197f5 -r 4684a42ae0ad res/values-fr/arrays.xml --- a/res/values-fr/arrays.xml Fri Sep 25 22:14:53 2009 +0200 +++ b/res/values-fr/arrays.xml Sat Sep 26 01:15:19 2009 +0200 @@ -6,11 +6,11 @@ SOCKS5 - Available for chat - Available - Busy - Away - Unavailable - Disconnected + Disponnible pour discuter + Disponnible + Occupé + Absent + Indisponnible + Déconnecté diff -r 551bc80197f5 -r 4684a42ae0ad res/values-fr/strings.xml --- a/res/values-fr/strings.xml Fri Sep 25 22:14:53 2009 +0200 +++ b/res/values-fr/strings.xml Sat Sep 26 01:15:19 2009 +0200 @@ -93,6 +93,10 @@ Vous avez été déconnecté + + Accept contact request + Accept contact request from + diff -r 551bc80197f5 -r 4684a42ae0ad src/com/beem/project/beem/BeemService.java --- a/src/com/beem/project/beem/BeemService.java Fri Sep 25 22:14:53 2009 +0200 +++ b/src/com/beem/project/beem/BeemService.java Sat Sep 26 01:15:19 2009 +0200 @@ -58,14 +58,6 @@ } /** - * Close the connection to the xmpp server. - */ - private void closeConnection() { - if (mConnection != null) - mConnection.disconnect(); - } - - /** * Initialise la configuration de la connexion. */ private void initConnectionConfig() { @@ -107,7 +99,7 @@ Log.e("BEEMSERVICE", "ONBIND()"); return mBind; } - + /** * {@inheritDoc} */ @@ -133,7 +125,7 @@ initConnectionConfig(); mNotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); mConnection = new XmppConnectionAdapter(mConnectionConfiguration, mLogin, mPassword, this); - + Roster.setDefaultSubscriptionMode(SubscriptionMode.manual); mBind = new XmppFacade(mConnection, this, mJingle); mJingle = new JingleService(mConnection.getAdaptee()); @@ -145,9 +137,8 @@ @Override public void onDestroy() { super.onDestroy(); - closeConnection(); mNotificationManager.cancel(NOTIFICATION_STATUS_ID); - Log.e("BEEEMSERVICE", "ONDESTROY"); + Log.d("BEEEMSERVICE", "ONDESTROY"); } /** @@ -181,7 +172,11 @@ edit.commit(); } + /** + * init jingle from XmppConnectionAdapter. + * @param adaptee XmppConntection used for jingle. + */ public void initJingle(XMPPConnection adaptee) { - mJingle.initWhenConntected(adaptee); + mJingle.initWhenConntected(adaptee); } } diff -r 551bc80197f5 -r 4684a42ae0ad src/com/beem/project/beem/jingle/demo/JingleCallActivity.java --- a/src/com/beem/project/beem/jingle/demo/JingleCallActivity.java Fri Sep 25 22:14:53 2009 +0200 +++ b/src/com/beem/project/beem/jingle/demo/JingleCallActivity.java Sat Sep 26 01:15:19 2009 +0200 @@ -61,7 +61,9 @@ mConnection.connect(); mConnection.login(login, password); mJingle = new JingleService(mConnection); + mJingle.initWhenConntected(mConnection); mBtcall.setEnabled(true); + Toast.makeText(JingleCallActivity.this, "Connected", Toast.LENGTH_SHORT); } catch (XMPPException e) { // TODO Auto-generated catch block e.printStackTrace(); diff -r 551bc80197f5 -r 4684a42ae0ad src/com/beem/project/beem/jingle/demo/package-info.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/com/beem/project/beem/jingle/demo/package-info.java Sat Sep 26 01:15:19 2009 +0200 @@ -0,0 +1,4 @@ +/** + * Package for testing the Jingle classes. + */ +package com.beem.project.beem.jingle.demo; diff -r 551bc80197f5 -r 4684a42ae0ad src/com/beem/project/beem/service/RosterAdapter.java --- a/src/com/beem/project/beem/service/RosterAdapter.java Fri Sep 25 22:14:53 2009 +0200 +++ b/src/com/beem/project/beem/service/RosterAdapter.java Sat Sep 26 01:15:19 2009 +0200 @@ -294,7 +294,7 @@ } catch (RemoteException e) { // The RemoteCallbackList will take care of removing the // dead listeners. - Log.w(TAG, "Error while updating roster entries", e); + Log.w(TAG, "Error while updating roster presence entries", e); } } mRemoteRosListeners.finishBroadcast(); diff -r 551bc80197f5 -r 4684a42ae0ad src/com/beem/project/beem/service/XmppConnectionAdapter.java --- a/src/com/beem/project/beem/service/XmppConnectionAdapter.java Fri Sep 25 22:14:53 2009 +0200 +++ b/src/com/beem/project/beem/service/XmppConnectionAdapter.java Sat Sep 26 01:15:19 2009 +0200 @@ -21,6 +21,7 @@ import android.os.RemoteException; import android.util.Log; +import com.beem.project.beem.R; import com.beem.project.beem.BeemService; import com.beem.project.beem.service.aidl.IBeemConnectionListener; import com.beem.project.beem.service.aidl.IChatManager; @@ -34,8 +35,11 @@ */ public class XmppConnectionAdapter extends IXmppConnection.Stub { + /** + * Beem connection closed Intent name. + */ + public static final String BEEM_CONNECTION_CLOSED = "BeemConnectionClosed"; private static final String TAG = "XMPPConnectionAdapter"; - public static final String BEEM_CONNECTION_CLOSED = "BeemConnectionClosed"; private XMPPConnection mAdaptee; private IChatManager mChatManager; private String mLogin; @@ -109,7 +113,7 @@ try { connectSync(); } catch (RemoteException e) { - Log.e(TAG, "Error while connecting", e); + Log.e(TAG, "Error while connecting asynchronously", e); } } }); @@ -135,11 +139,11 @@ triggerAsynchronousConnectEvent(); //Priority between -128 and 128 Presence p = new Presence(Presence.Type.available, "Beem : http://www.beem-project.com", - 128, Presence.Mode.available); + 128, Presence.Mode.available); mAdaptee.sendPacket(p); return true; } catch (XMPPException e) { - Log.e(TAG, "Error while connecting", e); + Log.d(TAG, "Error while connecting", e); if (e.getXMPPError() != null && e.getXMPPError().getMessage() != null) mConListener.connectionFailed(e.getXMPPError().getMessage()); else @@ -234,10 +238,10 @@ /** * Set the privacy list to use. - * @param mPrivacyList the mPrivacyList to set + * @param privacyList the mPrivacyList to set */ - public void setPrivacyList(PrivacyListManagerAdapter PrivacyList) { - this.mPrivacyList = PrivacyList; + public void setPrivacyList(PrivacyListManagerAdapter privacyList) { + this.mPrivacyList = privacyList; } /** @@ -249,13 +253,11 @@ } /** - * Listener for XMPP connection events. It will calls the remote listeners for connexion events. + * Listener for XMPP connection events. It will calls the remote listeners for connection events. * @author darisk */ private class ConnexionListenerAdapter implements ConnectionListener { - - /** * Defaut constructor. */ @@ -267,24 +269,9 @@ */ @Override public void connectionClosed() { + Log.d(TAG, "closing connection"); mRoster = null; - - /*final int n = mRemoteConnListeners.beginBroadcast(); - - for (int i = 0; i < n; i++) { - IBeemConnectionListener listener = mRemoteConnListeners.getBroadcastItem(i); - try { - if (listener != null) - listener.connectionClosed(); - } catch (RemoteException e) { - // The RemoteCallbackList will take care of removing the - // dead listeners. - Log.w(TAG, "Error while triggering remote connection listeners", e); - } - } - mRemoteConnListeners.finishBroadcast();*/ - Intent closedIntent = new Intent(BEEM_CONNECTION_CLOSED); - mService.sendBroadcast(closedIntent); + mService.sendBroadcast(new Intent(BEEM_CONNECTION_CLOSED)); mService.stopSelf(); } @@ -293,6 +280,7 @@ */ @Override public void connectionClosedOnError(Exception arg0) { + Log.d(TAG, "connectionClosedOnError"); mRoster = null; final int n = mRemoteConnListeners.beginBroadcast(); @@ -310,8 +298,12 @@ mRemoteConnListeners.finishBroadcast(); } + /** + * Connection failed callback. + * @param errorMsg smack failure message + */ public void connectionFailed(String errorMsg) { - Log.i(TAG, "Connection Failed"); + Log.d(TAG, "Connection Failed"); final int n = mRemoteConnListeners.beginBroadcast(); for (int i = 0; i < n; i++) { @@ -326,6 +318,7 @@ } } mRemoteConnListeners.finishBroadcast(); + //mService.stopSelf(); } /** @@ -351,12 +344,12 @@ public void processPacket(Packet packet) { String from = packet.getFrom(); Notification notif = new Notification(com.beem.project.beem.R.drawable.signal, - "Demande d'ajout", System.currentTimeMillis()); + mService.getString(R.string.AcceptContactRequest), System.currentTimeMillis()); notif.defaults = Notification.DEFAULT_ALL; notif.flags = Notification.FLAG_AUTO_CANCEL; Intent intent = new Intent(mService, Subscription.class); intent.putExtra("from", from); - notif.setLatestEventInfo(mService, from, "demande d'ajout de " + from, + notif.setLatestEventInfo(mService, from, mService.getString(R.string.AcceptContactRequestFrom) + from, PendingIntent.getActivity(mService, 0, intent, PendingIntent.FLAG_ONE_SHOT)); int id = packet.hashCode(); mService.sendNotification(id, notif); @@ -387,6 +380,7 @@ */ @Override public void reconnectingIn(int arg0) { + Log.d(TAG, "reconnectingIn"); final int n = mRemoteConnListeners.beginBroadcast(); for (int i = 0; i < n; i++) { @@ -408,6 +402,7 @@ */ @Override public void reconnectionFailed(Exception arg0) { + Log.d(TAG, "reconnectionFailed"); final int r = mRemoteConnListeners.beginBroadcast(); for (int i = 0; i < r; i++) { @@ -429,6 +424,7 @@ */ @Override public void reconnectionSuccessful() { + Log.d(TAG, "reconnectionSuccessful"); PacketFilter filter = new PacketFilter() { @Override @@ -448,12 +444,13 @@ public void processPacket(Packet packet) { String from = packet.getFrom(); Notification notif = new Notification(com.beem.project.beem.R.drawable.signal, - "Demande d'ajout", System.currentTimeMillis()); + mService.getString(R.string.AcceptContactRequest), System.currentTimeMillis()); notif.defaults = Notification.DEFAULT_ALL; notif.flags = Notification.FLAG_AUTO_CANCEL; Intent intent = new Intent(mService, Subscription.class); intent.putExtra("from", from); - notif.setLatestEventInfo(mService, from, "demande d'ajout de " + from, + notif.setLatestEventInfo(mService, from, + mService.getString(R.string.AcceptContactRequestFrom) + from, PendingIntent.getActivity(mService, 0, intent, PendingIntent.FLAG_ONE_SHOT)); int id = packet.hashCode(); mService.sendNotification(id, notif); diff -r 551bc80197f5 -r 4684a42ae0ad src/com/beem/project/beem/service/XmppFacade.java --- a/src/com/beem/project/beem/service/XmppFacade.java Fri Sep 25 22:14:53 2009 +0200 +++ b/src/com/beem/project/beem/service/XmppFacade.java Sat Sep 26 01:15:19 2009 +0200 @@ -15,6 +15,7 @@ import com.beem.project.beem.service.aidl.IXmppFacade; import com.beem.project.beem.ui.ChangeStatus; import com.beem.project.beem.utils.PresenceType; +import com.beem.project.beem.utils.Status; /** * This class is a facade for the Beem Service. @@ -46,7 +47,7 @@ Presence pres = new Presence(Presence.Type.available); if (msg != null) pres.setStatus(msg); - Presence.Mode mode = com.beem.project.beem.utils.Status.getPresenceModeFromStatus(status); + Presence.Mode mode = Status.getPresenceModeFromStatus(status); if (mode != null) pres.setMode(mode); mConnexion.getAdaptee().sendPacket(pres); diff -r 551bc80197f5 -r 4684a42ae0ad src/com/beem/project/beem/ui/ChangeStatus.java --- a/src/com/beem/project/beem/ui/ChangeStatus.java Fri Sep 25 22:14:53 2009 +0200 +++ b/src/com/beem/project/beem/ui/ChangeStatus.java Sat Sep 26 01:15:19 2009 +0200 @@ -32,23 +32,22 @@ */ public class ChangeStatus extends Activity { - private static final Intent SERVICE_INTENT = new Intent(); static { SERVICE_INTENT.setComponent(new ComponentName("com.beem.project.beem", "com.beem.project.beem.BeemService")); } - private static final int DISCONNECTED_IDX = 5; + private static final int AVAILABLE_FOR_CHAT_IDX = 0; private static final int AVAILABLE_IDX = 1; private static final int BUSY_IDX = 2; private static final int AWAY_IDX = 3; private static final int UNAVAILABLE_IDX = 4; + private static final int DISCONNECTED_IDX = 5; private TextView mStatusText; private Toast mToast; private Button mOk; private Button mClear; private Spinner mSpinner; - private String[] mStatus; private SharedPreferences mSettings; private ArrayAdapter mAdapter; @@ -82,34 +81,26 @@ /** * convert status text to. - * @param item - * @return + * @param item selected item text. + * @return item position in the array. */ private int getStatusForService(String item) { - int res = Status.CONTACT_STATUS_AVAILABLE; - for (int i = 0; i < mStatus.length; i++) { - String str = mStatus[i]; - if (str.equals(item)) { - switch (i) { - case ChangeStatus.DISCONNECTED_IDX: - return Status.CONTACT_STATUS_DISCONNECT; - case ChangeStatus.AVAILABLE_FOR_CHAT_IDX: - return Status.CONTACT_STATUS_AVAILABLE_FOR_CHAT; - case ChangeStatus.AVAILABLE_IDX: - return Status.CONTACT_STATUS_AVAILABLE; - case ChangeStatus.AWAY_IDX: - return Status.CONTACT_STATUS_AWAY; - case ChangeStatus.BUSY_IDX: - return Status.CONTACT_STATUS_BUSY; - case ChangeStatus.UNAVAILABLE_IDX: - return Status.CONTACT_STATUS_UNAVAILABLE; - default: - res = Status.CONTACT_STATUS_AVAILABLE; - break; - } - } + switch (mAdapter.getPosition(item)) { + case ChangeStatus.DISCONNECTED_IDX: + return Status.CONTACT_STATUS_DISCONNECT; + case ChangeStatus.AVAILABLE_FOR_CHAT_IDX: + return Status.CONTACT_STATUS_AVAILABLE_FOR_CHAT; + case ChangeStatus.AVAILABLE_IDX: + return Status.CONTACT_STATUS_AVAILABLE; + case ChangeStatus.AWAY_IDX: + return Status.CONTACT_STATUS_AWAY; + case ChangeStatus.BUSY_IDX: + return Status.CONTACT_STATUS_BUSY; + case ChangeStatus.UNAVAILABLE_IDX: + return Status.CONTACT_STATUS_UNAVAILABLE; + default: + return Status.CONTACT_STATUS_AVAILABLE; } - return res; } /** @@ -135,7 +126,6 @@ mReceiver = new BeemBroadcastReceiver(); mStatusText.setText(getPreferenceString(R.string.PreferenceStatusText)); mSpinner.setSelection(getPreferenceStatusIndex()); - mStatus = getResources().getStringArray(R.array.status_types); } /** @@ -166,25 +156,52 @@ this.unregisterReceiver(mReceiver); } + /** + * connection to service. + * @author nikita + */ private class BeemServiceConnection implements ServiceConnection { + /** + * constructor. + */ + public BeemServiceConnection() { + } + + /** + * {@inheritDoc} + */ @Override public void onServiceConnected(ComponentName name, IBinder service) { mXmppFacade = IXmppFacade.Stub.asInterface(service); } + /** + * {@inheritDoc} + */ @Override public void onServiceDisconnected(ComponentName name) { mXmppFacade = null; } } + /** + * User have clicked on ok. + * @author nikita + */ private class MyOnClickListener implements OnClickListener { + /** + * constructor. + */ + public MyOnClickListener() { + } + @Override public void onClick(View v) { if (v == mOk) { - if (textHasChanged() || statusHasChanged()) { + if (!mStatusText.getText().toString().equals(getPreferenceString(R.string.PreferenceStatusText)) + || getPreferenceStatusIndex() != mSpinner.getSelectedItemPosition()) { String msg = mStatusText.getText().toString(); int status = getStatusForService((String) mSpinner.getSelectedItem()); Editor edit = mSettings.edit(); @@ -197,9 +214,6 @@ try { mXmppFacade.changeStatus(status, msg.toString()); } catch (RemoteException e) { - // TODO - // Auto-generated - // catch block e.printStackTrace(); } mToast.show(); @@ -210,12 +224,5 @@ mStatusText.setText(null); } } - private boolean statusHasChanged() { - return mSettings.getInt(getString(R.string.PreferenceStatus), 0) != mSpinner.getSelectedItemPosition(); - } - - private boolean textHasChanged() { - return !mStatusText.getText().toString().equals(getPreferenceString(R.string.PreferenceStatusText)); - } } } diff -r 551bc80197f5 -r 4684a42ae0ad src/com/beem/project/beem/ui/ContactList.java --- a/src/com/beem/project/beem/ui/ContactList.java Fri Sep 25 22:14:53 2009 +0200 +++ b/src/com/beem/project/beem/ui/ContactList.java Sat Sep 26 01:15:19 2009 +0200 @@ -21,7 +21,6 @@ import android.os.Handler; import android.os.IBinder; import android.os.RemoteException; -import android.util.Log; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuInflater; diff -r 551bc80197f5 -r 4684a42ae0ad src/com/beem/project/beem/ui/EditSettings.java --- a/src/com/beem/project/beem/ui/EditSettings.java Fri Sep 25 22:14:53 2009 +0200 +++ b/src/com/beem/project/beem/ui/EditSettings.java Sat Sep 26 01:15:19 2009 +0200 @@ -393,6 +393,7 @@ return true; case R.id.settings_menu_login: setResult(69); + this.stopService(SERVICE_INTENT); finish(); return true; default: diff -r 551bc80197f5 -r 4684a42ae0ad src/com/beem/project/beem/ui/Login.java --- a/src/com/beem/project/beem/ui/Login.java Fri Sep 25 22:14:53 2009 +0200 +++ b/src/com/beem/project/beem/ui/Login.java Sat Sep 26 01:15:19 2009 +0200 @@ -143,31 +143,6 @@ } /** - * Runnable to display error message. - */ - private class ErrorRunnable implements Runnable { - - private final String mErrorMsg; - - /** - * Constructor. - * @param errorMsg The message to display. - */ - public ErrorRunnable(final String errorMsg) { - mErrorMsg = errorMsg; - } - - /** - * {@inheritDoc} - */ - @Override - public void run() { - mProgressDialog.setMessage(mErrorMsg); - } - - } - - /** * {@inheritDoc} */ @Override @@ -184,14 +159,13 @@ @Override public void connectionFailed(String errorMsg) throws RemoteException { - Log.e("Login", "CONNECTIONFAILLED"); + Log.d(TAG, "CONNECTIONFAILLED"); mIsConnected = false; if (mXmppFacade != null) { Login.this.unbindService(mServConn); Login.this.stopService(SERVICE_INTENT); mXmppFacade = null; } - mConnectionHandler.post(new ErrorRunnable(errorMsg)); dismissProgressDialog(); showToast(errorMsg); } @@ -234,7 +208,7 @@ public void onConnect() throws RemoteException { mIsConnected = true; dismissProgressDialog(); - Log.i(getString(R.string.login_tag), "Connected."); + Log.i(TAG, "Connected."); mXmppFacade.changeStatus(Status.CONTACT_STATUS_AVAILABLE, null); startActivity(new Intent(Login.this, ContactList.class)); finish(); @@ -292,14 +266,15 @@ finish(); } } catch (RemoteException e) { - Log.e(getString(R.string.login_tag), "REMOTE EXCEPTION $" + e.getMessage()); + Log.e(TAG, "REMOTE EXCEPTION $" + e.getMessage()); } } @Override public void onServiceDisconnected(ComponentName name) { + Log.d(TAG, "service disconnected"); mIsConnected = false; mXmppFacade = null; } - } + } } diff -r 551bc80197f5 -r 4684a42ae0ad src/com/beem/project/beem/utils/BeemBroadcastReceiver.java --- a/src/com/beem/project/beem/utils/BeemBroadcastReceiver.java Fri Sep 25 22:14:53 2009 +0200 +++ b/src/com/beem/project/beem/utils/BeemBroadcastReceiver.java Sat Sep 26 01:15:19 2009 +0200 @@ -1,23 +1,23 @@ package com.beem.project.beem.utils; -import com.beem.project.beem.R; -import com.beem.project.beem.ui.Login; - import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.widget.Toast; +import com.beem.project.beem.R; +import com.beem.project.beem.ui.Login; + /** * Manage broadcast disconnect intent. * @author nikita */ public class BeemBroadcastReceiver extends BroadcastReceiver { - + /** * constructor. */ - public BeemBroadcastReceiver(){ + public BeemBroadcastReceiver() { } /**