Using libDesktop to handle client messages

This commit is contained in:
Pierre Pronchery 2012-01-01 13:33:51 +00:00
parent ab1562f06e
commit 364c2d1f18
4 changed files with 154 additions and 168 deletions

158
po/fr.po
View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Phone 0.0.0\n" "Project-Id-Version: Phone 0.0.0\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-12-30 21:04+0100\n" "POT-Creation-Date: 2012-01-01 14:31+0100\n"
"PO-Revision-Date: 2010-04-24 02:07+0200\n" "PO-Revision-Date: 2010-04-24 02:07+0200\n"
"Last-Translator: Pierre Pronchery <khorben@defora.org>\n" "Last-Translator: Pierre Pronchery <khorben@defora.org>\n"
"Language-Team: DeforaOS development (French) <devel-fr@lists.defora.org>\n" "Language-Team: DeforaOS development (French) <devel-fr@lists.defora.org>\n"
@ -27,317 +27,317 @@ msgstr ""
" -m\tNom du greffon modem à charger\n" " -m\tNom du greffon modem à charger\n"
" -r\tDélai entre deux tentatives d'accès au modem (ms)\n" " -r\tDélai entre deux tentatives d'accès au modem (ms)\n"
#: ../src/phone.c:357 #: ../src/phone.c:359
msgid "All" msgid "All"
msgstr "Tous" msgstr "Tous"
#: ../src/phone.c:358 #: ../src/phone.c:360
msgid "Inbox" msgid "Inbox"
msgstr "Reçus" msgstr "Reçus"
#: ../src/phone.c:359 #: ../src/phone.c:361
msgid "Sent" msgid "Sent"
msgstr "Envoyés" msgstr "Envoyés"
#: ../src/phone.c:360 #: ../src/phone.c:362
msgid "Drafts" msgid "Drafts"
msgstr "Brouillons" msgstr "Brouillons"
#: ../src/phone.c:361 #: ../src/phone.c:363
msgid "Trash" msgid "Trash"
msgstr "Corbeille" msgstr "Corbeille"
#: ../src/phone.c:508 ../src/phone.c:2639 #: ../src/phone.c:512 ../src/phone.c:2638
msgid "System preferences" msgid "System preferences"
msgstr "Préférences système" msgstr "Préférences système"
#: ../src/phone.c:519 ../src/phone.c:2062 #: ../src/phone.c:523 ../src/phone.c:2061
msgid "Plug-ins" msgid "Plug-ins"
msgstr "Greffons" msgstr "Greffons"
#: ../src/phone.c:669 #: ../src/phone.c:673
#, c-format #, c-format
msgid "Checking %s..." msgid "Checking %s..."
msgstr "Vérification %s..." msgstr "Vérification %s..."
#: ../src/phone.c:732 #: ../src/phone.c:736
msgid "Delete this contact?" msgid "Delete this contact?"
msgstr "Supprimer ce contact?" msgstr "Supprimer ce contact?"
#: ../src/phone.c:1130 ../src/phone.c:1296 #: ../src/phone.c:1134 ../src/phone.c:1300
msgid "Delete this message?" msgid "Delete this message?"
msgstr "Supprimer ce message?" msgstr "Supprimer ce message?"
#: ../src/phone.c:1136 ../src/phone.c:1301 #: ../src/phone.c:1140 ../src/phone.c:1305
msgid "Deleting message..." msgid "Deleting message..."
msgstr "Suppression du message..." msgstr "Suppression du message..."
#: ../src/phone.c:1385 #: ../src/phone.c:1389
msgid "translator-credits" msgid "translator-credits"
msgstr "Pierre Pronchery <khorben@defora.org>" msgstr "Pierre Pronchery <khorben@defora.org>"
#: ../src/phone.c:1432 #: ../src/phone.c:1436
msgid "Unknown contact" msgid "Unknown contact"
msgstr "Contact inconnu" msgstr "Contact inconnu"
#: ../src/phone.c:1435 #: ../src/phone.c:1439
msgid "Unknown number" msgid "Unknown number"
msgstr "Numéro inconnu" msgstr "Numéro inconnu"
#: ../src/phone.c:1454 #: ../src/phone.c:1458
msgid "In conversation" msgid "In conversation"
msgstr "En conversation" msgstr "En conversation"
#: ../src/phone.c:1465 #: ../src/phone.c:1469
msgid "Incoming call" msgid "Incoming call"
msgstr "Appel entrant" msgstr "Appel entrant"
#: ../src/phone.c:1475 #: ../src/phone.c:1479
msgid "Outgoing call" msgid "Outgoing call"
msgstr "Appel sortant" msgstr "Appel sortant"
#: ../src/phone.c:1486 #: ../src/phone.c:1490
msgid "Call finished" msgid "Call finished"
msgstr "Appel terminé" msgstr "Appel terminé"
#: ../src/phone.c:1520 #: ../src/phone.c:1524
msgid "_Answer" msgid "_Answer"
msgstr "_Répondre" msgstr "_Répondre"
#: ../src/phone.c:1525 #: ../src/phone.c:1529
msgid "_Hangup" msgid "_Hangup"
msgstr "Ra_ccrocher" msgstr "Ra_ccrocher"
#: ../src/phone.c:1530 #: ../src/phone.c:1534
msgid "_Reject" msgid "_Reject"
msgstr "Re_jeter" msgstr "Re_jeter"
#: ../src/phone.c:1551 #: ../src/phone.c:1555
msgid "Loudspeaker" msgid "Loudspeaker"
msgstr "Haut-parleur" msgstr "Haut-parleur"
#: ../src/phone.c:1559 #: ../src/phone.c:1563
msgid "Mute microphone" msgid "Mute microphone"
msgstr "Couper le microphone" msgstr "Couper le microphone"
#: ../src/phone.c:1567 #: ../src/phone.c:1571
msgid "Show dialer" msgid "Show dialer"
msgstr "Afficher le cadran" msgstr "Afficher le cadran"
#: ../src/phone.c:1608 #: ../src/phone.c:1612
#, c-format #, c-format
msgid "Enter %s" msgid "Enter %s"
msgstr "Entrer %s" msgstr "Entrer %s"
#: ../src/phone.c:1651 #: ../src/phone.c:1655
msgid "Enter" msgid "Enter"
msgstr "Entrer" msgstr "Entrer"
#: ../src/phone.c:1653 #: ../src/phone.c:1657
msgid "Skip" msgid "Skip"
msgstr "Ignorer" msgstr "Ignorer"
#: ../src/phone.c:1681 #: ../src/phone.c:1685
msgid "Contacts" msgid "Contacts"
msgstr "Contacts" msgstr "Contacts"
#: ../src/phone.c:1687 ../src/phone.c:1806 ../src/phone.c:1842 #: ../src/phone.c:1691 ../src/phone.c:1805 ../src/phone.c:1841
#: ../src/phone.c:1957 ../src/phone.c:2315 #: ../src/phone.c:1956 ../src/phone.c:2314
msgid "Call" msgid "Call"
msgstr "Appeler" msgstr "Appeler"
#: ../src/phone.c:1693 #: ../src/phone.c:1697
msgid "Write" msgid "Write"
msgstr "Écrire" msgstr "Écrire"
#: ../src/phone.c:1735 ../src/phone.c:2093 ../src/phone.c:2426 #: ../src/phone.c:1739 ../src/phone.c:2092 ../src/phone.c:2425
msgid "Name" msgid "Name"
msgstr "Nom" msgstr "Nom"
#: ../src/phone.c:1781 #: ../src/phone.c:1785
msgid "Dialer" msgid "Dialer"
msgstr "Composer" msgstr "Composer"
#: ../src/phone.c:1808 #: ../src/phone.c:1807
msgid "Hang up" msgid "Hang up"
msgstr "Raccrocher" msgstr "Raccrocher"
#: ../src/phone.c:1836 #: ../src/phone.c:1835
msgid "Phone logs" msgid "Phone logs"
msgstr "Journal d'appels" msgstr "Journal d'appels"
#: ../src/phone.c:1848 #: ../src/phone.c:1847
msgid "Message" msgid "Message"
msgstr "Message" msgstr "Message"
#: ../src/phone.c:1879 #: ../src/phone.c:1878
msgid "Direction" msgid "Direction"
msgstr "Direction" msgstr "Direction"
#: ../src/phone.c:1884 ../src/phone.c:2003 #: ../src/phone.c:1883 ../src/phone.c:2002
msgid "To/From" msgid "To/From"
msgstr "Vers/De" msgstr "Vers/De"
#: ../src/phone.c:1890 ../src/phone.c:2011 #: ../src/phone.c:1889 ../src/phone.c:2010
msgid "Date" msgid "Date"
msgstr "Date" msgstr "Date"
#: ../src/phone.c:1951 #: ../src/phone.c:1950
msgid "Messages" msgid "Messages"
msgstr "Messages" msgstr "Messages"
#: ../src/phone.c:1962 #: ../src/phone.c:1961
msgid "New message" msgid "New message"
msgstr "Nouveau message" msgstr "Nouveau message"
#: ../src/phone.c:1968 ../src/phone.c:2321 #: ../src/phone.c:1967 ../src/phone.c:2320
msgid "Reply" msgid "Reply"
msgstr "Répondre" msgstr "Répondre"
#: ../src/phone.c:2081 #: ../src/phone.c:2080
msgid "Enabled" msgid "Enabled"
msgstr "Activé" msgstr "Activé"
#: ../src/phone.c:2309 #: ../src/phone.c:2308
msgid "Read message" msgid "Read message"
msgstr "Lire le message" msgstr "Lire le message"
#: ../src/phone.c:2327 #: ../src/phone.c:2326
msgid "Forward" msgid "Forward"
msgstr "Transmettre" msgstr "Transmettre"
#: ../src/phone.c:2401 #: ../src/phone.c:2400
msgid "Telephony settings" msgid "Telephony settings"
msgstr "Paramètres de téléphonie" msgstr "Paramètres de téléphonie"
#: ../src/phone.c:2478 #: ../src/phone.c:2477
msgid "missed calls" msgid "missed calls"
msgstr "appels manqués" msgstr "appels manqués"
#: ../src/phone.c:2478 #: ../src/phone.c:2477
msgid "missed call" msgid "missed call"
msgstr "appel manqué" msgstr "appel manqué"
#: ../src/phone.c:2487 #: ../src/phone.c:2486
msgid "new messages" msgid "new messages"
msgstr "nouveaux messages" msgstr "nouveaux messages"
#: ../src/phone.c:2488 #: ../src/phone.c:2487
msgid "new message" msgid "new message"
msgstr "nouveau message" msgstr "nouveau message"
#: ../src/phone.c:2506 ../src/phone.c:3463 ../src/phone.c:3467 #: ../src/phone.c:2505 ../src/phone.c:3462 ../src/phone.c:3466
msgid "Information" msgid "Information"
msgstr "Information" msgstr "Information"
#: ../src/phone.c:2516 #: ../src/phone.c:2515
msgid "Status" msgid "Status"
msgstr "État" msgstr "État"
#: ../src/phone.c:2540 #: ../src/phone.c:2539
msgid "_View" msgid "_View"
msgstr "_Vue" msgstr "_Vue"
#: ../src/phone.c:2559 #: ../src/phone.c:2558
msgid "_Read" msgid "_Read"
msgstr "_Lire" msgstr "_Lire"
#: ../src/phone.c:2699 #: ../src/phone.c:2698
msgid "Open file..." msgid "Open file..."
msgstr "Ouvrir fichier..." msgstr "Ouvrir fichier..."
#: ../src/phone.c:2882 #: ../src/phone.c:2881
msgid "Write message" msgid "Write message"
msgstr "Écrire un message" msgstr "Écrire un message"
#: ../src/phone.c:2888 #: ../src/phone.c:2887
msgid "Send" msgid "Send"
msgstr "Envoyer" msgstr "Envoyer"
#: ../src/phone.c:2894 #: ../src/phone.c:2893
msgid "Attach" msgid "Attach"
msgstr "Joindre" msgstr "Joindre"
#: ../src/phone.c:3010 #: ../src/phone.c:3009
msgid "Attach file..." msgid "Attach file..."
msgstr "Joindre un fichier..." msgstr "Joindre un fichier..."
#: ../src/phone.c:3082 #: ../src/phone.c:3081
#, c-format #, c-format
msgid "%d message%s, %d/%d characters" msgid "%d message%s, %d/%d characters"
msgstr "%d message%s, %d/%d caractères" msgstr "%d message%s, %d/%d caractères"
#: ../src/phone.c:3083 #: ../src/phone.c:3082
msgid "s" msgid "s"
msgstr "s" msgstr "s"
#: ../src/phone.c:3147 #: ../src/phone.c:3146
msgid "Sending message..." msgid "Sending message..."
msgstr "Envoi du message..." msgstr "Envoi du message..."
#: ../src/phone.c:3182 #: ../src/phone.c:3181
msgid "Outgoing" msgid "Outgoing"
msgstr "Sortant" msgstr "Sortant"
#: ../src/phone.c:3368 #: ../src/phone.c:3367
msgid "Operation in progress..." msgid "Operation in progress..."
msgstr "Opération en cours..." msgstr "Opération en cours..."
#: ../src/phone.c:3408 ../src/phone.c:3412 #: ../src/phone.c:3407 ../src/phone.c:3411
msgid "Question" msgid "Question"
msgstr "Question" msgstr "Question"
#: ../src/phone.c:3432 ../src/phone.c:3436 #: ../src/phone.c:3431 ../src/phone.c:3435
msgid "Error" msgid "Error"
msgstr "Erreur" msgstr "Erreur"
#: ../src/phone.c:3665 #: ../src/phone.c:3664
msgid "Name: " msgid "Name: "
msgstr "Nom: " msgstr "Nom: "
#: ../src/phone.c:3674 #: ../src/phone.c:3673
msgid "Number: " msgid "Number: "
msgstr "Numéro: " msgstr "Numéro: "
#: ../src/phone.c:3690 #: ../src/phone.c:3689
msgid "New contact" msgid "New contact"
msgstr "Nouveau contact" msgstr "Nouveau contact"
#: ../src/phone.c:3692 #: ../src/phone.c:3691
msgid "Edit contact: " msgid "Edit contact: "
msgstr "Modifier contact: " msgstr "Modifier contact: "
#: ../src/phone.c:3719 #: ../src/phone.c:3718
msgid "The name cannot be empty" msgid "The name cannot be empty"
msgstr "Le nom ne peut être vide" msgstr "Le nom ne peut être vide"
#: ../src/phone.c:3724 #: ../src/phone.c:3723
msgid "The number cannot be empty" msgid "The number cannot be empty"
msgstr "Le numéro ne peut être vide" msgstr "Le numéro ne peut être vide"
#: ../src/phone.c:3858 #: ../src/phone.c:3857
msgid "Message sent" msgid "Message sent"
msgstr "Message envoyé" msgstr "Message envoyé"
#: ../src/phone.c:3888 #: ../src/phone.c:3887
#, c-format #, c-format
msgid "Wrong %s" msgid "Wrong %s"
msgstr "Mauvais %s" msgstr "Mauvais %s"
#: ../src/phone.c:3891 #: ../src/phone.c:3890
msgid "Authentication failed" msgid "Authentication failed"
msgstr "Échec lors de l'authentification" msgstr "Échec lors de l'authentification"
#: ../src/phone.c:3900 #: ../src/phone.c:3899
#, c-format #, c-format
msgid "%s is valid" msgid "%s is valid"
msgstr "%s valide" msgstr "%s valide"
#: ../src/phone.c:3963 #: ../src/phone.c:3962
msgid "Raw data (not shown)" msgid "Raw data (not shown)"
msgstr "Données brutes (non affichées)" msgstr "Données brutes (non affichées)"
#: ../src/phone.c:3999 #: ../src/phone.c:3998
msgid "Message deleted" msgid "Message deleted"
msgstr "Message effacé" msgstr "Message effacé"

View File

@ -1,5 +1,5 @@
/* $Id$ */ /* $Id$ */
/* Copyright (c) 2011 Pierre Pronchery <khorben@defora.org> */ /* Copyright (c) 2012 Pierre Pronchery <khorben@defora.org> */
/* This file is part of DeforaOS Desktop Phone */ /* This file is part of DeforaOS Desktop Phone */
/* This program is free software: you can redistribute it and/or modify /* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
@ -32,85 +32,6 @@ gboolean on_phone_closex(gpointer data)
} }
/* on_phone_filter */
static GdkFilterReturn _filter_message_power_management(Phone * phone,
PhoneMessagePowerManagement what);
static GdkFilterReturn _filter_message_show(Phone * phone,
PhoneMessageShow what, gboolean show);
GdkFilterReturn on_phone_filter(GdkXEvent * xevent, GdkEvent * event,
gpointer data)
{
Phone * phone = data;
XEvent * xev = xevent;
XClientMessageEvent * xclient = &xev->xclient;
PhoneMessage message;
if(xev->type != ClientMessage)
return GDK_FILTER_CONTINUE;
if(xclient->message_type != gdk_x11_get_xatom_by_name(
PHONE_CLIENT_MESSAGE))
return GDK_FILTER_CONTINUE;
message = xclient->data.b[0];
switch(message)
{
case PHONE_MESSAGE_POWER_MANAGEMENT:
return _filter_message_power_management(phone,
xclient->data.b[1]);
case PHONE_MESSAGE_SHOW:
return _filter_message_show(phone, xclient->data.b[1],
xclient->data.b[2]);
}
return GDK_FILTER_CONTINUE;
}
static GdkFilterReturn _filter_message_power_management(Phone * phone,
PhoneMessagePowerManagement what)
{
switch(what)
{
case PHONE_MESSAGE_POWER_MANAGEMENT_RESUME:
phone_event_type(phone, PHONE_EVENT_TYPE_RESUME);
break;
case PHONE_MESSAGE_POWER_MANAGEMENT_SUSPEND:
phone_event_type(phone, PHONE_EVENT_TYPE_SUSPEND);
break;
}
return GDK_FILTER_CONTINUE;
}
static GdkFilterReturn _filter_message_show(Phone * phone,
PhoneMessageShow what, gboolean show)
{
switch(what)
{
case PHONE_MESSAGE_SHOW_ABOUT:
phone_show_about(phone, show);
break;
case PHONE_MESSAGE_SHOW_CONTACTS:
phone_show_contacts(phone, show);
break;
case PHONE_MESSAGE_SHOW_DIALER:
phone_show_dialer(phone, show);
break;
case PHONE_MESSAGE_SHOW_LOGS:
phone_show_logs(phone, show);
break;
case PHONE_MESSAGE_SHOW_MESSAGES:
phone_show_messages(phone, show,
MODEM_MESSAGE_FOLDER_INBOX);
break;
case PHONE_MESSAGE_SHOW_SETTINGS:
phone_show_settings(phone, show);
break;
case PHONE_MESSAGE_SHOW_WRITE:
phone_show_write(phone, show, NULL, NULL);
break;
}
return GDK_FILTER_CONTINUE;
}
/* calls */ /* calls */
/* on_phone_call_answer */ /* on_phone_call_answer */
void on_phone_call_answer(gpointer data) void on_phone_call_answer(gpointer data)

