Loading ...
Sorry, an error occurred while loading the content.

Patch 7.2.099

Expand Messages
  • Bram Moolenaar
    Patch 7.2.099 Problem: Changing GUI options causes an unnecessary redraw when the GUI isn t active. Solution: Avoid the redraw. (Lech Lorens) Files:
    Message 1 of 1 , Feb 4, 2009
    • 0 Attachment
      Patch 7.2.099
      Problem: Changing GUI options causes an unnecessary redraw when the GUI
      isn't active.
      Solution: Avoid the redraw. (Lech Lorens)
      Files: src/option.c


      *** ../vim-7.2.098/src/option.c Wed Dec 24 12:53:33 2008
      --- src/option.c Wed Feb 4 16:59:56 2009
      ***************
      *** 5407,5412 ****
      --- 5407,5416 ----
      int did_chartab = FALSE;
      char_u **gvarp;
      long_u free_oldval = (options[opt_idx].flags & P_ALLOCED);
      + #ifdef FEAT_GUI
      + /* set when changing an option that only requires a redraw in the GUI */
      + int redraw_gui_only = FALSE;
      + #endif

      /* Get the global option to compare with, otherwise we would have to check
      * two values for all local options. */
      ***************
      *** 6055,6060 ****
      --- 6059,6065 ----
      errmsg = (char_u *)N_("E596: Invalid font(s)");
      }
      }
      + redraw_gui_only = TRUE;
      }
      # ifdef FEAT_XFONTSET
      else if (varp == &p_guifontset)
      ***************
      *** 6063,6068 ****
      --- 6068,6074 ----
      errmsg = (char_u *)N_("E597: can't select fontset");
      else if (gui.in_use && gui_init_font(p_guifontset, TRUE) != OK)
      errmsg = (char_u *)N_("E598: Invalid fontset");
      + redraw_gui_only = TRUE;
      }
      # endif
      # ifdef FEAT_MBYTE
      ***************
      *** 6072,6077 ****
      --- 6078,6084 ----
      errmsg = (char_u *)N_("E533: can't select wide font");
      else if (gui_get_wide_font() == FAIL)
      errmsg = (char_u *)N_("E534: Invalid wide font");
      + redraw_gui_only = TRUE;
      }
      # endif
      #endif
      ***************
      *** 6133,6145 ****
      --- 6140,6163 ----
      #ifdef FEAT_GUI
      /* 'guioptions' */
      else if (varp == &p_go)
      + {
      gui_init_which_components(oldval);
      + redraw_gui_only = TRUE;
      + }
      #endif

      #if defined(FEAT_GUI_TABLINE)
      /* 'guitablabel' */
      else if (varp == &p_gtl)
      + {
      redraw_tabline = TRUE;
      + redraw_gui_only = TRUE;
      + }
      + /* 'guitabtooltip' */
      + else if (varp == &p_gtt)
      + {
      + redraw_gui_only = TRUE;
      + }
      #endif

      #if defined(FEAT_MOUSE_TTY) && (defined(UNIX) || defined(VMS))
      ***************
      *** 6717,6723 ****

      if (curwin->w_curswant != MAXCOL)
      curwin->w_set_curswant = TRUE; /* in case 'showbreak' changed */
      ! check_redraw(options[opt_idx].flags);

      return errmsg;
      }
      --- 6735,6745 ----

      if (curwin->w_curswant != MAXCOL)
      curwin->w_set_curswant = TRUE; /* in case 'showbreak' changed */
      ! #ifdef FEAT_GUI
      ! /* check redraw when it's not a GUI option or the GUI is active. */
      ! if (!redraw_gui_only || gui.in_use)
      ! #endif
      ! check_redraw(options[opt_idx].flags);

      return errmsg;
      }
      *** ../vim-7.2.098/src/version.c Wed Feb 4 16:25:53 2009
      --- src/version.c Wed Feb 4 17:24:11 2009
      ***************
      *** 678,679 ****
      --- 678,681 ----
      { /* Add new patch number below this line */
      + /**/
      + 99,
      /**/

      --
      I started out with nothing, and I still have most of it.
      -- Michael Davis -- "Tonight Show"

      /// Bram Moolenaar -- Bram@... -- 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
      -~----------~----~----~----~------~----~------~--~---
    Your message has been successfully submitted and would be delivered to recipients shortly.