diff options
author | Neil <nyamatongwe@gmail.com> | 2014-11-13 15:38:27 +1100 |
---|---|---|
committer | Neil <nyamatongwe@gmail.com> | 2014-11-13 15:38:27 +1100 |
commit | 28740fc0e339b42f12ac7731820ced97d099f2cf (patch) | |
tree | 710d9ba3e35f3c9303f40b2a8fb5acaa67a13e4b | |
parent | 4f6d4cbd012f4eb9e6d3647b110483c9a6487e35 (diff) | |
download | scintilla-mirror-28740fc0e339b42f12ac7731820ced97d099f2cf.tar.gz |
Bug [#1643]. Only show system caret for GDI as it interferes with Direct2D.
From Mat Berchtold.
-rw-r--r-- | doc/ScintillaHistory.html | 4 | ||||
-rw-r--r-- | win32/ScintillaWin.cxx | 5 |
2 files changed, 8 insertions, 1 deletions
diff --git a/doc/ScintillaHistory.html b/doc/ScintillaHistory.html index 374dad6fe..61ed3b7bc 100644 --- a/doc/ScintillaHistory.html +++ b/doc/ScintillaHistory.html @@ -505,6 +505,10 @@ <a href="http://sourceforge.net/p/scintilla/feature-requests/1080/">Feature #1080.</a> </li> <li> + On Windows, only call ShowCaret in GDI mode as it interferes with caret drawing when using Direct2D. + <a href="http://sourceforge.net/p/scintilla/bugs/1643/">Bug #1643</a>. + </li> + <li> For GTK+ on Windows, avoid extra space when pasting from external application. </li> <li> diff --git a/win32/ScintillaWin.cxx b/win32/ScintillaWin.cxx index 71cf7fc7d..132aea91a 100644 --- a/win32/ScintillaWin.cxx +++ b/win32/ScintillaWin.cxx @@ -2913,7 +2913,10 @@ BOOL ScintillaWin::CreateSystemCaret() { BOOL retval = ::CreateCaret( MainHWND(), sysCaretBitmap, sysCaretWidth, sysCaretHeight); - ::ShowCaret(MainHWND()); + if (technology == SC_TECHNOLOGY_DEFAULT) { + // System caret interferes with Direct2D drawing so only show it for GDI. + ::ShowCaret(MainHWND()); + } return retval; } |