View File

@ -1,5 +1,5 @@
/* $Id$ */ /* $Id$ */
/* Copyright (c) 2010 Pierre Pronchery <khorben@defora.org> */ /* Copyright (c) 2012 Pierre Pronchery <khorben@defora.org> */
/* This file is part of DeforaOS Desktop Phone */ /* This file is part of DeforaOS Desktop Phone */
/* This program is free software: you can redistribute it and/or modify /* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
@ -23,8 +23,6 @@
/* callbacks */ /* callbacks */
gboolean on_phone_closex(gpointer data); gboolean on_phone_closex(gpointer data);
GdkFilterReturn on_phone_filter(GdkXEvent * xevent, GdkEvent * event,
gpointer data);
/* calls */ /* calls */
void on_phone_call_answer(gpointer data); void on_phone_call_answer(gpointer data);

View File

@ -1,6 +1,6 @@
/* $Id$ */ /* $Id$ */
static char _copyright[] = static char _copyright[] =
"Copyright (c) 2011 DeforaOS Project <contact@defora.org>"; "Copyright (c) 2012 DeforaOS Project <contact@defora.org>";
/* This file is part of DeforaOS Desktop Phone */ /* This file is part of DeforaOS Desktop Phone */
static char const _license[] = static char const _license[] =
"This program is free software: you can redistribute it and/or modify\n" "This program is free software: you can redistribute it and/or modify\n"
@ -342,6 +342,8 @@ static int _phone_unload(Phone * phone, PhonePlugin * plugin);
static void _phone_modem_event(void * priv, ModemEvent * event); static void _phone_modem_event(void * priv, ModemEvent * event);
static void _phone_modem_event_authentication(GtkWidget * widget, gint response, static void _phone_modem_event_authentication(GtkWidget * widget, gint response,
gpointer data); gpointer data);
static int _phone_on_message(void * data, uint32_t value1, uint32_t value2,
uint32_t value3);
static gboolean _phone_timeout_track(gpointer data); static gboolean _phone_timeout_track(gpointer data);
@ -452,6 +454,8 @@ Phone * phone_new(char const * plugin, int retry)
phone_delete(phone); phone_delete(phone);
return NULL; return NULL;
} }
desktop_message_register(PHONE_CLIENT_MESSAGE, _phone_on_message,
phone);
phone->source = g_idle_add(_new_idle, phone); phone->source = g_idle_add(_new_idle, phone);
modem_set_callback(phone->modem, _phone_modem_event, phone); modem_set_callback(phone->modem, _phone_modem_event, phone);
return phone; return phone;
@ -1781,11 +1785,6 @@ static void _show_dialer_window(Phone * phone)
gtk_window_set_title(GTK_WINDOW(phone->di_window), _("Dialer")); gtk_window_set_title(GTK_WINDOW(phone->di_window), _("Dialer"));
g_signal_connect(phone->di_window, "delete-event", G_CALLBACK( g_signal_connect(phone->di_window, "delete-event", G_CALLBACK(
on_phone_closex), NULL); on_phone_closex), NULL);
#if !GTK_CHECK_VERSION(3, 0, 0)
gdk_display_add_client_message_filter(gdk_display_get_default(),
gdk_atom_intern(PHONE_CLIENT_MESSAGE, FALSE),
on_phone_filter, phone);
#endif
vbox = gtk_vbox_new(FALSE, 4); vbox = gtk_vbox_new(FALSE, 4);
/* entry */ /* entry */
hbox = gtk_hbox_new(FALSE, 4); hbox = gtk_hbox_new(FALSE, 4);
@ -4061,6 +4060,74 @@ static void _phone_modem_event_authentication(GtkWidget * widget, gint response,
} }
/* phone_on_message */
static int _message_power_management(Phone * phone,
PhoneMessagePowerManagement what);
static int _message_show(Phone * phone, PhoneMessageShow what, gboolean show);
static int _phone_on_message(void * data, uint32_t value1, uint32_t value2,
uint32_t value3)
{
Phone * phone = data;
PhoneMessage message;
message = value1;
switch(message)
{
case PHONE_MESSAGE_POWER_MANAGEMENT:
return _message_power_management(phone, value2);
case PHONE_MESSAGE_SHOW:
return _message_show(phone, value2, value3);
}
return GDK_FILTER_CONTINUE;
}
static int _message_power_management(Phone * phone,
PhoneMessagePowerManagement what)
{
switch(what)
{
case PHONE_MESSAGE_POWER_MANAGEMENT_RESUME:
phone_event_type(phone, PHONE_EVENT_TYPE_RESUME);
break;
case PHONE_MESSAGE_POWER_MANAGEMENT_SUSPEND:
phone_event_type(phone, PHONE_EVENT_TYPE_SUSPEND);
break;
}
return 0;
}
static int _message_show(Phone * phone, PhoneMessageShow what, gboolean show)
{
switch(what)
{
case PHONE_MESSAGE_SHOW_ABOUT:
phone_show_about(phone, show);
break;
case PHONE_MESSAGE_SHOW_CONTACTS:
phone_show_contacts(phone, show);
break;
case PHONE_MESSAGE_SHOW_DIALER:
phone_show_dialer(phone, show);
break;
case PHONE_MESSAGE_SHOW_LOGS:
phone_show_logs(phone, show);
break;
case PHONE_MESSAGE_SHOW_MESSAGES:
phone_show_messages(phone, show,
MODEM_MESSAGE_FOLDER_INBOX);
break;
case PHONE_MESSAGE_SHOW_SETTINGS:
phone_show_settings(phone, show);
break;
case PHONE_MESSAGE_SHOW_WRITE:
phone_show_write(phone, show, NULL, NULL);
break;
}
return 0;
}
/* phone_timeout_track */ /* phone_timeout_track */
static gboolean _phone_timeout_track(gpointer data) static gboolean _phone_timeout_track(gpointer data)
{ {