Karsten Hopp a98e7b
To: vim-dev@vim.org
Karsten Hopp a98e7b
Subject: Patch 7.2.065
Karsten Hopp a98e7b
Fcc: outbox
Karsten Hopp a98e7b
From: Bram Moolenaar <Bram@moolenaar.net>
Karsten Hopp a98e7b
Mime-Version: 1.0
Karsten Hopp a98e7b
Content-Type: text/plain; charset=ISO-8859-1
Karsten Hopp a98e7b
Content-Transfer-Encoding: 8bit
Karsten Hopp a98e7b
------------
Karsten Hopp a98e7b
Karsten Hopp a98e7b
Patch 7.2.065
Karsten Hopp a98e7b
Problem:    GTK GUI: the cursor disappears when doing ":vsp" and the Vim
Karsten Hopp a98e7b
	    window is maximized.  (Dominique Pelle, Denis Smolyar)
Karsten Hopp a98e7b
Solution:   Don't change "Columns" back to an old value at a wrong moment.
Karsten Hopp a98e7b
	    Do change "Rows" when it should not be a problem.
Karsten Hopp a98e7b
Files:	    src/gui.c
Karsten Hopp a98e7b
Karsten Hopp a98e7b
Karsten Hopp a98e7b
*** ../vim-7.2.064/src/gui.c	Fri Nov 28 21:26:50 2008
Karsten Hopp a98e7b
--- src/gui.c	Wed Dec  3 18:01:21 2008
Karsten Hopp a98e7b
***************
Karsten Hopp a98e7b
*** 3241,3247 ****
Karsten Hopp a98e7b
  	    i = Rows;
Karsten Hopp a98e7b
  	    gui_update_tabline();
Karsten Hopp a98e7b
  	    Rows = i;
Karsten Hopp a98e7b
! 	    need_set_size = RESIZE_VERT;
Karsten Hopp a98e7b
  	    if (using_tabline)
Karsten Hopp a98e7b
  		fix_size = TRUE;
Karsten Hopp a98e7b
  	    if (!gui_use_tabline())
Karsten Hopp a98e7b
--- 3241,3247 ----
Karsten Hopp a98e7b
  	    i = Rows;
Karsten Hopp a98e7b
  	    gui_update_tabline();
Karsten Hopp a98e7b
  	    Rows = i;
Karsten Hopp a98e7b
! 	    need_set_size |= RESIZE_VERT;
Karsten Hopp a98e7b
  	    if (using_tabline)
Karsten Hopp a98e7b
  		fix_size = TRUE;
Karsten Hopp a98e7b
  	    if (!gui_use_tabline())
Karsten Hopp a98e7b
***************
Karsten Hopp a98e7b
*** 3275,3283 ****
Karsten Hopp a98e7b
  		if (gui.which_scrollbars[i] != prev_which_scrollbars[i])
Karsten Hopp a98e7b
  		{
Karsten Hopp a98e7b
  		    if (i == SBAR_BOTTOM)
Karsten Hopp a98e7b
! 			need_set_size = RESIZE_VERT;
Karsten Hopp a98e7b
  		    else
Karsten Hopp a98e7b
! 			need_set_size = RESIZE_HOR;
Karsten Hopp a98e7b
  		    if (gui.which_scrollbars[i])
Karsten Hopp a98e7b
  			fix_size = TRUE;
Karsten Hopp a98e7b
  		}
Karsten Hopp a98e7b
--- 3275,3283 ----
Karsten Hopp a98e7b
  		if (gui.which_scrollbars[i] != prev_which_scrollbars[i])
Karsten Hopp a98e7b
  		{
Karsten Hopp a98e7b
  		    if (i == SBAR_BOTTOM)
Karsten Hopp a98e7b
! 			need_set_size |= RESIZE_VERT;
Karsten Hopp a98e7b
  		    else
Karsten Hopp a98e7b
! 			need_set_size |= RESIZE_HOR;
Karsten Hopp a98e7b
  		    if (gui.which_scrollbars[i])
Karsten Hopp a98e7b
  			fix_size = TRUE;
Karsten Hopp a98e7b
  		}
