Send commitlog mailing list submissions to
        [email protected]

To subscribe or unsubscribe via the World Wide Web, visit
        http://lists.openmoko.org/mailman/listinfo/commitlog
or, via email, send a message with subject or body 'help' to
        [EMAIL PROTECTED]

You can reach the person managing the list at
        [EMAIL PROTECTED]

When replying, please edit your Subject line so it is more specific
than "Re: Contents of commitlog digest..."
Today's Topics:

   1. r3508 -
      trunk/src/target/OM-2007.2/artwork/themes/openmoko-standard-2/gtk-2.0
      ([EMAIL PROTECTED])
   2. r3509 - in trunk/src/target/OM-2007.2/daemons/neod: . data
      src ([EMAIL PROTECTED])
   3. r3510 - trunk/src/target/gsm/src/gsmd ([EMAIL PROTECTED])
--- Begin Message ---
Author: mickey
Date: 2007-11-26 02:26:41 +0100 (Mon, 26 Nov 2007)
New Revision: 3508

Modified:
   
trunk/src/target/OM-2007.2/artwork/themes/openmoko-standard-2/gtk-2.0/openmoko-panel-plugins
Log:
openmoko-standard-theme: make title menu bold


Modified: 
trunk/src/target/OM-2007.2/artwork/themes/openmoko-standard-2/gtk-2.0/openmoko-panel-plugins
===================================================================
--- 
trunk/src/target/OM-2007.2/artwork/themes/openmoko-standard-2/gtk-2.0/openmoko-panel-plugins
        2007-11-26 01:25:03 UTC (rev 3507)
+++ 
trunk/src/target/OM-2007.2/artwork/themes/openmoko-standard-2/gtk-2.0/openmoko-panel-plugins
        2007-11-26 01:26:41 UTC (rev 3508)
@@ -5,6 +5,10 @@
 }
 widget "*.MatchboxPanelClock" style "openmoko-panel-clock"
 
+style "openmoko-panel-gsm" {
+    font_name = "Sans Bold 12"
+}
+widget "*.GsmAppletMenu*" style "openmoko-panel-gsm"
+
 # add styling for other panel plugins here...
 
-




--- End Message ---
--- Begin Message ---
Author: mickey
Date: 2007-11-26 02:49:54 +0100 (Mon, 26 Nov 2007)
New Revision: 3509

Added:
   trunk/src/target/OM-2007.2/daemons/neod/data/drag.png
   trunk/src/target/OM-2007.2/daemons/neod/data/mid.png
   trunk/src/target/OM-2007.2/daemons/neod/data/mokopuzzle.png
   trunk/src/target/OM-2007.2/daemons/neod/data/north.png
   trunk/src/target/OM-2007.2/daemons/neod/data/south.png
Modified:
   trunk/src/target/OM-2007.2/daemons/neod/AUTHORS
   trunk/src/target/OM-2007.2/daemons/neod/data/Makefile.am
   trunk/src/target/OM-2007.2/daemons/neod/src/buttonactions.c
   trunk/src/target/OM-2007.2/daemons/neod/src/buttonactions.h
Log:
neod: add display locking, code by Olaf L?\195?\188ke, artwork by 
'IfChinsCouldKill'


Modified: trunk/src/target/OM-2007.2/daemons/neod/AUTHORS
===================================================================
--- trunk/src/target/OM-2007.2/daemons/neod/AUTHORS     2007-11-26 01:26:41 UTC 
(rev 3508)
+++ trunk/src/target/OM-2007.2/daemons/neod/AUTHORS     2007-11-26 01:49:54 UTC 
(rev 3509)
@@ -1,2 +1,4 @@
 Michael Lauer <[EMAIL PROTECTED]>
+Olaf Lüke (display locking logic)
+IfChinsCouldKill (artwork)
 

Modified: trunk/src/target/OM-2007.2/daemons/neod/data/Makefile.am
===================================================================
--- trunk/src/target/OM-2007.2/daemons/neod/data/Makefile.am    2007-11-26 
01:26:41 UTC (rev 3508)
+++ trunk/src/target/OM-2007.2/daemons/neod/data/Makefile.am    2007-11-26 
01:49:54 UTC (rev 3509)
@@ -1,5 +1,9 @@
 resourcedir = $(pkgdatadir)
