Skip to content
  • This seems to be caused by destructuring from Gio.ActionGroup.query_action() into an object's properties. Something like this:

    let actor = new Clutter.Actor();
    
    [widget.visible, widget.reactive] = actionGroup.query_action('action-name');
  • My best guess so far, is that this is related to the (out) parameters of Gio.ActionGroup.query_action(), which may not detail the ownership transfer well enough for GJS:

    https://gitlab.gnome.org/GNOME/glib/blob/72ed39a8c2e85bd4ef679572cd4e63126506e364/gio/gactiongroup.c#L740-L747

    /**
     * g_action_group_query_action:
     * @action_group: a #GActionGroup
     * @action_name: the name of an action in the group
     * @enabled: (out): if the action is presently enabled
     * @parameter_type: (out) (optional): the parameter type, or %NULL if none needed
     * @state_type: (out) (optional): the state type, or %NULL if stateless
     * @state_hint: (out) (optional): the state hint, or %NULL if none
     * @state: (out) (optional): the current state, or %NULL if stateless
     *
     * <snip>
     *
     * Returns: %TRUE if the action exists, else %FALSE
     */
    gboolean
    g_action_group_query_action (GActionGroup        *group,
                                 const gchar         *action_name,
                                 gboolean            *enabled,
                                 const GVariantType **parameter_type,
                                 const GVariantType **state_type,
                                 GVariant           **state_hint,
                                 GVariant           **state)
    {
    }
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment