r1966 - trunk/src/target/OM-2007/applications/openmoko-dialer/src

thomas at sita.openmoko.org thomas at sita.openmoko.org
Wed May 16 15:11:13 CEST 2007


Author: thomas
Date: 2007-05-16 15:11:12 +0200 (Wed, 16 May 2007)
New Revision: 1966

Modified:
   trunk/src/target/OM-2007/applications/openmoko-dialer/src/dialer-callbacks-connection.c
   trunk/src/target/OM-2007/applications/openmoko-dialer/src/dialer-callbacks-connection.h
   trunk/src/target/OM-2007/applications/openmoko-dialer/src/dialer-main.c
   trunk/src/target/OM-2007/applications/openmoko-dialer/src/dialer-window-incoming.c
   trunk/src/target/OM-2007/applications/openmoko-dialer/src/dialer-window-incoming.h
Log:
* openmoko-dialer/src/dialer-window-incoming.c:
* openmoko-dialer/src/dialer-callbacks-connection.c:
* openmoko-dialer/src/dialer-window-incoming.h:
* openmoko-dialer/src/dialer-callbacks-connection.h:
Implement incoming window responses and make use clip if available.

* openmoko-dialer/src/dialer-main.c: Move gtk initialisation to after single
* instance check. Add gsm power on and register functions.


Modified: trunk/src/target/OM-2007/applications/openmoko-dialer/src/dialer-callbacks-connection.c
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-dialer/src/dialer-callbacks-connection.c	2007-05-16 10:45:23 UTC (rev 1965)
+++ trunk/src/target/OM-2007/applications/openmoko-dialer/src/dialer-callbacks-connection.c	2007-05-16 13:11:12 UTC (rev 1966)
@@ -17,7 +17,8 @@
 }
 
 void
-incoming_clip_cb (MokoGsmdConnection *self, const char *number)
+incoming_clip_cb (MokoGsmdConnection *self, const char *number, MokoDialerData *data)
 {
   /* caller id */
+  window_incoming_update_message (data, number);
 }

Modified: trunk/src/target/OM-2007/applications/openmoko-dialer/src/dialer-callbacks-connection.h
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-dialer/src/dialer-callbacks-connection.h	2007-05-16 10:45:23 UTC (rev 1965)
+++ trunk/src/target/OM-2007/applications/openmoko-dialer/src/dialer-callbacks-connection.h	2007-05-16 13:11:12 UTC (rev 1966)
@@ -7,6 +7,6 @@
 
 void network_registration_cb (MokoGsmdConnection *self, int type, int lac, int cell);
 void incoming_call_cb (MokoGsmdConnection *self, int type, MokoDialerData *data);
-void incoming_clip_cb (MokoGsmdConnection *self, const char *number);
+void incoming_clip_cb (MokoGsmdConnection *self, const char *number, MokoDialerData *data);
 
 #endif

Modified: trunk/src/target/OM-2007/applications/openmoko-dialer/src/dialer-main.c
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-dialer/src/dialer-main.c	2007-05-16 10:45:23 UTC (rev 1965)
+++ trunk/src/target/OM-2007/applications/openmoko-dialer/src/dialer-main.c	2007-05-16 13:11:12 UTC (rev 1966)
@@ -144,9 +144,6 @@
 {
   pid_t lockapp;
 
-  /* Initialize GTK+ */
-  gtk_init (&argc, &argv);
-  moko_stock_register ();
 
   if (argc != 1)
   {
@@ -160,6 +157,7 @@
 
     g_option_context_free (context);
   }
+
   //FIXME: the following lines to enable unique instance will be changed.
   lockapp = testlock ("/tmp/dialer.lock");
   if (lockapp > 0)
@@ -169,6 +167,9 @@
   }
   setlock ("/tmp/dialer.lock");
 
+  /* Initialize GTK+ */
+  gtk_init (&argc, &argv);
+  moko_stock_register ();
 
   p_dialer_data = g_new0 (MokoDialerData, 1);
 
@@ -181,6 +182,9 @@
 
   /* Set up gsmd connection object */
   MokoGsmdConnection* conn = p_dialer_data->connection = moko_gsmd_connection_new ();
+  moko_gsmd_connection_set_antenna_power (conn, TRUE);
+  sleep (4); /* FIXME: this is horrible */
+  moko_gsmd_connection_network_register (conn);
   g_signal_connect (G_OBJECT (conn), "network-registration", (GCallback) network_registration_cb, p_dialer_data);
   g_signal_connect (G_OBJECT (conn), "incoming-call", (GCallback) incoming_call_cb, p_dialer_data);
   g_signal_connect (G_OBJECT (conn), "incoming-clip", (GCallback) incoming_clip_cb, p_dialer_data);

Modified: trunk/src/target/OM-2007/applications/openmoko-dialer/src/dialer-window-incoming.c
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-dialer/src/dialer-window-incoming.c	2007-05-16 10:45:23 UTC (rev 1965)
+++ trunk/src/target/OM-2007/applications/openmoko-dialer/src/dialer-window-incoming.c	2007-05-16 13:11:12 UTC (rev 1966)
@@ -209,14 +209,30 @@
   window = moko_message_dialog_new ();
 
   gtk_dialog_add_button (GTK_DIALOG (window), MOKO_STOCK_CALL_ANSWER, GTK_RESPONSE_OK);
-  gtk_dialog_add_button (GTK_DIALOG (window), MOKO_STOCK_CALL_REJECT, GTK_RESPONSE_OK);
-  moko_message_dialog_set_message (MOKO_MESSAGE_DIALOG (window), "Incoming Call");
+  gtk_dialog_add_button (GTK_DIALOG (window), MOKO_STOCK_CALL_REJECT, GTK_RESPONSE_CANCEL);
+  moko_message_dialog_set_message (MOKO_MESSAGE_DIALOG (window), "Incoming call");
 
 }
 
 void
 window_incoming_show (MokoDialerData *data)
 {
-  gtk_dialog_run (data->window_incoming);
+  if (gtk_dialog_run (GTK_DIALOG (data->window_incoming)) == GTK_RESPONSE_OK)
+  {
+    moko_gsmd_connection_voice_accept (data->connection);
+    /* dialer_window_talking_show (data); */
+    gtk_widget_show_all (data->window_talking);
+  }
+  else
+  {
+    moko_gsmd_connection_voice_hangup (data->connection);
+  }
+
   gtk_widget_hide (data->window_incoming);
 }
+
+void
+window_incoming_update_message (MokoDialerData *data, const gchar *clip)
+{
+  moko_message_dialog_set_message (MOKO_MESSAGE_DIALOG (data->window_incoming), "Incoming call from %s", clip);
+}

Modified: trunk/src/target/OM-2007/applications/openmoko-dialer/src/dialer-window-incoming.h
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-dialer/src/dialer-window-incoming.h	2007-05-16 10:45:23 UTC (rev 1965)
+++ trunk/src/target/OM-2007/applications/openmoko-dialer/src/dialer-window-incoming.h	2007-05-16 13:11:12 UTC (rev 1966)
@@ -24,5 +24,7 @@
 void window_incoming_init (MokoDialerData * p_dialer_data);
 void window_incoming_prepare (MokoDialerData * appdata);
 void window_incoming_show (MokoDialerData *data);
+void window_incoming_update_message (MokoDialerData *data, const gchar *clip);
 
+
 #endif





More information about the commitlog mailing list