Patch 7.2.065
Problem:    GTK GUI: the cursor disappears when doing ":vsp" and the Vim
            window is maximized.  (Dominique Pelle, Denis Smolyar)
Solution:   Don't change "Columns" back to an old value at a wrong moment.
            Do change "Rows" when it should not be a problem.
Files:      src/gui.c


*** ../vim-7.2.064/src/gui.c    Fri Nov 28 21:26:50 2008
--- src/gui.c   Wed Dec  3 18:01:21 2008
***************
*** 3241,3247 ****
            i = Rows;
            gui_update_tabline();
            Rows = i;
!           need_set_size = RESIZE_VERT;
            if (using_tabline)
                fix_size = TRUE;
            if (!gui_use_tabline())
--- 3241,3247 ----
            i = Rows;
            gui_update_tabline();
            Rows = i;
!           need_set_size |= RESIZE_VERT;
            if (using_tabline)
                fix_size = TRUE;
            if (!gui_use_tabline())
***************
*** 3275,3283 ****
                if (gui.which_scrollbars[i] != prev_which_scrollbars[i])
                {
                    if (i == SBAR_BOTTOM)
!                       need_set_size = RESIZE_VERT;
                    else
!                       need_set_size = RESIZE_HOR;
                    if (gui.which_scrollbars[i])
                        fix_size = TRUE;
                }
--- 3275,3283 ----
                if (gui.which_scrollbars[i] != prev_which_scrollbars[i])
                {
                    if (i == SBAR_BOTTOM)
!                       need_set_size |= RESIZE_VERT;
                    else
!                       need_set_size |= RESIZE_HOR;
                    if (gui.which_scrollbars[i])
                        fix_size = TRUE;
                }
***************
*** 3297,3303 ****
            gui_mch_enable_menu(gui.menu_is_active);
            Rows = i;
            prev_menu_is_active = gui.menu_is_active;
!           need_set_size = RESIZE_VERT;
            if (gui.menu_is_active)
                fix_size = TRUE;
        }
--- 3297,3303 ----
            gui_mch_enable_menu(gui.menu_is_active);
            Rows = i;
            prev_menu_is_active = gui.menu_is_active;
!           need_set_size |= RESIZE_VERT;
            if (gui.menu_is_active)
                fix_size = TRUE;
        }
***************
*** 3308,3314 ****
        {
            gui_mch_show_toolbar(using_toolbar);
            prev_toolbar = using_toolbar;
!           need_set_size = RESIZE_VERT;
            if (using_toolbar)
                fix_size = TRUE;
        }
--- 3308,3314 ----
        {
            gui_mch_show_toolbar(using_toolbar);
            prev_toolbar = using_toolbar;
!           need_set_size |= RESIZE_VERT;
            if (using_toolbar)
                fix_size = TRUE;
        }
***************
*** 3318,3324 ****
        {
            gui_mch_enable_footer(using_footer);
            prev_footer = using_footer;
!           need_set_size = RESIZE_VERT;
            if (using_footer)
                fix_size = TRUE;
        }
--- 3318,3324 ----
        {
            gui_mch_enable_footer(using_footer);
            prev_footer = using_footer;
!           need_set_size |= RESIZE_VERT;
            if (using_footer)
                fix_size = TRUE;
        }
***************
*** 3330,3339 ****
            prev_tearoff = using_tearoff;
        }
  #endif
!       if (need_set_size)
        {
  #ifdef FEAT_GUI_GTK
!           long    c = Columns;
  #endif
            /* Adjust the size of the window to make the text area keep the
             * same size and to avoid that part of our window is off-screen
--- 3330,3340 ----
            prev_tearoff = using_tearoff;
        }
  #endif
!       if (need_set_size != 0)
        {
  #ifdef FEAT_GUI_GTK
!           long    prev_Columns = Columns;
!           long    prev_Rows = Rows;
  #endif
            /* Adjust the size of the window to make the text area keep the
             * same size and to avoid that part of our window is off-screen
***************
*** 3349,3359 ****
             * If you remove this, please test this command for resizing
             * effects (with optional left scrollbar): ":vsp|q|vsp|q|vsp|q".
             * Don't do this while starting up though.
!            * And don't change Rows, it may have be reduced intentionally
!            * when adding menu/toolbar/tabline. */
!           if (!gui.starting)
                (void)char_avail();
!           Columns = c;
  #endif
        }
  #ifdef FEAT_WINDOWS
--- 3350,3363 ----
             * If you remove this, please test this command for resizing
             * effects (with optional left scrollbar): ":vsp|q|vsp|q|vsp|q".
             * Don't do this while starting up though.
!            * Don't change Rows when adding menu/toolbar/tabline.
!            * Don't change Columns when adding vertical toolbar. */
!           if (!gui.starting && need_set_size != (RESIZE_VERT | RESIZE_HOR))
                (void)char_avail();
!           if ((need_set_size & RESIZE_VERT) == 0)
!               Rows = prev_Rows;
!           if ((need_set_size & RESIZE_HOR) == 0)
!               Columns = prev_Columns;
  #endif
        }
  #ifdef FEAT_WINDOWS
*** ../vim-7.2.064/src/version.c        Wed Dec  3 13:38:00 2008
--- src/version.c       Wed Dec  3 18:47:11 2008
***************
*** 678,679 ****
--- 678,681 ----
  {   /* Add new patch number below this line */
+ /**/
+     65,
  /**/

-- 
Seen on the back of a biker's vest: If you can read this, my wife fell off.

 /// Bram Moolenaar -- [EMAIL PROTECTED] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\        download, build and distribute -- http://www.A-A-P.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

--~--~---------~--~----~------------~-------~--~----~
You received this message from the "vim_dev" maillist.
For more information, visit http://www.vim.org/maillist.php
-~----------~----~----~----~------~----~------~--~---

Raspunde prin e-mail lui