r3361 - in trunk/src/target/OM-2007.2/applications/openmoko-dialer2: . src/phone-kit

thomas at sita.openmoko.org thomas at sita.openmoko.org
Mon Nov 5 16:32:01 CET 2007


Author: thomas
Date: 2007-11-05 16:31:59 +0100 (Mon, 05 Nov 2007)
New Revision: 3361

Modified:
   trunk/src/target/OM-2007.2/applications/openmoko-dialer2/ChangeLog
   trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-dialer.c
   trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-talking.c
Log:
* src/phone-kit/moko-dialer.c: (moko_dialer_dial),
(moko_dialer_init):
- Remove any GTK+ dependencies
- Actually dial the requested number

* src/phone-kit/moko-talking.c: (moko_talking_incoming_call),
(moko_talking_outgoing_call), (on_silence_clicked),
(on_cancel_clicked), (moko_talking_class_init),
(moko_talking_init):
- Cancel or reject call if the main window is closed.
- Hide the window when cancel and rejecting calls


Modified: trunk/src/target/OM-2007.2/applications/openmoko-dialer2/ChangeLog
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-dialer2/ChangeLog	2007-11-05 12:45:42 UTC (rev 3360)
+++ trunk/src/target/OM-2007.2/applications/openmoko-dialer2/ChangeLog	2007-11-05 15:31:59 UTC (rev 3361)
@@ -1,3 +1,17 @@
+2007-11-05  Thomas Wood  <thomas at openedhand.com>
+
+	* src/phone-kit/moko-dialer.c: (moko_dialer_dial),
+	(moko_dialer_init):
+	- Remove any GTK+ dependencies
+	- Actually dial the requested number
+
+	* src/phone-kit/moko-talking.c: (moko_talking_incoming_call),
+	(moko_talking_outgoing_call), (on_silence_clicked),
+	(on_cancel_clicked), (moko_talking_class_init),
+	(moko_talking_init):
+	- Cancel or reject call if the main window is closed.
+	- Hide the window when cancel and rejecting calls
+
 2007-11-01  Thomas Wood  <thomas at openedhand.com>
 
 	* src/dialer/dialer-main.c: (dial_clicked_cb), (main):

Modified: trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-dialer.c
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-dialer.c	2007-11-05 12:45:42 UTC (rev 3360)
+++ trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-dialer.c	2007-11-05 15:31:59 UTC (rev 3361)
@@ -17,8 +17,6 @@
  *  Current Version: $Rev$ ($Date$) [$Author$]
  */
 
-#include <gtk/gtk.h>
-
 #include <stdio.h>
 #include <string.h>
 #include <stdlib.h>
@@ -96,7 +94,7 @@
 gboolean
 moko_dialer_dial (MokoDialer *dialer, const gchar *number, GError *error)
 {
-  GtkWidget *dlg;
+
   MokoDialerPrivate *priv;
   MokoContactEntry *entry = NULL;
 
@@ -115,14 +113,16 @@
       "Dialing",
       "Outgoing Call"
     };
+	/*
+	GtkWidget *dlg;
     dlg = gtk_message_dialog_new (NULL, 0, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,
         "Cannot dial when dialer is busy.\nCurrent status = %s", strings[priv->status]);
     gtk_dialog_run (GTK_DIALOG (dlg));
     gtk_widget_destroy (dlg);
+    */
+    g_warning ("Cannot dial when dialer is busy. Current status = %s\n", strings[priv->status]);
 
-    g_warning ("Cannot dial when dialer is busy: %d\n", priv->status);
-
-    return;
+    return FALSE;
   }
   priv->status = DIALER_STATUS_DIALING;
 
@@ -131,6 +131,7 @@
       && priv->registered != MOKO_GSMD_CONNECTION_NETREG_ROAMING
       && priv->registered != MOKO_GSMD_CONNECTION_NETREG_DENIED)
   {
+
     gchar *strings[] = {
       "None",
       "Home network registered",
@@ -139,15 +140,18 @@
       "",
       "Roaming network registered"
     };
-
+      /*
+	GtkWidget *dlg;
     dlg = gtk_message_dialog_new (NULL, 0, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,
         "Not connected to network.\nCurrent status = %s ", strings[priv->registered]);
     gtk_dialog_run (GTK_DIALOG (dlg));
     gtk_widget_destroy (dlg);
+	*/
+	g_warning ("Not connected to network.\nCurrent status = %s ", strings[priv->registered]);
 
     /* no point continuing if we're not connected to a network! */
     priv->status = DIALER_STATUS_NORMAL;
-    return;
+    return FALSE;
   }
 
   entry = moko_contacts_lookup (moko_contacts_get_default (), number);
@@ -159,15 +163,15 @@
     priv->time = moko_time_new_today ();
     moko_journal_entry_set_direction (priv->entry, DIRECTION_IN);
     moko_journal_entry_set_dtstart (priv->entry, priv->time);
-    moko_journal_entry_set_source (priv->entry, "Openmoko Dialer");
+    moko_journal_entry_set_source (priv->entry, "OpenMoko Dialer");
     moko_journal_voice_info_set_distant_number (priv->entry, number);
     if (entry && entry->contact->uid)
       moko_journal_entry_set_contact_uid (priv->entry, entry->contact->uid);
   }
   moko_talking_outgoing_call (MOKO_TALKING (priv->talking), number, entry);
 
+  moko_gsmd_connection_voice_dial (MOKO_GSMD_CONNECTION (priv->connection), number);
 
-
   return TRUE;
 }
 
