• Home
  • Raw
  • Download

Lines Matching refs:group

158 static void                     g_dbus_menu_group_changed               (GDBusMenuGroup  *group,
170 static GDBusMenuModel * g_dbus_menu_model_get_from_group (GDBusMenuGroup *group,
293 GDBusMenuGroup *group; in g_dbus_menu_path_signal() local
295 group = g_hash_table_lookup (path->groups, GINT_TO_POINTER (group_id)); in g_dbus_menu_path_signal()
297 if (group != NULL) in g_dbus_menu_path_signal()
298 g_dbus_menu_group_changed (group, menu_id, position, removes, adds); in g_dbus_menu_path_signal()
375 g_dbus_menu_group_ref (GDBusMenuGroup *group) in g_dbus_menu_group_ref() argument
377 group->ref_count++; in g_dbus_menu_group_ref()
379 return group; in g_dbus_menu_group_ref()
383 g_dbus_menu_group_unref (GDBusMenuGroup *group) in g_dbus_menu_group_unref() argument
385 if (--group->ref_count == 0) in g_dbus_menu_group_unref()
387 g_assert (group->state == GROUP_OFFLINE); in g_dbus_menu_group_unref()
388 g_assert (group->active == 0); in g_dbus_menu_group_unref()
390 g_hash_table_remove (group->path->groups, GINT_TO_POINTER (group->id)); in g_dbus_menu_group_unref()
391 g_hash_table_unref (group->proxies); in g_dbus_menu_group_unref()
392 g_hash_table_unref (group->menus); in g_dbus_menu_group_unref()
394 g_dbus_menu_path_unref (group->path); in g_dbus_menu_group_unref()
396 g_slice_free (GDBusMenuGroup, group); in g_dbus_menu_group_unref()
482 g_dbus_menu_group_go_offline (GDBusMenuGroup *group) in g_dbus_menu_group_go_offline() argument
484 g_dbus_menu_path_deactivate (group->path); in g_dbus_menu_group_go_offline()
485 g_dbus_connection_call (group->path->id->connection, in g_dbus_menu_group_go_offline()
486 group->path->id->bus_name, in g_dbus_menu_group_go_offline()
487 group->path->id->object_path, in g_dbus_menu_group_go_offline()
489 g_variant_new_parsed ("([ %u ],)", group->id), in g_dbus_menu_group_go_offline()
492 group->state = GROUP_OFFLINE; in g_dbus_menu_group_go_offline()
502 GDBusMenuGroup *group = user_data; in g_dbus_menu_group_start_ready() local
505 g_assert (group->state == GROUP_PENDING); in g_dbus_menu_group_start_ready()
509 if (group->active) in g_dbus_menu_group_start_ready()
511 group->state = GROUP_ONLINE; in g_dbus_menu_group_start_ready()
523 if (group_id == group->id) in g_dbus_menu_group_start_ready()
524 g_dbus_menu_group_changed (group, menu_id, 0, 0, items); in g_dbus_menu_group_start_ready()
529 g_dbus_menu_group_go_offline (group); in g_dbus_menu_group_start_ready()
534 g_dbus_menu_group_unref (group); in g_dbus_menu_group_start_ready()
538 g_dbus_menu_group_activate (GDBusMenuGroup *group) in g_dbus_menu_group_activate() argument
540 if (group->active++ == 0) in g_dbus_menu_group_activate()
542 g_assert (group->state != GROUP_ONLINE); in g_dbus_menu_group_activate()
544 if (group->state == GROUP_OFFLINE) in g_dbus_menu_group_activate()
546 g_dbus_menu_path_activate (group->path); in g_dbus_menu_group_activate()
548 g_dbus_connection_call (group->path->id->connection, in g_dbus_menu_group_activate()
549 group->path->id->bus_name, in g_dbus_menu_group_activate()
550 group->path->id->object_path, in g_dbus_menu_group_activate()
552 g_variant_new_parsed ("([ %u ],)", group->id), in g_dbus_menu_group_activate()
556 g_dbus_menu_group_ref (group)); in g_dbus_menu_group_activate()
557 group->state = GROUP_PENDING; in g_dbus_menu_group_activate()
563 g_dbus_menu_group_deactivate (GDBusMenuGroup *group) in g_dbus_menu_group_deactivate() argument
565 if (--group->active == 0) in g_dbus_menu_group_deactivate()
567 g_assert (group->state != GROUP_OFFLINE); in g_dbus_menu_group_deactivate()
569 if (group->state == GROUP_ONLINE) in g_dbus_menu_group_deactivate()
574 g_hash_table_remove_all (group->menus); in g_dbus_menu_group_deactivate()
576 g_dbus_menu_group_go_offline (group); in g_dbus_menu_group_deactivate()
582 g_dbus_menu_group_changed (GDBusMenuGroup *group, in g_dbus_menu_group_changed() argument
601 if (group->state != GROUP_ONLINE) in g_dbus_menu_group_changed()
604 items = g_hash_table_lookup (group->menus, GINT_TO_POINTER (menu_id)); in g_dbus_menu_group_changed()
609 g_hash_table_insert (group->menus, GINT_TO_POINTER (menu_id), items); in g_dbus_menu_group_changed()
630 g_hash_table_remove (group->menus, GINT_TO_POINTER (menu_id)); in g_dbus_menu_group_changed()
634 if ((proxy = g_hash_table_lookup (group->proxies, GINT_TO_POINTER (menu_id)))) in g_dbus_menu_group_changed()
642 GDBusMenuGroup *group; in g_dbus_menu_group_get_from_path() local
644 group = g_hash_table_lookup (path->groups, GINT_TO_POINTER (group_id)); in g_dbus_menu_group_get_from_path()
646 if (group == NULL) in g_dbus_menu_group_get_from_path()
648 group = g_slice_new (GDBusMenuGroup); in g_dbus_menu_group_get_from_path()
649 group->path = g_dbus_menu_path_ref (path); in g_dbus_menu_group_get_from_path()
650 group->id = group_id; in g_dbus_menu_group_get_from_path()
651 group->proxies = g_hash_table_new (NULL, NULL); in g_dbus_menu_group_get_from_path()
652 group->menus = g_hash_table_new_full (NULL, NULL, NULL, (GDestroyNotify) g_sequence_free); in g_dbus_menu_group_get_from_path()
653 group->state = GROUP_OFFLINE; in g_dbus_menu_group_get_from_path()
654 group->active = 0; in g_dbus_menu_group_get_from_path()
655 group->ref_count = 0; in g_dbus_menu_group_get_from_path()
657 g_hash_table_insert (path->groups, GINT_TO_POINTER (group->id), group); in g_dbus_menu_group_get_from_path()
660 return g_dbus_menu_group_ref (group); in g_dbus_menu_group_get_from_path()
670 GDBusMenuGroup *group; in g_dbus_menu_group_get() local
674 group = g_dbus_menu_group_get_from_path (path, group_id); in g_dbus_menu_group_get()
677 return group; in g_dbus_menu_group_get()
687 GDBusMenuGroup *group; member
709 g_dbus_menu_group_activate (proxy->group); in g_dbus_menu_model_get_n_items()
768 GDBusMenuGroup *group; in g_dbus_menu_model_get_item_links() local
774 if (proxy->group->id != group_id) in g_dbus_menu_model_get_item_links()
775 group = g_dbus_menu_group_get_from_path (proxy->group->path, group_id); in g_dbus_menu_model_get_item_links()
777 group = g_dbus_menu_group_ref (proxy->group); in g_dbus_menu_model_get_item_links()
779 link = g_dbus_menu_model_get_from_group (group, menu_id); in g_dbus_menu_model_get_item_links()
783 g_dbus_menu_group_unref (group); in g_dbus_menu_model_get_item_links()
795 g_dbus_menu_group_deactivate (proxy->group); in g_dbus_menu_model_finalize()
797 g_hash_table_remove (proxy->group->proxies, GINT_TO_POINTER (proxy->id)); in g_dbus_menu_model_finalize()
798 g_dbus_menu_group_unref (proxy->group); in g_dbus_menu_model_finalize()
836 g_dbus_menu_model_get_from_group (GDBusMenuGroup *group, in g_dbus_menu_model_get_from_group() argument
841 proxy = g_hash_table_lookup (group->proxies, GINT_TO_POINTER (menu_id)); in g_dbus_menu_model_get_from_group()
848 proxy->items = g_hash_table_lookup (group->menus, GINT_TO_POINTER (menu_id)); in g_dbus_menu_model_get_from_group()
849 g_hash_table_insert (group->proxies, GINT_TO_POINTER (menu_id), proxy); in g_dbus_menu_model_get_from_group()
850 proxy->group = g_dbus_menu_group_ref (group); in g_dbus_menu_model_get_from_group()
883 GDBusMenuGroup *group; in g_dbus_menu_model_get() local
893 group = g_dbus_menu_group_get (context, connection, bus_name, object_path, 0); in g_dbus_menu_model_get()
894 proxy = g_dbus_menu_model_get_from_group (group, 0); in g_dbus_menu_model_get()
895 g_dbus_menu_group_unref (group); in g_dbus_menu_model_get()
913 GDBusMenuGroup *group = value;
916 group->id, group->ref_count, group->state, group->active);
918 g_hash_table_foreach (group->proxies, dump_proxy, NULL);