From e99813f9372d24d3d2d734573c582d3e257cb5cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= Date: Wed, 22 Aug 2012 11:46:50 +0100 Subject: [PATCH] Resolves: rhbz#846775 Clipboard must be disposed before Selection Change-Id: I968bc6da85cd444d504b08f85300a1fe251cdeee --- sd/source/ui/slidesorter/controller/SlideSorterController.cxx | 5 +++-- sd/source/ui/slidesorter/inc/controller/SlideSorterController.hxx | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/sd/source/ui/slidesorter/controller/SlideSorterController.cxx b/sd/source/ui/slidesorter/controller/SlideSorterController.cxx index 10ca623..ae9a6e9 100644 --- a/sd/source/ui/slidesorter/controller/SlideSorterController.cxx +++ b/sd/source/ui/slidesorter/controller/SlideSorterController.cxx @@ -110,10 +110,10 @@ SlideSorterController::SlideSorterController (SlideSorter& rSlideSorter) mpPageSelector(), mpFocusManager(), mpSlotManager(), - mpClipboard(), mpScrollBarManager(), mpCurrentSlideManager(), mpSelectionManager(), + mpClipboard(), mpInsertionIndicatorHandler(new InsertionIndicatorHandler(rSlideSorter)), mpAnimator(new Animator(rSlideSorter)), mpVisibleAreaManager(new VisibleAreaManager(rSlideSorter)), @@ -156,9 +156,9 @@ void SlideSorterController::Init (void) mpPageSelector.reset(new PageSelector(mrSlideSorter)); mpFocusManager.reset(new FocusManager(mrSlideSorter)); mpSlotManager.reset(new SlotManager(mrSlideSorter)); - mpClipboard.reset(new Clipboard(mrSlideSorter)); mpScrollBarManager.reset(new ScrollBarManager(mrSlideSorter)); mpSelectionManager.reset(new SelectionManager(mrSlideSorter)); + mpClipboard.reset(new Clipboard(mrSlideSorter)); mpScrollBarManager->LateInitialization(); @@ -202,6 +202,7 @@ SlideSorterController::~SlideSorterController (void) void SlideSorterController::Dispose (void) { mpInsertionIndicatorHandler->End(Animator::AM_Immediate); + mpClipboard.reset(); mpSelectionManager.reset(); mpAnimator->Dispose(); } diff --git a/sd/source/ui/slidesorter/inc/controller/SlideSorterController.hxx b/sd/source/ui/slidesorter/inc/controller/SlideSorterController.hxx index f456cb4..bf3d844 100644 --- a/sd/source/ui/slidesorter/inc/controller/SlideSorterController.hxx +++ b/sd/source/ui/slidesorter/inc/controller/SlideSorterController.hxx @@ -243,10 +243,10 @@ private: ::boost::scoped_ptr mpPageSelector; ::boost::scoped_ptr mpFocusManager; ::boost::shared_ptr mpSlotManager; - ::boost::scoped_ptr mpClipboard; ::boost::scoped_ptr mpScrollBarManager; mutable ::boost::shared_ptr mpCurrentSlideManager; ::boost::shared_ptr mpSelectionManager; + ::boost::scoped_ptr mpClipboard; ::boost::shared_ptr mpInsertionIndicatorHandler; ::boost::shared_ptr mpAnimator; ::boost::scoped_ptr mpVisibleAreaManager; -- 1.7.11.2