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

74235Re: [PATCH] Subpixel rendering artifacts in GUI mode

Expand Messages
  • Thomas Tuegel
    Nov 25, 2013
    • 0 Attachment
      On Sun, Nov 24, 2013 at 4:12 PM, Bram Moolenaar <Bram@...> wrote:
      >
      > Thomas Tuegel wrote:
      >
      >> I recently discovered a graphical glitch that occurs sometimes in GUI
      >> mode. If the GUI is using subpixel rendering, characters may leave
      >> artifacts in their neighbors' cells after being erased. I discovered
      >> this in the GTK+2 frontend, but it could be a problem in any GUI,
      >> though it's highly dependent on a system's subpixel rendering
      >> configuration, the font used, and probably some other variables I
      >> haven't even considered.
      >>
      >> I am sending a patch which corrects the issue by redrawing the
      >> characters immediately to the left or right of any updated character.
      >> This is the approach already taken with bold characters, which have
      >> the same problem. I merely extended the treatment of bold characters
      >> to apply to any updated character whenever Vim is in GUI mode.
      >
      > Is there a reliable way to know if this is needed? Redrawing more for
      > all GUIs seems overkill. e.g. on Windows it would not be needed, right?

      As far as I know, this can happen on any platform whenever subpixel
      rendering (ClearType on Windows) is enabled. As Ken pointed out,
      though unknown to me, this was already a known issue on Windows. If
      there were a reliable way to detect at runtime that subpixel rendering
      is disabled, then the extra redraws could be disabled. That detection
      is platform-specific, so the GUI would have to do the detection and
      indicate if it wants the extra redraws. On the other hand, the
      overhead associated with the extra redraws is small; most terminal
      emulators on Linux are already doing this, for example.

      --
      Thomas Tuegel

      --
      --
      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.
    • Show all 8 messages in this topic