This is a known issue introduces in gtk+-3.22.2 There are some patches on arch: https://git.archlinux.org/svntogit/packages.git/tree/trunk/0001-Fix-widget-sizing-on-current-Gtk-3.22-branch.patch?h=packages/vim https://git.archlinux.org/svntogit/packages.git/tree/trunk/0002-Further-fix-widget-sizing.patch?h=packages/vim
I can confirm the arch patches fix gvim
Reading https://bugzilla.gnome.org/show_bug.cgi?id=773387#c6 the next gtk+-3.22 version should solve this
Meaning no offense, however, what would oppose shipping the same patches as ArchLinux for now to resolve this issue for the moment? I applied both linked patches via epatch_user and gvim works for me again now.
according to https://github.com/vim/vim/commit/182707ac10d77359bf7a87c6b23ce4025d5b0ad4 the fix is in 3.22.4 and/or vim 8.0.0095
Pushed gtk+-3.22.4, please check if it fixes this issue for you.
gtk+-3.22.4 did not fully fix gvim for me. The window opens at minimal size and the menus do not open at all when I run gvim on my gentoo box through an ssh tunnel to be displayed on Cygwin/X (v 1.18.4). When displayed on local XFCE desktop it appears to work. I'm seeing the following 4 errors repeated several times when starting gvim: (gvim:17512): Gtk-CRITICAL **: gtk_widget_get_preferred_height_for_width: assertion 'width >= 0' failed *** BUG *** In pixman_region32_init_rect: Invalid rectangle passed Set a breakpoint on '_pixman_log_error' to debug (gvim:17512): Gtk-WARNING **: Negative content width -7 (allocation 1, extents 4x4) while allocating gadget (node arrow, owner GtkMenu) (gvim:17512): Gtk-WARNING **: Negative content height -7 (allocation 1, extents 4x4) while allocating gadget (node menuitem, owner GtkMenuItem) I believe the fixes above are incomplete. I tried gtk+-3.22.4 with both gvim-8.0.0005 and gvim-9999. Reverting to gtk+-3.20.9 got things working again.
For me, the update to gtk+-3.22.4 solved the issue. For the record, the issue I had was: I got error messages (gvim:22696): Gtk-CRITICAL **: gtk_widget_set_size_request: assertion 'width >= -1' failed (gvim:22696): Gtk-CRITICAL **: gtk_widget_set_size_request: assertion 'width >= -1' failed (gvim:22696): Gtk-CRITICAL **: gtk_widget_set_size_request: assertion 'width >= -1' failed (gvim:22696): Gtk-CRITICAL **: gtk_widget_set_size_request: assertion 'width >= -1' failed .. and the editing area was only a couple of characters wide and about 3 lines high (using a tiling WM, maybe if I would have set it to floating the complete window would have been that small).
(In reply to A Blamey from comment #6) > gtk+-3.22.4 did not fully fix gvim for me. The window opens at minimal size > and the menus do not open at all when I run gvim on my gentoo box through an > ssh tunnel to be displayed on Cygwin/X (v 1.18.4). When displayed on local > XFCE desktop it appears to work. Can you try the X11 forwarding tunnel case that isn't fixed with 3.22.1 or 3.22.0? Temporarily copying the 3.22.2 ebuild to 3.22.1 and/or 3.22.0 should probably work good enough.
I was mistaken about this bug being the one causing my problem above. This bug causes similar behavior, but the errors reported and underlying cause are different. See https://github.com/vim/vim/issues/1187#issuecomment-262815607 for the open issue related to Cygwin/X. gtk+-3.22.4 does fix the widget sizing bug for me on local X11. On Cygwin/X when I use gtk+-3.22.3 the central text widget does not appear and I see the errors reported by Tiziano, in addition to the errors I listed in comment 6 - a combination of two bugs - which is where my confusion arose. My problem appears to be some other change between gtk+-3.20 and gtk+-3.22 that only appears on Cygwin/X. I suspect a difference between the xorg-x11 and Cygwin/X X11 implementations and/or X11 extensions that has been hit by some of many changes between the two gtk+ releases, especially to do with window sizing and menu positioning throughout the X11/mir/Wayland backend code. For now I've switched gvim back to using gtk+:2 (via USE=gtk -gtk3) and it works flawlessly on local X11 and tunnelled Cygwin/X. When future gtk+:3 releases appear I'll retest to see if the behaviour changes.
what is pending to do here with the latest 3.22.x gtk+ version?