summaryrefslogtreecommitdiff
path: root/sd
diff options
context:
space:
mode:
authorTakeshi Abe <tabe@fixedpoint.jp>2017-05-26 23:16:57 +0900
committerTakeshi Abe <tabe@fixedpoint.jp>2017-06-02 06:29:59 +0200
commit30a1c429c24b8de9a51ed066571d3c315f812844 (patch)
treeb958f65be73ba2800c36bc175f5b241881c5a298 /sd
parent019d074a9d0b24b680d3a7e4a21286e26d5f0b0c (diff)
tdf#108024 Keep original selection during DrawViewShell::FuTemporary()
Otherwise it was disposed in the middle of its own mouse event handler FuSelection::MouseButtonUp(). Change-Id: I0d96048526dece7232e5a777364ad4da1d64c904 Reviewed-on: https://gerrit.libreoffice.org/37976 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> (cherry picked from commit 96d59ffc572c4cf112405a85aee3366d45bc7757) Reviewed-on: https://gerrit.libreoffice.org/38301 Reviewed-by: Takeshi Abe <tabe@fixedpoint.jp>
Diffstat (limited to 'sd')
-rw-r--r--sd/source/ui/view/drviews2.cxx3
1 files changed, 2 insertions, 1 deletions
diff --git a/sd/source/ui/view/drviews2.cxx b/sd/source/ui/view/drviews2.cxx
index a189006ea60d..d2a5a202890e 100644
--- a/sd/source/ui/view/drviews2.cxx
+++ b/sd/source/ui/view/drviews2.cxx
@@ -1110,7 +1110,8 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
// Set the selection tool as the old one. This in particular important for the
// zoom function, in which clicking without dragging zooms as well, and that
// makes exiting the object editing mode impossible.
- SetOldFunction( FuSelection::Create( this, GetActiveWindow(), mpDrawView, GetDoc(), rReq ) );
+ if (dynamic_cast<FuSelection*>( GetOldFunction().get() ) == nullptr)
+ SetOldFunction( FuSelection::Create( this, GetActiveWindow(), mpDrawView, GetDoc(), rReq ) );
Cancel();
rReq.Ignore ();
}