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. r3340 - in
      trunk/src/target/OM-2007.2/applications/openmoko-today2: .        src
      ([EMAIL PROTECTED])
   2. r3341 - in
      trunk/src/target/OM-2007.2/applications/openmoko-appmanager2: .
      src ([EMAIL PROTECTED])
--- Begin Message ---
Author: chris
Date: 2007-11-02 17:45:30 +0100 (Fri, 02 Nov 2007)
New Revision: 3340

Modified:
   trunk/src/target/OM-2007.2/applications/openmoko-today2/ChangeLog
   trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-launcher.c
   trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-main.c
   
trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-pim-journal.c
   trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-utils.c
   trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-utils.h
   trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today.h
Log:
        * src/today-launcher.c: (item_added_cb), (item_removed_cb),
        (add_item_idle), (load_items), (today_launcher_page_create):
        * src/today-main.c: (today_dial_button_clicked_cb),
        (today_contacts_button_clicked_cb),
        (today_messages_button_clicked_cb),
        (today_dates_button_clicked_cb), (clock_clicked_cb),
        (today_create_home_page):
        * src/today-pim-journal.c: (header_clicked_cb),
        (missed_calls_button_press_cb), (unread_messages_button_press_cb),
        (tasks_button_press_cb), (dates_button_press_cb):
        * src/today-utils.c: (today_toolbutton_new):
        * src/today-utils.h: 
        * src/today.h:
        Update launcher code to match upstream changes to libtaku


Modified: trunk/src/target/OM-2007.2/applications/openmoko-today2/ChangeLog
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-today2/ChangeLog   
2007-11-02 16:33:59 UTC (rev 3339)
+++ trunk/src/target/OM-2007.2/applications/openmoko-today2/ChangeLog   
2007-11-02 16:45:30 UTC (rev 3340)
@@ -1,5 +1,22 @@
 2007-11-02  Chris Lord  <[EMAIL PROTECTED]>
 
+       * src/today-launcher.c: (item_added_cb), (item_removed_cb),
+       (add_item_idle), (load_items), (today_launcher_page_create):
+       * src/today-main.c: (today_dial_button_clicked_cb),
+       (today_contacts_button_clicked_cb),
+       (today_messages_button_clicked_cb),
+       (today_dates_button_clicked_cb), (clock_clicked_cb),
+       (today_create_home_page):
+       * src/today-pim-journal.c: (header_clicked_cb),
+       (missed_calls_button_press_cb), (unread_messages_button_press_cb),
+       (tasks_button_press_cb), (dates_button_press_cb):
+       * src/today-utils.c: (today_toolbutton_new):
+       * src/today-utils.h:
+       * src/today.h:
+        Update launcher code to match upstream changes to libtaku
+
+2007-11-02  Chris Lord  <[EMAIL PROTECTED]>
+
        * src/today-main.c: (clock_clicked_cb), (today_create_home_page):
         Launch openmoko-worldclock when clicking on clock
 

Modified: 
trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-launcher.c
===================================================================
--- 
trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-launcher.c    
    2007-11-02 16:33:59 UTC (rev 3339)
+++ 
trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-launcher.c    
    2007-11-02 16:45:30 UTC (rev 3340)
@@ -14,283 +14,74 @@
 #include <moko-search-bar.h>
 #include "today.h"
 
-/* inotify support derived/copied from code in matchbox-desktop-2 */
-#if WITH_INOTIFY
-#include "libtaku/inotify/inotify-path.h"
-#include "libtaku/inotify/local_inotify.h"
-
-static gboolean with_inotify;
-G_LOCK_DEFINE(inotify_lock);
-#endif
-
-/* NOTE: Following 6 functions (as well as libtaku) taken from
+/* NOTE: Following few functions (as well as libtaku) taken from
  * matchbox-desktop-2 and (slightly) modified where necessary
  */
