diff --git a/src/terminal/actions/action.c b/src/terminal/actions/action.c index b7d0b45..4d8f4d9 100644 --- a/src/terminal/actions/action.c +++ b/src/terminal/actions/action.c @@ -323,14 +323,8 @@ return FALSE; LIB3270_ACTION_GROUP group = v3270_action_get_group(object); - - debug("**************** %s(%d %d)",g_action_get_name(object),(int) group, (int) LIB3270_ACTION_GROUP_NONE); - if(group != LIB3270_ACTION_GROUP_NONE) { - - debug("**************** %s",g_action_get_name(object)); - - return FALSE; + return lib3270_action_group_get_activatable(v3270_get_session(terminal),group) ? TRUE : FALSE; } return TRUE; diff --git a/src/terminal/actions/table.c b/src/terminal/actions/table.c index 1cadd94..565afcc 100644 --- a/src/terminal/actions/table.c +++ b/src/terminal/actions/table.c @@ -389,13 +389,18 @@ } + static LIB3270_ACTION_GROUP get_action_group(GAction *action) { + return GET_DESCRIPTOR(action)->group; + } + static void V270InternalAction_class_init(V270InternalActionClass *klass) { - klass->parent_class.get_name = get_name; - klass->parent_class.get_icon_name = get_icon_name; - klass->parent_class.get_label = get_label; - klass->parent_class.get_tooltip = get_tooltip; - klass->parent_class.activate = activate; + klass->parent_class.get_name = get_name; + klass->parent_class.get_icon_name = get_icon_name; + klass->parent_class.get_label = get_label; + klass->parent_class.get_tooltip = get_tooltip; + klass->parent_class.activate = activate; + klass->parent_class.get_action_group = get_action_group; } -- libgit2 0.21.2