summaryrefslogtreecommitdiff
path: root/sd
diff options
context:
space:
mode:
authorNoel Grandin <noelgrandin@gmail.com>2021-12-28 20:00:50 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2021-12-29 07:13:55 +0100
commit2d541dedde4ec516eacd7669bdc3ed8fb6fc2548 (patch)
treed78caa7240a04ff1821947bbc7b6e0ee5f5e3677 /sd
parent03ce2a8ec6bdf6740bc1a54e52fc57d033060d0f (diff)
use comphelper::WeakComponentImplHelper in AccessibleSlideSorterView
Change-Id: Id8e49fde253fd79eeae142d9fd7069fd8c3a9035 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127653 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'sd')
-rw-r--r--sd/source/ui/accessibility/AccessibleSlideSorterView.cxx22
-rw-r--r--sd/source/ui/inc/AccessibleSlideSorterView.hxx12
2 files changed, 16 insertions, 18 deletions
diff --git a/sd/source/ui/accessibility/AccessibleSlideSorterView.cxx b/sd/source/ui/accessibility/AccessibleSlideSorterView.cxx
index 87eea89d2199..b4f7d79d6ead 100644
--- a/sd/source/ui/accessibility/AccessibleSlideSorterView.cxx
+++ b/sd/source/ui/accessibility/AccessibleSlideSorterView.cxx
@@ -47,6 +47,7 @@
#include <rtl/ref.hxx>
#include <sal/log.hxx>
#include <i18nlangtag/languagetag.hxx>
+#include <osl/diagnose.h>
#include <vcl/settings.hxx>
#include <vcl/svapp.hxx>
@@ -114,8 +115,7 @@ private:
AccessibleSlideSorterView::AccessibleSlideSorterView(
::sd::slidesorter::SlideSorter& rSlideSorter,
vcl::Window* pContentWindow)
- : AccessibleSlideSorterViewBase(m_aMutex),
- mrSlideSorter(rSlideSorter),
+ : mrSlideSorter(rSlideSorter),
mnClientId(0),
mpContentWindow(pContentWindow)
{
@@ -149,7 +149,7 @@ void AccessibleSlideSorterView::FireAccessibleEvent (
}
}
-void SAL_CALL AccessibleSlideSorterView::disposing()
+void AccessibleSlideSorterView::disposing(std::unique_lock<std::mutex>&)
{
if (mnClientId != 0)
{
@@ -163,7 +163,7 @@ AccessibleSlideSorterObject* AccessibleSlideSorterView::GetAccessibleChildImplem
sal_Int32 nIndex)
{
AccessibleSlideSorterObject* pResult = nullptr;
- ::osl::MutexGuard aGuard (m_aMutex);
+ std::unique_lock aGuard (m_aMutex);
if (nIndex>=0 && nIndex<mpImpl->GetVisibleChildCount())
pResult = mpImpl->GetVisibleChild(nIndex);
@@ -173,7 +173,7 @@ AccessibleSlideSorterObject* AccessibleSlideSorterView::GetAccessibleChildImplem
void AccessibleSlideSorterView::Destroyed()
{
- ::osl::MutexGuard aGuard (m_aMutex);
+ std::unique_lock aGuard (m_aMutex);
// Send a disposing to all listeners.
if (mnClientId != 0)
@@ -197,7 +197,7 @@ Reference<XAccessibleContext > SAL_CALL
sal_Int32 SAL_CALL AccessibleSlideSorterView::getAccessibleChildCount()
{
ThrowIfDisposed();
- ::osl::MutexGuard aGuard (m_aMutex);
+ std::unique_lock aGuard (m_aMutex);
return mpImpl->GetVisibleChildCount();
}
@@ -205,7 +205,7 @@ Reference<XAccessible > SAL_CALL
AccessibleSlideSorterView::getAccessibleChild (sal_Int32 nIndex)
{
ThrowIfDisposed();
- ::osl::MutexGuard aGuard (m_aMutex);
+ std::unique_lock aGuard (m_aMutex);
if (nIndex<0 || nIndex>=mpImpl->GetVisibleChildCount())
throw lang::IndexOutOfBoundsException();
@@ -325,9 +325,9 @@ void SAL_CALL AccessibleSlideSorterView::addAccessibleEventListener(
if (!rxListener.is())
return;
- const osl::MutexGuard aGuard(m_aMutex);
+ const std::unique_lock aGuard(m_aMutex);
- if (rBHelper.bDisposed || rBHelper.bInDispose)
+ if (m_bDisposed)
{
uno::Reference<uno::XInterface> x (static_cast<lang::XComponent *>(this), uno::UNO_QUERY);
rxListener->disposing (lang::EventObject (x));
@@ -347,7 +347,7 @@ void SAL_CALL AccessibleSlideSorterView::removeAccessibleEventListener(
if (!rxListener.is())
return;
- const osl::MutexGuard aGuard(m_aMutex);
+ const std::unique_lock aGuard(m_aMutex);
if (mnClientId == 0)
return;
@@ -612,7 +612,7 @@ uno::Sequence< OUString> SAL_CALL
void AccessibleSlideSorterView::ThrowIfDisposed()
{
- if (rBHelper.bDisposed || rBHelper.bInDispose)
+ if (m_bDisposed)
{
SAL_WARN("sd", "Calling disposed object. Throwing exception:");
throw lang::DisposedException ("object has been already disposed",
diff --git a/sd/source/ui/inc/AccessibleSlideSorterView.hxx b/sd/source/ui/inc/AccessibleSlideSorterView.hxx
index 85003b72d138..b547f7e51432 100644
--- a/sd/source/ui/inc/AccessibleSlideSorterView.hxx
+++ b/sd/source/ui/inc/AccessibleSlideSorterView.hxx
@@ -19,8 +19,7 @@
#pragma once
-#include <cppuhelper/basemutex.hxx>
-#include <cppuhelper/compbase.hxx>
+#include <comphelper/compbase.hxx>
#include <com/sun/star/accessibility/XAccessible.hpp>
#include <com/sun/star/accessibility/XAccessibleContext.hpp>
#include <com/sun/star/accessibility/XAccessibleComponent.hpp>
@@ -38,7 +37,7 @@ namespace accessibility {
class AccessibleSlideSorterObject;
-typedef ::cppu::WeakComponentImplHelper<
+typedef comphelper::WeakComponentImplHelper<
css::accessibility::XAccessible,
css::accessibility::XAccessibleEventBroadcaster,
css::accessibility::XAccessibleContext,
@@ -51,9 +50,8 @@ typedef ::cppu::WeakComponentImplHelper<
of the AccessibleSlideSorterObject class to the make the page objects
accessible.
*/
-class AccessibleSlideSorterView
- : public cppu::BaseMutex,
- public AccessibleSlideSorterViewBase
+class AccessibleSlideSorterView final
+ : public AccessibleSlideSorterViewBase
{
public:
AccessibleSlideSorterView(
@@ -74,7 +72,7 @@ public:
const css::uno::Any& rOldValue,
const css::uno::Any& rNewValue);
- virtual void SAL_CALL disposing() override;
+ virtual void disposing(std::unique_lock<std::mutex>&) override;
/** Return the implementation object of the specified child.
@param nIndex