-/*
- * Load all .directory files from @vfolderdir, and add them as tables.
- */
-GList *
-load_vfolder_dir (const char *vfolderdir,
-                 TakuLauncherCategory **fallback_category)
-{
-  GList *categories = NULL;
-  GError *error = NULL;
-  FILE *fp;
-  char name[NAME_MAX], *filename;
-  TakuLauncherCategory *category;
-
-  filename = g_build_filename (vfolderdir, "Root.order", NULL);
-  fp = fopen (filename, "r");
-  if (fp == NULL) {
-    g_warning ("Cannot read %s", filename);
-    g_free (filename);
-    return NULL;
-  }
-  g_free (filename);
-
-  while (fgets (name, NAME_MAX - 9, fp) != NULL) {
-    char **matches = NULL, *local_name = NULL;
-    char **l;
-    GKeyFile *key_file;
-
-    if (name[0] == '#' || isspace (name[0]))
-      continue;
-
-    strcpy (name + strlen (name) - 1, ".directory");
-  
-    filename = g_build_filename (vfolderdir, name, NULL);
-
-    key_file = g_key_file_new ();
-    g_key_file_load_from_file (key_file, filename, G_KEY_FILE_NONE, &error);
-    if (error) {
-      g_warning ("Cannot read %s: %s", filename, error->message);
-      g_error_free (error);
-      error = NULL;
-
-      goto done;
-    }
-
-    matches = g_key_file_get_string_list (key_file, "Desktop Entry", "Match", 
NULL, NULL);
-    if (matches == NULL)
-      goto done;
-
-    local_name = g_key_file_get_locale_string (key_file, "Desktop Entry",
-                                               "Name", NULL, NULL);
-    if (local_name == NULL) {
-      g_warning ("Directory file %s does not contain a \"Name\" field",
-                 filename);
-      g_strfreev (matches);
-      goto done;
-    }
-
-    category = taku_launcher_category_new ();
-    category->matches = matches;
-    category->name  = local_name;
-
-    categories = g_list_append (categories, category);
-
-    /* Find a fallback category */
-    if (fallback_category && (!*fallback_category))
-      for (l = matches; *l; l++)
-        if (strcmp (*l, "meta-fallback") == 0)
-          *fallback_category = category;
-    
-  done:
-    g_key_file_free (key_file);
-    g_free (filename);
-  }
-
-  fclose (fp);
-       
-  return categories;
-}
-
 static void
-match_category (TakuLauncherCategory *category,
-               TakuLauncherTile *tile, gboolean *placed)
+item_added_cb (TakuMenu *menu, TakuMenuItem *item, TodayData *data)
 {
-  const char **groups;
-  char **match;
-  
-  for (match = category->matches; *match; match++) {
-    /* Add all tiles to the all group */
-    if (strcmp (*match, "meta-all") == 0) {
-      taku_launcher_tile_add_group (tile, category);
-      return;
-    }
-    
-    for (groups = taku_launcher_tile_get_categories (tile);
-         *groups; groups++) {
-      if (strcmp (*match, *groups) == 0) {
-        taku_launcher_tile_add_group (tile, category);
-        *placed = TRUE;
-        return;
-      }
-    }
-  }
-}
-
-static void
-set_groups (TakuLauncherTile *tile, GList *categories,
-           TakuLauncherCategory *fallback_category)
-{
-  gboolean placed = FALSE;
-  GList *l;
-  
-  for (l = categories; l ; l = l->next) {
-    match_category (l->data, tile, &placed);
-  }
-
-  if (!placed && fallback_category)
-    taku_launcher_tile_add_group (tile, fallback_category);
-}
-
-typedef struct {
-       gchar *name;
-       gchar *directory;
-       TakuTable *table;
-       GList *categories;
-       TakuLauncherCategory *fallback_category;
-} LoadDesktopData;
-
-static gboolean
-load_desktop_cb (LoadDesktopData *data)
-{
-       gchar *filename;
+       const gchar *name;
        GtkWidget *tile;
 
-       if (!g_str_has_suffix (data->name, ".desktop")) goto not_desktop;
-
-       filename = g_build_filename (data->directory, data->name, NULL);
-
-       /* TODO: load launcher data, probe that, and then create a tile */
-
-       tile = taku_launcher_tile_for_desktop_file (filename);
-       if (!tile) goto done;
-
-       set_groups (TAKU_LAUNCHER_TILE (tile), data->categories,
-               data->fallback_category);
-
-       gtk_container_add (GTK_CONTAINER (data->table), tile);
-       gtk_widget_show (tile);
-
-done:
-       g_free (filename);
-not_desktop:
-       g_free (data->name);
-       g_free (data->directory);
-       g_free (data);
+       tile = taku_launcher_tile_new_from_item (item);
+       name = taku_menu_item_get_name (item);
        
-       return FALSE;
-}
+       if (strcmp (name, "Dialer") == 0) {
+               gtk_widget_set_sensitive (GTK_WIDGET (data->dial_button), TRUE);
+               data->dialer_item = item;
+       } else if (strcmp (name, "Contacts") == 0) {
+               gtk_widget_set_sensitive (GTK_WIDGET (data->contacts_button), 
TRUE);
+               data->contacts_item = item;
+       } else if (strcmp (name, "Tasks") == 0) {
+               data->tasks_item = item;
+       } else if (strcmp (name, "Dates") == 0) {
+               gtk_widget_set_sensitive (GTK_WIDGET (data->dates_button), 
TRUE);
+               data->dates_item = item;
+       } else if (strcmp (name, "World Clock") == 0) {
+               data->clock_item = item;
+       }
 
