aboutsummaryrefslogtreecommitdiffhomepage
path: root/qt/ScintillaEditBase/ScintillaEditBase.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'qt/ScintillaEditBase/ScintillaEditBase.cpp')
-rw-r--r--qt/ScintillaEditBase/ScintillaEditBase.cpp16
1 files changed, 2 insertions, 14 deletions
diff --git a/qt/ScintillaEditBase/ScintillaEditBase.cpp b/qt/ScintillaEditBase/ScintillaEditBase.cpp
index 553be2dbb..7e3065812 100644
--- a/qt/ScintillaEditBase/ScintillaEditBase.cpp
+++ b/qt/ScintillaEditBase/ScintillaEditBase.cpp
@@ -669,20 +669,8 @@ QVariant ScintillaEditBase::inputMethodQuery(Qt::InputMethodQuery query) const
{
const Scintilla::Position paraStart = sqt->pdoc->ParaUp(pos);
const Scintilla::Position paraEnd = sqt->pdoc->ParaDown(pos);
- QVarLengthArray<char,1024> buffer(paraEnd - paraStart + 1);
-
- // This is limited to first 2GB of a document on Windows
- Sci_CharacterRange charRange{};
- charRange.cpMin = paraStart;
- charRange.cpMax = paraEnd;
-
- Sci_TextRange textRange{};
- textRange.chrg = charRange;
- textRange.lpstrText = buffer.data();
-
- send(SCI_GETTEXTRANGE, 0, reinterpret_cast<sptr_t>(&textRange));
-
- return sqt->StringFromDocument(buffer.constData());
+ const std::string buffer = sqt->RangeText(paraStart, paraEnd);
+ return sqt->StringFromDocument(buffer.c_str());
}
case Qt::ImCurrentSelection: