include/vcl/toolkit/edit.hxx                  |    2 +-
 include/vcl/transfer.hxx                      |    7 ++++---
 stoc/source/servicemanager/servicemanager.cxx |    3 ++-
 ucbhelper/source/client/content.cxx           |    2 +-
 ucbhelper/source/provider/resultset.cxx       |    4 ++--
 vcl/inc/window.h                              |    6 ++++--
 vcl/source/control/edit.cxx                   |   12 ++++--------
 vcl/source/edit/textview.cxx                  |    8 +++-----
 vcl/source/treelist/transfer.cxx              |    2 +-
 vcl/source/window/dockwin.cxx                 |    1 +
 vcl/source/window/mouse.cxx                   |    7 +++----
 vcl/source/window/window.cxx                  |   11 +++++------
 vcl/source/window/winproc.cxx                 |   26 ++++++++++++--------------
 vcl/unx/generic/dtrans/X11_selection.cxx      |    2 +-
 vcl/unx/generic/dtrans/X11_selection.hxx      |    5 +++--
 15 files changed, 47 insertions(+), 51 deletions(-)

New commits:
commit 5cd1f77618ec3d74c8c9c0743b9daef7108bc80a
Author:     Noel Grandin <[email protected]>
AuthorDate: Tue Sep 10 13:09:12 2024 +0200
Commit:     Noel Grandin <[email protected]>
CommitDate: Tue Sep 10 17:17:51 2024 +0200

    use more concrete UNO type in vcl
    
    Change-Id: I157109d11b349e1304a3279471d4ab90b65b5841
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173138
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <[email protected]>

diff --git a/include/vcl/toolkit/edit.hxx b/include/vcl/toolkit/edit.hxx
index be84069b99ca..93abf1c5dd63 100644
--- a/include/vcl/toolkit/edit.hxx
+++ b/include/vcl/toolkit/edit.hxx
@@ -85,7 +85,7 @@ private:
 
     css::uno::Reference<css::i18n::XBreakIterator> mxBreakIterator;
     css::uno::Reference<css::i18n::XExtendedInputSequenceChecker> mxISC;
-    css::uno::Reference<css::datatransfer::dnd::XDragSourceListener > 
mxDnDListener;
+    rtl::Reference<vcl::unohelper::DragAndDropWrapper> mxDnDListener;
 
     SAL_DLLPRIVATE bool        ImplTruncateToMaxLen( OUString&, sal_Int32 
nSelectionLen ) const;
     SAL_DLLPRIVATE void        ImplInitEditData();
diff --git a/include/vcl/transfer.hxx b/include/vcl/transfer.hxx
index 3f07a9f6aab9..4a13f99db1b1 100644
--- a/include/vcl/transfer.hxx
+++ b/include/vcl/transfer.hxx
@@ -39,6 +39,7 @@
 #include <com/sun/star/datatransfer/dnd/XDragSourceListener.hpp>
 #include <com/sun/star/datatransfer/dnd/XDropTargetListener.hpp>
 #include <com/sun/star/embed/Aspects.hpp>
+#include <rtl/ref.hxx>
 #include <memory>
 #include <mutex>
 #include <utility>
@@ -166,7 +167,7 @@ private:
     css::uno::Any                                                             
maAny;
     OUString                                                                  
maLastFormat;
     mutable css::uno::Reference< css::datatransfer::clipboard::XClipboard >   
mxClipboard;
-    css::uno::Reference< css::frame::XTerminateListener >                     
mxTerminateListener;
+    rtl::Reference< TerminateListener >                                       
mxTerminateListener;
     DataFlavorExVector                                                        
maFormats;
     std::unique_ptr<TransferableObjectDescriptor>                             
mxObjDesc;
 
@@ -399,7 +400,7 @@ private:
     std::mutex                                                            
maMutex;
     css::uno::Reference< css::datatransfer::dnd::XDragGestureRecognizer > 
