After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 764493 - Incorrect function signature for start_editing () in public abstract class CellRenderer in gtk+-3.0.vapi
Incorrect function signature for start_editing () in public abstract class Ce...
Status: RESOLVED FIXED
Product: vala
Classification: Core
Component: Bindings: GTK+ GStreamer WebKitGTK+
0.32.x
Other Linux
: Normal normal
: ---
Assigned To: Vala maintainers
Vala maintainers
Depends on:
Blocks:
 
 
Reported: 2016-04-02 11:52 UTC by jeremy
Modified: 2016-09-14 16:26 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description jeremy 2016-04-02 11:52:34 UTC
The signature given in gtk+-3.0.vapi (version 0.32) is:

public virtual unowned Gtk.CellEditable? start_editing (Gdk.Event event, Gtk.Widget widget, string path, Gdk.Rectangle background_area, Gdk.Rectangle cell_area, Gtk.CellRendererState flags);

In the source code gtkcellarea.c there are these lines:

 /* Activate or Edit the cell
       *
       * Currently just not sending an event, renderers afaics dont use
       * the event argument anyway, worst case is we can synthesize one.
       */
      if (gtk_cell_area_activate_cell (area, widget, activate_cell, NULL,
                                       &renderer_area, flags))
        return TRUE;

This means renderers can receive null events when activated.  I believe the correct signature is therefore:

public virtual unowned Gtk.CellEditable? start_editing (Gdk.Event? event, Gtk.Widget widget, string path, Gdk.Rectangle background_area, Gdk.Rectangle cell_area, Gtk.CellRendererState flags);

I would be grateful if this could be fixed, thanks.

(An alternative would be to ensure renderers are not sent null events)