auto widget=gtk_label_new(text);
m_handle=GTK_LABEL(widget);
gtk_label_set_line_wrap(m_handle,TRUE);
gtk_label_set_max_width_chars(m_handle,80);
gtk_widget_set_size_request(GTK_WIDGET(m_handle),-1,1);
And, the label wraps but GTK thinks the widget require the height equal to line break after every word. And no, I cannot shrink the window manually. How to restore its height?
Although I'm not at all experienced with Gtk3 programming, I have seen a very similar phenomenon in Qt5.
I think what happens is that Gtk3 will set the minimum height of the label to the height it would have when wrapped to its minimum width. I mean the minimum width of the label itself, so even if the window cannot be made smaller, the label could potentially, if there were some other widgets next to it in the window.
This mechanism is described here: https://developer.gnome.org/gtk3/stable/GtkWidget.html#geometry-management
Note especially:
The minimum height for the minimum width is normally used to set the minimum size constraint on the toplevel (unless gtk_window_set_geometry_hints() is explicitly used instead).
So you could try setting a bigger minimum width constraint on the label itself, and see if that changes anything.