summaryrefslogtreecommitdiffstats
path: root/desktop/source/lib/init.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'desktop/source/lib/init.cxx')
-rw-r--r--desktop/source/lib/init.cxx10
1 files changed, 9 insertions, 1 deletions
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx
index 1790bdbfa478..d2e9cfb7161e 100644
--- a/desktop/source/lib/init.cxx
+++ b/desktop/source/lib/init.cxx
@@ -1187,7 +1187,6 @@ void CallbackFlushHandler::queue(const int type, const char* data)
case LOK_CALLBACK_TEXT_SELECTION_START:
case LOK_CALLBACK_TEXT_SELECTION_END:
case LOK_CALLBACK_TEXT_SELECTION:
- case LOK_CALLBACK_GRAPHIC_SELECTION:
case LOK_CALLBACK_MOUSE_POINTER:
case LOK_CALLBACK_CELL_CURSOR:
case LOK_CALLBACK_CELL_FORMULA:
@@ -1249,6 +1248,15 @@ void CallbackFlushHandler::queue(const int type, const char* data)
if (processWindowEvent(aCallbackData))
return;
break;
+
+ case LOK_CALLBACK_GRAPHIC_SELECTION:
+ {
+ // remove only selection ranges and 'EMPTY' messages
+ // always send 'INPLACE' and 'INPLACE EXIT' messages
+ removeAll([type, payload] (const queue_type::value_type& elem)
+ { return (elem.Type == type && elem.PayloadString[0] != 'I'); });
+ }
+ break;
}
}