diff --git a/sflphone-client-gnome/doc/C/sflphone.xml b/sflphone-client-gnome/doc/C/sflphone.xml
index c08d76564af07be3415038c59a46aa44ea01c03e..64861bea86727339f40c9243d92b5e718a580399 100644
--- a/sflphone-client-gnome/doc/C/sflphone.xml
+++ b/sflphone-client-gnome/doc/C/sflphone.xml
@@ -1,7 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook V4.1//EN" "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"  [
 	<!ENTITY app "SFLphone">
-	<!ENTITY appversion "0.9.7 beta">
+	<!ENTITY appversion "0.9.7">
+	<!ENTITY docversion "1.0">
 ]>
 
 <!-- =============Document Header ============================= -->
@@ -9,7 +10,7 @@
 <!-- please do not change the id; for translations, change lang to -->
 <!-- appropriate code -->
   <articleinfo>
-    <title>SFLphone Manual v1.0</title>
+    <title>SFLphone Manual v&docversion;</title>
 
     <copyright>
       <year>2006</year>
@@ -73,7 +74,7 @@
 
 <revhistory>
       <revision>
-            <revnumber>SFLphone Manual V1.0</revnumber>
+            <revnumber>SFLphone Manual v1.0</revnumber>
             <date>September 2009</date>
             <revdescription>
                 <para role="author">SFLphone team</para>
@@ -82,7 +83,7 @@
       </revision>
 </revhistory>
 
-<releaseinfo>This manual describes version 0.9.7 of SFLphone.</releaseinfo>
+<releaseinfo>This manual describes SFLphone version &appversion;.</releaseinfo>
 
 </articleinfo>
 
@@ -117,7 +118,7 @@
 <sect1 id="getting-started">
 	<title>Getting started</title>
 	<para>
-		The first time you start up sflphone, you will be ask to complete a wizard to set up your(s) account(s). This account configuration manager offers you two possibilities:
+		The first time you start up SFLphone, you will be ask to complete a wizard to set up your(s) account(s). This account configuration manager offers you two possibilities:
 		<itemizedlist>
 			<listitem>
 				<para><guilabel>Create a free SIP/IAX2 account on sflphone.org</guilabel></para>			
@@ -159,7 +160,7 @@
                   	</listitem>
                   	<listitem>
                     	<para><guilabel>Protocol</guilabel></para>
-						<para>Select SIP or IAX2. The most commons are SIP accounts.</para>
+						<para>Select SIP or IAX2. The most commonly used protocol is SIP.</para>
                   	</listitem>
                   	<listitem>
                     	<para><guilabel>Host name</guilabel></para>
@@ -181,7 +182,8 @@
 			</listitem>
     		<listitem><para>Click the <menuchoice><guimenu>Apply</guimenu></menuchoice> button.</para></listitem>
 		</orderedlist>
-		<para>You may now check the state of your account(s). You may have as many setup accounts as you wish. If it is registered, you may now use it to make calls.</para>
+		<para>You may now check the state of your account(s). If it is registered, you may now use it to make calls.</para>
+		<note>You can setup as many accounts as you wish.</note>
 	</sect3>
 
 	<sect3 id="account_edit">
@@ -205,7 +207,7 @@
 	
 	<sect3 id="account_selection">
 		<title>Selecting a default account</title>
-		<para>As it is possible to have an unlimited number of registered accounts at the same time, which account will be used when making a call ? You can not only set up a default account to be used every time you are making a call, but an entire priority list. To do that, perform the following steps:</para>
+		<para>Since it is possible to have an unlimited number of registered accounts at the same time, which account will be used when making a call ? You can not only set up a default account to be used every time you are making a call, but an entire priority list. To do that, perform the following steps:</para>
 			<orderedlist>
 				<listitem><para>Choose <menuchoice><guimenu>Edit</guimenu><guimenuitem>Manage accounts</guimenuitem></menuchoice> to access the accounts list.</para></listitem>
 				<listitem>
@@ -236,8 +238,8 @@
 		<sect3 id="accounts_registration">
 			<title>Registration</title>
 				<para>You may set the expires header for a contact.</para>
