In LOK case, avoid spurious "leavingwindow" mouse move events which has negative coordinates. We later use these coordinates to compute the cell address corresponding to the event to extend the selection which will be wrong in this case. Such spurious events occur for some reason when a user is selecting a range, (even when not leaving the view area) with one or more other viewers in that sheet. The root cause of these bad coordinates seems to be in vcl
in winproc.cxx, ImplHandleMouseEvent() in the code block starting
// test for mouseleave and mouseenter
VclPtr
This needs more investigation. Meanwhile this interim patch fixes the issue of selection jump by avoiding those unhelpful mouse events.
Conflicts: sc/source/ui/view/gridwin.cxx
Change-Id: I01fb3ae6a3903ada2a44a8b3d2b4a46b0122326b
1241983ec433 sc: lok: avoid selection jumps with multiple users
sc/source/ui/view/gridwin.cxx | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
Upstream: cgit.freedesktop.org