r3314 - in trunk/src/target/OM-2007.2/applications/openmoko-dialer2: . src/phone-kit
thomas at sita.openmoko.org
thomas at sita.openmoko.org
Wed Oct 31 17:56:01 CET 2007
Author: thomas
Date: 2007-10-31 17:56:00 +0100 (Wed, 31 Oct 2007)
New Revision: 3314
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_hung_up),
(moko_dialer_rejected), (on_talking_reject_call),
(moko_dialer_init):
* src/phone-kit/moko-talking.c: (moko_talking_incoming_call),
(moko_talking_outgoing_call), (moko_talking_accepted_call),
(on_answer_clicked), (on_reject_clicked),
(moko_talking_class_init), (moko_talking_init):
Present a window for incoming call notification
Modified: trunk/src/target/OM-2007.2/applications/openmoko-dialer2/ChangeLog
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-dialer2/ChangeLog 2007-10-31 16:40:21 UTC (rev 3313)
+++ trunk/src/target/OM-2007.2/applications/openmoko-dialer2/ChangeLog 2007-10-31 16:56:00 UTC (rev 3314)
@@ -1,3 +1,15 @@
+2007-10-31 Thomas Wood <thos at openedhand.com>
+
+ * src/phone-kit/moko-dialer.c: (moko_dialer_hung_up),
+ (moko_dialer_rejected), (on_talking_reject_call),
+ (moko_dialer_init):
+ * src/phone-kit/moko-talking.c: (moko_talking_incoming_call),
+ (moko_talking_outgoing_call), (moko_talking_accepted_call),
+ (on_answer_clicked), (on_reject_clicked),
+ (moko_talking_class_init), (moko_talking_init):
+
+ Present a window for incoming call notification
+
2007-10-31 Thomas Wood <thomas at openedhand.com>
* src/dialer/dialer-main.c: Added to repository
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-10-31 16:40:21 UTC (rev 3313)
+++ trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-dialer.c 2007-10-31 16:56:00 UTC (rev 3314)
@@ -47,14 +47,8 @@
gint status;
gchar *incoming_clip;
- /* Main Widgets */
- GtkWidget *window;
- GtkWidget *notebook;
-
- /* Pages of the notebook */
+ /* handles user interaction */
GtkWidget *talking;
- GtkWidget *keypad;
- GtkWidget *history;
/* Special objects */
MokoGsmdConnection *connection;
@@ -152,9 +146,6 @@
priv->status = DIALER_STATUS_NORMAL;
- if (gtk_notebook_get_n_pages (GTK_NOTEBOOK (priv->notebook)) == 3)
- gtk_notebook_remove_page (GTK_NOTEBOOK (priv->notebook), 0);
-
moko_gsmd_connection_voice_hangup (priv->connection);
g_signal_emit (G_OBJECT (dialer), dialer_signals[HUNG_UP], 0);
@@ -167,17 +158,14 @@
g_return_if_fail (MOKO_IS_DIALER (dialer));
priv = dialer->priv;
-
+
priv->status = DIALER_STATUS_NORMAL;
/* Stop the notification */
- moko_notify_stop (priv->notify);
+ moko_notify_stop (priv->notify);
- if (gtk_notebook_get_n_pages (GTK_NOTEBOOK (priv->notebook)) == 3)
- gtk_notebook_remove_page (GTK_NOTEBOOK (priv->notebook), 0);
-
- moko_gsmd_connection_voice_hangup (priv->connection);
-
+ moko_gsmd_connection_voice_hangup (priv->connection);
+
g_signal_emit (G_OBJECT (dialer), dialer_signals[REJECTED], 0);
}
@@ -235,9 +223,7 @@
moko_gsmd_connection_voice_hangup (priv->connection);
priv->status = DIALER_STATUS_NORMAL;
-
- gtk_notebook_remove_page (GTK_NOTEBOOK (priv->notebook), 0);
-
+
/* Finalise and add the journal entry */
if (priv->journal && priv->entry)
{
@@ -266,7 +252,6 @@
moko_gsmd_connection_voice_hangup (priv->connection);
priv->status = DIALER_STATUS_NORMAL;
- gtk_notebook_remove_page (GTK_NOTEBOOK (priv->notebook), 0);
g_signal_emit (G_OBJECT (dialer), dialer_signals[HUNG_UP], 0);
}
@@ -385,16 +370,6 @@
/* Set up the user interface */
moko_talking_incoming_call (MOKO_TALKING (priv->talking), NULL, NULL);
- gtk_notebook_insert_page (GTK_NOTEBOOK (priv->notebook), priv->talking,
- gtk_image_new_from_file (PKGDATADIR"/phone.png"),
- 0);
- gtk_container_child_set (GTK_CONTAINER (priv->notebook), priv->talking,
- "tab-expand", TRUE,
- NULL);
- gtk_notebook_set_current_page (GTK_NOTEBOOK (priv->notebook), 0);
-
- gtk_window_present (GTK_WINDOW (priv->window));
-
/* Start the notification */
moko_notify_start (priv->notify);
@@ -688,21 +663,8 @@
/* Load the notification object */
priv->notify = moko_notify_new ();
- /* Create the window */
- 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);
-
- /* Talking: We don't actually add it to the notebook yet, as it is only added
- * as/when needed. Therefore we just create it, and ref it (so it will
- * survive reparenting.
- */
+ /* Talking: This is the object that handles interaction with the user */
priv->talking = moko_talking_new (priv->journal);
g_object_ref (G_OBJECT (priv->talking));
gtk_widget_show_all (priv->talking);
@@ -716,7 +678,20 @@
G_CALLBACK (on_talking_silence), (gpointer)dialer);
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",
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-10-31 16:40:21 UTC (rev 3313)
+++ trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-talking.c 2007-10-31 16:56:00 UTC (rev 3314)
@@ -25,7 +25,7 @@
#include "moko-sound.h"
#include "moko-talking.h"
-G_DEFINE_TYPE (MokoTalking, moko_talking, GTK_TYPE_VBOX)
+G_DEFINE_TYPE (MokoTalking, moko_talking, GTK_TYPE_WIDGET)
#define MOKO_TALKING_GET_PRIVATE(obj) (G_TYPE_INSTANCE_GET_PRIVATE(obj, \
MOKO_TYPE_TALKING, MokoTalkingPrivate))
@@ -36,6 +36,8 @@
{
MokoJournal *journal;
+ GtkWidget *window;
+
GtkWidget *incoming_bar;
GtkWidget *main_bar;
@@ -138,10 +140,12 @@
gtk_label_set_text (GTK_LABEL (priv->status), number);
gtk_image_set_from_file (GTK_IMAGE (priv->person),
PKGDATADIR"/unkown.png");
- g_source_remove (priv->timeout);
+ if (priv->timeout)
+ g_source_remove (priv->timeout);
priv->timeout = g_timeout_add (1000,
(GSourceFunc)incoming_timeout,
(gpointer)talking);
+ gtk_window_present (GTK_WINDOW (priv->window));
}
static gboolean
@@ -194,13 +198,14 @@
else
gtk_image_set_from_file (GTK_IMAGE (priv->person),
PKGDATADIR"/unkown.png");
-
- g_source_remove (priv->timeout);
+ if (priv->timeout)
+ g_source_remove (priv->timeout);
priv->timeout = g_timeout_add (1000,
(GSourceFunc)outgoing_timeout,
(gpointer)talking);
g_free (markup);
+ gtk_window_present (GTK_WINDOW (priv->window));
}
static gboolean
@@ -272,7 +277,8 @@
/* We don't change the status or person widgets, as incoming call has already
* set them for us.
*/
- g_source_remove (priv->timeout);
+ if (priv->timeout)
+ g_source_remove (priv->timeout);
priv->timeout = g_timeout_add (1000,
(GSourceFunc)talking_timeout,
(gpointer)talking);
@@ -292,6 +298,7 @@
on_reject_clicked (GtkToolButton *button, MokoTalking *talking)
{
g_source_remove (talking->priv->timeout);
+ gtk_widget_hide (talking->priv->window);
g_signal_emit (G_OBJECT (talking), talking_signals[REJECT_CALL], 0);
}
@@ -394,15 +401,17 @@
moko_talking_init (MokoTalking *talking)
{
MokoTalkingPrivate *priv;
- GtkWidget *toolbar, *image, *vbox, *hbox, *label, *align, *frame;
+ GtkWidget *toolbar, *image, *vbox, *hbox, *label, *align, *frame, *main_vbox;
GtkWidget *duration;
GtkToolItem *item;
gint i;
priv = talking->priv = MOKO_TALKING_GET_PRIVATE (talking);
+
+ main_vbox = gtk_vbox_new (FALSE, 0);
priv->incoming_bar = toolbar = gtk_toolbar_new ();
- gtk_box_pack_start (GTK_BOX (talking), toolbar, FALSE, FALSE, 0);
+ gtk_box_pack_start (GTK_BOX (main_vbox), toolbar, FALSE, FALSE, 0);
item = gtk_tool_button_new_from_stock (MOKO_STOCK_CALL_ANSWER);
gtk_tool_item_set_expand (item, TRUE);
@@ -425,7 +434,7 @@
/* Outgoing call and talking share the same toolbar */
priv->main_bar = toolbar = gtk_toolbar_new ();
- gtk_box_pack_start (GTK_BOX (talking), toolbar, FALSE, FALSE, 0);
+ gtk_box_pack_start (GTK_BOX (main_vbox), toolbar, FALSE, FALSE, 0);
item = gtk_toggle_tool_button_new_from_stock (MOKO_STOCK_SPEAKER);
gtk_tool_item_set_expand (item, TRUE);
@@ -442,7 +451,7 @@
/* The title label and image */
vbox = gtk_vbox_new (FALSE, 0);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 12);
- gtk_box_pack_start (GTK_BOX (talking), vbox, FALSE, FALSE, 0);
+ gtk_box_pack_start (GTK_BOX (main_vbox), vbox, FALSE, FALSE, 0);
priv->title = label = gtk_label_new ("Incoming Call");
gtk_misc_set_alignment (GTK_MISC (label), 0.5, 0.5);
@@ -460,7 +469,7 @@
/* The status area */
align = gtk_alignment_new (0.5, 0.5, 1, 0 );
- gtk_box_pack_start (GTK_BOX (talking), align, TRUE, TRUE, 0);
+ gtk_box_pack_start (GTK_BOX (vbox), align, TRUE, TRUE, 0);
frame = gtk_frame_new (NULL);
gtk_container_set_border_width (GTK_CONTAINER (frame), 10);
@@ -508,6 +517,10 @@
}
+ priv->window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ gtk_widget_show_all (main_vbox);
+ gtk_container_add (GTK_CONTAINER (priv->window), main_vbox);
+
}
GtkWidget*
More information about the commitlog
mailing list