-#if WITH_INOTIFY
-/*
- * Monitor @directory with inotify, if available.
- */
-static void
-monitor (const char *directory)
-{
-  inotify_sub *sub;
-
-  if (!with_inotify)
-    return;
-  
-  sub = _ih_sub_new (directory, NULL, NULL);
-  _ip_start_watching (sub);
+       if (GTK_IS_WIDGET (tile))
+               gtk_container_add (GTK_CONTAINER (data->launcher_table), tile); 
 }
 
-/*
- * Used to delete tiles when they are removed from disk.  @a is the tile, @b is
- * the desktop filename to look for.
- */
 static void
-find_and_destroy (GtkWidget *widget, gpointer data)
+item_removed_cb (TakuMenu *menu, TakuMenuItem *item, TodayData *data)
 {
-  TakuLauncherTile *tile;
-  const char *removed, *filename;
+       TakuLauncherTile *tile = NULL;
+       GList *tiles, *t;
 
-  tile = TAKU_LAUNCHER_TILE (widget);
-  if (!tile)
-    return;
-  
-  removed = data;
-  
-  filename = taku_launcher_tile_get_filename (tile);
-  if (strcmp (removed, filename) == 0)
-    gtk_widget_destroy (widget);
-}
+       if (data->dialer_item == item) {
+               data->dialer_item = NULL;
+               gtk_widget_set_sensitive (
+                       GTK_WIDGET (data->dial_button), FALSE);
+       } else if (data->contacts_item == item) {
+               data->contacts_item = NULL;
+               gtk_widget_set_sensitive (
+                       GTK_WIDGET (data->contacts_button), FALSE);
+       } else if (data->tasks_item == item) {
+               data->tasks_item = NULL;
+       } else if (data->dates_item == item) {
+               data->dates_item = NULL;
+               gtk_widget_set_sensitive (
+                       GTK_WIDGET (data->dates_button), FALSE);
+       } else if (data->clock_item == item) {
+               data->clock_item = NULL;
+       }
 
-static TodayData *data_static;
-static void
-inotify_event (ik_event_t *event, inotify_sub *sub)
-{
-  char *path;
+       tiles = gtk_container_get_children (
+               GTK_CONTAINER (data->launcher_table));
+       for (t = tiles; t; t = t->next) {
+               if (!TAKU_IS_LAUNCHER_TILE (t->data)) continue;
 
-  if (event->mask & IN_MOVED_TO || event->mask & IN_CREATE) {
-    if (g_str_has_suffix (event->name, ".desktop")) {
-      LoadDesktopData *data = g_new0 (LoadDesktopData, 1);
-      data->name = g_strdup (event->name);
-      data->directory = g_strdup (sub->dirname);
-      data->table = (TakuTable *)data_static->launcher_table;
-      data->categories = data_static->categories;
-      load_desktop_cb (data);
-    }
-  } else if (event->mask & IN_MOVED_FROM || event->mask & IN_DELETE) {
-    path = g_build_filename (sub->dirname, event->name, NULL);
-    gtk_container_foreach (GTK_CONTAINER (data_static->launcher_table),
-                           find_and_destroy, path);
-    g_free (path);
-  }
-}
-#endif
+               if (item == taku_launcher_tile_get_item (t->data)) {
+                       tile = t->data;
+                       break;
+               }
+       }
 
