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

Re: modeless-selection distorts all characters in gVim

Expand Messages
  • Bram Moolenaar
    ... Thanks for making a patch. Can some users try this out and give feedback? -- A cow comes flying over the battlements, lowing aggressively. The cow lands
    Message 1 of 19 , May 5, 2013
      Yukihiro Nakadaira wrote:

      > It seems that the current invert drawing method (dst = fg XOR bg XOR dst)
      > is not good for anti-aliased font. I think that using GDK_INVERT is
      > good for it.
      >
      > diff -r 9e3cdd762964 src/gui_gtk_x11.c
      > --- a/src/gui_gtk_x11.c Sat May 04 04:40:15 2013 +0200
      > +++ b/src/gui_gtk_x11.c Sun May 05 16:23:33 2013 +0900
      > @@ -5271,13 +5271,9 @@
      > if (gui.drawarea->window == NULL)
      > return;
      >
      > - values.foreground.pixel = gui.norm_pixel ^ gui.back_pixel;
      > - values.background.pixel = gui.norm_pixel ^ gui.back_pixel;
      > - values.function = GDK_XOR;
      > + values.function = GDK_INVERT;
      > invert_gc = gdk_gc_new_with_values(gui.drawarea->window,
      > &values,
      > - GDK_GC_FOREGROUND |
      > - GDK_GC_BACKGROUND |
      > GDK_GC_FUNCTION);
      > gdk_gc_set_exposures(invert_gc, gui.visibility !=
      > GDK_VISIBILITY_UNOBSCURED);
      >

      Thanks for making a patch.

      Can some users try this out and give feedback?

      --
      A cow comes flying over the battlements, lowing aggressively. The cow
      lands on GALAHAD'S PAGE, squashing him completely.
      "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD

      /// Bram Moolenaar -- Bram@... -- 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

      ---
      You received this message because you are subscribed to the Google Groups "vim_dev" group.
      To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscribe@....
      For more options, visit https://groups.google.com/groups/opt_out.
    • Ben Fritz
      ... I finally got a chance to try applying the patch and it seems to work as advertised. I have no idea whether it has unintended side effects. I ll run with
      Message 2 of 19 , May 19, 2013
        On Sunday, May 5, 2013 4:31:03 PM UTC-5, Bram Moolenaar wrote:
        > Yukihiro Nakadaira wrote:
        >
        > > It seems that the current invert drawing method (dst = fg XOR bg XOR dst)
        > > is not good for anti-aliased font. I think that using GDK_INVERT is
        > > good for it.
        > >
        > > diff -r 9e3cdd762964 src/gui_gtk_x11.c
        > > --- a/src/gui_gtk_x11.c Sat May 04 04:40:15 2013 +0200
        > > +++ b/src/gui_gtk_x11.c Sun May 05 16:23:33 2013 +0900
        > > @@ -5271,13 +5271,9 @@
        > > if (gui.drawarea->window == NULL)
        > > return;
        > >
        > > - values.foreground.pixel = gui.norm_pixel ^ gui.back_pixel;
        > > - values.background.pixel = gui.norm_pixel ^ gui.back_pixel;
        > > - values.function = GDK_XOR;
        > > + values.function = GDK_INVERT;
        > > invert_gc = gdk_gc_new_with_values(gui.drawarea->window,
        > > &values,
        > > - GDK_GC_FOREGROUND |
        > > - GDK_GC_BACKGROUND |
        > > GDK_GC_FUNCTION);
        > > gdk_gc_set_exposures(invert_gc, gui.visibility !=
        > > GDK_VISIBILITY_UNOBSCURED);
        > >
        >
        > Thanks for making a patch.
        >
        > Can some users try this out and give feedback?
        >

        I finally got a chance to try applying the patch and it seems to work as advertised. I have no idea whether it has unintended side effects. I'll run with it for a while to see if I notice any. But I don't usually use modeless selection for anything so I doubt I'd see anything in my normal use.

        --
        --
        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

        ---
        You received this message because you are subscribed to the Google Groups "vim_dev" group.
        To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscribe@....
        For more options, visit https://groups.google.com/groups/opt_out.
      Your message has been successfully submitted and would be delivered to recipients shortly.