-resource_DATA = openmoko-logo.jpg
+resource_DATA = openmoko-logo.jpg \
+               drag.png \
+               mid.png \
+               north.png \
+               south.png
 
 EXTRA_DIST = $(resource_DATA)
 

Added: trunk/src/target/OM-2007.2/daemons/neod/data/drag.png
===================================================================
(Binary files differ)


Property changes on: trunk/src/target/OM-2007.2/daemons/neod/data/drag.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/src/target/OM-2007.2/daemons/neod/data/mid.png
===================================================================
(Binary files differ)


Property changes on: trunk/src/target/OM-2007.2/daemons/neod/data/mid.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/src/target/OM-2007.2/daemons/neod/data/mokopuzzle.png
===================================================================
(Binary files differ)


Property changes on: trunk/src/target/OM-2007.2/daemons/neod/data/mokopuzzle.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/src/target/OM-2007.2/daemons/neod/data/north.png
===================================================================
(Binary files differ)


Property changes on: trunk/src/target/OM-2007.2/daemons/neod/data/north.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/src/target/OM-2007.2/daemons/neod/data/south.png
===================================================================
(Binary files differ)


Property changes on: trunk/src/target/OM-2007.2/daemons/neod/data/south.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Modified: trunk/src/target/OM-2007.2/daemons/neod/src/buttonactions.c
===================================================================
--- trunk/src/target/OM-2007.2/daemons/neod/src/buttonactions.c 2007-11-26 
01:26:41 UTC (rev 3508)
+++ trunk/src/target/OM-2007.2/daemons/neod/src/buttonactions.c 2007-11-26 
01:49:54 UTC (rev 3509)
@@ -93,6 +93,7 @@
 
 GtkWidget* aux_menu = 0;
 GtkWidget* power_menu = 0;
+GtkWidget* lock_display = 0;
 
 GConfClient* gconfc = 0;
 
@@ -552,6 +553,12 @@
     }
 }
 
+void neod_buttonactions_popup_selected_lock_display(GtkWidget* button, 
+                                                                               
                        gpointer user_data) {
+    gtk_widget_hide(power_menu);
+       neod_buttonactions_lock_display();
+}
+
 void neod_buttonactions_popup_selected_restartUI( GtkWidget* button, gpointer 
user_data )
 {
     gtk_widget_hide( power_menu );
@@ -772,7 +779,12 @@
 
         gtk_box_pack_start_defaults( GTK_BOX(box), gtk_hseparator_new() );
 
-        GtkWidget* lock = gtk_button_new_with_label( "Lock Now" );
+        GtkWidget* lock_display = gtk_button_new_with_label("Lock Display");
+        g_signal_connect(G_OBJECT(lock_display), "clicked", 
+                       
G_CALLBACK(neod_buttonactions_popup_selected_lock_display), NULL);
+               gtk_box_pack_start_defaults(GTK_BOX(box), lock_display);
+
+        GtkWidget* lock = gtk_button_new_with_label("Lock Phone");
         g_signal_connect( G_OBJECT(lock), "clicked", 
G_CALLBACK(neod_buttonactions_popup_selected_lock), NULL );
         gtk_box_pack_start_defaults( GTK_BOX(box), lock );
 
@@ -874,7 +886,7 @@
     {
         g_debug( "power menu already open -- closing." );
         gtk_widget_hide( power_menu );
-        return;
+        return TRUE;
     }
 
     power_timer = -1;
@@ -893,7 +905,10 @@
         {
             g_debug( "sorry, i'm not going to close the today window" );
             return FALSE;
-        }
+        } else if(gtk_window_is_active(GTK_WINDOW(lock_display))) {
+            g_debug("sorry, i'm not going to close the lock window");
+            return FALSE;
+               }
 
         Display* display = XOpenDisplay( NULL );
 
@@ -940,7 +955,7 @@
 
     //TODO load this from preferences
     powersave_timer1 = g_timeout_add( 10 * 1000, (GSourceFunc) 
neod_buttonactions_powersave_timeout1, (gpointer)1 );
-    powersave_timer2 = g_timeout_add( 20 * 1000, (GSourceFunc) 
neod_buttonactions_powersave_timeout2, (gpointer)1 );
+    powersave_timer2 = g_timeout_add( 30 * 1000, (GSourceFunc) 
neod_buttonactions_powersave_timeout2, (gpointer)1 );
     powersave_timer3 = g_timeout_add( 60 * 5 * 1000, (GSourceFunc) 
neod_buttonactions_powersave_timeout3, (gpointer)1 );
 }
 
