Menu

#2437 WM_PRINTCLIENT is broken with SC_TECHNOLOGY_DIRECTWRITE

Bug
open
nobody
5
2024-04-18
2024-04-17
mberchtold
No

When the technology (SCI_SETTECHNOLOGY) is set to SC_TECHNOLOGY_DIRECTWRITE, the WM_PRINTCLIENT implementation (ScintillaWin::FullPaintDC) is broken because it doesn't copy anything into the provided device context (dc).

A possible workaround is to use SC_TECHNOLOGY_DIRECTWRITEDC. However, WM_PRINTCLIENT should work with SC_TECHNOLOGY_DIRECTWRITE as well. A possible solution would be to (temporary) use the code path for SC_TECHNOLOGY_DIRECTWRITEDC in the WM_PRINTCLIENT message handler, in case the technology is set to SC_TECHNOLOGY_DIRECTWRITE.

Discussion

  • Neil Hodgson

    Neil Hodgson - 2024-04-18
    • labels: --> scintilla, win32, directwrite
     
  • Neil Hodgson

    Neil Hodgson - 2024-04-18

    Seems reasonable to use SC_TECHNOLOGY_DIRECTWRITEDC implementation. SciTE doesn't call WM_PRINTCLIENT so I'll leave this to someone more connected to that.

     

Log in to post a comment.

MongoDB Logo MongoDB