I'm not happy with the get_icon_name functions. Tried it on an empty ActionRow and it returns NULL. Probably all get_icon_name functions should be nullable? (Some are already.)
Ah, if you mean the parent parameter, there's a good reason to pass null there - a page doesn't have to have a parent - and it is documented. It's not valid though to make a page's parent another page that's not actually from this view, but I don't see how nullability is related here. Can certainly document it though.
The difference is that Rust does not panic 'only because of critical' iirc? It only panics if return values are involved. That's why add/set functions unusually don't panic. Because they don't return anything.
Ok, then I'm lost since it's indeed already not nullable. :)
In the sense of alternative option to make it nullable instead of documenting it. I tried to formulate this option very passively to not give you the impression that I want to restart the discussion. But you can just forget the nullable part. :)
Currently we are returning Option. That's mostly because I didn't had the time to check all the annotations in GTK and we default to Option in this case.
It's actually a constellation that seems quite new in GTK 4. At least I have never hit those problems before.
Not really. Their properties have null as initial values but only because we don't know by that point what the value will be. But their getters will never return null unless self is null. (unless GEnumValue names and nicks can be nulls, of course?)
This specific function is more debatable though. We actually discussed with Julian before whether to make the return value there nullable. The problem is, https://developer.gnome.org/gdk3/stable/gdk3-Pixbufs.html is nullable, but doesn't say why. We checked the source and found out that the only way it can be null there is if you run out of memory to allocate the pixbuf. And since nothing else is nullable based on that (e.g. g_object_new()), we didn't make it one.
Since the only thing the other rust folks did back then was explain to me why I'm wrong I think we can just close this and wait for their initiative on how to solve this.