@@ -987,11 +1002,16 @@
     else
     {
         char buf[10];
-        int numbytes = g_sprintf( buf, "%d\0", backlight_max_brightness * 
brightness / 100 );
+        int numbytes = g_sprintf(
+                       buf, "%d", backlight_max_brightness * brightness / 100);
+
         g_debug( "writing '%s' to '%s'", buf, backlight_node );
         write( fd, buf, numbytes );
         close( fd );
     }
+
+       if(brightness == 0)
+               neod_buttonactions_lock_display();
 }
 
 gboolean neod_buttonactions_powersave_timeout1( guint timeout )
@@ -1124,3 +1144,130 @@
 
     return FALSE;
 }
+
+/**
+ * This callback function gets triggered when the drop was successful. The
+ * lock_display window gets hidden in this situation.
+ */
+void neod_buttonactions_lock_display_on_drag(GtkWidget *widget, 
+                                                                               
     GdkDragContext *context, 
+                                                                               
         int x, int y,
+                                                                
GtkSelectionData *seldata, 
+                                                                               
         guint info, 
+                                                                               
         guint time,
+                                                                gpointer 
userdata) {
+       gtk_widget_hide(lock_display);
+}
+
+/**
+ * This callback function sets the data which is send throug the
+ * drag and drop. It is necassery to set something here to allow 
+ * dragging.
+ */
+void neod_buttonactions_lock_display_data_get(GtkWidget *widget, 
+                                                                               
          GdkDragContext *context, 
+                                                                 
GtkSelectionData *seldata, 
+                                                                               
          guint info, 
+                                                                               
          guint time,
+                                                                 gpointer 
userdata) {
+       guchar str[] = "LOCK";
+       gtk_selection_data_set(seldata, seldata->target, 8, str, sizeof(str));
+}
+
+/**
+ * This callback function should be triggered whenever the dragging
+ * on the display lock begins. The drag image gets set as icon
+ * and gets hidden as a picture in the window.
+ */
+void neod_buttonactions_lock_display_drag_begin(GtkWidget *widget, 
+                                                                               
                GdkDragContext *context, 
+                                                                               
                gpointer userdata) {
+       gtk_widget_hide(GTK_WIDGET(userdata));
+       
+       g_debug("lock display drag begins");
+}
+
+/**
+ * This callback function should be triggered whenever the dragging
+ * on the display lock ends. 
+ */
+void neod_buttonactions_lock_display_drag_end(GtkWidget *widget, 
+                                                                               
          GdkDragContext *context, 
+                                                                               
          gpointer userdata) {
+       gtk_widget_show(GTK_WIDGET(userdata));
+       g_debug("lock display drag ends");
+}
+
+/**
+ * Activates the display lock. An uncloseable window is implemented,
+ * which can only be hidden if the user draws a specif motion
+ * on the display.
+ */
+void neod_buttonactions_lock_display() {
+
+    // remember last active window before showing display lock 
+    last_active_window = get_window_property( 
+               gdk_x11_get_default_root_xwindow(), 
+               gdk_x11_get_xatom_by_name("_NET_ACTIVE_WINDOW"));
+
+    if(!lock_display) {
+               // lock display gui
+        lock_display = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+
+               GtkWidget *fixed = gtk_fixed_new();
+               gtk_fixed_put(GTK_FIXED(fixed), 
+                       gtk_image_new_from_file(PKGDATADIR "/south.png"), 0, 0);
+               GtkWidget *drag = gtk_image_new_from_file(PKGDATADIR 
"/drag.png");
+               gtk_fixed_put(GTK_FIXED(fixed), drag, 190, 0);
+               
+               GtkWidget *south = gtk_event_box_new();
+               gtk_container_add(GTK_CONTAINER(south), fixed);
+               
+               GtkWidget *north = gtk_event_box_new();
+               gtk_container_add(GTK_CONTAINER(north), 
+                       gtk_image_new_from_file(PKGDATADIR "/north.png"));
+               
+        GtkWidget *mid = gtk_image_new_from_file(PKGDATADIR "/mid.png");
+
+        GtkWidget *box1 = gtk_vbox_new(0, 0);
+               gtk_box_pack_start(GTK_BOX(box1), north, 0, 0, 0);
+               gtk_box_pack_start(GTK_BOX(box1), mid, 0, 0, 0);
+               gtk_box_pack_start(GTK_BOX(box1), south, 0, 0, 0);
+
+               gtk_window_fullscreen(GTK_WINDOW(lock_display));
+               gtk_container_add(GTK_CONTAINER(lock_display), box1);
+
+               static GtkTargetEntry targetentries[] = {{"text/plain", 0, 0}};
+
+               gtk_drag_dest_set(north, GTK_DEST_DEFAULT_ALL, targetentries, 1,
+                       GDK_ACTION_COPY);
+               gtk_drag_source_set(south, GDK_BUTTON1_MASK, targetentries, 1,
+                       GDK_ACTION_COPY);
+
+               // drag and drop signals
+               gtk_signal_connect(GTK_OBJECT(north), "drag_data_received",
+                       
GTK_SIGNAL_FUNC(neod_buttonactions_lock_display_on_drag), NULL);
+               gtk_signal_connect(GTK_OBJECT(south), "drag_data_get",
+                       
GTK_SIGNAL_FUNC(neod_buttonactions_lock_display_data_get), NULL);
+               gtk_signal_connect(GTK_OBJECT(south), "drag_begin",
+                       
GTK_SIGNAL_FUNC(neod_buttonactions_lock_display_drag_begin), drag);
+               gtk_signal_connect(GTK_OBJECT(south), "drag_end",
+                       
GTK_SIGNAL_FUNC(neod_buttonactions_lock_display_drag_end), drag);
+       
+               // drag and drop icon
+               GdkPixmap *pixmap = NULL;
+               GdkBitmap *mask = NULL;
+
+               GdkPixbuf *drag_gdk = 
+                       gdk_pixbuf_new_from_file(PKGDATADIR "/drag.png", NULL);
+
+               gdk_pixbuf_render_pixmap_and_mask(drag_gdk,  &pixmap, &mask, 
128);
+               gtk_drag_set_default_icon(gdk_colormap_get_system(), pixmap, 
mask,
+                       gdk_pixbuf_get_width(drag_gdk) / 2,
+                       gdk_pixbuf_get_height(drag_gdk) / 2);
+    }
+       gtk_widget_show_all(lock_display);
+
+    g_debug("display locked");
+}
+