-/*
- * Load all .desktop files in @datadir/applications/, and add them to @table.
- */
-static void
-load_data_dir (const char *datadir, TakuTable *table, GList *categories,
-              TakuLauncherCategory *fallback_category)
-{
-  GError *error = NULL;
-  GDir *dir;
-  char *directory;
-  const char *name;
-
-  g_assert (datadir);
-
-  directory = g_build_filename (datadir, "applications", NULL);
-
-  /* Check if the directory exists */
-  if (! g_file_test (directory, G_FILE_TEST_IS_DIR)) {
-    g_free (directory);
-    return;
-  }
-
-#if WITH_INOTIFY
-  monitor (directory);
-#endif
-
-  dir = g_dir_open (directory, 0, &error);
-  if (error) {
-    g_warning ("Cannot read %s: %s", directory, error->message);
-    g_error_free (error);
-    g_free (directory);
-    return;
-  }
-
-  while ((name = g_dir_read_name (dir)) != NULL) {
-       LoadDesktopData *data = g_new (LoadDesktopData, 1);
-       data->name = g_strdup (name);
-       data->directory = g_strdup (directory);
-       data->table = table;
-       data->categories = categories;
-       data->fallback_category = fallback_category;
-       g_idle_add ((GSourceFunc)load_desktop_cb, data);
-  }
-
-  g_free (directory);
-  g_dir_close (dir);
+       if (GTK_IS_WIDGET (tile)) gtk_container_remove (GTK_CONTAINER (
+               data->launcher_table), GTK_WIDGET (tile));
 }
 
 static void
@@ -433,18 +224,32 @@
 }
 #endif
 
+static gboolean
+add_item_idle (TakuMenuItem *item)
+{
+       g_signal_emit_by_name (taku_menu_get_default (), "item-added", item);
+       return FALSE;
+}
+
+static gboolean
+load_items (TodayData *data)
+{
+       GList *items;
+       TakuMenu *menu = taku_menu_get_default ();
+       
+       for (items = taku_menu_get_items (menu); items; items = items->next) {
+               if (!items->data) continue;
+               g_idle_add ((GSourceFunc)add_item_idle, items->data);
+       }
+       return FALSE;
+}
+
 GtkWidget *
 today_launcher_page_create (TodayData *data)
 {
+       static TakuMenu *menu;
        GtkWidget *main_vbox, *hbox, *toggle, *scroll;
-       const char * const *dirs;
-       gchar *vfolder_dir;
 
-#if WITH_INOTIFY
-       data_static = data;
-       with_inotify = _ip_startup (inotify_event);
-#endif
-
        main_vbox = gtk_vbox_new (FALSE, 0);
        
        /* search/filter bar */
@@ -488,16 +293,14 @@
        data->search_cat->matches = g_new0 (gchar *, 2);
        data->search_cat->matches[0] = g_strdup ("meta-search");
        
-       /* Load app categories */
-       vfolder_dir = g_build_filename (g_get_home_dir (),
-               ".matchbox", "vfolders", NULL);
-       if (g_file_test (vfolder_dir, G_FILE_TEST_EXISTS))
-               data->categories = load_vfolder_dir (vfolder_dir, NULL);
-       else
-               data->categories = load_vfolder_dir (PKGDATADIR "/vfolders",
-                       NULL);
-       g_free (vfolder_dir);
-       
+       /* Load application data */
+       menu = taku_menu_get_default ();
+       g_signal_connect (menu, "item-added",
+               G_CALLBACK (item_added_cb), data);
+       g_signal_connect (menu, "item-removed",
+               G_CALLBACK (item_removed_cb), data);  
+
+       data->categories = taku_menu_get_categories (menu);
        if (data->categories) {
                GList *c;
                for (c = data->categories; c; c = c->next) {
@@ -522,15 +325,12 @@
                G_CALLBACK (today_launcher_search_toggle_cb), data);
        
        /* Populate the app list */
-       /* TODO: Do this incrementally during idle time to increase
-        * start-up speed.
-        */
-       for (dirs = g_get_system_data_dirs (); *dirs; dirs++) {
-               load_data_dir (*dirs, TAKU_TABLE (data->launcher_table),
-                       data->categories, NULL);
-       }
-       load_data_dir (g_get_user_data_dir (),
-               TAKU_TABLE (data->launcher_table), data->categories, NULL);
+       data->dialer_item = NULL;
+       data->contacts_item = NULL;
+       data->tasks_item = NULL;
+       data->dates_item = NULL;
+       data->clock_item = NULL;
+       g_idle_add ((GSourceFunc)load_items, data);
        
        /* Make sure initial search shows all items */
        today_launcher_update_search (data, "");

Modified: 
trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-main.c
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-main.c    
2007-11-02 16:33:59 UTC (rev 3339)
+++ trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-main.c    
2007-11-02 16:45:30 UTC (rev 3340)
@@ -38,29 +38,27 @@
 static void
 today_dial_button_clicked_cb (GtkToolButton *button, TodayData *data)
 {
-       launcher_start (data->window, today_get_launcher ((const gchar *[])
-               {"openmoko-dialer", "-s", NULL }, TRUE, FALSE));
+       if (data->dialer_item) launcher_start (data->window, data->dialer_item,
+               (gchar *[]){ "openmoko-dialer", NULL }, TRUE, TRUE);
 }
 
 static void
 today_contacts_button_clicked_cb (GtkToolButton *button, TodayData *data)
 {
-       launcher_start (data->window, today_get_launcher ((const gchar *[])
-               { "openmoko-contacts", NULL }, TRUE, TRUE));
+       if (data->contacts_item) launcher_start (data->window, 
data->contacts_item,
+               (gchar *[]){ "openmoko-contacts", NULL }, TRUE, TRUE);
 }
 
 static void
 today_messages_button_clicked_cb (GtkToolButton *button, TodayData *data)
 {
-       launcher_start (data->window, today_get_launcher ((const gchar *[])
-               { "openmoko-messages", NULL }, TRUE, TRUE));
 }
 
 static void
 today_dates_button_clicked_cb (GtkToolButton *button, TodayData *data)
 {
-       launcher_start (data->window, today_get_launcher ((const gchar *[])
-               { "openmoko-dates", NULL }, TRUE, TRUE));
+       if (data->dates_item) launcher_start (data->window, data->dates_item,
+               (gchar *[]){ "openmoko-dates", NULL }, TRUE, TRUE);
 }
 
 static gboolean
@@ -169,8 +167,8 @@
 static void
 clock_clicked_cb (JanaGtkClock *clock, GdkEventButton *event, TodayData *data)
 {
-       launcher_start (data->window, today_get_launcher ((const gchar *[])
-               { "openmoko-worldclock", NULL }, TRUE, TRUE));
+       if (data->clock_item) launcher_start (data->window, data->clock_item,
+               (gchar *[]){ "openmoko-worldclock", NULL }, TRUE, TRUE);
 }
 
 static GtkWidget *
@@ -192,6 +190,7 @@
                gtk_separator_tool_item_new (), 0);
        g_signal_connect (G_OBJECT (data->dates_button), "clicked",
                G_CALLBACK (today_dates_button_clicked_cb), data);
+       gtk_widget_set_sensitive (data->dates_button, FALSE);
 
        data->messages_button = today_toolbutton_new ("openmoko-messages");
        gtk_toolbar_insert (GTK_TOOLBAR (data->home_toolbar),
@@ -200,6 +199,7 @@
                gtk_separator_tool_item_new (), 0);
        g_signal_connect (G_OBJECT (data->messages_button), "clicked",
                G_CALLBACK (today_messages_button_clicked_cb), data);
+       gtk_widget_set_sensitive (data->messages_button, FALSE);
 
        data->contacts_button = today_toolbutton_new ("contacts");
        gtk_toolbar_insert (GTK_TOOLBAR (data->home_toolbar),
@@ -208,6 +208,7 @@
                gtk_separator_tool_item_new (), 0);
        g_signal_connect (G_OBJECT (data->contacts_button), "clicked",
                G_CALLBACK (today_contacts_button_clicked_cb), data);
+       gtk_widget_set_sensitive (data->contacts_button, FALSE);
 
        data->dial_button = today_toolbutton_new ("openmoko-dialer");
        gtk_toolbar_insert (GTK_TOOLBAR (data->home_toolbar),
@@ -215,6 +216,7 @@
        gtk_widget_show_all (data->home_toolbar);
        g_signal_connect (G_OBJECT (data->dial_button), "clicked",
                G_CALLBACK (today_dial_button_clicked_cb), data);
+       gtk_widget_set_sensitive (data->dial_button, FALSE);
 
        /* Create event box with background */
        data->bg_ebox = gtk_event_box_new ();

Modified: 
trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-pim-journal.c
===================================================================
--- 
trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-pim-journal.c 
    2007-11-02 16:33:59 UTC (rev 3339)
+++ 
trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-pim-journal.c 
    2007-11-02 16:45:30 UTC (rev 3340)
@@ -139,31 +139,16 @@
 static void
 header_clicked_cb (GtkWidget *button, TodayData *data)
 {
-       launcher_start (data->window, today_get_launcher (
-               (const gchar *[]){ "openmoko-worldclock", NULL, NULL },
-               TRUE, TRUE));
+       if (data->clock_item) launcher_start (data->window, data->clock_item,
+               (gchar *[]){ "openmoko-worldclock", NULL }, TRUE, TRUE);
 }
 
-/*static void
-today_pim_journal_selection_changed_cb (GtkTreeSelection *selection,
-                                       TodayData *data)
-{
-       if ((data->n_missed_calls > 0) &&
-           gtk_tree_selection_count_selected_rows (selection)) {
-               gtk_tree_selection_unselect_all (selection);
-               launcher_start (data->window, today_get_launcher (
-                       (const gchar *[]){ "openmoko-dialer", "-m", NULL },
-                       TRUE, FALSE));
-       }
-}*/
-
 static gboolean
 missed_calls_button_press_cb (GtkWidget *widget, GdkEventButton *event,
                              TodayData *data)
 {
-       launcher_start (data->window, today_get_launcher (
-               (const gchar *[]){ "openmoko-dialer", "-m", NULL },
-               TRUE, FALSE));
+       if (data->dialer_item) launcher_start (data->window, data->dialer_item,
+               (gchar *[]){ "openmoko-dialer", "-m", NULL }, TRUE, TRUE);
 
        return FALSE;
 }
@@ -172,9 +157,6 @@
 unread_messages_button_press_cb (GtkWidget *widget, GdkEventButton *event,
                                 TodayData *data)
 {
-       /*launcher_start (data->window, today_get_launcher (
-               (const gchar *[]){ "openmoko-dialer", "-m", NULL },
-               TRUE, FALSE));*/
        g_debug ("TODO: Launch messages app");
 
        return FALSE;
@@ -184,9 +166,8 @@
 tasks_button_press_cb (GtkWidget *widget, GdkEventButton *event,
                       TodayData *data)
 {
-       launcher_start (data->window, today_get_launcher (
-               (const gchar *[]){ "tasks", NULL, NULL },
-               TRUE, FALSE));
+       if (data->tasks_item) launcher_start (data->window, data->tasks_item,
+               (gchar *[]){ "tasks", NULL }, TRUE, TRUE);
 
        return FALSE;
 }
@@ -195,9 +176,8 @@
 dates_button_press_cb (GtkWidget *widget, GdkEventButton *event,
                       TodayData *data)
 {
-       launcher_start (data->window, today_get_launcher (
-               (const gchar *[]){ "openmoko-dates", NULL, NULL },
-               TRUE, FALSE));
+       if (data->dates_item) launcher_start (data->window, data->dates_item,
+               (gchar *[]){ "openmoko-dates", NULL }, TRUE, TRUE);
 
        return FALSE;
 }

Modified: 
trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-utils.c
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-utils.c   
2007-11-02 16:33:59 UTC (rev 3339)
+++ trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-utils.c   
2007-11-02 16:45:30 UTC (rev 3340)
@@ -35,19 +35,3 @@
        gtk_tool_item_set_expand (button, TRUE);
        return button;
 }
-
-const LauncherData *
-today_get_launcher (const gchar **argv, gboolean use_sn, gboolean single)
-{
-       static LauncherData launcher_data;
-       
-       launcher_data.argv = (char **)argv;
-       launcher_data.name = (char *)argv[0];
-       launcher_data.description = "";
-       launcher_data.icon = NULL;
-       launcher_data.categories = (char *[]){ "" };
-       launcher_data.use_sn = use_sn;
-       launcher_data.single_instance = single;
-       
-       return &launcher_data;
-}

Modified: 
trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-utils.h
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-utils.h   
2007-11-02 16:33:59 UTC (rev 3339)
+++ trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-utils.h   
2007-11-02 16:45:30 UTC (rev 3340)
@@ -28,7 +28,5 @@
 #include <libtaku/launcher-util.h>
 
 GtkToolItem *today_toolbutton_new (const gchar *icon_name);
-const LauncherData *today_get_launcher (const gchar **argv, gboolean use_sn,
-                                       gboolean single);
 
 #endif /*__TODAY_UTILS_H__*/

Modified: trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today.h
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today.h 
2007-11-02 16:33:59 UTC (rev 3339)
+++ trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today.h 
2007-11-02 16:45:30 UTC (rev 3340)
@@ -50,6 +50,12 @@
        GtkWidget *filter_combo;
        TakuLauncherCategory *search_cat;
        
+       TakuMenuItem *dialer_item;
+       TakuMenuItem *contacts_item;
+       TakuMenuItem *tasks_item;
+       TakuMenuItem *dates_item;
+       TakuMenuItem *clock_item;
+       
        /* App manager */
        GdkWindow *root_window;
        GtkWidget *tasks_table;




--- End Message ---
--- Begin Message ---
Author: thomas
Date: 2007-11-02 17:47:12 +0100 (Fri, 02 Nov 2007)
New Revision: 3341

Modified:
   trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/ChangeLog
   trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/Makefile.am
   
trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/application-menu.c
   
trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/appmanager-window.c
   trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/tool-box.c
Log:
* src/Makefile.am:
* src/application-menu.c: (on_install_single_application_activate):
* src/tool-box.c: (on_apply_clicked):

Fix build after removal of filter-menu.

* src/appmanager-window.c: (main): Move toolbar and searchbar onto
navigation page rather than always being available.


Modified: trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/ChangeLog
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/ChangeLog      
2007-11-02 16:45:30 UTC (rev 3340)
+++ trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/ChangeLog      
2007-11-02 16:47:12 UTC (rev 3341)
@@ -1,6 +1,17 @@
 2007-11-02  Thomas Wood  <[EMAIL PROTECTED]>
 
        * src/Makefile.am:
+       * src/application-menu.c: (on_install_single_application_activate):
+       * src/tool-box.c: (on_apply_clicked):
+
+       Fix build after removal of filter-menu.
+
+       * src/appmanager-window.c: (main): Move toolbar and searchbar onto
+       navigation page rather than always being available.
+
+2007-11-02  Thomas Wood  <[EMAIL PROTECTED]>
+
+       * src/Makefile.am:
        * src/appmanager-data.c: (application_manager_data_init),
        (application_manager_data_set_main_window):
        * src/appmanager-data.h:

Modified: 
trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/Makefile.am
===================================================================
--- 
trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/Makefile.am    
    2007-11-02 16:45:30 UTC (rev 3340)
+++ 
trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/Makefile.am    
    2007-11-02 16:47:12 UTC (rev 3341)
@@ -4,7 +4,6 @@
 
 openmoko_appmanager_SOURCES = appmanager-window.c\
                               application-menu.c\
-                              filter-menu.c\
                               ipkgapi.c\
                               navigation-area.c\
                               tool-box.c\

Modified: 
trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/application-menu.c
===================================================================
--- 
trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/application-menu.c
 2007-11-02 16:45:30 UTC (rev 3340)
+++ 
trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/application-menu.c
 2007-11-02 16:47:12 UTC (rev 3341)
@@ -19,7 +19,6 @@
  */
 
 #include "application-menu.h"
-#include "filter-menu.h"
 #include "appmanager-window.h"
 #include "package-list.h"
 #include "ipkgapi.h"
@@ -163,7 +162,6 @@
                                              get_error_msg ());
         break;
       case INSTALL_SUCCESS:
-        filter_menu_show_install_list (appdata);
         infodialog = gtk_message_dialog_new (NULL,
                                              GTK_DIALOG_DESTROY_WITH_PARENT,
                                              GTK_MESSAGE_INFO,

Modified: 
trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/appmanager-window.c
===================================================================
--- 
trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/appmanager-window.c
        2007-11-02 16:45:30 UTC (rev 3340)
+++ 
trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/appmanager-window.c
        2007-11-02 16:47:12 UTC (rev 3341)
@@ -48,7 +48,7 @@
   GtkWidget       *detail;
   GtkWidget       *notebook;
   GtkWidget *searchbar;
-  GtkWidget *vbox;
+  GtkWidget *vbox, *nav_vbox;
 
   gint             ret;
 
@@ -101,21 +101,26 @@
   gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), selectmenu);
   gtk_menu_shell_append (GTK_MENU_SHELL (menubox), menuitem);
 