mxDragGestureRecognizer;
 
-    css::uno::Reference< css::datatransfer::dnd::XDragGestureListener >   
mxDragGestureListener;
+    rtl::Reference< DragSourceHelper::DragGestureListener >   
mxDragGestureListener;
 
     DragSourceHelper&   operator=( const DragSourceHelper& rDragSourceHelper ) 
= delete;
     bool                operator==( const DragSourceHelper& rDragSourceHelper 
) const = delete;
@@ -448,7 +449,7 @@ private:
     std::mutex                                                            
maMutex;
     css::uno::Reference< css::datatransfer::dnd::XDropTarget >            
mxDropTarget;
 
-    css::uno::Reference< css::datatransfer::dnd::XDropTargetListener >    
mxDropTargetListener;
+    rtl::Reference< DropTargetHelper::DropTargetListener >                
mxDropTargetListener;
     DataFlavorExVector                                                    
maFormats;
 
                         DropTargetHelper() = delete;
diff --git a/vcl/inc/window.h b/vcl/inc/window.h
index 69c61214ce7a..72d07bc85c01 100644
--- a/vcl/inc/window.h
+++ b/vcl/inc/window.h
@@ -48,6 +48,8 @@ class VCLXWindow;
 namespace vcl { class WindowData; }
 class SalFrame;
 class SalObject;
+class DNDEventDispatcher;
+class DNDListenerContainer;
 enum class MouseEventModifiers;
 enum class NotifyEventType;
 enum class ActivateModeFlags;
@@ -173,7 +175,7 @@ struct ImplFrameData
 
     css::uno::Reference< css::datatransfer::dnd::XDragSource > mxDragSource;
     css::uno::Reference< css::datatransfer::dnd::XDropTarget > mxDropTarget;
-    css::uno::Reference< css::datatransfer::dnd::XDropTargetListener > 
mxDropTargetListener;
+    rtl::Reference< DNDEventDispatcher > mxDropTargetListener; // 
css::datatransfer::dnd::XDropTargetListener
     css::uno::Reference< css::datatransfer::clipboard::XClipboard > 
mxClipboard;
 
     bool                mbInternalDragGestureRecognizer;
@@ -392,7 +394,7 @@ public:
                         mbNonHomogeneous:1,
                         mbDoubleBufferingRequested:1;
 
-    css::uno::Reference< css::uno::XInterface > mxDNDListenerContainer;
+    rtl::Reference< DNDListenerContainer > mxDNDListenerContainer;
 
     const vcl::ILibreOfficeKitNotifier* mpLOKNotifier; ///< To emit the LOK 
callbacks eg. for dialog tunneling.
     vcl::LOKWindowId mnLOKWindowId; ///< ID of this specific window.
