[nautilus-actions] A valid menu has at least one valid subitem
- From: Pierre Wieser <pwieser src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [nautilus-actions] A valid menu has at least one valid subitem
- Date: Wed, 14 Oct 2009 17:30:21 +0000 (UTC)
commit 96ddd0e04f0f4849fe707f0d82c5e9da6dd4e69b
Author: Pierre Wieser <pwieser trychlos org>
Date: Mon Oct 12 07:02:49 2009 +0200
A valid menu has at least one valid subitem
ChangeLog | 3 +++
src/runtime/na-object-menu.c | 15 +++++++++++++++
2 files changed, 18 insertions(+), 0 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index f85f94f..cc3b482 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,9 @@
* src/nact/nact-tree-model.c (drop_inside):
Adjust the dest when moving items down.
+ * src/runtime/na-object-menu.c (object_is_valid):
+ A valid menu has at least one valid subitem.
+
2009-10-11 Pierre Wieser <pwieser trychlos org>
* src/nact/nact-iactions-list.c (do_insert_into_first):
diff --git a/src/runtime/na-object-menu.c b/src/runtime/na-object-menu.c
index 1151550..6e838ab 100644
--- a/src/runtime/na-object-menu.c
+++ b/src/runtime/na-object-menu.c
@@ -328,12 +328,16 @@ object_are_equal( const NAObject *a, const NAObject *b )
/*
* a valid NAObjectMenu requires a not null, not empty label
* this is checked here as NAObject doesn't have this condition
+ *
+ * also, a valid menu has at least one valid child
*/
static gboolean
object_is_valid( const NAObject *menu )
{
gchar *label;
gboolean is_valid = TRUE;
+ gint valid_subitems;
+ GList *subitems, *ip;
g_return_val_if_fail( NA_IS_OBJECT_MENU( menu ), FALSE );
@@ -344,6 +348,17 @@ object_is_valid( const NAObject *menu )
is_valid = ( label && g_utf8_strlen( label, -1 ) > 0 );
g_free( label );
}
+
+ if( is_valid ){
+ valid_subitems = 0;
+ subitems = na_object_get_items_list( menu );
+ for( ip = subitems ; ip ; ip = ip->next ){
+ if( na_iduplicable_is_valid( ip->data )){
+ valid_subitems += 1;
+ }
+ }
+ is_valid = ( valid_subitems > 0 );
+ }
}
return( is_valid );
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]