Changeset 3543
- Timestamp:
- 11/30/07 18:17:53 (5 years ago)
- Location:
- trunk/src/target/OM-2007.2/applications/openmoko-today2
- Files:
-
- 3 edited
-
ChangeLog (modified) (1 diff)
-
src/today-task-manager.c (modified) (8 diffs)
-
src/today.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/target/OM-2007.2/applications/openmoko-today2/ChangeLog
r3541 r3543 1 2007-11-30 Chris Lord <chris@openedhand.com> 2 3 * src/today-task-manager.c: (today_task_manager_populate_tasks), 4 (set_focus_cb), (page_shown), (page_hidden), 5 (today_task_manager_notify_visible_cb), 6 (today_task_manager_visibility_notify_event_cb), 7 (today_task_manager_unmap_cb), (today_task_manager_page_create): 8 * src/today.h: 9 Grey out kill/jump-to/killall buttons where appropriate, fix spurious 10 warnings on app exit 11 1 12 2007-11-30 Chris Lord <chris@openedhand.com> 2 13 -
trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today-task-manager.c
r3494 r3543 344 344 today_task_manager_free_tasks (data); 345 345 346 /* Return if our main window has gone (e.g. on quit) */ 347 if ((!data->window) || (!data->window->window)) return; 348 346 349 /* Retrieve list of app windows from root window */ 347 350 display = gtk_widget_get_display (data->tasks_table); … … 381 384 GdkWindow *window; 382 385 383 if ( GDK_WINDOW_XID (current) == windows[i]) continue;386 if (current && GDK_WINDOW_XID (current) == windows[i]) continue; 384 387 if (GDK_WINDOW_XID (data->window->window) == windows[i]) 385 388 continue; … … 428 431 gtk_widget_show (task_tile); 429 432 } 430 g_object_unref (current);431 432 /* If no windows were found, insert an insensitive "No tasks" item */433 if (nitems == 0) {434 GtkWidget *task_tile;435 436 task_tile = taku_icon_tile_new ();433 if (current) g_object_unref (current); 434 435 /* If no windows were found, insert an insensitive "No tasks" item */ 436 if (nitems == 0) { 437 GtkWidget *task_tile; 438 439 task_tile = taku_icon_tile_new (); 437 440 taku_icon_tile_set_primary (TAKU_ICON_TILE (task_tile), 438 441 _("No active tasks")); 439 442 440 gtk_widget_set_sensitive (task_tile, FALSE);443 gtk_widget_set_sensitive (task_tile, FALSE); 441 444 442 445 gtk_container_add (GTK_CONTAINER (data->tasks_table), 443 446 task_tile); 444 447 gtk_widget_show (task_tile); 445 } 446 447 /* Cleanup */ 448 XFree (windows); 448 449 gtk_widget_set_sensitive ( 450 GTK_WIDGET (data->killall_button), FALSE); 451 } else { 452 gtk_widget_set_sensitive ( 453 GTK_WIDGET (data->killall_button), TRUE); 454 } 455 456 /* Cleanup */ 457 XFree (windows); 458 } 459 460 static void 461 set_focus_cb (GtkWindow *window, GtkWidget *widget, TodayData *data) 462 { 463 gtk_widget_set_sensitive (data->kill_button, TAKU_IS_TILE (widget)); 464 gtk_widget_set_sensitive (data->switch_button, TAKU_IS_TILE (widget)); 465 } 466 467 static void 468 page_shown (TodayData *data) 469 { 470 today_task_manager_populate_tasks (data); 471 g_signal_connect (data->window, "set-focus", 472 G_CALLBACK (set_focus_cb), data); 473 } 474 475 static void 476 page_hidden (TodayData *data) 477 { 478 today_task_manager_free_tasks (data); 479 g_signal_handlers_disconnect_by_func (data->window, set_focus_cb, data); 449 480 } 450 481 … … 456 487 if ((!hidden) && (!GTK_WIDGET_VISIBLE (gobject))) { 457 488 hidden = TRUE; 458 today_task_manager_free_tasks(data);489 page_hidden (data); 459 490 } 460 491 } … … 468 499 (event->state == GDK_VISIBILITY_UNOBSCURED)) && (hidden)) { 469 500 hidden = FALSE; 470 today_task_manager_populate_tasks(data);501 page_shown (data); 471 502 } else if ((event->state == GDK_VISIBILITY_FULLY_OBSCURED) && 472 503 (!hidden)) { 473 504 hidden = TRUE; 474 today_task_manager_free_tasks(data);505 page_hidden (data); 475 506 } 476 507 … … 483 514 if (!hidden) { 484 515 hidden = TRUE; 485 today_task_manager_free_tasks(data);516 page_hidden (data); 486 517 } 487 518 } … … 716 747 { 717 748 GtkWidget *vbox, *toolbar, *viewport, *scroll; 718 GtkToolItem *button;719 749 720 750 vbox = gtk_vbox_new (FALSE, 0); … … 725 755 726 756 /* Kill all apps button */ 727 button = gtk_tool_button_new_from_stock (MOKO_STOCK_FOLDER_DELETE); 728 gtk_tool_item_set_expand (button, TRUE); 729 gtk_toolbar_insert (GTK_TOOLBAR (toolbar), button, 0); 757 data->kill_button = gtk_tool_button_new_from_stock ( 758 MOKO_STOCK_FOLDER_DELETE); 759 gtk_tool_item_set_expand (data->kill_button, TRUE); 760 gtk_toolbar_insert (GTK_TOOLBAR (toolbar), data->kill_button, 0); 730 761 gtk_toolbar_insert (GTK_TOOLBAR (toolbar), 731 762 gtk_separator_tool_item_new (), 0); 732 g_signal_connect ( G_OBJECT (button), "clicked",763 g_signal_connect (data->kill_button, "clicked", 733 764 G_CALLBACK (today_task_manager_killall_clicked_cb), data); 734 765 735 766 /* Switch to app button */ 736 button = gtk_tool_button_new_from_stock (GTK_STOCK_JUMP_TO);737 gtk_tool_item_set_expand ( button, TRUE);738 gtk_toolbar_insert (GTK_TOOLBAR (toolbar), button, 0);767 data->switch_button = gtk_tool_button_new_from_stock (GTK_STOCK_JUMP_TO); 768 gtk_tool_item_set_expand (data->switch_button, TRUE); 769 gtk_toolbar_insert (GTK_TOOLBAR (toolbar), data->switch_button, 0); 739 770 gtk_toolbar_insert (GTK_TOOLBAR (toolbar), 740 771 gtk_separator_tool_item_new (), 0); 741 g_signal_connect ( G_OBJECT (button), "clicked",772 g_signal_connect (data->switch_button, "clicked", 742 773 G_CALLBACK (today_task_manager_raise_clicked_cb), data); 743 774 744 775 /* Kill app button */ 745 button = gtk_tool_button_new_from_stock (GTK_STOCK_DELETE);746 gtk_tool_item_set_expand ( button, TRUE);747 gtk_toolbar_insert (GTK_TOOLBAR (toolbar), button, 0);748 g_signal_connect ( G_OBJECT (button), "clicked",776 data->killall_button = gtk_tool_button_new_from_stock (GTK_STOCK_DELETE); 777 gtk_tool_item_set_expand (data->killall_button, TRUE); 778 gtk_toolbar_insert (GTK_TOOLBAR (toolbar), data->killall_button, 0); 779 g_signal_connect (data->killall_button, "clicked", 749 780 G_CALLBACK (today_task_manager_kill_clicked_cb), data); 750 781 -
trunk/src/target/OM-2007.2/applications/openmoko-today2/src/today.h
r3476 r3543 61 61 GdkWindow *root_window; 62 62 GtkWidget *tasks_table; 63 GtkToolItem *kill_button; 64 GtkToolItem *killall_button; 65 GtkToolItem *switch_button; 63 66 } TodayData; 64 67 #endif
Note: See TracChangeset
for help on using the changeset viewer.