diff --git a/vcl/source/control/edit.cxx b/vcl/source/control/edit.cxx
index c2a7c4c9ccf8..563d47d06654 100644
--- a/vcl/source/control/edit.cxx
+++ b/vcl/source/control/edit.cxx
@@ -240,13 +240,11 @@ void Edit::dispose()
     {
         if ( GetDragGestureRecognizer().is() )
         {
-            uno::Reference< datatransfer::dnd::XDragGestureListener> xDGL( 
mxDnDListener, uno::UNO_QUERY );
-            GetDragGestureRecognizer()->removeDragGestureListener( xDGL );
+            GetDragGestureRecognizer()->removeDragGestureListener( 
mxDnDListener );
         }
         if ( GetDropTarget().is() )
         {
-            uno::Reference< datatransfer::dnd::XDropTargetListener> xDTL( 
mxDnDListener, uno::UNO_QUERY );
-            GetDropTarget()->removeDropTargetListener( xDTL );
+            GetDropTarget()->removeDropTargetListener( mxDnDListener );
         }
 
         mxDnDListener->disposing( lang::EventObject() );  // #95154# #96585# 
Empty Source means it's the Client
@@ -330,13 +328,11 @@ void Edit::ImplInit(vcl::Window* pParent, WinBits nStyle)
     SetPointer( PointerStyle::Text );
     ApplySettings(*GetOutDev());
 
-    uno::Reference< datatransfer::dnd::XDragGestureListener> xDGL( 
mxDnDListener, uno::UNO_QUERY );
     uno::Reference< datatransfer::dnd::XDragGestureRecognizer > xDGR = 
GetDragGestureRecognizer();
     if ( xDGR.is() )
     {
-        xDGR->addDragGestureListener( xDGL );
-        uno::Reference< datatransfer::dnd::XDropTargetListener> xDTL( 
mxDnDListener, uno::UNO_QUERY );
-        GetDropTarget()->addDropTargetListener( xDTL );
+        xDGR->addDragGestureListener( mxDnDListener );
+        GetDropTarget()->addDropTargetListener( mxDnDListener );
         GetDropTarget()->setActive( true );
         GetDropTarget()->setDefaultActions( 
datatransfer::dnd::DNDConstants::ACTION_COPY_OR_MOVE );
     }
diff --git a/vcl/source/edit/textview.cxx b/vcl/source/edit/textview.cxx
index 3a4be751c234..d87213a413c3 100644
--- a/vcl/source/edit/textview.cxx
+++ b/vcl/source/edit/textview.cxx
@@ -133,7 +133,7 @@ struct ImpTextView
     std::unique_ptr<SelectionEngine> mpSelEngine;
     std::unique_ptr<TextSelFunctionSet> mpSelFuncSet;
 
-    css::uno::Reference< css::datatransfer::dnd::XDragSourceListener > 
mxDnDListener;
+    rtl::Reference< vcl::unohelper::DragAndDropWrapper > mxDnDListener;
 
     sal_uInt16              mnTravelXPos;
 
@@ -182,10 +182,8 @@ TextView::TextView( ExtTextEngine* pEng, vcl::Window* 
pWindow ) :
     {
         mpImpl->mxDnDListener = new vcl::unohelper::DragAndDropWrapper( this );
 
-        css::uno::Reference< css::datatransfer::dnd::XDragGestureListener> 
xDGL( mpImpl->mxDnDListener, css::uno::UNO_QUERY );
-        pWindow->GetDragGestureRecognizer()->addDragGestureListener( xDGL );
-        css::uno::Reference< css::datatransfer::dnd::XDropTargetListener> 
xDTL( xDGL, css::uno::UNO_QUERY );
-        pWindow->GetDropTarget()->addDropTargetListener( xDTL );
+        pWindow->GetDragGestureRecognizer()->addDragGestureListener( 
mpImpl->mxDnDListener );
+        pWindow->GetDropTarget()->addDropTargetListener( mpImpl->mxDnDListener 
);
         pWindow->GetDropTarget()->setActive( true );
         pWindow->GetDropTarget()->setDefaultActions( 
css::datatransfer::dnd::DNDConstants::ACTION_COPY_OR_MOVE );
     }
diff --git a/vcl/source/treelist/transfer.cxx b/vcl/source/treelist/transfer.cxx
index e0f424736a2f..0fbe9304d0d1 100644
--- a/vcl/source/treelist/transfer.cxx
+++ b/vcl/source/treelist/transfer.cxx
@@ -304,7 +304,7 @@ css::uno::Sequence<OUString> 
TransferableHelper::TerminateListener::getSupported
 
 TransferableHelper::~TransferableHelper()
 {
-    css::uno::Reference<css::frame::XTerminateListener> listener;
+    rtl::Reference< TerminateListener > listener;
     {
         const SolarMutexGuard aGuard;
         std::swap(listener, mxTerminateListener);
diff --git a/vcl/source/window/dockwin.cxx b/vcl/source/window/dockwin.cxx
index a4c216b443af..c379a37788d1 100644
--- a/vcl/source/window/dockwin.cxx
+++ b/vcl/source/window/dockwin.cxx
@@ -33,6 +33,7 @@
 #include <svdata.hxx>
 #include <window.h>
 #include <brdwin.hxx>
+#include <dndlistenercontainer.hxx>
 
 #include "impldockingwrapper.hxx"
 
diff --git a/vcl/source/window/mouse.cxx b/vcl/source/window/mouse.cxx
index eebcbd85f394..74cdfe89a605 100644
--- a/vcl/source/window/mouse.cxx
+++ b/vcl/source/window/mouse.cxx
@@ -687,8 +687,7 @@ Reference< css::datatransfer::dnd::XDropTarget > 
Window::GetDropTarget()
 
                         if( xDragGestureRecognizer.is() )
                         {
-                            xDragGestureRecognizer->addDragGestureListener(
-                                Reference< 
css::datatransfer::dnd::XDragGestureListener > 
(mpWindowImpl->mpFrameData->mxDropTargetListener, UNO_QUERY));
+                            
xDragGestureRecognizer->addDragGestureListener(mpWindowImpl->mpFrameData->mxDropTargetListener);
                         }
                         else
                             
mpWindowImpl->mpFrameData->mbInternalDragGestureRecognizer = true;
@@ -705,11 +704,11 @@ Reference< css::datatransfer::dnd::XDropTarget > 
Window::GetDropTarget()
 
         }
 
-        mpWindowImpl->mxDNDListenerContainer = static_cast < 
css::datatransfer::dnd::XDropTarget * > ( new DNDListenerContainer( 
nDefaultActions ) );
+        mpWindowImpl->mxDNDListenerContainer = new DNDListenerContainer( 
nDefaultActions );
     }
 
     // this object is located in the same process, so there will be no runtime 
exception
-    return Reference< css::datatransfer::dnd::XDropTarget > ( 
mpWindowImpl->mxDNDListenerContainer, UNO_QUERY );
+    return mpWindowImpl->mxDNDListenerContainer;
 }
 
 Reference< css::datatransfer::dnd::XDragSource > Window::GetDragSource()
diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx
index 683187bb6827..301b6c0cd51d 100644
--- a/vcl/source/window/window.cxx
+++ b/vcl/source/window/window.cxx
@@ -58,6 +58,8 @@
 #include <toolbox.h>
 #include <brdwin.hxx>
 #include <helpwin.hxx>
+#include <dndlistenercontainer.hxx>
+#include <dndeventdispatcher.hxx>
 
 #include <com/sun/star/accessibility/AccessibleRelation.hpp>
 #include <com/sun/star/accessibility/XAccessible.hpp>
@@ -174,10 +176,8 @@ void Window::dispose()
     }
 
     // shutdown drag and drop
-    Reference < XComponent > xDnDComponent( 
mpWindowImpl->mxDNDListenerContainer, UNO_QUERY );
-
-    if( xDnDComponent.is() )
-        xDnDComponent->dispose();
+    if( mpWindowImpl->mxDNDListenerContainer.is() )
+        mpWindowImpl->mxDNDListenerContainer->dispose();
 
     if( mpWindowImpl->mbFrame && mpWindowImpl->mpFrameData )
     {
@@ -189,8 +189,7 @@ void Window::dispose()
                 Reference< XDragGestureRecognizer > 
xDragGestureRecognizer(mpWindowImpl->mpFrameData->mxDragSource, UNO_QUERY);
                 if( xDragGestureRecognizer.is() )
                 {
-                    xDragGestureRecognizer->removeDragGestureListener(
-                        Reference< XDragGestureListener > 
(mpWindowImpl->mpFrameData->mxDropTargetListener, UNO_QUERY));
+                    
xDragGestureRecognizer->removeDragGestureListener(mpWindowImpl->mpFrameData->mxDropTargetListener);
                 }
 
                 
mpWindowImpl->mpFrameData->mxDropTarget->removeDropTargetListener( 
mpWindowImpl->mpFrameData->mxDropTargetListener );
diff --git a/vcl/source/window/winproc.cxx b/vcl/source/window/winproc.cxx
index 64c101a8c911..21e189cc8d33 100644
--- a/vcl/source/window/winproc.cxx
+++ b/vcl/source/window/winproc.cxx
@@ -482,9 +482,8 @@ bool ImplHandleMouseEvent( const VclPtr<vcl::Window>& 
xWindow, NotifyEventType n
                         if( 
pMouseDownWin->ImplGetFrameData()->mbInternalDragGestureRecognizer )
                         {
                             // query DropTarget from child window
-                            css::uno::Reference< 
css::datatransfer::dnd::XDragGestureRecognizer > xDragGestureRecognizer(
-                                    
pMouseDownWin->ImplGetWindowImpl()->mxDNDListenerContainer,
-                                    css::uno::UNO_QUERY );
+                            rtl::Reference< DNDListenerContainer > 
xDragGestureRecognizer(
+                                    
pMouseDownWin->ImplGetWindowImpl()->mxDNDListenerContainer );
 
                             if( xDragGestureRecognizer.is() )
                             {
@@ -513,7 +512,7 @@ bool ImplHandleMouseEvent( const VclPtr<vcl::Window>& 
xWindow, NotifyEventType n
 
                                 if( xDragSource.is() )
                                 {
-                                    static_cast < DNDListenerContainer * > ( 
xDragGestureRecognizer.get() )->fireDragGestureEvent( 0,
+                                    
xDragGestureRecognizer->fireDragGestureEvent( 0,
                                         relLoc.X(), relLoc.Y(), xDragSource, 
css::uno::Any( aMouseEvent ) );
                                 }
                             }
@@ -836,8 +835,8 @@ bool ImplLOKHandleMouseEvent(const VclPtr<vcl::Window>& 
xWindow, NotifyEventType
     {
         css::uno::Reference<css::datatransfer::dnd::XDropTargetDragContext> 
xDropTargetDragContext =
             new GenericDropTargetDragContext();
-        css::uno::Reference<css::datatransfer::dnd::XDropTarget> xDropTarget(
-            pDragWin->ImplGetWindowImpl()->mxDNDListenerContainer, 
css::uno::UNO_QUERY);
+        rtl::Reference<DNDListenerContainer> xDropTarget(
+            pDragWin->ImplGetWindowImpl()->mxDNDListenerContainer);
 
         if (!xDropTarget.is() ||
             !xDropTargetDragContext.is() ||
@@ -848,7 +847,7 @@ bool ImplLOKHandleMouseEvent(const VclPtr<vcl::Window>& 
xWindow, NotifyEventType
             return false;
         }
 
-        static_cast<DNDListenerContainer 
*>(xDropTarget.get())->fireDragOverEvent(
+        xDropTarget->fireDragOverEvent(
             xDropTargetDragContext,
             css::datatransfer::dnd::DNDConstants::ACTION_MOVE,
             aWinPos.X(),
@@ -867,8 +866,8 @@ bool ImplLOKHandleMouseEvent(const VclPtr<vcl::Window>& 
xWindow, NotifyEventType
         css::uno::Reference<css::datatransfer::XTransferable> xTransfer;
         css::uno::Reference<css::datatransfer::dnd::XDropTargetDropContext> 
xDropTargetDropContext =
             new GenericDropTargetDropContext();
-        css::uno::Reference<css::datatransfer::dnd::XDropTarget> xDropTarget(
-            pDragWin->ImplGetWindowImpl()->mxDNDListenerContainer, 
css::uno::UNO_QUERY);
+        rtl::Reference<DNDListenerContainer> xDropTarget(
+            pDragWin->ImplGetWindowImpl()->mxDNDListenerContainer);
 
         if (!xDropTarget.is() || !xDropTargetDropContext.is())
         {
@@ -877,7 +876,7 @@ bool ImplLOKHandleMouseEvent(const VclPtr<vcl::Window>& 
xWindow, NotifyEventType
         }
 
         Point dragOverPos = pDragWin->ScreenToOutputPixel(aMousePos);
-        static_cast<DNDListenerContainer *>(xDropTarget.get())->fireDropEvent(
+        xDropTarget->fireDropEvent(
             xDropTargetDropContext,
             css::datatransfer::dnd::DNDConstants::ACTION_MOVE,
             dragOverPos.X(),
@@ -922,9 +921,8 @@ bool ImplLOKHandleMouseEvent(const VclPtr<vcl::Window>& 
xWindow, NotifyEventType
                     if (pFrameData->mbInternalDragGestureRecognizer)
                     {
                         // query DropTarget from child window
-                        css::uno::Reference< 
css::datatransfer::dnd::XDragGestureRecognizer > xDragGestureRecognizer(
-                            
pDownWin->ImplGetWindowImpl()->mxDNDListenerContainer,
-                            css::uno::UNO_QUERY );
+                        rtl::Reference<DNDListenerContainer> 
xDragGestureRecognizer(
+                            
pDownWin->ImplGetWindowImpl()->mxDNDListenerContainer );
 
                         if (xDragGestureRecognizer.is())
                         {
@@ -946,7 +944,7 @@ bool ImplLOKHandleMouseEvent(const VclPtr<vcl::Window>& 
xWindow, NotifyEventType
 
                             if (xDragSource.is())
                             {
-                                static_cast<DNDListenerContainer 
*>(xDragGestureRecognizer.get())->
+                                xDragGestureRecognizer->
                                     fireDragGestureEvent(
                                         0,
                                         aWinPos.X(),
diff --git a/vcl/unx/generic/dtrans/X11_selection.cxx 
b/vcl/unx/generic/dtrans/X11_selection.cxx
index f9c3201b68fd..0a342fa7f5cc 100644
--- a/vcl/unx/generic/dtrans/X11_selection.cxx
+++ b/vcl/unx/generic/dtrans/X11_selection.cxx
@@ -4107,7 +4107,7 @@ void SelectionManagerHolder::initialize( const Sequence< 
Any >& arguments )
 
     SelectionManager& rManager = SelectionManager::get( aDisplayName );
     rManager.initialize( arguments );
-    m_xRealDragSource = static_cast< XDragSource* >(&rManager);
+    m_xRealDragSource = &rManager;
 }
 
 /*
diff --git a/vcl/unx/generic/dtrans/X11_selection.hxx 
b/vcl/unx/generic/dtrans/X11_selection.hxx
index bbfe07e5f6b9..1a448083bef1 100644
--- a/vcl/unx/generic/dtrans/X11_selection.hxx
+++ b/vcl/unx/generic/dtrans/X11_selection.hxx
@@ -44,6 +44,7 @@ namespace x11 {
 
     class PixmapHolder; // in bmp.hxx
     class SelectionManager;
+    class X11Transferable;
 
     rtl_TextEncoding getTextPlainEncoding( const OUString& rMimeType );
 
@@ -113,7 +114,7 @@ namespace x11 {
         >
     {
         ::osl::Mutex m_aMutex;
-        css::uno::Reference< css::datatransfer::dnd::XDragSource >
+        rtl::Reference< SelectionManager >
             m_xRealDragSource;
     public:
         SelectionManagerHolder();
@@ -266,7 +267,7 @@ namespace x11 {
         Time                        m_nDropTime;
         sal_Int8                    m_nLastDropAction;
         // XTransferable for Xdnd with foreign drag source
-        css::uno::Reference< css::datatransfer::XTransferable >
+        rtl::Reference< X11Transferable >
                                     m_xDropTransferable;
         int                         m_nLastX, m_nLastY;
         // set to true when calling drop()
commit b922fb69982f41962740f2abebaccf13e8c357a4
Author:     Noel Grandin <[email protected]>
AuthorDate: Tue Sep 10 13:09:03 2024 +0200
Commit:     Noel Grandin <[email protected]>
CommitDate: Tue Sep 10 17:17:43 2024 +0200

    use more concrete UNO type in ucbhelper
    
    Change-Id: I1ad512564e58aed731639dbf9dbb3e7d6ee7acef
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173137
    Reviewed-by: Noel Grandin <[email protected]>
    Tested-by: Jenkins

diff --git a/ucbhelper/source/client/content.cxx 
b/ucbhelper/source/client/content.cxx
index 27f1296e41b0..68db5fce9817 100644
--- a/ucbhelper/source/client/content.cxx
+++ b/ucbhelper/source/client/content.cxx
@@ -158,7 +158,7 @@ friend ContentEventListener_Impl;
     Reference< XContent >               m_xContent;
     Reference< XCommandProcessor >          m_xCommandProcessor;
     Reference< XCommandEnvironment >    m_xEnv;
-    Reference< XContentEventListener >  m_xContentEventListener;
+    rtl::Reference< ContentEventListener_Impl >  m_xContentEventListener;
     mutable std::mutex                  m_aMutex;
 
 private:
diff --git a/ucbhelper/source/provider/resultset.cxx 
b/ucbhelper/source/provider/resultset.cxx
index 71fad0e8381c..9783e7e0f1d5 100644
--- a/ucbhelper/source/provider/resultset.cxx
+++ b/ucbhelper/source/provider/resultset.cxx
@@ -137,8 +137,8 @@ struct ResultSet_Impl
 {
     uno::Reference< uno::XComponentContext >        m_xContext;
     uno::Reference< css::ucb::XCommandEnvironment > m_xEnv;
-    uno::Reference< beans::XPropertySetInfo >       m_xPropSetInfo;
-    uno::Reference< sdbc::XResultSetMetaData >      m_xMetaData;
+    rtl::Reference< PropertySetInfo >               m_xPropSetInfo;
+    rtl::Reference< ResultSetMetaData >             m_xMetaData;
     uno::Sequence< beans::Property >                m_aProperties;
     rtl::Reference< ResultSetDataSupplier >         m_xDataSupplier;
     std::mutex                          m_aMutex;
commit b103bcee12afacef5316081bdacb32fc2eeefa31
Author:     Noel Grandin <[email protected]>
AuthorDate: Tue Sep 10 13:08:50 2024 +0200
Commit:     Noel Grandin <[email protected]>
CommitDate: Tue Sep 10 17:17:36 2024 +0200

    use more concrete UNO type in stoc
    
    Change-Id: I5e5196b5d0c67a697140af417f23b64e809bd074
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173136
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <[email protected]>

diff --git a/stoc/source/servicemanager/servicemanager.cxx 
b/stoc/source/servicemanager/servicemanager.cxx
index b43b8c1fb1f4..2aa0ed4ca6d7 100644
--- a/stoc/source/servicemanager/servicemanager.cxx
+++ b/stoc/source/servicemanager/servicemanager.cxx
@@ -31,6 +31,7 @@
 #include <cppuhelper/compbase.hxx>
 #include <cppuhelper/supportsservice.hxx>
 #include <comphelper/sequence.hxx>
+#include <rtl/ref.hxx>
 
 #include <com/sun/star/lang/XMultiServiceFactory.hpp>
 #include <com/sun/star/lang/XMultiComponentFactory.hpp>
@@ -394,7 +395,7 @@ private:
     HashMultimap_OWString_Interface m_ServiceMap;
     HashSet_Ref                     m_ImplementationMap;
     HashMap_OWString_Interface      m_ImplementationNameMap;
-    Reference<XEventListener >      xFactoryListener;
+    rtl::Reference<OServiceManager_Listener > xFactoryListener;
     bool                            m_bInDisposing;
 };
 

Reply via email to