69cc7b
From 00e609146a029c2cb010f7a617c77cddcdbf1513 Mon Sep 17 00:00:00 2001
69cc7b
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
69cc7b
Date: Thu, 7 Sep 2017 16:47:04 +0100
69cc7b
Subject: [PATCH] tdf#110737 set user-events to a lower priority than system
69cc7b
 redraw
69cc7b
69cc7b
Change-Id: Ic6672fcce4cb5516d388fee22120383ccc70a4a5
69cc7b
---
69cc7b
 vcl/unx/gtk3/gtk3gtkdata.cxx | 5 ++++-
69cc7b
 1 file changed, 4 insertions(+), 1 deletion(-)
69cc7b
69cc7b
diff --git a/vcl/unx/gtk3/gtk3gtkdata.cxx b/vcl/unx/gtk3/gtk3gtkdata.cxx
69cc7b
index b2c298b..5b043e8 100644
69cc7b
--- a/vcl/unx/gtk3/gtk3gtkdata.cxx
69cc7b
+++ b/vcl/unx/gtk3/gtk3gtkdata.cxx
69cc7b
@@ -839,7 +839,10 @@ void GtkData::PostUserEvent()
69cc7b
     else // nothing pending anyway
69cc7b
     {
69cc7b
         m_pUserEvent = g_idle_source_new();
69cc7b
-        g_source_set_priority (m_pUserEvent, G_PRIORITY_HIGH);
69cc7b
+        // tdf#110737 set user-events to a lower priority than system redraw
69cc7b
+        // events, which is G_PRIORITY_HIGH_IDLE + 20, so presentations
69cc7b
+        // queue-redraw has a chance to be fulfilled
69cc7b
+        g_source_set_priority (m_pUserEvent,  G_PRIORITY_HIGH_IDLE + 30);
69cc7b
         g_source_set_can_recurse (m_pUserEvent, TRUE);
69cc7b
         g_source_set_callback (m_pUserEvent, call_userEventFn,
69cc7b
                                static_cast<gpointer>(this), nullptr);
69cc7b
-- 
69cc7b
2.9.4
69cc7b