[Libreoffice-commits] core.git: accessibility/inc accessibility/source basctl/source comphelper/source include/comphelper include/toolkit svtools/inc svtools/source svx/source toolkit/Library_tk.mk toolkit/source

Arnaud Versini arnaud.versini at gmail.com
Mon Jun 12 06:46:13 UTC 2017


 accessibility/inc/extended/accessibletabbarbase.hxx           |    5 
 accessibility/inc/pch/precompiled_acc.hxx                     |    1 
 accessibility/inc/standard/accessiblemenubasecomponent.hxx    |    4 
 accessibility/inc/standard/vclxaccessiblestatusbaritem.hxx    |    4 
 accessibility/inc/standard/vclxaccessibletabpage.hxx          |    4 
 accessibility/inc/standard/vclxaccessibletoolboxitem.hxx      |    4 
 accessibility/source/extended/AccessibleBrowseBoxBase.cxx     |    1 
 accessibility/source/extended/accessibletabbarbase.cxx        |    1 
 accessibility/source/extended/textwindowaccessibility.cxx     |   36 ++--
 accessibility/source/standard/accessiblemenubasecomponent.cxx |    3 
 accessibility/source/standard/vclxaccessiblestatusbaritem.cxx |    3 
 accessibility/source/standard/vclxaccessibletabpage.cxx       |    3 
 accessibility/source/standard/vclxaccessibletoolboxitem.cxx   |    2 
 basctl/source/accessibility/accessibledialogcontrolshape.cxx  |    3 
 basctl/source/accessibility/accessibledialogwindow.cxx        |    3 
 basctl/source/inc/accessibledialogcontrolshape.hxx            |    4 
 basctl/source/inc/accessibledialogwindow.hxx                  |    4 
 comphelper/source/misc/accessiblecomponenthelper.cxx          |    9 -
 comphelper/source/misc/accessiblecontexthelper.cxx            |   38 ----
 comphelper/source/misc/accessibleselectionhelper.cxx          |    2 
 comphelper/source/misc/accessibletexthelper.cxx               |    3 
 include/comphelper/accessiblecomponenthelper.hxx              |    8 -
 include/comphelper/accessiblecontexthelper.hxx                |   80 ----------
 include/comphelper/accessibleselectionhelper.hxx              |    3 
 include/comphelper/accessibletexthelper.hxx                   |    3 
 include/toolkit/awt/vclxaccessiblecomponent.hxx               |    4 
 include/toolkit/controls/accessiblecontrolcontext.hxx         |    4 
 include/toolkit/helper/externallock.hxx                       |   44 -----
 svtools/inc/vclxaccessibleheaderbaritem.hxx                   |    7 
 svtools/source/control/vclxaccessibleheaderbaritem.cxx        |    4 
 svx/source/accessibility/charmapacc.cxx                       |    9 -
 svx/source/inc/charmapacc.hxx                                 |   10 -
 toolkit/Library_tk.mk                                         |    1 
 toolkit/source/awt/vclxaccessiblecomponent.cxx                |    2 
 toolkit/source/controls/accessiblecontrolcontext.cxx          |    1 
 toolkit/source/helper/externallock.cxx                        |   37 ----
 36 files changed, 62 insertions(+), 292 deletions(-)

New commits:
commit a7532d8f061986c2e828df32f47f1fee1a339a14
Author: Arnaud Versini <arnaud.versini at gmail.com>
Date:   Mon Jun 5 16:12:27 2017 +0200

    Remove VCLExternalSolarLock and IMutex.
    
    Next step is to remove OContextEntryGuard.
    
    Change-Id: I9460fb67fba6f3bfb3c809b730c33f38d225a64e
    Reviewed-on: https://gerrit.libreoffice.org/38411
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>

diff --git a/accessibility/inc/extended/accessibletabbarbase.hxx b/accessibility/inc/extended/accessibletabbarbase.hxx
index d2d6ab83cc3c..8fd28dc06beb 100644
--- a/accessibility/inc/extended/accessibletabbarbase.hxx
+++ b/accessibility/inc/extended/accessibletabbarbase.hxx
@@ -23,10 +23,8 @@
 #include <comphelper/accessiblecomponenthelper.hxx>
 #include <tools/link.hxx>
 #include <vcl/vclptr.hxx>
-#include <toolkit/helper/externallock.hxx>
 
 class TabBar;
-class VCLExternalSolarLock;
 class VclSimpleEvent;
 class VclWindowEvent;
 
