Yukihiro Nakadaira wrote: > > Dennis Benzinger wrote: > > > >> Am 29.12.2010 18:41, schrieb Roy Jamison: > >>> Hi all, > >>> > >>> A bug has been reported to Launchpad (quite a while back in fact) at > >>> https://bugs.launchpad.net/ubuntu/+source/vim/+bug/137854 and also to > >>> Debian at http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=379612 but > >>> there doesn't appear to have been anything done with it, therefore I > >>> would like to request that a developer would look at this problem > >>> directly if possible. > >>> Sorry to email you all directly, but I hope it pushes it through enough > >>> that it can be looked at :) > >>> > >>> Description: > >>> > >>> gvim does not correctly resize the window when the first tab is opened, > >>> part of the window becomes hidden behind task panel, thus hiding the :ex > >>> command and status area making it necessary to manually resize the > >>> window again. > >>> > >>> Recreate: > >>> 1) launch gvim > >>> 2) expand the window to full size > >>> 3) :tabnew test.txt > >>> > >>> Result: > >>> The tab is created properly, but the bottom of the window is forced > >>> downward, proportionately to the height of the tab, and behind the task > >>> panel of the Gnome desktop. > >>> > >>> Expected result: > >>> gvim should have have shrunk the editing area, not resized the > >>> window. > >>> > >>> > >>> Note: This affects all versions from 7.1 up to the most recent version > >>> in a stable Ubuntu: 7.2.330 > >>> [...] > >> > >> It works for me with version 7.3.75. And there's already 7.3.89. > >> Seems like it has been fixed now. Please test again with the newest > >> version. > > > > Also see the 'guiheadroom' option. > > > > This problem occurred when using multi monitor and screen height is > larger than maximized window height. For example, when using vertical > layout. > > +----------+ > | | > | monitor1 | > | | > +----------+ > | | > | monitor2 | > | | > +----------+ > > Please check the following patch. > > diff --git a/src/gui.c b/src/gui.c > --- a/src/gui.c > +++ b/src/gui.c > @@ -1402,7 +1402,7 @@ > if (!gui.shell_created) > return; > > -#ifdef MSWIN > +#if defined(MSWIN) || defined(FEAT_GUI_GTK) > /* If not setting to a user specified size and maximized, calculate the > * number of characters that fit in the maximized window. */ > if (!mustset && gui_mch_maximized()) > diff --git a/src/gui_gtk_x11.c b/src/gui_gtk_x11.c > --- a/src/gui_gtk_x11.c > +++ b/src/gui_gtk_x11.c > @@ -3901,6 +3901,17 @@ > gtk_window_unmaximize(GTK_WINDOW(gui.mainwin)); > } > > + void > +gui_mch_newfont() > +{ > + int w, h; > + > + gtk_window_get_size(GTK_WINDOW(gui.mainwin), &w, &h); > + w -= get_menu_tool_width(); > + h -= get_menu_tool_height(); > + gui_resize_shell(w, h); > +} > + > /* > * Set the windows size. > */ > diff --git a/src/proto/gui_gtk_x11.pro b/src/proto/gui_gtk_x11.pro > --- a/src/proto/gui_gtk_x11.pro > +++ b/src/proto/gui_gtk_x11.pro > @@ -20,6 +20,7 @@ > void gui_mch_set_winpos __ARGS((int x, int y)); > int gui_mch_maximized __ARGS((void)); > void gui_mch_unmaximize __ARGS((void)); > +void gui_mch_newfont __ARGS((void)); > void gui_mch_set_shellsize __ARGS((int width, int height, int min_width, > int min_height, int base_width, int > base_height, int direction)); > void gui_mch_get_screen_dimensions __ARGS((int *screen_w, int *screen_h)); > void gui_mch_settitle __ARGS((char_u *title, char_u *icon));
Please try out this patch. Resizing has always been a problem with GTK, this needs to be tried out in various configurations. I don't have a vertical monitor setup. -- Warning label on a superhero Halloween costume: "Caution: Cape does not enable user to fly." /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net \\\ /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ an exciting new programming language -- http://www.Zimbu.org /// \\\ help me help AIDS victims -- http://ICCF-Holland.org /// -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php