-				<para>It basically represents the duration your registration will remain active. If you don't register again within that time, calls will no longer be routed to you. it should be not used as a keepalive mechanism though. The default value is 600 seconds (ten minutes).</para>
-				<note>To register to some VoIP services, you will need to set this value at at least 1600 seconds (Example: French VoIP server freephonie.net).
+				<para>It basically represents the duration your registration will remain active. If you don't register again within that time, calls will no longer be routed to you. It should not be used as a keepalive mechanism though. The default value is 600 seconds (ten minutes).</para>
+				<note>Some VoIP services requires that you set this value at at least 1600 seconds (e.g. the French VoIP server freephonie.net).
 				</note>
 		</sect3>
 		<sect3 id="accounts_stun">
@@ -300,7 +302,7 @@
 <sect1 id="call_features">
 	<title>Call features</title>
 
-	<para>All the following features are available with both SIP and IAX2 accounts.</para>
+	<para>The following features are available with both SIP and IAX2 accounts.</para>
 
 	<sect2 label="Dialing a number">
 	<!-- ==== Figure ==== -->
@@ -570,8 +572,8 @@
             SFLphone conference model let you leave a conference that
             you are currently hosting to answer any other incoming
             communication or even initiate new ones. The conference is
-            not interupted, double clicking the conference icon
-            let you reintroduce it at any momment.
+            not interrupted, double clicking the conference icon
+            let you reintroduce it at any moment.
 	      </para>
 	    <!-- ==== Figure ==== -->
                <figure id="conference_detached-fig">
@@ -632,11 +634,11 @@
                        <para>RTP is the underlying protocol that is used in pair with the widely used SIP protocol to carry voice data. RTP alone does not provide any security features.</para>
                         <para>Details for implementing Secure RTP (SRTP) were described independently in a separate document (RFC). However, in this paper, one aspect was deliberately left unspecified: how should the encryption keys be exchanged between the two parties involved in a secure RTP session ?</para>
                         
-                        <para>Mutiple solutions were proposed to fill in that blank. Among them, are SDES (RFC4568) and ZRTP which are probably the most popular today. For the 0.9.7 release, SFLphone integrates support for Secure RTP through the ZRTP protocol, and SDES is expected to be implemented in the very few next releases.</para>
+                        <para>Multiple solutions were proposed to fill in that blank. Among them, are SDES (RFC4568) and ZRTP which are probably the most popular today. For the 0.9.7 release, SFLphone integrates support for Secure RTP through the ZRTP protocol, and SDES is expected to be implemented in the very few next releases.</para>
                         
-                        <para>As of today, blueprints for ZRTP are still laid out and are recognized under the name "zrtp-draftzimmerman" in the RFC machine. The author of ZRTP is Phil Zimmermann, that same person who brought us PGP. Therefore, it is not suprising that he designed ZRTP as an anti-PKI solution for key exchange.</para>
+                        <para>As of today, blueprints for ZRTP are still laid out and are recognized under the name "zrtp-draftzimmerman" in the RFC machine. The author of ZRTP is Phil Zimmermann, that same person who brought us PGP. Therefore, it is not surprising that he designed ZRTP as an anti-PKI solution for key exchange.</para>
                         
-                        <para>ZRTP makes possible for two parties to automatically establish a shared secret in a very simple way from the users's point of view. Indeed under SFLphone no special configuration is needed, appart from  enabling the option itself.</para>
+                        <para>ZRTP makes possible for two parties to automatically establish a shared secret in a very simple way from the user's point of view. Indeed under SFLphone no special configuration is needed, apart from  enabling the option itself.</para>
                         
                         <para>If you want to use ZRTP, please take note that if you are connecting to a PBX, this one must have been configured to support ZRTP. Unfortunately, security for VoIP communications is still young and chances are that your PBX software won't support it.</para>
                         
@@ -692,16 +694,16 @@
                     			<varlistentry>
                         			<term><guilabel>Send Hello Hash in SDP</guilabel></term>
                         				<listitem><para>Selecting this option will cause the program to compute an hash function over the "Hello" packet and send it as an SDP field "zrtp-hash:". The remote end might be interested in getting this value to add an additional layer of protection based on another communication channel. Upon receiving this value, the remote point can compute the hash function on the received hello packet and compare it.</para>
