Commit 0a51b53c authored by Simon Morlat's avatar Simon Morlat
Browse files

Merge remote-tracking branch 'public/master' into belle-sip

parents 313fbaa6 cf65a0f6
......@@ -2,24 +2,64 @@ This is Linphone, a free (GPL) video softphone based on the SIP protocol.
******************Building linphone ***********************************
- Install build time dependencies
- libtool
- intltool
- you need at least:
- libosip2>=3.0.3
- libeXosip2>=3.0.3
- speex>=1.2.0 (including libspeexdsp part)
- libreadline (optional: for convenient command line in linphonec)
+ gsm codec (gsm source package or libgsm-dev or gsm-devel) (optional)
+ if you want to gtk/glade interface:
- gtk>=2.16.0
- libosip2>=3.0.3
- libeXosip2>=3.0.3
- speex>=1.2.0 (including libspeexdsp part)
+ if you want the gtk/glade interface:
- libgtk >=2.16.0
+ if you want video support:
- SDL>=1.2.10
- libavcodec (ffmpeg)
- libswscale (part of ffmpeg too) for better scaling performance
- libxv (x11 video extension)
- ligl1-mesa (OpenGL API -- GLX development files)
- libglew (OpenGL Extension Wrangler library)
- libv4l (Video for linux)
- libx11 (x11)
- theora (optional)
+ if you want uPnP support:
+ gsm codec (gsm source package or libgsm-dev or gsm-devel) (optional)
+ libreadline (optional: for convenient command line in linphonec)
+ libsoup (optional: for wizard - account creation assistant)
+ libsqlite3 (optional : for a local history of messages)
+ if you want uPnP support (optional):
- libupnp (version 1.6 branch (not patched with 18-url-upnpstrings.patch))
+ Install srtp (optional) for call encryption :
$ git clone git://git.linphone.org/srtp.git
$ cd srtp && autoconf && ./configure && make
$ sudo make install
+ Install zrtpcpp (optional), for unbreakable call encryption
$ sudo apt-get install cmake libssl-dev
$ git clone git://git.linphone.org/zrtpcpp.git
$ cd zrtpcpp && cmake -Denable-ccrtp=false . && make
$ sudo make install
with their corresponding -dev or -devel package if you don't use source packages.
- Compile linphone
$ ./autogen.sh
$ ./configure
$ make && sudo make install
$ sudo ldconfig
- Command line for Ubuntu && Debian
$ sudo apt-get install libtool intltool libgtk2.0-dev libosip2-dev libexosip2-dev libspeexdsp-dev libavcodec-dev libswscale-dev libx11-dev libvx-dev ligl1-mesa-dev libglew-dev libv4l-dev
+ for optional library
$ sudo apt-get install libreadline-dev liggsm1-dev libtheora-dev libsoup2.4-dev libsqlit3-dev libupnp6-dev
For windows compilation see README.mingw.
For macOS X, see README.macos
......
......@@ -97,10 +97,12 @@ LOCAL_STATIC_LIBRARIES := \
libortp \
libbellesip \
libgsm
ifeq ($(BUILD_REMOTE_PROVISIONING),1)
LOCAL_STATIC_LIBRARIES += \
libxml2lpc \
liblpc2xml
liblpc2xml \
liblpxml2
endif
ifeq ($(BUILD_TUNNEL),1)
......
......@@ -39,7 +39,6 @@ LOCAL_C_INCLUDES = \
$(LOCAL_PATH)/../../externals/build/libxml2 \
LOCAL_SHARED_LIBRARIES = \
libxml2
# liblinphonenoneon \
# liblinphone \
......
......@@ -39,7 +39,6 @@ LOCAL_C_INCLUDES = \
$(LOCAL_PATH)/../../externals/build/libxml2 \
LOCAL_SHARED_LIBRARIES = \
libxml2
# liblinphonenoneon \
# liblinphone \
......
......@@ -4986,26 +4986,6 @@ void linphone_core_play_dtmf(LinphoneCore *lc, char dtmf, int duration_ms){
else ms_filter_call_method(f, MS_DTMF_GEN_START, &dtmf);
}
/**
* @ingroup media_parameters
* Plays a repeated tone to the local user until next further call to #linphone_core_stop_dtmf()
* @param lc #LinphoneCore
**/
void linphone_core_play_tone(LinphoneCore *lc){
MSFilter *f=get_dtmf_gen(lc);
MSDtmfGenCustomTone def;
if (f==NULL){
ms_error("No dtmf generator at this time !");
return;
}
memset(&def,0,sizeof(def));
def.duration=300;
def.frequencies[0]=500;
def.amplitude=1;
def.interval=2000;
ms_filter_call_method(f, MS_DTMF_GEN_PLAY_CUSTOM,&def);
}
void linphone_core_play_named_tone(LinphoneCore *lc, LinphoneToneID toneid){
if (linphone_core_tone_indications_enabled(lc)){
MSFilter *f=get_dtmf_gen(lc);
......
......@@ -2400,6 +2400,7 @@ int sal_register_refresh(SalOp *op, int expires){
* the exosip lock in a non blocking way, and give up if it takes too long*/
while (eXosip_trylock()!=0){
ms_usleep(100000);
tries++;
if (tries>30) {/*after 3 seconds, give up*/
ms_warning("Could not obtain exosip lock in a reasonable time, giving up.");
return -1;
......
......@@ -30,6 +30,7 @@ pt_BR: Rafael Caesar Lenzi <rc_lenzi@yahoo.com.br>
pl: Robert Nasiadek <darkone@darkone.pl>
cs: Petr Pisar <petr.pisar@atlas.cz>
hu: anonymous
he: Eli Zaretskii <eliz@gnu.org>
</property>
<property name="artists">Icons by kerosine.fr</property>
<signal name="response" handler="linphone_gtk_about_response"/>
......
......@@ -62,6 +62,7 @@ void linphone_gtk_quit_chatroom(LinphoneChatRoom *cr) {
GtkWidget *friendlist=linphone_gtk_get_widget(main_window,"contact_list");
GtkWidget *w=g_object_get_data(G_OBJECT(friendlist),"chatview");
gchar *from;
GHashTable *table=g_object_get_data(G_OBJECT(w),"table");
g_return_if_fail(w!=NULL);
gtk_notebook_remove_page(GTK_NOTEBOOK(nb),gtk_notebook_page_num(GTK_NOTEBOOK(nb),w));
......@@ -72,6 +73,7 @@ void linphone_gtk_quit_chatroom(LinphoneChatRoom *cr) {
g_object_set_data(G_OBJECT(w),"from_message",NULL);
g_free(from);
}
g_hash_table_destroy(table);
g_object_set_data(G_OBJECT(w),"cr",NULL);
g_object_set_data(G_OBJECT(friendlist),"from",NULL);
gtk_widget_destroy(w);
......@@ -134,7 +136,7 @@ void linphone_gtk_push_text(GtkWidget *w, const LinphoneAddress *from,
int off;
char *from_str=linphone_address_as_string_uri_only(from);
gchar *from_message=(gchar *)g_object_get_data(G_OBJECT(w),"from_message");
GList *list=g_object_get_data(G_OBJECT(w),"list");
GHashTable *table=(GHashTable*)g_object_get_data(G_OBJECT(w),"table");
time_t t;
char buf[80];
time_t tnow;
......@@ -165,10 +167,10 @@ void linphone_gtk_push_text(GtkWidget *w, const LinphoneAddress *from,
switch (linphone_chat_message_get_state (msg)){
case LinphoneChatMessageStateInProgress:
{
list=g_list_append(list,GINT_TO_POINTER(gtk_text_iter_get_line(&iter)));
g_hash_table_insert(table,(gpointer)msg,GINT_TO_POINTER(gtk_text_iter_get_line(&iter)));
gtk_text_buffer_insert_with_tags_by_name(buffer,&iter,"Sending .. ",-1,
"right","small","italic","font_grey","bg",NULL);
g_object_set_data(G_OBJECT(w),"list",list);
g_object_set_data(G_OBJECT(w),"table",table);
break;
}
case LinphoneChatMessageStateDelivered:
......@@ -213,7 +215,7 @@ void update_chat_state_message(LinphoneChatMessageState state,LinphoneChatMessag
GtkWidget *main_window=linphone_gtk_get_main_window();
GtkWidget *friendlist=linphone_gtk_get_widget(main_window,"contact_list");
GtkWidget *page=(GtkWidget*)g_object_get_data(G_OBJECT(friendlist),"chatview");
GList *list=g_object_get_data(G_OBJECT(page),"list");
GHashTable *table=(GHashTable*)g_object_get_data(G_OBJECT(page),"table");
if(page!=NULL){
GtkTextView *text=GTK_TEXT_VIEW(linphone_gtk_get_widget(page,"textview"));
......@@ -222,21 +224,20 @@ void update_chat_state_message(LinphoneChatMessageState state,LinphoneChatMessag
GtkTextIter end;
GtkTextIter start;
gchar *result;
gint line;
line=GPOINTER_TO_INT(g_hash_table_lookup(table,msg));
gtk_text_buffer_get_iter_at_line(b,&iter,
GPOINTER_TO_INT(g_list_nth_data(list,0)));
gtk_text_buffer_get_iter_at_line(b,&iter,line);
if(gtk_text_iter_get_chars_in_line(&iter) >0) {
gtk_text_buffer_get_iter_at_line_offset(b,&start,
GPOINTER_TO_INT(g_list_nth_data(list,0)),
gtk_text_iter_get_chars_in_line(&iter)-1);
gtk_text_buffer_get_iter_at_line_offset(b,&start,line,
gtk_text_iter_get_chars_in_line(&iter)-1);
}else{
gtk_text_buffer_get_iter_at_line_offset(b,&start,
GPOINTER_TO_INT(g_list_nth_data(list,0)),0);
gtk_text_buffer_get_iter_at_line_offset(b,&start,line,0);
}
gtk_text_buffer_get_iter_at_line_offset(b,&end,
GPOINTER_TO_INT(g_list_nth_data(list,0)),0);
gtk_text_buffer_get_iter_at_line_offset(b,&end,line,0);
gtk_text_buffer_delete(b,&start,&end);
gtk_text_buffer_get_iter_at_line(b,&iter,GPOINTER_TO_INT(g_list_nth_data(list,0)));
gtk_text_buffer_get_iter_at_line(b,&iter,line);
switch (state) {
case LinphoneChatMessageStateInProgress:
result="Sending ";
......@@ -251,14 +252,14 @@ void update_chat_state_message(LinphoneChatMessageState state,LinphoneChatMessag
break;
}
case LinphoneChatMessageStateNotDelivered:
result="Error ";
result="Message not sent";
break;
default : result="Sending ..";
}
gtk_text_buffer_insert_with_tags_by_name(b,&iter,result,-1,
"right","small","italic","font_grey","bg",NULL);
list=g_list_remove(list,g_list_nth_data(list,0));
g_object_set_data(G_OBJECT(page),"list",list);
g_hash_table_remove(table,msg);
g_object_set_data(G_OBJECT(page),"table",table);
}
}
......@@ -320,7 +321,6 @@ void display_history_message(GtkWidget *chat_view,MSList *messages,const Linphon
}
void linphone_gtk_chat_add_contact(const LinphoneAddress *addr){
//LinphoneAddress *addr=(LinphoneAddress *)data;
LinphoneFriend *lf=NULL;
char *uri=linphone_address_as_string(addr);
lf=linphone_friend_new_with_addr(uri);
......@@ -352,8 +352,8 @@ GtkWidget* linphone_gtk_init_chatroom(LinphoneChatRoom *cr, const LinphoneAddres
int idx;
GtkWidget *button;
GtkWidget *entry;
GList *list=NULL;
MSList *messages;
GHashTable *table;
char *with_str;
color.red = 32512;
......@@ -372,9 +372,10 @@ GtkWidget* linphone_gtk_init_chatroom(LinphoneChatRoom *cr, const LinphoneAddres
idx = gtk_notebook_page_num(notebook, chat_view);
gtk_notebook_set_current_page(notebook, idx);
gtk_widget_show(chat_view);
table=g_hash_table_new_full(g_direct_hash,g_direct_equal,NULL,NULL);
g_object_set_data(G_OBJECT(chat_view),"cr",cr);
g_object_set_data(G_OBJECT(chat_view),"from_message",NULL);
g_object_set_data(G_OBJECT(chat_view),"list",list);
g_object_set_data(G_OBJECT(chat_view),"table",table);
gtk_text_buffer_create_tag(gtk_text_view_get_buffer(GTK_TEXT_VIEW(text)),
"right","justification", GTK_JUSTIFY_RIGHT,NULL);
gtk_text_buffer_create_tag(gtk_text_view_get_buffer(GTK_TEXT_VIEW(text)),
......
......@@ -701,9 +701,11 @@ void linphone_gtk_in_call_view_set_in_call(LinphoneCall *call){
if (in_conf){
linphone_gtk_set_in_conference(call);
gtk_widget_set_sensitive(linphone_gtk_get_widget(callview,"incall_mute"),FALSE);
gtk_widget_set_sensitive(linphone_gtk_get_widget(callview,"hold_call"),FALSE);
}else{
linphone_gtk_unset_from_conference(call); /*in case it was previously*/
gtk_widget_set_sensitive(linphone_gtk_get_widget(callview,"incall_mute"),TRUE);
gtk_widget_set_sensitive(linphone_gtk_get_widget(callview,"hold_call"),TRUE);
}
gtk_widget_show_all(linphone_gtk_get_widget(callview,"buttons_panel"));
if (!in_conf) gtk_widget_show_all(linphone_gtk_get_widget(callview,"record_hbox"));
......@@ -758,10 +760,11 @@ void linphone_gtk_in_call_view_terminate(LinphoneCall *call, const char *error_m
gtk_widget_hide(linphone_gtk_get_widget(callview,"record_hbox"));
gtk_widget_hide(linphone_gtk_get_widget(callview,"buttons_panel"));
gtk_widget_hide(linphone_gtk_get_widget(callview,"incall_audioview"));
gtk_widget_hide(linphone_gtk_get_widget(callview,"quality_indicator"));
linphone_gtk_enable_mute_button(
GTK_BUTTON(linphone_gtk_get_widget(callview,"incall_mute")),FALSE);
linphone_gtk_enable_hold_button(call,FALSE,TRUE);
if (taskid!=0) g_source_remove(taskid);
g_timeout_add_seconds(2,(GSourceFunc)in_call_view_terminated,call);
if (in_conf)
......
......@@ -7,6 +7,16 @@
<property name="can_focus">False</property>
<property name="stock">gtk-add</property>
</object>
<object class="GtkImage" id="add_image1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="stock">gtk-add</property>
</object>
<object class="GtkImage" id="add_image2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="stock">gtk-add</property>
</object>
<object class="GtkWindow" id="dummy_callee_frame">
<property name="can_focus">False</property>
<child>
......@@ -701,6 +711,16 @@
<property name="can_focus">False</property>
<property name="stock">gtk-edit</property>
</object>
<object class="GtkImage" id="edit_image1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="stock">gtk-edit</property>
</object>
<object class="GtkImage" id="edit_image2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="stock">gtk-edit</property>
</object>
<object class="GtkImage" id="image1">
<property name="visible">True</property>
<property name="can_focus">False</property>
......@@ -751,11 +771,21 @@
<property name="can_focus">False</property>
<property name="stock">gtk-select-color</property>
</object>
<object class="GtkImage" id="image19">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="stock">gtk-add</property>
</object>
<object class="GtkImage" id="image2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="stock">gtk-refresh</property>
</object>
<object class="GtkImage" id="image20">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="stock">gtk-add</property>
</object>
<object class="GtkImage" id="image3">
<property name="visible">True</property>
<property name="can_focus">False</property>
......@@ -1088,9 +1118,9 @@
</packing>
</child>
<child>
<object class="GtkHBox" id="hbox">
<object class="GtkHPaned" id="central_paned">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="can_focus">True</property>
<child>
<object class="GtkVBox" id="vbox12">
<property name="visible">True</property>
......@@ -1144,16 +1174,14 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="has_tooltip">True</property>
<child>
<object class="GtkButton" id="add_button">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="tooltip_text" translatable="yes">Add</property>
<property name="resize_mode">immediate</property>
<property name="use_action_appearance">False</property>
<property name="image">add_image</property>
<property name="image">add_image2</property>
<property name="xalign">1</property>
<signal name="clicked" handler="linphone_gtk_add_button_clicked" swapped="no"/>
</object>
......@@ -1168,9 +1196,8 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="tooltip_text" translatable="yes">Edit</property>
<property name="use_action_appearance">False</property>
<property name="image">edit_image</property>
<property name="image">edit_image2</property>
<signal name="clicked" handler="linphone_gtk_edit_button_clicked" swapped="no"/>
</object>
<packing>
......@@ -1185,7 +1212,7 @@
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="use_action_appearance">False</property>
<property name="image">remove_image</property>
<property name="image">remove_image2</property>
<signal name="clicked" handler="linphone_gtk_remove_button_clicked" swapped="no"/>
</object>
<packing>
......@@ -1203,10 +1230,8 @@
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="padding">6</property>
<property name="position">0</property>
<property name="resize">False</property>
<property name="shrink">False</property>
</packing>
</child>
<child>
......@@ -1353,7 +1378,7 @@
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="use_action_appearance">False</property>
<property name="image">image16</property>
<property name="image">image20</property>
<signal name="clicked" handler="linphone_gtk_add_contact" swapped="no"/>
</object>
<packing>
......@@ -1467,10 +1492,8 @@
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="padding">6</property>
<property name="position">1</property>
<property name="resize">True</property>
<property name="shrink">True</property>
</packing>
</child>
</object>
......@@ -1529,13 +1552,6 @@
<property name="use_action_appearance">False</property>
<property name="relief">none</property>
<signal name="clicked" handler="on_proxy_refresh_button_clicked" swapped="no"/>
<child>
<object class="GtkImage" id="image20">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="stock">gtk-refresh</property>
</object>
</child>
</object>
<packing>
<property name="expand">True</property>
......@@ -1880,4 +1896,16 @@
<property name="tooltip_text" translatable="yes">Delete</property>
<property name="stock">gtk-remove</property>
</object>
<object class="GtkImage" id="remove_image1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="tooltip_text" translatable="yes">Delete</property>
<property name="stock">gtk-remove</property>
</object>
<object class="GtkImage" id="remove_image2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="tooltip_text" translatable="yes">Delete</property>
<property name="stock">gtk-remove</property>
</object>
</interface>
This diff is collapsed.
......@@ -131,6 +131,13 @@ void linphone_gtk_update_my_port(GtkWidget *w){
linphone_core_set_sip_transports(lc,&tr);
}
void linphone_gtk_set_propety_entry(GtkWidget *w, gboolean stunServer, gboolean ip){
GtkWidget *stun_entry=linphone_gtk_get_widget(gtk_widget_get_toplevel(w),"stun_server");
GtkWidget *ip_entry=linphone_gtk_get_widget(gtk_widget_get_toplevel(w),"nat_address");
gtk_widget_set_sensitive(stun_entry,stunServer);
gtk_widget_set_sensitive(ip_entry,ip);
}
void linphone_gtk_stun_server_changed(GtkWidget *w){
const gchar *addr=gtk_entry_get_text(GTK_ENTRY(w));
linphone_core_set_stun_server(linphone_gtk_get_core(),addr);
......@@ -217,28 +224,38 @@ void linphone_gtk_max_video_port_changed(GtkWidget *w){
}
void linphone_gtk_no_firewall_toggled(GtkWidget *w){
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(w)))
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(w))){
linphone_gtk_set_propety_entry(w,FALSE,FALSE);
linphone_core_set_firewall_policy(linphone_gtk_get_core(),LinphonePolicyNoFirewall);
}
}
void linphone_gtk_use_nat_address_toggled(GtkWidget *w){
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(w)))
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(w))){
linphone_gtk_set_propety_entry(w,FALSE,TRUE);
linphone_core_set_firewall_policy(linphone_gtk_get_core(),LinphonePolicyUseNatAddress);
}
}
void linphone_gtk_use_stun_toggled(GtkWidget *w){
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(w)))
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(w))){
linphone_gtk_set_propety_entry(w,TRUE,FALSE);
linphone_core_set_firewall_policy(linphone_gtk_get_core(),LinphonePolicyUseStun);
}
}
void linphone_gtk_use_ice_toggled(GtkWidget *w){
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(w)))
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(w))){
linphone_gtk_set_propety_entry(w,TRUE,FALSE);
linphone_core_set_firewall_policy(linphone_gtk_get_core(),LinphonePolicyUseIce);
}
}
void linphone_gtk_use_upnp_toggled(GtkWidget *w){
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(w)))
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(w))){
linphone_gtk_set_propety_entry(w,FALSE,FALSE);
linphone_core_set_firewall_policy(linphone_gtk_get_core(),LinphonePolicyUseUpnp);
}
}
void linphone_gtk_mtu_changed(GtkWidget *w){
......
mediastreamer2 @ 3acaa737
Subproject commit 2720ab1d1568ced6f0bf63e454a35f340d8ace64
Subproject commit 3acaa7372423ffb0d18923e9e41e1076cec51905
pixmaps/contact_unstarred.png

3.17 KB | W: | H:

pixmaps/contact_unstarred.png

2.83 KB | W: | H:

pixmaps/contact_unstarred.png
pixmaps/contact_unstarred.png
pixmaps/contact_unstarred.png
pixmaps/contact_unstarred.png
  • 2-up
  • Swipe
  • Onion skin
pixmaps/startcall-small.png

3.78 KB | W: | H:

pixmaps/startcall-small.png

3.64 KB | W: | H:

pixmaps/startcall-small.png
pixmaps/startcall-small.png
pixmaps/startcall-small.png
pixmaps/startcall-small.png
  • 2-up
  • Swipe
  • Onion skin
......@@ -17,7 +17,7 @@ msgid ""
msgstr ""
"Project-Id-Version: linphone-3.4.99.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2013-04-08 16:59+0200\n"
"POT-Creation-Date: 2013-04-24 14:04+0200\n"
"PO-Revision-Date: 2011-11-04 22:30+0100\n"
"Last-Translator: Petr Pisar <petr.pisar@atlas.cz>\n"
"Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n"
......@@ -109,7 +109,7 @@ msgstr "Já"
msgid "Couldn't find pixmap file: %s"
msgstr "Nelze najít soubor s obrázkem: %s"
#: ../gtk/chat.c:324 ../gtk/friendlist.c:872
#: ../gtk/chat.c:336 ../gtk/friendlist.c:872
msgid "Invalid sip contact !"
msgstr "Neplatný sipový kontakt!"
......@@ -176,11 +176,11 @@ msgstr ""
msgid "Call error"
msgstr "Chyba hovoru"
#: ../gtk/main.c:1129 ../coreapi/linphonecore.c:3189
#: ../gtk/main.c:1129 ../coreapi/linphonecore.c:3210
msgid "Call ended"
msgstr "Hovor ukončen"
#: ../gtk/main.c:1132 ../coreapi/linphonecore.c:239
#: ../gtk/main.c:1132 ../coreapi/linphonecore.c:240
msgid "Incoming call"
msgstr "Příchozí hovor"
......@@ -1512,19 +1512,19 @@ msgstr "2"
msgid "1"
msgstr "1"
#: ../coreapi/linphonecore.c:227
#: ../coreapi/linphonecore.c:228
msgid "aborted"
msgstr "přerušen"
#: ../coreapi/linphonecore.c:230
#: ../coreapi/linphonecore.c:231
msgid "completed"
msgstr "dokončen"
#: ../coreapi/linphonecore.c:233
#: ../coreapi/linphonecore.c:234
msgid "missed"
msgstr "promeškán"
#: ../coreapi/linphonecore.c:238
#: ../coreapi/linphonecore.c:239
#, c-format
msgid ""
"%s at %s\n"
......@@ -1539,70 +1539,70 @@ msgstr ""
"Stav: %s\n"
"Délka: %i min %i s\n"
#: ../coreapi/linphonecore.c:239
#: ../coreapi/linphonecore.c:240
msgid "Outgoing call"
msgstr "Odchozí hovor"
#: ../coreapi/linphonecore.c:1312
#: ../coreapi/linphonecore.c:1321
msgid "Ready"
msgstr "Připraven."
#: ../coreapi/linphonecore.c:2184
#: ../coreapi/linphonecore.c:2205
msgid "Looking for telephone number destination..."
msgstr "Vyhledává se umístění čísla…"
#: ../coreapi/linphonecore.c:2187
#: ../coreapi/linphonecore.c:2208
msgid "Could not resolve this number."
msgstr "Toto číslo nelze vyhledat."
#: ../coreapi/linphonecore.c:2231