Modified: trunk/src/target/OM-2007.2/daemons/neod/src/buttonactions.h
===================================================================
--- trunk/src/target/OM-2007.2/daemons/neod/src/buttonactions.h 2007-11-26 
01:26:41 UTC (rev 3508)
+++ trunk/src/target/OM-2007.2/daemons/neod/src/buttonactions.h 2007-11-26 
01:49:54 UTC (rev 3509)
@@ -40,6 +40,9 @@
 void neod_buttonactions_sound_init();
 void neod_buttonactions_set_display( int brightness );
 void neod_buttonactions_sound_play( const gchar* samplename );
+
 gboolean neod_buttonactions_initial_update();
+gboolean neod_buttonactions_install_watcher();
 
+void neod_buttonactions_lock_display();
 #endif




--- End Message ---
--- Begin Message ---
Author: tick
Date: 2007-11-26 10:11:57 +0100 (Mon, 26 Nov 2007)
New Revision: 3510

Modified:
   trunk/src/target/gsm/src/gsmd/sms_cb.c
Log:
[gsmd] to fix on reading a SMS with alpha value. (Erin Yueh)



Modified: trunk/src/target/gsm/src/gsmd/sms_cb.c
===================================================================
--- trunk/src/target/gsm/src/gsmd/sms_cb.c      2007-11-26 01:49:54 UTC (rev 
3509)
+++ trunk/src/target/gsm/src/gsmd/sms_cb.c      2007-11-26 09:11:57 UTC (rev 
3510)
@@ -125,7 +125,7 @@
        if (
                        sscanf(resp, "+CMGR: %i,,%i\n%n",
                                &stat, &len, &cr) < 2 &&
-                       sscanf(resp, "+CMGR: %i,%*i,%i\n%n",
+                        sscanf(resp, "+CMGR: %i,\"%*[^\"]\",%i\n%n",
                                &stat, &len, &cr) < 2)
                return -EINVAL;
        if (len > 164)




--- End Message ---
_______________________________________________
commitlog mailing list
[email protected]
http://lists.openmoko.org/mailman/listinfo/commitlog

Reply via email to