r4333 - trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-gsm/src
erin_yueh at sita.openmoko.org
erin_yueh at sita.openmoko.org
Wed Apr 9 19:06:07 CEST 2008
Author: erin_yueh
Date: 2008-04-09 19:06:03 +0200 (Wed, 09 Apr 2008)
New Revision: 4333
Modified:
trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-gsm/src/openmoko-panel-gsm.c
Log:
openmoko-panel-gsm: display GSM antenna power-up and power-down (Erin Yueh)
Modified: trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-gsm/src/openmoko-panel-gsm.c
===================================================================
--- trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-gsm/src/openmoko-panel-gsm.c 2008-04-09 10:45:51 UTC (rev 4332)
+++ trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-gsm/src/openmoko-panel-gsm.c 2008-04-09 17:06:03 UTC (rev 4333)
@@ -131,6 +131,25 @@
/* bug#1248 gsm_applet_show_status( 0, theApplet ); */
}
+static void
+gsm_applet_gsm_antenna_status(MokoGsmdConnection* self, gboolean status)
+{
+ g_debug( "gsm_applet_gsm_antenna_status: status = %s", status ? "ON" : "OFF" );
+ if(status) {
+ theApplet->type = 6;
+ gsm_applet_update_signal_strength( self, 0, theApplet );
+ gsm_applet_show_status( 0, theApplet );
+ }
+ else {
+ /* notify user antenna is OFF */
+ theApplet->type = 7;
+ gsm_applet_update_signal_strength( self, 99, theApplet );
+ gsm_applet_show_status( 0, theApplet );
+ }
+
+
+}
+
static void gsm_applet_network_current_operator_cb(MokoGsmdConnection *self, const gchar* name)
{
if ( strcmp( name, theApplet->operator_name ) != 0 )
@@ -202,8 +221,14 @@
summary = g_strdup_printf( "Connected to '%s'", applet->operator_name );
details = g_strdup_printf( "Type: Roaming\nCell ID: %04x : %04x\nSignal: %i dbM", applet->lac, applet->cell, -113 + applet->strength*2 );
break;
-
- default:
+
+ case 6: summary = g_strdup( "GSM Antenna Power-Up" );
+ break;
+
+ case 7: summary = g_strdup( "GSM Antenna Power-Down" );
+ break;
+
+ default:
summary = g_strdup( "Unknown" );
}
@@ -213,7 +238,6 @@
static void
gsm_applet_power_up_antenna(GtkWidget* menu, GsmApplet* applet)
{
- //TODO notify user
moko_gsmd_connection_set_antenna_power( applet->gsm, TRUE, NULL );
}
@@ -226,7 +250,6 @@
static void
gsm_applet_power_down_antenna(GtkWidget* menu, GsmApplet* applet)
{
- //TODO notify user
moko_gsmd_connection_set_antenna_power( applet->gsm, FALSE, NULL );
}
@@ -236,6 +259,7 @@
moko_gsmd_connection_trigger_current_operator_event( applet->gsm );
}
+
G_MODULE_EXPORT GtkWidget*
mb_panel_applet_create(const char* id, GtkOrientation orientation)
{
@@ -261,7 +285,8 @@
g_signal_connect( G_OBJECT(applet->gsm), "pin-requested", G_CALLBACK(gsm_applet_sim_pin_requested), applet );
#endif
g_signal_connect( G_OBJECT(applet->gsm), "cipher-status-changed", G_CALLBACK(gsm_applet_update_cipher_status), applet );
-
+ g_signal_connect( G_OBJECT(applet->gsm), "gsmd-antenna-status", G_CALLBACK(gsm_applet_gsm_antenna_status), applet );
+
// tap-with-hold menu (NOTE: temporary: left button atm.)
GtkMenu* menu = GTK_MENU (gtk_menu_new());
@@ -291,5 +316,6 @@
#endif
gtk_widget_show_all( GTK_WIDGET(menu) );
moko_panel_applet_set_popup( mokoapplet, GTK_WIDGET (menu), MOKO_PANEL_APPLET_CLICK_POPUP );
+
return GTK_WIDGET(mokoapplet);
}
More information about the commitlog
mailing list