summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2020-10-21 20:58:27 +0100
committerCaolán McNamara <caolanm@redhat.com>2020-10-22 09:52:25 +0200
commitbfd096858005aa07121c218845af15fbefe18e1e (patch)
tree1185bc4252d218e7e55038e859d19b8df9690ddd /vcl
parent0a2d0342d73a99264677a5b701768e128b09a39c (diff)
add some SolarMutexGuards for IME
Change-Id: I1bd2e3c34e400b597dec1b9b3933b7dc85d2b78f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104644 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'vcl')
-rw-r--r--vcl/unx/gtk3/gtk3gtkinst.cxx10
1 files changed, 10 insertions, 0 deletions
diff --git a/vcl/unx/gtk3/gtk3gtkinst.cxx b/vcl/unx/gtk3/gtk3gtkinst.cxx
index f42b767bf843..6448e3733256 100644
--- a/vcl/unx/gtk3/gtk3gtkinst.cxx
+++ b/vcl/unx/gtk3/gtk3gtkinst.cxx
@@ -13770,6 +13770,8 @@ public:
{
IMHandler* pThis = static_cast<IMHandler*>(im_handler);
+ SolarMutexGuard aGuard;
+
// at least editeng expects to have seen a start before accepting a commit
pThis->StartExtTextInput();
@@ -13789,6 +13791,8 @@ public:
{
IMHandler* pThis = static_cast<IMHandler*>(im_handler);
+ SolarMutexGuard aGuard;
+
sal_Int32 nCursorPos(0);
sal_uInt8 nCursorFlags(0);
std::vector<ExtTextInputAttr> aInputFlags;
@@ -13812,6 +13816,8 @@ public:
{
IMHandler* pThis = static_cast<IMHandler*>(im_handler);
+ SolarMutexGuard aGuard;
+
OUString sSurroundingText;
int nCursorIndex = pThis->m_pArea->im_context_get_surrounding(sSurroundingText);
@@ -13833,6 +13839,8 @@ public:
IMHandler* pThis = static_cast<IMHandler*>(im_handler);
+ SolarMutexGuard aGuard;
+
OUString sSurroundingText;
sal_Int32 nCursorIndex = pThis->m_pArea->im_context_get_surrounding(sSurroundingText);
@@ -13875,6 +13883,7 @@ public:
static void signalIMPreeditStart(GtkIMContext*, gpointer im_handler)
{
IMHandler* pThis = static_cast<IMHandler*>(im_handler);
+ SolarMutexGuard aGuard;
pThis->StartExtTextInput();
pThis->updateIMSpotLocation();
}
@@ -13891,6 +13900,7 @@ public:
static void signalIMPreeditEnd(GtkIMContext*, gpointer im_handler)
{
IMHandler* pThis = static_cast<IMHandler*>(im_handler);
+ SolarMutexGuard aGuard;
pThis->updateIMSpotLocation();
pThis->EndExtTextInput();
}