-  toolbox = tool_box_new (appdata);
-  gtk_box_pack_start (GTK_BOX (vbox), toolbox, FALSE, FALSE, 0);
-  
-  searchbar = search_bar_new (appdata);
-  gtk_box_pack_start (GTK_BOX (vbox), searchbar, FALSE, FALSE, 0);
-
   notebook = gtk_notebook_new ();
   gtk_notebook_set_tab_pos (GTK_NOTEBOOK (notebook), GTK_POS_BOTTOM);
   gtk_box_pack_start (GTK_BOX (vbox), notebook, TRUE, TRUE, 0);
 
-  navigation = navigation_area_new (appdata);
-  gtk_notebook_append_page (GTK_NOTEBOOK (notebook), navigation,
+  /* navigation page */
+  nav_vbox = gtk_vbox_new (FALSE, 0);
+  gtk_notebook_append_page (GTK_NOTEBOOK (notebook), nav_vbox,
      gtk_image_new_from_stock (GTK_STOCK_INDEX, GTK_ICON_SIZE_LARGE_TOOLBAR));
-  gtk_container_child_set (GTK_CONTAINER (notebook), navigation, "tab-expand", 
TRUE, NULL);
+  gtk_container_child_set (GTK_CONTAINER (notebook), nav_vbox, "tab-expand", 
TRUE, NULL);
 
+  toolbox = tool_box_new (appdata);
+  gtk_box_pack_start (GTK_BOX (nav_vbox), toolbox, FALSE, FALSE, 0);
+  
+  searchbar = search_bar_new (appdata);
+  gtk_box_pack_start (GTK_BOX (nav_vbox), searchbar, FALSE, FALSE, 0);
+  
+  navigation = navigation_area_new (appdata);
+  gtk_box_pack_start (GTK_BOX (nav_vbox), navigation, TRUE, TRUE, 0);
+  
+
   detail = detail_area_new (appdata);
   gtk_notebook_append_page (GTK_NOTEBOOK (notebook), detail,
      gtk_image_new_from_stock (GTK_STOCK_FILE, GTK_ICON_SIZE_LARGE_TOOLBAR));
@@ -137,7 +142,7 @@
 
   /* Add section list to the filter menu */
   package_list_add_section_to_filter_menu (appdata);
-  search_bar_set_active_filter (searchbar, FILTER_INSTALLED);
+  search_bar_set_active_filter (MOKO_SEARCH_BAR (searchbar), FILTER_INSTALLED);
 
   gtk_widget_show_all (GTK_WIDGET (window));
   g_debug ("application manager enter main loop");

Modified: 
trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/tool-box.c
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/tool-box.c 
2007-11-02 16:45:30 UTC (rev 3340)
+++ trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/tool-box.c 
2007-11-02 16:47:12 UTC (rev 3341)
@@ -27,7 +27,6 @@
 #include "appmanager-window.h"
 #include "apply-dialog.h"
 #include "install-dialog.h"
-#include "filter-menu.h"
 
 /*
  * @brief The callback function of the button "upgrade"
@@ -100,8 +99,6 @@
       g_thread_create (package_list_execute_change, data, TRUE, NULL);
       gtk_dialog_run (GTK_DIALOG (installdialog));
       gtk_widget_destroy (GTK_WIDGET (installdialog));
-
-      filter_menu_show_install_list (MOKO_APPLICATION_MANAGER_DATA (data));
     }
 
   gtk_widget_destroy (dialog);




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

Reply via email to