@@ -34,8 +32,7 @@ class VclWindowEvent;
 namespace accessibility
 {
 
-class AccessibleTabBarBase : private BaseVCLExternalSolarLock,
-                             public comphelper::OAccessibleExtendedComponentHelper
+class AccessibleTabBarBase : public comphelper::OAccessibleExtendedComponentHelper
 {
 public:
     explicit            AccessibleTabBarBase( TabBar* pTabBar );
diff --git a/accessibility/inc/pch/precompiled_acc.hxx b/accessibility/inc/pch/precompiled_acc.hxx
index a6a92876ada5..bebb30a6b92e 100644
--- a/accessibility/inc/pch/precompiled_acc.hxx
+++ b/accessibility/inc/pch/precompiled_acc.hxx
@@ -303,7 +303,6 @@
 #include <toolkit/awt/vclxwindows.hxx>
 #include <toolkit/dllapi.h>
 #include <toolkit/helper/convert.hxx>
-#include <toolkit/helper/externallock.hxx>
 #include <toolkit/helper/vclunohelper.hxx>
 #include <tools/color.hxx>
 #include <tools/contnr.hxx>
diff --git a/accessibility/inc/standard/accessiblemenubasecomponent.hxx b/accessibility/inc/standard/accessiblemenubasecomponent.hxx
index 96fa054244c2..2447b0d6c1d3 100644
--- a/accessibility/inc/standard/accessiblemenubasecomponent.hxx
+++ b/accessibility/inc/standard/accessiblemenubasecomponent.hxx
@@ -27,7 +27,6 @@
 #include <cppuhelper/implbase2.hxx>
 #include <tools/link.hxx>
 #include <vcl/vclptr.hxx>
-#include <toolkit/helper/externallock.hxx>
 
 #include <vector>
 
@@ -46,8 +45,7 @@ typedef ::cppu::ImplHelper2<
     css::accessibility::XAccessible,
     css::lang::XServiceInfo > OAccessibleMenuBaseComponent_BASE;
 
-class OAccessibleMenuBaseComponent : private BaseVCLExternalSolarLock,
-                                     public comphelper::OAccessibleExtendedComponentHelper,
+class OAccessibleMenuBaseComponent : public comphelper::OAccessibleExtendedComponentHelper,
                                      public OAccessibleMenuBaseComponent_BASE
 {
     friend class OAccessibleMenuItemComponent;
diff --git a/accessibility/inc/standard/vclxaccessiblestatusbaritem.hxx b/accessibility/inc/standard/vclxaccessiblestatusbaritem.hxx
index 163fd663f5b6..47cb8bad700a 100644
--- a/accessibility/inc/standard/vclxaccessiblestatusbaritem.hxx
+++ b/accessibility/inc/standard/vclxaccessiblestatusbaritem.hxx
@@ -25,7 +25,6 @@
 #include <comphelper/accessibletexthelper.hxx>
 #include <cppuhelper/implbase2.hxx>
 #include <vcl/vclptr.hxx>
-#include <toolkit/helper/externallock.hxx>
 
 class StatusBar;
 
@@ -43,8 +42,7 @@ typedef ::cppu::ImplHelper2<
     css::accessibility::XAccessible,
     css::lang::XServiceInfo > VCLXAccessibleStatusBarItem_BASE;
 
-class VCLXAccessibleStatusBarItem : private BaseVCLExternalSolarLock,
-                                    public AccessibleTextHelper_BASE,
+class VCLXAccessibleStatusBarItem : public AccessibleTextHelper_BASE,
                                     public VCLXAccessibleStatusBarItem_BASE
 {
     friend class VCLXAccessibleStatusBar;
diff --git a/accessibility/inc/standard/vclxaccessibletabpage.hxx b/accessibility/inc/standard/vclxaccessibletabpage.hxx
index 830e45d64808..66a2fbc8f87d 100644
--- a/accessibility/inc/standard/vclxaccessibletabpage.hxx
+++ b/accessibility/inc/standard/vclxaccessibletabpage.hxx
@@ -25,7 +25,6 @@
 #include <comphelper/accessibletexthelper.hxx>
 #include <cppuhelper/implbase2.hxx>
 #include <vcl/vclptr.hxx>
-#include <toolkit/helper/externallock.hxx>
 
 
 class TabControl;
@@ -44,8 +43,7 @@ typedef ::cppu::ImplHelper2<
     css::accessibility::XAccessible,
     css::lang::XServiceInfo > VCLXAccessibleTabPage_BASE;
 
-class VCLXAccessibleTabPage :   private BaseVCLExternalSolarLock,
-                                public AccessibleTextHelper_BASE,
+class VCLXAccessibleTabPage :   public AccessibleTextHelper_BASE,
                                 public VCLXAccessibleTabPage_BASE
 {
     friend class VCLXAccessibleTabControl;
diff --git a/accessibility/inc/standard/vclxaccessibletoolboxitem.hxx b/accessibility/inc/standard/vclxaccessibletoolboxitem.hxx
index 47bb3c387e93..fd455b025507 100644
--- a/accessibility/inc/standard/vclxaccessibletoolboxitem.hxx
+++ b/accessibility/inc/standard/vclxaccessibletoolboxitem.hxx
@@ -31,7 +31,6 @@
 #include <cppuhelper/implbase4.hxx>
 #include <comphelper/accessibletexthelper.hxx>
 #include <vcl/vclptr.hxx>
-#include <toolkit/helper/externallock.hxx>
 
 
 class ToolBox;
@@ -42,8 +41,7 @@ typedef ::cppu::ImplHelper4 < css::accessibility::XAccessible,
                               css::accessibility::XAccessibleValue,
                               css::lang::XServiceInfo > VCLXAccessibleToolBoxItem_BASE;
 
-class VCLXAccessibleToolBoxItem : private BaseVCLExternalSolarLock,
-                                  public AccessibleTextHelper_BASE,
+class VCLXAccessibleToolBoxItem : public AccessibleTextHelper_BASE,
                                   public VCLXAccessibleToolBoxItem_BASE
 {
 private:
diff --git a/accessibility/source/extended/AccessibleBrowseBoxBase.cxx b/accessibility/source/extended/AccessibleBrowseBoxBase.cxx
index 5c21f9371849..f33ab493970b 100644
--- a/accessibility/source/extended/AccessibleBrowseBoxBase.cxx
+++ b/accessibility/source/extended/AccessibleBrowseBoxBase.cxx
@@ -26,6 +26,7 @@
 #include <com/sun/star/accessibility/AccessibleStateType.hpp>
 #include <com/sun/star/accessibility/IllegalAccessibleComponentStateException.hpp>
 #include <unotools/accessiblerelationsethelper.hxx>
+#include <vcl/svapp.hxx>
 
 
 using ::com::sun::star::uno::Reference;
diff --git a/accessibility/source/extended/accessibletabbarbase.cxx b/accessibility/source/extended/accessibletabbarbase.cxx
index 12f741869cc4..e1cec85dee48 100644
--- a/accessibility/source/extended/accessibletabbarbase.cxx
+++ b/accessibility/source/extended/accessibletabbarbase.cxx
@@ -29,7 +29,6 @@ namespace accessibility
 
 
 AccessibleTabBarBase::AccessibleTabBarBase( TabBar* pTabBar ) :
-    OAccessibleExtendedComponentHelper( &m_aLock ),
     m_pTabBar( nullptr )
 {
     SetTabBarPointer( pTabBar );
diff --git a/accessibility/source/extended/textwindowaccessibility.cxx b/accessibility/source/extended/textwindowaccessibility.cxx
index 78cd8f280ea5..322118940159 100644
--- a/accessibility/source/extended/textwindowaccessibility.cxx
+++ b/accessibility/source/extended/textwindowaccessibility.cxx
@@ -703,7 +703,7 @@ Document::Document(::VCLXWindow * pVclXWindow, ::TextEngine & rEngine,
 
 css::lang::Locale Document::retrieveLocale()
 {
-    ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+    SolarMutexGuard aGuard;
     return m_rEngine.GetLocale();
 }
 
@@ -760,7 +760,7 @@ css::awt::Rectangle
 Document::retrieveParagraphBounds(Paragraph const * pParagraph,
                                   bool bAbsolute)
 {
-    ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+    SolarMutexGuard aGuard;
     ::osl::MutexGuard aInternalGuard(GetMutex());
 
     // If a client holds on to a Paragraph that is no longer visible (as it
@@ -799,7 +799,7 @@ Document::retrieveParagraphBounds(Paragraph const * pParagraph,
 OUString
 Document::retrieveParagraphText(Paragraph const * pParagraph)
 {
-    ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+    SolarMutexGuard aGuard;
     ::osl::MutexGuard aInternalGuard(GetMutex());
     return m_rEngine.GetText(static_cast< ::sal_uLong >(pParagraph->getNumber()));
         // numeric overflow cannot happen here
@@ -809,7 +809,7 @@ void Document::retrieveParagraphSelection(Paragraph const * pParagraph,
                                           ::sal_Int32 * pBegin,
                                           ::sal_Int32 * pEnd)
 {
-    ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+    SolarMutexGuard aGuard;
     ::osl::MutexGuard aInternalGuard(GetMutex());
     ::TextSelection const & rSelection = m_rView.GetSelection();
     Paragraphs::size_type nNumber = pParagraph->getNumber();
@@ -839,7 +839,7 @@ void Document::retrieveParagraphSelection(Paragraph const * pParagraph,
 
 ::sal_Int32 Document::retrieveParagraphCaretPosition(Paragraph const * pParagraph)
 {
-    ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+    SolarMutexGuard aGuard;
     ::osl::MutexGuard aInternalGuard(GetMutex());
     ::TextSelection const & rSelection = m_rView.GetSelection();
     Paragraphs::size_type nNumber = pParagraph->getNumber();
@@ -852,7 +852,7 @@ css::awt::Rectangle
 Document::retrieveCharacterBounds(Paragraph const * pParagraph,
                                   ::sal_Int32 nIndex)
 {
-    ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+    SolarMutexGuard aGuard;
     ::osl::MutexGuard aInternalGuard(GetMutex());
     ::sal_uLong nNumber = static_cast< ::sal_uLong >(pParagraph->getNumber());
     sal_Int32 nLength = m_rEngine.GetText(nNumber).getLength();
@@ -898,7 +898,7 @@ Document::retrieveCharacterBounds(Paragraph const * pParagraph,
 ::sal_Int32 Document::retrieveCharacterIndex(Paragraph const * pParagraph,
                                              css::awt::Point const & rPoint)
 {
-    ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+    SolarMutexGuard aGuard;
     ::osl::MutexGuard aInternalGuard(GetMutex());
     ::sal_uLong nNumber = static_cast< ::sal_uLong >(pParagraph->getNumber());
         // XXX  numeric overflow
@@ -927,7 +927,7 @@ Document::retrieveCharacterAttributes(
     Paragraph const * pParagraph, ::sal_Int32 nIndex,
     const css::uno::Sequence< OUString >& aRequestedAttributes)
 {
-    ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+    SolarMutexGuard aGuard;
 
     vcl::Font aFont = m_rEngine.GetFont();
     const sal_Int32 AttributeCount = 9;
@@ -1075,7 +1075,7 @@ Document::retrieveDefaultAttributes(
     Paragraph const * pParagraph,
     const css::uno::Sequence< OUString >& RequestedAttributes)
 {
-    ::osl::Guard< ::comphelper::IMutex > aExternalGuard( getExternalLock() );
+    SolarMutexGuard aGuard;
     ::osl::MutexGuard aInternalGuard( GetMutex() );
 
     tPropValMap aDefAttrSeq;
@@ -1141,7 +1141,7 @@ Document::retrieveRunAttributes(
     Paragraph const * pParagraph, ::sal_Int32 Index,
     const css::uno::Sequence< OUString >& RequestedAttributes)
 {
-    ::osl::Guard< ::comphelper::IMutex > aExternalGuard( getExternalLock() );
+    SolarMutexGuard aGuard;
     ::osl::MutexGuard aInternalGuard( GetMutex() );
     ::sal_uLong nNumber = static_cast< ::sal_uLong >( pParagraph->getNumber() );
         // XXX  numeric overflow
@@ -1159,7 +1159,7 @@ Document::retrieveRunAttributes(
 void Document::changeParagraphText(Paragraph * pParagraph,
                                    OUString const & rText)
 {
-    ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+    SolarMutexGuard aGuard;
     {
         ::osl::MutexGuard aInternalGuard(GetMutex());
         ::sal_uLong nNumber = static_cast< ::sal_uLong >(pParagraph->getNumber());
@@ -1174,7 +1174,7 @@ void Document::changeParagraphText(Paragraph * pParagraph,
                                    bool bCut, bool bPaste,
                                    OUString const & rText)
 {
-    ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+    SolarMutexGuard aGuard;
     {
         ::osl::MutexGuard aInternalGuard(GetMutex());
         ::sal_uLong nNumber = static_cast< ::sal_uLong >(pParagraph->getNumber());
@@ -1194,7 +1194,7 @@ void Document::changeParagraphText(Paragraph * pParagraph,
 void Document::copyParagraphText(Paragraph const * pParagraph,
                                  ::sal_Int32 nBegin, ::sal_Int32 nEnd)
 {
-    ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+    SolarMutexGuard aGuard;
     {
         ::osl::MutexGuard aInternalGuard(GetMutex());
         ::sal_uLong nNumber = static_cast< ::sal_uLong >(pParagraph->getNumber());
@@ -1217,7 +1217,7 @@ void Document::changeParagraphAttributes(
     Paragraph * pParagraph, ::sal_Int32 nBegin, ::sal_Int32 nEnd,
     css::uno::Sequence< css::beans::PropertyValue > const & rAttributeSet)
 {
-    ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+    SolarMutexGuard aGuard;
     {
         ::osl::MutexGuard aInternalGuard(GetMutex());
         ::sal_uLong nNumber = static_cast< ::sal_uLong >(pParagraph->getNumber());
@@ -1249,7 +1249,7 @@ void Document::changeParagraphAttributes(
 void Document::changeParagraphSelection(Paragraph * pParagraph,
                                         ::sal_Int32 nBegin, ::sal_Int32 nEnd)
 {
-    ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+    SolarMutexGuard aGuard;
     {
         ::osl::MutexGuard aInternalGuard(GetMutex());
         ::sal_uLong nNumber = static_cast< ::sal_uLong >(pParagraph->getNumber());
@@ -1275,7 +1275,7 @@ Document::retrieveParagraphLineBoundary( Paragraph const * pParagraph,
     aBoundary.startPos = nIndex;
     aBoundary.endPos = nIndex;
 
-    ::osl::Guard< ::comphelper::IMutex > aExternalGuard( getExternalLock() );
+    SolarMutexGuard aGuard;
     {
         ::osl::MutexGuard aInternalGuard( GetMutex() );
         ::sal_uLong nNumber = static_cast< ::sal_uLong >( pParagraph->getNumber() );
@@ -1313,7 +1313,7 @@ Document::retrieveParagraphBoundaryOfLine( Paragraph const * pParagraph,
     aBoundary.startPos = 0;
     aBoundary.endPos = 0;
 
-    ::osl::Guard< ::comphelper::IMutex > aExternalGuard( getExternalLock() );
+    SolarMutexGuard aGuard;
     {
         ::osl::MutexGuard aInternalGuard( GetMutex() );
         ::sal_uLong nNumber = static_cast< ::sal_uLong >( pParagraph->getNumber() );
@@ -1339,7 +1339,7 @@ Document::retrieveParagraphBoundaryOfLine( Paragraph const * pParagraph,
 
 sal_Int32 Document::retrieveParagraphLineWithCursor( Paragraph const * pParagraph )
 {
-    ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+    SolarMutexGuard aGuard;
     ::osl::MutexGuard aInternalGuard(GetMutex());
     ::TextSelection const & rSelection = m_rView.GetSelection();
     Paragraphs::size_type nNumber = pParagraph->getNumber();
diff --git a/accessibility/source/standard/accessiblemenubasecomponent.cxx b/accessibility/source/standard/accessiblemenubasecomponent.cxx
index b3ee3884958a..5aae312b0176 100644
--- a/accessibility/source/standard/accessiblemenubasecomponent.cxx
+++ b/accessibility/source/standard/accessiblemenubasecomponent.cxx
@@ -43,8 +43,7 @@ using namespace ::comphelper;
 
 
 OAccessibleMenuBaseComponent::OAccessibleMenuBaseComponent( Menu* pMenu )
-    :OAccessibleExtendedComponentHelper( &m_aLock )
-    ,m_pMenu( pMenu )
+    :m_pMenu( pMenu )
     ,m_bEnabled( false )
     ,m_bFocused( false )
     ,m_bVisible( false )
diff --git a/accessibility/source/standard/vclxaccessiblestatusbaritem.cxx b/accessibility/source/standard/vclxaccessiblestatusbaritem.cxx
index 3a50c75d980a..0b462f7cfecb 100644
--- a/accessibility/source/standard/vclxaccessiblestatusbaritem.cxx
+++ b/accessibility/source/standard/vclxaccessiblestatusbaritem.cxx
@@ -48,8 +48,7 @@ using namespace ::comphelper;
 
 
 VCLXAccessibleStatusBarItem::VCLXAccessibleStatusBarItem( StatusBar* pStatusBar, sal_uInt16 nItemId )
-    :AccessibleTextHelper_BASE( &m_aLock )
-    ,m_pStatusBar( pStatusBar )
+    :m_pStatusBar( pStatusBar )
     ,m_nItemId( nItemId )
 {
 
diff --git a/accessibility/source/standard/vclxaccessibletabpage.cxx b/accessibility/source/standard/vclxaccessibletabpage.cxx
index 954b471dbd90..8fc4030209f8 100644
--- a/accessibility/source/standard/vclxaccessibletabpage.cxx
+++ b/accessibility/source/standard/vclxaccessibletabpage.cxx
@@ -48,8 +48,7 @@ using namespace ::comphelper;
 
 
 VCLXAccessibleTabPage::VCLXAccessibleTabPage( TabControl* pTabControl, sal_uInt16 nPageId )
-    :AccessibleTextHelper_BASE( &m_aLock )
-    ,m_pTabControl( pTabControl )
+    :m_pTabControl( pTabControl )
     ,m_nPageId( nPageId )
 {
     m_bFocused  = IsFocused();
diff --git a/accessibility/source/standard/vclxaccessibletoolboxitem.cxx b/accessibility/source/standard/vclxaccessibletoolboxitem.cxx
index 93e2c82fb010..325db82a8891 100644
--- a/accessibility/source/standard/vclxaccessibletoolboxitem.cxx
+++ b/accessibility/source/standard/vclxaccessibletoolboxitem.cxx
@@ -59,8 +59,6 @@ using namespace ::comphelper;
 // Ctor() and Dtor()
 
 VCLXAccessibleToolBoxItem::VCLXAccessibleToolBoxItem( ToolBox* _pToolBox, sal_Int32 _nPos ) :
-    AccessibleTextHelper_BASE( &m_aLock ),
-
     m_pToolBox      ( _pToolBox ),
     m_nIndexInParent( _nPos ),
     m_nRole         ( AccessibleRole::PUSH_BUTTON ),
diff --git a/basctl/source/accessibility/accessibledialogcontrolshape.cxx b/basctl/source/accessibility/accessibledialogcontrolshape.cxx
index 9a69d2d7ff2d..5502cde6d32b 100644
--- a/basctl/source/accessibility/accessibledialogcontrolshape.cxx
+++ b/basctl/source/accessibility/accessibledialogcontrolshape.cxx
@@ -50,8 +50,7 @@ using namespace ::comphelper;
 
 
 AccessibleDialogControlShape::AccessibleDialogControlShape (DialogWindow* pDialogWindow, DlgEdObj* pDlgEdObj)
-    :OAccessibleExtendedComponentHelper( &m_aLock )
-    ,m_pDialogWindow( pDialogWindow )
+    :m_pDialogWindow( pDialogWindow )
     ,m_pDlgEdObj( pDlgEdObj )
 {
     if ( m_pDlgEdObj )
diff --git a/basctl/source/accessibility/accessibledialogwindow.cxx b/basctl/source/accessibility/accessibledialogwindow.cxx
index 1cedd99d61b8..6d306466052c 100644
--- a/basctl/source/accessibility/accessibledialogwindow.cxx
+++ b/basctl/source/accessibility/accessibledialogwindow.cxx
@@ -99,8 +99,7 @@ bool AccessibleDialogWindow::ChildDescriptor::operator<( const ChildDescriptor&
 
 
 AccessibleDialogWindow::AccessibleDialogWindow (basctl::DialogWindow* pDialogWindow)
-    : OAccessibleExtendedComponentHelper( &m_aLock)
-    , m_pDialogWindow(pDialogWindow)
+    : m_pDialogWindow(pDialogWindow)
     , m_pDlgEditor(nullptr)
     , m_pDlgEdModel(nullptr)
 {
diff --git a/basctl/source/inc/accessibledialogcontrolshape.hxx b/basctl/source/inc/accessibledialogcontrolshape.hxx
index aba1a83ec32c..4830032599d3 100644
--- a/basctl/source/inc/accessibledialogcontrolshape.hxx
+++ b/basctl/source/inc/accessibledialogcontrolshape.hxx
@@ -25,7 +25,6 @@
 #include <comphelper/accessiblecomponenthelper.hxx>
 #include <cppuhelper/implbase3.hxx>
 #include <vcl/vclptr.hxx>
-#include <toolkit/helper/externallock.hxx>
 
 namespace vcl { class Window; }
 
@@ -47,8 +46,7 @@ typedef ::cppu::ImplHelper3<
         css::lang::XServiceInfo,
         css::beans::XPropertyChangeListener > AccessibleDialogControlShape_BASE;
 
-class AccessibleDialogControlShape :    private BaseVCLExternalSolarLock,
-                                        public comphelper::OAccessibleExtendedComponentHelper,
+class AccessibleDialogControlShape :    public comphelper::OAccessibleExtendedComponentHelper,
                                         public AccessibleDialogControlShape_BASE
 {
     friend class AccessibleDialogWindow;
diff --git a/basctl/source/inc/accessibledialogwindow.hxx b/basctl/source/inc/accessibledialogwindow.hxx
index 2524e42deeee..badcabda17d3 100644
--- a/basctl/source/inc/accessibledialogwindow.hxx
+++ b/basctl/source/inc/accessibledialogwindow.hxx
@@ -27,7 +27,6 @@
 #include <svl/lstner.hxx>
 #include <tools/link.hxx>
 #include <vcl/vclptr.hxx>
-#include <toolkit/helper/externallock.hxx>
 
 class VclSimpleEvent;
 class VclWindowEvent;
@@ -52,8 +51,7 @@ typedef ::cppu::ImplHelper3 <
     css::accessibility::XAccessibleSelection,
     css::lang::XServiceInfo > AccessibleDialogWindow_BASE;
 
-class AccessibleDialogWindow :  private BaseVCLExternalSolarLock,
-                                public comphelper::OAccessibleExtendedComponentHelper,
+class AccessibleDialogWindow :  public comphelper::OAccessibleExtendedComponentHelper,
                                 public AccessibleDialogWindow_BASE,
                                 public SfxListener
 {
diff --git a/comphelper/source/misc/accessiblecomponenthelper.cxx b/comphelper/source/misc/accessiblecomponenthelper.cxx
index a5211d6f3af9..ab01665afcf3 100644
--- a/comphelper/source/misc/accessiblecomponenthelper.cxx
+++ b/comphelper/source/misc/accessiblecomponenthelper.cxx
@@ -29,8 +29,7 @@ namespace comphelper
     using namespace ::com::sun::star::lang;
     using namespace ::com::sun::star::accessibility;
 
-    OCommonAccessibleComponent::OCommonAccessibleComponent( IMutex* _pExternalLock )
-        :OAccessibleContextHelper( _pExternalLock )
+    OCommonAccessibleComponent::OCommonAccessibleComponent( )
     {
     }
 
@@ -93,8 +92,7 @@ namespace comphelper
         return implGetBounds();
     }
 
-    OAccessibleComponentHelper::OAccessibleComponentHelper( IMutex* _pExternalLock )
-        :OCommonAccessibleComponent( _pExternalLock )
+    OAccessibleComponentHelper::OAccessibleComponentHelper( )
     {
     }
 
@@ -133,8 +131,7 @@ namespace comphelper
         return OCommonAccessibleComponent::getBounds( );
     }
 
-    OAccessibleExtendedComponentHelper::OAccessibleExtendedComponentHelper( IMutex* _pExternalLock )
-        :OCommonAccessibleComponent( _pExternalLock )
+    OAccessibleExtendedComponentHelper::OAccessibleExtendedComponentHelper( )
     {
     }
 
diff --git a/comphelper/source/misc/accessiblecontexthelper.cxx b/comphelper/source/misc/accessiblecontexthelper.cxx
index f03598df2c7c..df837e2e946b 100644
--- a/comphelper/source/misc/accessiblecontexthelper.cxx
+++ b/comphelper/source/misc/accessiblecontexthelper.cxx
@@ -24,25 +24,20 @@
 #include <com/sun/star/accessibility/AccessibleStateType.hpp>
 #include <com/sun/star/accessibility/IllegalAccessibleComponentStateException.hpp>
 #include <comphelper/accessibleeventnotifier.hxx>
+#include <comphelper/solarmutex.hxx>
 
 
 namespace comphelper
 {
-
-
     using namespace ::com::sun::star::uno;
     using namespace ::com::sun::star::lang;
     using namespace ::com::sun::star::accessibility;
 
-    IMutex::~IMutex() {}
-
     /** implementation class for OAccessibleContextHelper. No own thread safety!
     */
     class OContextHelper_Impl
     {
     private:
-        IMutex*                             m_pExternalLock;    // the optional additional external lock
-
         WeakReference< XAccessible >        m_aCreator;         // the XAccessible which created our XAccessibleContext
 
         AccessibleEventNotifier::TClientId  m_nClientId;
@@ -51,9 +46,6 @@ namespace comphelper
         Reference< XAccessible >    getCreator( ) const                 { return m_aCreator; }
         inline  void                        setCreator( const Reference< XAccessible >& _rAcc );
 
-        IMutex*                     getExternalLock( )                  { return m_pExternalLock; }
-        void                        setExternalLock( IMutex* _pLock )   { m_pExternalLock = _pLock; }
-
         AccessibleEventNotifier::TClientId
                                             getClientId() const                 { return m_nClientId; }
         void                        setClientId( const AccessibleEventNotifier::TClientId _nId )
@@ -61,8 +53,7 @@ namespace comphelper
 
     public:
         OContextHelper_Impl()
-            :m_pExternalLock( nullptr )
-            ,m_nClientId( 0 )
+            :m_nClientId( 0 )
         {
         }
     };
@@ -73,26 +64,15 @@ namespace comphelper
         m_aCreator = _rAcc;
     }
 
-    OAccessibleContextHelper::OAccessibleContextHelper( IMutex* _pExternalLock )
+    OAccessibleContextHelper::OAccessibleContextHelper( )
         :OAccessibleContextHelper_Base( GetMutex() )
         ,m_pImpl(new OContextHelper_Impl)
     {
-        assert(_pExternalLock);
-        m_pImpl->setExternalLock( _pExternalLock );
     }
 
 
     OAccessibleContextHelper::~OAccessibleContextHelper( )
     {
-        /* forgets the reference to the external lock, if present.
-
-           <p>This means any further locking will not be guard the external lock anymore, never.</p>
-
-           <p>To be used in derived classes which do not supply the external lock themself, but instead get
-           them passed from own derivees (or clients).</p>
-        */
-        m_pImpl->setExternalLock( nullptr );
-
             // this ensures that the lock, which may be already destroyed as part of the derivee,
             // is not used anymore
 
@@ -100,17 +80,11 @@ namespace comphelper
     }
 
 
-    IMutex* OAccessibleContextHelper::getExternalLock( )
-    {
-        return m_pImpl->getExternalLock();
-    }
-
-
     void SAL_CALL OAccessibleContextHelper::disposing()
     {
         // rhbz#1001768: de facto this class is locked by SolarMutex;
         // do not lock m_Mutex because it may cause deadlock
-        OMutexGuard aGuard( getExternalLock() );
+        osl::Guard<SolarMutex> aGuard(SolarMutex::get());
 
         if ( m_pImpl->getClientId( ) )
         {
@@ -122,7 +96,7 @@ namespace comphelper
 
     void SAL_CALL OAccessibleContextHelper::addAccessibleEventListener( const Reference< XAccessibleEventListener >& _rxListener )
     {
-        OMutexGuard aGuard( getExternalLock() );
+        osl::Guard<SolarMutex> aGuard(SolarMutex::get());
             // don't use the OContextEntryGuard - it will throw an exception if we're not alive
             // anymore, while the most recent specification for XComponent states that we should
             // silently ignore the call in such a situation
@@ -145,7 +119,7 @@ namespace comphelper
 
     void SAL_CALL OAccessibleContextHelper::removeAccessibleEventListener( const Reference< XAccessibleEventListener >& _rxListener )
     {
-        OMutexGuard aGuard( getExternalLock() );
+        osl::Guard<SolarMutex> aGuard(SolarMutex::get());
             // don't use the OContextEntryGuard - it will throw an exception if we're not alive
             // anymore, while the most recent specification for XComponent states that we should
             // silently ignore the call in such a situation
diff --git a/comphelper/source/misc/accessibleselectionhelper.cxx b/comphelper/source/misc/accessibleselectionhelper.cxx
index fe5f47b97482..c19079226207 100644
--- a/comphelper/source/misc/accessibleselectionhelper.cxx
+++ b/comphelper/source/misc/accessibleselectionhelper.cxx
@@ -101,7 +101,7 @@ namespace comphelper
         implSelect( nSelectedChildIndex, false );
     }
 
-    OAccessibleSelectionHelper::OAccessibleSelectionHelper( IMutex* _pExternalLock ) : OAccessibleComponentHelper(_pExternalLock)
+    OAccessibleSelectionHelper::OAccessibleSelectionHelper()
     {
     }
 
diff --git a/comphelper/source/misc/accessibletexthelper.cxx b/comphelper/source/misc/accessibletexthelper.cxx
index 13ab75e0f83b..99f095bdeb83 100644
--- a/comphelper/source/misc/accessibletexthelper.cxx
+++ b/comphelper/source/misc/accessibletexthelper.cxx
@@ -752,8 +752,7 @@ namespace comphelper
     // OAccessibleTextHelper
 
 
-    OAccessibleTextHelper::OAccessibleTextHelper( IMutex* _pExternalLock )
-        :OAccessibleExtendedComponentHelper( _pExternalLock )
+    OAccessibleTextHelper::OAccessibleTextHelper( )
     {
     }
 
diff --git a/include/comphelper/accessiblecomponenthelper.hxx b/include/comphelper/accessiblecomponenthelper.hxx
index 42a886a0a5a3..e7ac2fa157a6 100644
--- a/include/comphelper/accessiblecomponenthelper.hxx
+++ b/include/comphelper/accessiblecomponenthelper.hxx
@@ -41,7 +41,7 @@ namespace comphelper
     {
     protected:
         /// see the respective base class ctor for an extensive comment on this, please
-        OCommonAccessibleComponent( IMutex* _pExternalLock );
+        OCommonAccessibleComponent();
         virtual ~OCommonAccessibleComponent() override;
 
     protected:
@@ -87,8 +87,7 @@ namespace comphelper
             ,public OAccessibleComponentHelper_Base
     {
     protected:
-        /// see the respective base class ctor for an extensive comment on this, please
-        OAccessibleComponentHelper( IMutex* _pExternalLock );
+        OAccessibleComponentHelper();
 
     public:
         // XInterface
@@ -118,8 +117,7 @@ namespace comphelper
             ,public OAccessibleExtendedComponentHelper_Base
     {
     protected:
-        /// see the respective base class ctor for an extensive comment on this, please
-        OAccessibleExtendedComponentHelper( IMutex* _pExternalLock );
+        OAccessibleExtendedComponentHelper( );
 
     public:
         // XInterface
diff --git a/include/comphelper/accessiblecontexthelper.hxx b/include/comphelper/accessiblecontexthelper.hxx
index 7163817280a3..1cc27da80b3e 100644
--- a/include/comphelper/accessiblecontexthelper.hxx
+++ b/include/comphelper/accessiblecontexthelper.hxx
@@ -26,6 +26,7 @@
 #include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
 #include <com/sun/star/lang/DisposedException.hpp>
 #include <comphelper/comphelperdllapi.h>
+#include <comphelper/solarmutex.hxx>
 #include <memory>
 
 
@@ -33,45 +34,6 @@ namespace comphelper
 {
 
 
-    //= IMutex
-
-
-    // This whole thingie here (own mutex classes and such) is a HACK. I hate the SolarMutex.
-    // See below for more explanations ....
-
-    /** abstract interface for implementing a mutex
-    */
-    class COMPHELPER_DLLPUBLIC IMutex
-    {
-    public:
-        virtual ~IMutex();
-        virtual void acquire() = 0;
-        virtual void release() = 0;
-    };
-
-
-    //= OMutexGuard
-
-
-    class OMutexGuard
-    {
-        IMutex* m_pMutex;
-    public:
-        OMutexGuard( IMutex* _pMutex )
-            :m_pMutex( _pMutex )
-        {
-            if ( m_pMutex )
-                m_pMutex->acquire();
-        }
-
-        ~OMutexGuard( )
-        {
-            if ( m_pMutex )
-                m_pMutex->release();
-        }
-    };
-
-
     //= OAccessibleContextHelper
 
 
@@ -92,33 +54,7 @@ namespace comphelper
     protected:
         virtual ~OAccessibleContextHelper( ) override;
 
-        /** ctor
-
-            <p>If you need additional object safety for your class, and want to ensure that your own
-            mutex is locked before the mutex this class provides is, than use this ctor.</p>
-
-            <p>Beware that this is a hack. Unfortunately, OpenOffice.org has two different mutex hierarchies,
-            which are not compatible. In addition, wide parts of the code (especially VCL) is not thread-safe,
-            but instead relies on a <em>single global mutex</em>. As a consequence, components using
-            directly or indirectly such code need to care for this global mutex. Yes, this is as ugly as
-            anything.</p>
-
-            <p>Note that the external lock is used as additional lock, not as the only one. The own mutex of the
-            instance is used for internal actions, and every action which potentially involves external code
-            (for instance every call to a virtual method overridden by derivees) is <em>additionally</em> and
-            <em>first</em> guarded by with the external lock.</p>
-
-            <p>Beware of the lifetime of the lock - you must ensure that the lock exists at least as long as
-            the context does. A good approach to implement the lock may be to derive you own context
-            not only from OAccessibleContextHelper, but also from IMutex.</p>
-
-            <p>One more note. This lock is definitely not used once the dtor is reached. Means whatever
-            the dtor implementation does, it does <em>not</em> guard the external lock. See this as a contract.
-            <br/>You should ensure the same thing for own derivees which do not supply the lock themself,
-            but get them from yet another derivee.</p>
-            @see forgetExternalLock
-        */
-        OAccessibleContextHelper( IMutex* _pExternalLock );
+        OAccessibleContextHelper( );
 
         /** late construction
         @param _rxAccessible
@@ -180,7 +116,6 @@ namespace comphelper
 
         // ensures that the object is alive
         inline  void            ensureAlive( const OAccessControl& ) const;
-        inline  IMutex*         getExternalLock( const OAccessControl& );
         inline  ::osl::Mutex&   GetMutex( const OAccessControl& );
 
     protected:
@@ -224,7 +159,6 @@ namespace comphelper
 
         // access to the base class' broadcast helper/mutex
         ::osl::Mutex&                   GetMutex()                  { return m_aMutex; }
-        IMutex*                         getExternalLock( );
     };
 
 
@@ -234,12 +168,6 @@ namespace comphelper
     }
 
 
-    inline  IMutex* OAccessibleContextHelper::getExternalLock( const OAccessControl& )
-    {
-        return getExternalLock();
-    }
-
-
     inline  ::osl::Mutex& OAccessibleContextHelper::GetMutex( const OAccessControl& )
     {
         return GetMutex();
@@ -287,7 +215,7 @@ namespace comphelper
     //= OExternalLockGuard
 
     class OExternalLockGuard
-            :public OMutexGuard
+            :public osl::Guard<SolarMutex>
             ,public OContextEntryGuard
     {
     public:
@@ -296,7 +224,7 @@ namespace comphelper
 
 
     inline OExternalLockGuard::OExternalLockGuard( OAccessibleContextHelper* _pContext )
-        :OMutexGuard( _pContext->getExternalLock( OAccessibleContextHelper::OAccessControl() ) )
+        :osl::Guard<SolarMutex>( SolarMutex::get() )
         ,OContextEntryGuard( _pContext )
     {
         // Only lock the external mutex,
diff --git a/include/comphelper/accessibleselectionhelper.hxx b/include/comphelper/accessibleselectionhelper.hxx
index 0a67e48f498b..d96347f51bb8 100644
--- a/include/comphelper/accessibleselectionhelper.hxx
+++ b/include/comphelper/accessibleselectionhelper.hxx
@@ -104,8 +104,7 @@ namespace comphelper
     {
     protected:
 
-        /// see the respective base class ctor for an extensive comment on this, please
-        OAccessibleSelectionHelper( IMutex* _pExternalLock );
+        OAccessibleSelectionHelper();
 
         // return ourself here by default
         virtual css::uno::Reference< css::accessibility::XAccessibleContext > implGetAccessibleContext() override;
diff --git a/include/comphelper/accessibletexthelper.hxx b/include/comphelper/accessibletexthelper.hxx
index 8083ba6ed211..7b5e1a144eac 100644
--- a/include/comphelper/accessibletexthelper.hxx
+++ b/include/comphelper/accessibletexthelper.hxx
@@ -128,8 +128,7 @@ namespace comphelper
                                   public OAccessibleTextHelper_Base
     {
     protected:
-        // see the respective base class ctor for an extensive comment on this, please
-        OAccessibleTextHelper( IMutex* _pExternalLock );
+        OAccessibleTextHelper();
 
     public:
         // XInterface
diff --git a/include/toolkit/awt/vclxaccessiblecomponent.hxx b/include/toolkit/awt/vclxaccessiblecomponent.hxx
index e29520198bef..f37c95c1d593 100644
--- a/include/toolkit/awt/vclxaccessiblecomponent.hxx
+++ b/include/toolkit/awt/vclxaccessiblecomponent.hxx
@@ -30,7 +30,6 @@
 #include <cppuhelper/implbase1.hxx>
 #include <comphelper/accimplaccess.hxx>
 #include <comphelper/accessiblecomponenthelper.hxx>
-#include <toolkit/helper/externallock.hxx>
 
 
 #include <tools/link.hxx>
@@ -53,8 +52,7 @@ typedef ::cppu::ImplHelper1<
     css::lang::XServiceInfo > VCLXAccessibleComponent_BASE;
 
 class TOOLKIT_DLLPUBLIC VCLXAccessibleComponent
-        :private BaseVCLExternalSolarLock
-        ,public comphelper::OAccessibleExtendedComponentHelper
+        :public comphelper::OAccessibleExtendedComponentHelper
         ,public ::comphelper::OAccessibleImplementationAccess
         ,public VCLXAccessibleComponent_BASE
 {
diff --git a/include/toolkit/controls/accessiblecontrolcontext.hxx b/include/toolkit/controls/accessiblecontrolcontext.hxx
index 7642433642ee..cbd304a1334d 100644
--- a/include/toolkit/controls/accessiblecontrolcontext.hxx
+++ b/include/toolkit/controls/accessiblecontrolcontext.hxx
@@ -27,7 +27,6 @@
 #include <com/sun/star/beans/XPropertySet.hpp>
 #include <com/sun/star/awt/XWindow.hpp>
 #include <vcl/vclptr.hxx>
-#include <toolkit/helper/externallock.hxx>
 
 namespace vcl { class Window; }
 
@@ -49,8 +48,7 @@ namespace toolkit
         is being disposed.</p>
     */
     class OAccessibleControlContext
-            :private BaseVCLExternalSolarLock
-            ,public ::comphelper::OAccessibleImplementationAccess
+            :public ::comphelper::OAccessibleImplementationAccess
             ,public OAccessibleControlContext_Base
             ,public OAccessibleControlContext_IBase
     {
diff --git a/include/toolkit/helper/externallock.hxx b/include/toolkit/helper/externallock.hxx
deleted file mode 100644
index ddac625e73bf..000000000000
--- a/include/toolkit/helper/externallock.hxx
+++ /dev/null
@@ -1,44 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-#ifndef INCLUDED_TOOLKIT_HELPER_EXTERNALLOCK_HXX
-#define INCLUDED_TOOLKIT_HELPER_EXTERNALLOCK_HXX
-
-#include <toolkit/dllapi.h>
-#include <comphelper/accessiblecontexthelper.hxx>
-
-
-//  class VCLExternalSolarLock
-
-
-class TOOLKIT_DLLPUBLIC VCLExternalSolarLock : public ::comphelper::IMutex
-{
-public:
-    virtual void acquire() override;
-    virtual void release() override;
-};
-
-class BaseVCLExternalSolarLock
-{
-protected:
-    mutable VCLExternalSolarLock m_aLock;
-};
-
-#endif // INCLUDED_TOOLKIT_HELPER_EXTERNALLOCK_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/svtools/inc/vclxaccessibleheaderbaritem.hxx b/svtools/inc/vclxaccessibleheaderbaritem.hxx
index ac3c30cea15e..03701de59c8e 100644
--- a/svtools/inc/vclxaccessibleheaderbaritem.hxx
+++ b/svtools/inc/vclxaccessibleheaderbaritem.hxx
@@ -26,8 +26,6 @@
 
 #include <tools/link.hxx>
 
-#include <toolkit/helper/externallock.hxx>
-
 #include <vcl/vclptr.hxx>
 
 #include <vector>
@@ -49,9 +47,8 @@ typedef ::cppu::ImplHelper2<
     css::accessibility::XAccessible,
     css::lang::XServiceInfo > VCLXAccessibleHeaderBarItem_BASE;
 
-class VCLXAccessibleHeaderBarItem : private BaseVCLExternalSolarLock,
-                        public comphelper::OAccessibleExtendedComponentHelper,
-                        public VCLXAccessibleHeaderBarItem_BASE
+class VCLXAccessibleHeaderBarItem : public comphelper::OAccessibleExtendedComponentHelper,
+                                    public VCLXAccessibleHeaderBarItem_BASE
 {
 private:
     VclPtr<HeaderBar>        m_pHeadBar;
diff --git a/svtools/source/control/vclxaccessibleheaderbaritem.cxx b/svtools/source/control/vclxaccessibleheaderbaritem.cxx
index 2d6c7fa9feb8..2e7bad01f9e8 100644
--- a/svtools/source/control/vclxaccessibleheaderbaritem.cxx
+++ b/svtools/source/control/vclxaccessibleheaderbaritem.cxx
@@ -31,7 +31,6 @@
 #include <vcl/svapp.hxx>
 #include <vcl/settings.hxx>
 #include <toolkit/awt/vclxfont.hxx>
-#include <toolkit/helper/externallock.hxx>
 #include <toolkit/helper/convert.hxx>
 
 #include <vector>
@@ -47,8 +46,7 @@ using namespace ::comphelper;
 
 
 VCLXAccessibleHeaderBarItem::VCLXAccessibleHeaderBarItem( HeaderBar*    pHeadBar, sal_Int32 _nIndexInParent )
-    :OAccessibleExtendedComponentHelper( &m_aLock )
-    ,m_pHeadBar( pHeadBar )
+    :m_pHeadBar( pHeadBar )
     ,m_nIndexInParent(_nIndexInParent + 1)
 
 {
diff --git a/svx/source/accessibility/charmapacc.cxx b/svx/source/accessibility/charmapacc.cxx
index dc6c6d45a6b6..e34c5867de64 100644
--- a/svx/source/accessibility/charmapacc.cxx
+++ b/svx/source/accessibility/charmapacc.cxx
@@ -41,8 +41,7 @@ namespace svx
     using namespace ::com::sun::star::accessibility;
 
 
-SvxShowCharSetVirtualAcc::SvxShowCharSetVirtualAcc( SvxShowCharSet* pParent ) : OAccessibleComponentHelper(&m_aLock)
-,mpParent( pParent )
+SvxShowCharSetVirtualAcc::SvxShowCharSetVirtualAcc( SvxShowCharSet* pParent ) : mpParent( pParent )
 {
     osl_atomic_increment(&m_refCount);
     {
@@ -253,8 +252,7 @@ uno::Reference< css::accessibility::XAccessible > SvxShowCharSetItem::GetAccessi
 
 
 
-SvxShowCharSetAcc::SvxShowCharSetAcc( SvxShowCharSetVirtualAcc* _pParent ) : OAccessibleSelectionHelper(&m_aLock)
-  ,m_pParent( _pParent )
+SvxShowCharSetAcc::SvxShowCharSetAcc( SvxShowCharSetVirtualAcc* _pParent ) : m_pParent( _pParent )
 {
     osl_atomic_increment(&m_refCount);
     {
@@ -558,8 +556,7 @@ sal_Int32 SAL_CALL SvxShowCharSetAcc::getAccessibleColumn( sal_Int32 nChildIndex
 }
 
 
-SvxShowCharSetItemAcc::SvxShowCharSetItemAcc( SvxShowCharSetItem* pParent ) : OAccessibleComponentHelper(&m_aLock)
-,mpParent( pParent )
+SvxShowCharSetItemAcc::SvxShowCharSetItemAcc( SvxShowCharSetItem* pParent ) : mpParent( pParent )
 {
     OSL_ENSURE(pParent,"NO parent supplied!");
     osl_atomic_increment(&m_refCount);
diff --git a/svx/source/inc/charmapacc.hxx b/svx/source/inc/charmapacc.hxx
index 83cd41dfff25..6783b5504752 100644
--- a/svx/source/inc/charmapacc.hxx
+++ b/svx/source/inc/charmapacc.hxx
@@ -25,7 +25,6 @@
 #include <comphelper/accessibleselectionhelper.hxx>
 #include <com/sun/star/accessibility/XAccessibleAction.hpp>
 #include <com/sun/star/accessibility/XAccessibleTable.hpp>
-#include <toolkit/helper/externallock.hxx>
 
 #include <vector>
 class SvxShowCharSet;
@@ -39,8 +38,7 @@ namespace svx
     /** The class SvxShowCharSetVirtualAcc is used as a virtual class which contains the table and the scrollbar.
         In the vcl control, the table and the scrollbar exists in one class. This is not feasible for the accessibility api.
     */
-    class SvxShowCharSetVirtualAcc : private BaseVCLExternalSolarLock,
-                                     public ::comphelper::OAccessibleComponentHelper,
+    class SvxShowCharSetVirtualAcc : public ::comphelper::OAccessibleComponentHelper,
                                      public OAccessibleHelper_Base_2
     {
         VclPtr<SvxShowCharSet>             mpParent; // the vcl control
@@ -122,8 +120,7 @@ namespace svx
     /** The table implementation of the vcl control.
     */
 
-    class SvxShowCharSetAcc : private BaseVCLExternalSolarLock,
-                              public ::comphelper::OAccessibleSelectionHelper,
+    class SvxShowCharSetAcc : public ::comphelper::OAccessibleSelectionHelper,
                               public OAccessibleHelper_Base
     {
         ::std::vector< css::uno::Reference< css::accessibility::XAccessible > > m_aChildren;
@@ -212,8 +209,7 @@ namespace svx
 
     /** The child implementation of the table.
     */
-    class SvxShowCharSetItemAcc : private BaseVCLExternalSolarLock,
-                                  public ::comphelper::OAccessibleComponentHelper,
+    class SvxShowCharSetItemAcc : public ::comphelper::OAccessibleComponentHelper,
                                   public OAccessibleHelper_Base_3
     {
     private:
diff --git a/toolkit/Library_tk.mk b/toolkit/Library_tk.mk
index 3aea70643362..94e08a8dee74 100644
--- a/toolkit/Library_tk.mk
+++ b/toolkit/Library_tk.mk
@@ -109,7 +109,6 @@ $(eval $(call gb_Library_add_exception_objects,tk,\
     toolkit/source/controls/unocontrolmodel \
     toolkit/source/controls/unocontrols \
     toolkit/source/helper/accessibilityclient \
-    toolkit/source/helper/externallock \
     toolkit/source/helper/formpdfexport \
     toolkit/source/helper/imagealign \
     toolkit/source/helper/listenermultiplexer \
diff --git a/toolkit/source/awt/vclxaccessiblecomponent.cxx b/toolkit/source/awt/vclxaccessiblecomponent.cxx
index ae971faeaffe..40a40d2dddcd 100644
--- a/toolkit/source/awt/vclxaccessiblecomponent.cxx
+++ b/toolkit/source/awt/vclxaccessiblecomponent.cxx
@@ -43,8 +43,6 @@ using namespace ::com::sun::star;
 using namespace ::comphelper;
 
 VCLXAccessibleComponent::VCLXAccessibleComponent( VCLXWindow* pVCLXWindow )
-    : OAccessibleExtendedComponentHelper( &m_aLock )
-    , OAccessibleImplementationAccess( )
 {
     m_xVCLXWindow = pVCLXWindow;
 
diff --git a/toolkit/source/controls/accessiblecontrolcontext.cxx b/toolkit/source/controls/accessiblecontrolcontext.cxx
index 155cf83d93ca..bd9d72958a8b 100644
--- a/toolkit/source/controls/accessiblecontrolcontext.cxx
+++ b/toolkit/source/controls/accessiblecontrolcontext.cxx
@@ -45,7 +45,6 @@ namespace toolkit
 
 
     OAccessibleControlContext::OAccessibleControlContext()
-        : OAccessibleControlContext_Base(&m_aLock)
     {
         // nothing to do here, we have a late ctor
     }
diff --git a/toolkit/source/helper/externallock.cxx b/toolkit/source/helper/externallock.cxx
deleted file mode 100644
index 4e4e5e92ca16..000000000000
--- a/toolkit/source/helper/externallock.cxx
+++ /dev/null
@@ -1,37 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include <toolkit/helper/externallock.hxx>
-#include <osl/mutex.hxx>
-#include <vcl/svapp.hxx>
-
-
-//  class VCLExternalSolarLock
-
-void VCLExternalSolarLock::acquire()
-{
-    Application::GetSolarMutex().acquire();
-}
-
-void VCLExternalSolarLock::release()
-{
-    Application::GetSolarMutex().release();
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */


More information about the Libreoffice-commits mailing list