Karsten Hopp a98e7b
***************
Karsten Hopp a98e7b
*** 3297,3303 ****
Karsten Hopp a98e7b
  	    gui_mch_enable_menu(gui.menu_is_active);
Karsten Hopp a98e7b
  	    Rows = i;
Karsten Hopp a98e7b
  	    prev_menu_is_active = gui.menu_is_active;
Karsten Hopp a98e7b
! 	    need_set_size = RESIZE_VERT;
Karsten Hopp a98e7b
  	    if (gui.menu_is_active)
Karsten Hopp a98e7b
  		fix_size = TRUE;
Karsten Hopp a98e7b
  	}
Karsten Hopp a98e7b
--- 3297,3303 ----
Karsten Hopp a98e7b
  	    gui_mch_enable_menu(gui.menu_is_active);
Karsten Hopp a98e7b
  	    Rows = i;
Karsten Hopp a98e7b
  	    prev_menu_is_active = gui.menu_is_active;
Karsten Hopp a98e7b
! 	    need_set_size |= RESIZE_VERT;
Karsten Hopp a98e7b
  	    if (gui.menu_is_active)
Karsten Hopp a98e7b
  		fix_size = TRUE;
Karsten Hopp a98e7b
  	}
Karsten Hopp a98e7b
***************
Karsten Hopp a98e7b
*** 3308,3314 ****
Karsten Hopp a98e7b
  	{
Karsten Hopp a98e7b
  	    gui_mch_show_toolbar(using_toolbar);
Karsten Hopp a98e7b
  	    prev_toolbar = using_toolbar;
Karsten Hopp a98e7b
! 	    need_set_size = RESIZE_VERT;
Karsten Hopp a98e7b
  	    if (using_toolbar)
Karsten Hopp a98e7b
  		fix_size = TRUE;
Karsten Hopp a98e7b
  	}
Karsten Hopp a98e7b
--- 3308,3314 ----
Karsten Hopp a98e7b
  	{
Karsten Hopp a98e7b
  	    gui_mch_show_toolbar(using_toolbar);
Karsten Hopp a98e7b
  	    prev_toolbar = using_toolbar;
Karsten Hopp a98e7b
! 	    need_set_size |= RESIZE_VERT;
Karsten Hopp a98e7b
  	    if (using_toolbar)
Karsten Hopp a98e7b
  		fix_size = TRUE;
Karsten Hopp a98e7b
  	}
Karsten Hopp a98e7b
***************
Karsten Hopp a98e7b
*** 3318,3324 ****
Karsten Hopp a98e7b
  	{
Karsten Hopp a98e7b
  	    gui_mch_enable_footer(using_footer);
Karsten Hopp a98e7b
  	    prev_footer = using_footer;
Karsten Hopp a98e7b
! 	    need_set_size = RESIZE_VERT;
Karsten Hopp a98e7b
  	    if (using_footer)
Karsten Hopp a98e7b
  		fix_size = TRUE;
Karsten Hopp a98e7b
  	}
Karsten Hopp a98e7b
--- 3318,3324 ----
Karsten Hopp a98e7b
  	{
Karsten Hopp a98e7b
  	    gui_mch_enable_footer(using_footer);
Karsten Hopp a98e7b
  	    prev_footer = using_footer;
Karsten Hopp a98e7b
! 	    need_set_size |= RESIZE_VERT;
Karsten Hopp a98e7b
  	    if (using_footer)
Karsten Hopp a98e7b
  		fix_size = TRUE;
Karsten Hopp a98e7b
  	}
Karsten Hopp a98e7b
***************
Karsten Hopp a98e7b
*** 3330,3339 ****
Karsten Hopp a98e7b
  	    prev_tearoff = using_tearoff;
Karsten Hopp a98e7b
  	}
Karsten Hopp a98e7b
  #endif