-                        				<para>Take note that for 0.9.7, SFLPhone does not perform the comparasion on its side.</para></listitem>
+                        				<para>Take note that for 0.9.7, SFLphone does not perform the comparison on its side.</para></listitem>
 								</varlistentry>
                         
                         		<varlistentry>
 									<term><guilabel>Ask user to confirm SAS</guilabel></term>
-                        			<listitem><para>The short authentication mechanism is at the heart of the ZRTP protocol. Not requirering the user to manually check the SAS value presents a security risk over Man in the Middle type of attacks.</para>
+                        			<listitem><para>The short authentication mechanism is at the heart of the ZRTP protocol. Not requiring the user to manually check the SAS value presents a security risk over Man in the Middle type of attacks.</para>
                         
                         			<para>Disabling this option will stop the program from prompting the user with the SAS.</para>
                         
-                        			<para>Such an option was motivated to be developped at that time by the the state of the libzrtpcpp library that SFLPhone was making use of. It is only from version x.x that this library can cache results of SAS computation between two peers.</para>
+                        			<para>Such an option was motivated to be developed at that time by the the state of the libzrtpcpp library that SFLphone was making use of. It is only from version x.x that this library can cache results of SAS computation between two peers.</para>
 									</listitem>
 								</varlistentry>
                         
@@ -729,7 +731,7 @@
 <sect1 id="audio_interfaces">
 	<title>Audio configuration</title>
 	<para>
-		ALSA and Pulseaudio native interfaces are available.
+		ALSA and PulseAudio native interfaces are available.
 	</para> 
 
     <sect2 label="Pulseaudio">
@@ -745,13 +747,13 @@
 
 <sect1 id="codecs_overview">
 	<title>Codecs overview</title>
-	<para>SFLphone supports several widely used audio codec:</para>
+	<para>SFLphone supports several widely used audio codecs:</para>
         <para>
           <itemizedlist>
             <listitem>
               <guilabel>PCMU/PCMA</guilabel>
                 <para>
-		  ITU-T telefony standard PCM formats, 8kHz, 64
+		  ITU-T telephony standard PCM formats, 8kHz, 64
 		  kbit/s, using logarithmic byte compression algorithm.
                 </para>
             </listitem>
@@ -772,7 +774,7 @@
               <guilabel>SPEEX</guilabel>
               <para>
 		High quality voice encoding/decoding available
-		in narrowband 8Khz, wideband 16khz (HD Voice), 
+		in narrowband 8kHz, wideband 16kHz (HD Voice), 
 		and ultra-wideband 32 kHz. 
 		Integrate additional features such as Variable Bit
 		Rate (VBR) and noise reduction. 
@@ -910,7 +912,7 @@
 			<varlistentry>
                 <term><guilabel>Enable voicemail notifications</guilabel></term>
                 <listitem><para>
-					The voicemail notifications are handled separatly. If checked, you will be notified with the number of unread voicemails for your accounts.
+					The voicemail notifications are handled separately. If checked, you will be notified with the number of unread voicemails for your accounts.
 				</para>
 				<figure id="voicemail-notif-fig">
             <title>Example of a voicemail notification</title>
diff --git a/sflphone-client-gnome/globals.mak b/sflphone-client-gnome/globals.mak
index 027c152adb7defd6cd9acbf4a3f1d593e5fe2e78..8fe5ee180b5b23c08aaff4dda0927d41bdbdeb32 100644
--- a/sflphone-client-gnome/globals.mak
+++ b/sflphone-client-gnome/globals.mak
@@ -18,5 +18,6 @@ AM_CPPFLAGS =		$(DEPS_CFLAGS)										\
 					-DSYSCONFDIR=\""$(sysconfdir)"\"					\
 					-DDATADIR=\""$(datadir)"\"							\
 					-DLIBDIR=\""$(libdir)"\"							\
+					-DLOCALEDIR=\""$(localedir)"\"							\
 					-DSFLPHONE_UIDIR=\""$(datadir)/sflphone/ui"\"
 