@@ -745,47 +749,7 @@
   g_signal_connect (G_OBJECT (priv->talking), "speaker_toggle",
                     G_CALLBACK (on_talking_speaker_toggle), (gpointer)dialer);
 
-  /* Create the window */
-#if 0
-  priv->window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
-  g_signal_connect (G_OBJECT (priv->window), "delete-event",
-                    (GCallback) gtk_widget_hide_on_delete, NULL);
-  gtk_window_set_title (GTK_WINDOW (priv->window), "Dialer");
 
-  /* Notebook */
-  priv->notebook = gtk_notebook_new ();
-  gtk_notebook_set_tab_pos (GTK_NOTEBOOK (priv->notebook), GTK_POS_BOTTOM);
-  gtk_container_add (GTK_CONTAINER (priv->window), priv->notebook);
-
-
-  /* Keypad */
-  priv->keypad = moko_keypad_new ();
-  g_signal_connect (G_OBJECT (priv->keypad), "dial_number",
-                    G_CALLBACK (on_keypad_dial_clicked), (gpointer)dialer);
-  g_signal_connect (G_OBJECT (priv->keypad), "pin_entry",
-                    G_CALLBACK (on_keypad_pin_entry), (gpointer)dialer);
-  g_signal_connect (G_OBJECT (priv->keypad), "digit_pressed",
-                    G_CALLBACK (on_keypad_digit_pressed), (gpointer)dialer);
-  gtk_notebook_append_page (GTK_NOTEBOOK (priv->notebook), priv->keypad,
-                            gtk_image_new_from_file (PKGDATADIR"/dtmf.png"));
-  gtk_container_child_set (GTK_CONTAINER (priv->notebook), priv->keypad,
-                          "tab-expand", TRUE,
-                          NULL);
-
-  /* History */
-  priv->history = moko_history_new (priv->journal);
-  g_signal_connect (G_OBJECT (priv->history), "dial_number",
-                    G_CALLBACK (on_history_dial_number), (gpointer)dialer);
-  gtk_notebook_append_page (GTK_NOTEBOOK (priv->notebook), priv->history,
-                            gtk_image_new_from_stock (MOKO_STOCK_CALL_HISTORY,
-                                                      GTK_ICON_SIZE_BUTTON));
-  gtk_container_child_set (GTK_CONTAINER (priv->notebook), priv->history,
-                           "tab-expand", TRUE,
-                           NULL);
-
-  gtk_widget_show_all (priv->notebook);
-  gtk_notebook_set_current_page (GTK_NOTEBOOK (priv->notebook), 0);
-#endif
 }
 
 MokoDialer*
@@ -794,7 +758,7 @@
   static MokoDialer *dialer = NULL;
   if (dialer)
     return dialer;
-  
+
   dialer = g_object_new (MOKO_TYPE_DIALER, NULL);
 
   return dialer;

Modified: trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-talking.c
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-talking.c	2007-11-05 12:45:42 UTC (rev 3360)
+++ trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-talking.c	2007-11-05 15:31:59 UTC (rev 3361)
@@ -32,6 +32,12 @@
 
 #define N_PICS 5
 
+enum
+{
+  CALL_DIRECTION_INCOMING,
+  CALL_DIRECTION_OUTGOING
+};
+
 struct _MokoTalkingPrivate
 {
   MokoJournal        *journal;
@@ -54,6 +60,8 @@
 
   GTimer             *dtimer;
   guint               timeout;
+  
+  gint                call_direction;
 };
 
 enum
@@ -145,6 +153,7 @@
   priv->timeout = g_timeout_add (1000, 
                                  (GSourceFunc)incoming_timeout,
                                  (gpointer)talking);
+  priv->call_direction = CALL_DIRECTION_OUTGOING;
   gtk_window_present (GTK_WINDOW (priv->window));
 }
 
@@ -205,6 +214,7 @@
                                  (gpointer)talking);
 
   g_free (markup);
+  priv->call_direction = CALL_DIRECTION_OUTGOING;
   gtk_window_present (GTK_WINDOW (priv->window));
 }
 
@@ -315,6 +325,8 @@
   /* stop call duration timer */
   if (talking->priv->dtimer)
     g_timer_destroy(talking->priv->dtimer);
+  
+  gtk_widget_hide (talking->priv->window);
 
   g_source_remove (talking->priv->timeout);
   moko_sound_profile_set(SOUND_PROFILE_STEREO_OUT);
@@ -397,6 +409,18 @@
   g_type_class_add_private (obj_class, sizeof (MokoTalkingPrivate)); 
 }
 
+static gboolean
+window_delete_event_cb (GtkWidget *widget, GdkEvent  *event, MokoTalking *talking)
+{
+  MokoTalkingPrivate *priv = MOKO_TALKING_GET_PRIVATE (talking);
+  if (priv->call_direction == CALL_DIRECTION_INCOMING)
+	on_reject_clicked (NULL, talking);
+  else
+	on_cancel_clicked (NULL, talking);
+  
+  return TRUE;
+}
+
 static void
 moko_talking_init (MokoTalking *talking)
 {
@@ -518,8 +542,10 @@
   }
 
   priv->window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+  g_signal_connect (priv->window, "delete-event", G_CALLBACK (window_delete_event_cb), talking);
+  gtk_container_add (GTK_CONTAINER (priv->window), main_vbox);
+  
   gtk_widget_show_all (main_vbox);
-  gtk_container_add (GTK_CONTAINER (priv->window), main_vbox);
 
 }
 





More information about the commitlog mailing list