Karsten Hopp a98e7b
! 	if (need_set_size)
Karsten Hopp a98e7b
  	{
Karsten Hopp a98e7b
  #ifdef FEAT_GUI_GTK
Karsten Hopp a98e7b
! 	    long    c = Columns;
Karsten Hopp a98e7b
  #endif
Karsten Hopp a98e7b
  	    /* Adjust the size of the window to make the text area keep the
Karsten Hopp a98e7b
  	     * same size and to avoid that part of our window is off-screen
Karsten Hopp a98e7b
--- 3330,3340 ----
Karsten Hopp a98e7b
  	    prev_tearoff = using_tearoff;
Karsten Hopp a98e7b
  	}
Karsten Hopp a98e7b
  #endif
Karsten Hopp a98e7b
! 	if (need_set_size != 0)
Karsten Hopp a98e7b
  	{
Karsten Hopp a98e7b
  #ifdef FEAT_GUI_GTK
Karsten Hopp a98e7b
! 	    long    prev_Columns = Columns;
Karsten Hopp a98e7b
! 	    long    prev_Rows = Rows;
Karsten Hopp a98e7b
  #endif
Karsten Hopp a98e7b
  	    /* Adjust the size of the window to make the text area keep the
Karsten Hopp a98e7b
  	     * same size and to avoid that part of our window is off-screen
Karsten Hopp a98e7b
***************
Karsten Hopp a98e7b
*** 3349,3359 ****
Karsten Hopp a98e7b
  	     * If you remove this, please test this command for resizing
Karsten Hopp a98e7b
  	     * effects (with optional left scrollbar): ":vsp|q|vsp|q|vsp|q".
Karsten Hopp a98e7b
  	     * Don't do this while starting up though.
Karsten Hopp a98e7b
! 	     * And don't change Rows, it may have be reduced intentionally
Karsten Hopp a98e7b
! 	     * when adding menu/toolbar/tabline. */
Karsten Hopp a98e7b
! 	    if (!gui.starting)
Karsten Hopp a98e7b
  		(void)char_avail();
Karsten Hopp a98e7b
! 	    Columns = c;
Karsten Hopp a98e7b
  #endif
Karsten Hopp a98e7b
  	}
Karsten Hopp a98e7b
  #ifdef FEAT_WINDOWS
Karsten Hopp a98e7b
--- 3350,3363 ----
Karsten Hopp a98e7b
  	     * If you remove this, please test this command for resizing
Karsten Hopp a98e7b
  	     * effects (with optional left scrollbar): ":vsp|q|vsp|q|vsp|q".
Karsten Hopp a98e7b
  	     * Don't do this while starting up though.
Karsten Hopp a98e7b
! 	     * Don't change Rows when adding menu/toolbar/tabline.
Karsten Hopp a98e7b
! 	     * Don't change Columns when adding vertical toolbar. */
Karsten Hopp a98e7b
! 	    if (!gui.starting && need_set_size != (RESIZE_VERT | RESIZE_HOR))
Karsten Hopp a98e7b
  		(void)char_avail();
Karsten Hopp a98e7b
! 	    if ((need_set_size & RESIZE_VERT) == 0)
Karsten Hopp a98e7b
! 		Rows = prev_Rows;
Karsten Hopp a98e7b
! 	    if ((need_set_size & RESIZE_HOR) == 0)
Karsten Hopp a98e7b
! 		Columns = prev_Columns;
Karsten Hopp a98e7b
  #endif
Karsten Hopp a98e7b
  	}
Karsten Hopp a98e7b
  #ifdef FEAT_WINDOWS
Karsten Hopp a98e7b
*** ../vim-7.2.064/src/version.c	Wed Dec  3 13:38:00 2008
Karsten Hopp a98e7b
--- src/version.c	Wed Dec  3 18:47:11 2008
Karsten Hopp a98e7b
***************
Karsten Hopp a98e7b
*** 678,679 ****
Karsten Hopp a98e7b
--- 678,681 ----
Karsten Hopp a98e7b
  {   /* Add new patch number below this line */
Karsten Hopp a98e7b
+ /**/
Karsten Hopp a98e7b
+     65,
Karsten Hopp a98e7b
  /**/
Karsten Hopp a98e7b
Karsten Hopp a98e7b
-- 
Karsten Hopp a98e7b
Seen on the back of a biker's vest: If you can read this, my wife fell off.
Karsten Hopp a98e7b
Karsten Hopp a98e7b
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
Karsten Hopp a98e7b
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
Karsten Hopp a98e7b
\\\        download, build and distribute -- http://www.A-A-P.org        ///
Karsten Hopp a98e7b
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///