diff --git a/sflphone-client-gnome/src/actions.c b/sflphone-client-gnome/src/actions.c
index 7d8eb3eb07b5335e146011295b8b5842f9bb7cc4..2166de53872f45add3fd6f9a661245d093958193 100644
--- a/sflphone-client-gnome/src/actions.c
+++ b/sflphone-client-gnome/src/actions.c
@@ -1104,7 +1104,7 @@ sflphone_fill_codec_list()
     }
     if( codec_list_get_size() == 0) {
 
-        gchar* markup = g_markup_printf_escaped(_("<b>Error: No audio codecs found.\n\n</b> SFL audio codecs have to be placed in <i>%s</i> or in the <b>.sflphone</b> directory in your home( <i>%s</i> )") , CODECS_DIR , g_get_home_dir());
+        gchar* markup = g_markup_printf_escaped(_("<b>No audio codecs found.</b>\n\nSFL audio codecs have to be placed in <i>%s</i> or in the <b>.sflphone</b> directory in your home (<i>%s</i>)"), CODECS_DIR, g_get_home_dir());
         main_window_error_message( markup );
         dbus_unregister(getpid());
         exit(0);
diff --git a/sflphone-client-gnome/src/contacts/calltree.c b/sflphone-client-gnome/src/contacts/calltree.c
index e416a295867a6aa641d296f685378f7e05446115..0838bacd8e50d2c25eb2b671ab9bb3ed4b857235 100644
--- a/sflphone-client-gnome/src/contacts/calltree.c
+++ b/sflphone-client-gnome/src/contacts/calltree.c
@@ -1464,13 +1464,66 @@ static void drag_end_cb(GtkWidget * widget, GdkDragContext * context, gpointer d
 	GtkTreeIter iter;
 	GtkTreeIter iter_parent;
 	GtkTreeIter iter_children;
-	GtkTreeIter parent_conference;
+	GtkTreeIter parent_conference; // conference for which this call is attached
 
 	GValue val;
 
+	callable_obj_t* call;
 	conference_obj_t* conf;
 
 
+	// Make sure that drag n drop does not imply a dialing call
+	if(selected_type == A_CALL && selected_call->_state == CALL_STATE_DIALING) {
+ 
+	    DEBUG("Dragged a call on a dialing call");
+
+	    calltree_remove_call(current_calls, selected_call, NULL);
+	    calltree_add_call(current_calls, selected_call, NULL);
+	    return;
+	}
+	
+	else if(selected_type == A_CALL) {
+
+	    // user may have dragged it outside the conference
+	    if(dragged_call && dragged_call->_state == CALL_STATE_DIALING) {
+
+	        calltree_remove_call(current_calls, dragged_call, NULL);
+
+		DEBUG("Dragged a call on a dialing call");
+
+		// test if call participate to a conference
+		if(selected_call->_confID) {
+
+	            gtk_tree_path_up(spath);
+		    gtk_tree_model_get_iter(GTK_TREE_MODEL(model), &parent_conference, path);
+		
+		    calltree_add_call(current_calls, selected_call, &parent_conference);
+		}
+		else {
+	            calltree_add_call(current_calls, selected_call, NULL);
+		}
+
+		calltree_add_call(current_calls, dragged_call, NULL);
+		return;
+
+	    }
+
+	}
+	else if(selected_type == A_CONFERENCE) {
+
+	    DEBUG("Dragged a conference on a dialing call");
+
+	    if(dragged_call && dragged_call->_state == CALL_STATE_DIALING) {
+
+		conf = selected_conf;
+
+		calltree_remove_conference(current_calls, conf, NULL);
+		calltree_add_conference(current_calls, conf);
+		return;
+	    } 
+	}
+
+
 	if(selected_path_depth == 1) {
 
 	    if(dragged_path_depth == 1) {
diff --git a/sflphone-client-gnome/src/dbus/dbus.c b/sflphone-client-gnome/src/dbus/dbus.c
index 3a5798348a546e97f7b9a10c5ea83f6b42c87f1f..a00c4134f1b84cbddfc48a72941137d63e880427 100644
--- a/sflphone-client-gnome/src/dbus/dbus.c
+++ b/sflphone-client-gnome/src/dbus/dbus.c
@@ -1195,7 +1195,7 @@ dbus_codec_list()
 {
 
     GError *error = NULL;
-    gchar** array;
+    gchar** array = NULL;
     org_sflphone_SFLphone_ConfigurationManager_get_codec_list (
             configurationManagerProxy,
             &array,
diff --git a/sflphone-client-gnome/src/main.c b/sflphone-client-gnome/src/main.c
index 2a8b7ca5a9af5e5f43a1392be2a37def3dbfec23..fffd9a831b849f5b91b4c97625bd9ff1f2d7f156 100644
--- a/sflphone-client-gnome/src/main.c
+++ b/sflphone-client-gnome/src/main.c
@@ -84,7 +84,7 @@ There is NO WARRANTY, to the extent permitted by law.\n\n");
   srand(time(NULL));
 
   // Internationalization
-  bindtextdomain("sflphone-client-gnome", "/usr/share/locale");
+  bindtextdomain("sflphone-client-gnome", LOCALEDIR);
   textdomain("sflphone-client-gnome");
 
   // Initialises the GNOME libraries
diff --git a/sflphone-client-gnome/src/mainwindow.c b/sflphone-client-gnome/src/mainwindow.c
index 12b7ecedc0787bc6c76c6d7bab255ea8c973661f..8218938509eddeb310adac4d2670abdd0eaa3b67 100644
--- a/sflphone-client-gnome/src/mainwindow.c
+++ b/sflphone-client-gnome/src/mainwindow.c
@@ -291,11 +291,10 @@ main_window_message(GtkMessageType type, gchar * markup){
 			GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
 			type,
 			GTK_BUTTONS_CLOSE,
-			"%s\n",
-			markup);
-
+			NULL);
 
 	gtk_window_set_title(GTK_WINDOW(dialog), _("SFLphone Error"));
+	gtk_message_dialog_set_markup(GTK_MESSAGE_DIALOG(dialog), markup);
 
 	gtk_dialog_run (GTK_DIALOG(dialog));
 	gtk_widget_destroy (GTK_WIDGET(dialog));
diff --git a/sflphone-common/src/managerimpl.cpp b/sflphone-common/src/managerimpl.cpp
index 8fc1c7b7963ab8ee42d4b08908c28c83954d4e52..1576022cae09f341ca61333c9fb74a93ffef2996 100644
--- a/sflphone-common/src/managerimpl.cpp
+++ b/sflphone-common/src/managerimpl.cpp
@@ -697,12 +697,31 @@ ManagerImpl::transferCall (const CallID& call_id, const std::string& to)
 
     CallID current_call_id = getCurrentCallId();
 
-    /* Direct IP to IP call */
+    if (participToConference (call_id)) {
+
+        _debug("Particip to a conference\n");
+
+        Conference *conf = getConferenceFromCallID (call_id);
+
+        if (conf != NULL) {
+            // remove this participant
+            removeParticipant (call_id);
+
+            processRemainingParticipant (current_call_id, conf);
+        }
+    } else {
+
+        _debug("Do not Particip to a conference\n");
+
+        // we are not participating to a conference, current call switched to ""
+        if (!isConference (current_call_id))
+            switchCall ("");
+    }
 
+    /* Direct IP to IP call */
     if (getConfigFromCall (call_id) == Call::IPtoIP) {
         returnValue = SIPVoIPLink::instance (AccountNULL)-> transfer (call_id, to);
     }
-
     /* Classic call, attached to an account */
     else {
         accountid = getAccountFromCall (call_id);
@@ -719,22 +738,6 @@ ManagerImpl::transferCall (const CallID& call_id, const std::string& to)
 
     removeWaitingCall (call_id);
 
-    if (participToConference (call_id)) {
-
-        Conference *conf = getConferenceFromCallID (call_id);
-
-        if (conf != NULL) {
-            // remove this participant
-            removeParticipant (call_id);
-
-            processRemainingParticipant (current_call_id, conf);
-        }
-    } else {
-        // we are not participating to a conference, current call switched to ""
-        if (!isConference (current_call_id))
-            switchCall ("");
-    }
-
     if (_dbus) _dbus->getCallManager()->callStateChanged (call_id, "HUNGUP");
 
     return returnValue;
@@ -1009,12 +1012,15 @@ ManagerImpl::participToConference (const CallID& call_id)
     accountId = getAccountFromCall (call_id);
     call = getAccountLink (accountId)->getCall (call_id);
 
-    if (call == NULL)
+    if (call == NULL) {
         return false;
 
+    }
+
     if (call->getConfId() == "") {
         return false;
     } else {
+        
         return true;
     }
 }