Use NameContainer's owner as event source

The owner is set since commit 0f3f371028
(NameContainer need not be an UNO object itself, 2024-12-01), and is
the same object that was used to set event source. Drop the redundancy.

Signed-off-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: Ie6d50696781395136349ad8084653e624437533d
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/5026
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
(cherry picked from commit 6a5646b1abcdc9e61cf9b5ca42d65280bc520b39)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207165
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
This commit is contained in:
Mike Kaganski
2026-06-23 17:21:33 +02:00
committed by Xisco Fauli
parent db79242098
commit c64fc39bf3
2 changed files with 6 additions and 14 deletions
-5
View File
@@ -64,7 +64,6 @@ class NameContainer final
std::vector<OUString> maNamesOrder;
css::uno::Type mType;
css::uno::XInterface* mpxEventSource;
::comphelper::OInterfaceContainerHelper4<css::container::XContainerListener> maContainerListeners;
::comphelper::OInterfaceContainerHelper4<css::util::XChangesListener> maChangesListeners;
@@ -73,12 +72,8 @@ public:
NameContainer(const css::uno::Type& rType, cppu::OWeakObject& owner)
: rOwner(owner)
, mType( rType )
, mpxEventSource( nullptr )
{}
void setEventSource( css::uno::XInterface* pxEventSource )
{ mpxEventSource = pxEventSource; }
/// @throws css::lang::IllegalArgumentException
/// @throws css::lang::WrappedTargetException
/// @throws css::uno::RuntimeException
+6 -9
View File
@@ -168,7 +168,7 @@ void NameContainer::replaceByName(const OUString& aName, const Any& aElement,
if (maContainerListeners.getLength(guard) > 0)
{
ContainerEvent aEvent;
aEvent.Source = mpxEventSource;
aEvent.Source = rOwner.getXWeak();
aEvent.Accessor <<= aName;
aEvent.Element = aElement;
aEvent.ReplacedElement = aOldElement;
@@ -181,7 +181,7 @@ void NameContainer::replaceByName(const OUString& aName, const Any& aElement,
if (maChangesListeners.getLength(guard) > 0)
{
ChangesEvent aEvent;
aEvent.Source = mpxEventSource;
aEvent.Source = rOwner.getXWeak();
aEvent.Base <<= aEvent.Source;
aEvent.Changes = { { Any(aName), aElement, aOldElement } };
maChangesListeners.notifyEach(guard, &XChangesListener::changesOccurred, aEvent);
@@ -206,7 +206,7 @@ void NameContainer::insertNoCheck(const OUString& aName, const Any& aElement,
if (maContainerListeners.getLength(guard) > 0)
{
ContainerEvent aEvent;
aEvent.Source = mpxEventSource;
aEvent.Source = rOwner.getXWeak();
aEvent.Accessor <<= aName;
aEvent.Element = aElement;
maContainerListeners.notifyEach(guard, &XContainerListener::elementInserted, aEvent);
@@ -218,7 +218,7 @@ void NameContainer::insertNoCheck(const OUString& aName, const Any& aElement,
if (maChangesListeners.getLength(guard) > 0)
{
ChangesEvent aEvent;
aEvent.Source = mpxEventSource;
aEvent.Source = rOwner.getXWeak();
aEvent.Base <<= aEvent.Source;
aEvent.Changes = { { Any(aName), aElement, {} } };
maChangesListeners.notifyEach(guard, &XChangesListener::changesOccurred, aEvent);
@@ -251,7 +251,7 @@ void NameContainer::removeByName(const OUString& aName, std::unique_lock<std::mu
if (maContainerListeners.getLength(guard) > 0)
{
ContainerEvent aEvent;
aEvent.Source = mpxEventSource;
aEvent.Source = rOwner.getXWeak();
aEvent.Accessor <<= aName;
aEvent.Element = aOldElement;
maContainerListeners.notifyEach(guard, &XContainerListener::elementRemoved, aEvent);
@@ -263,7 +263,7 @@ void NameContainer::removeByName(const OUString& aName, std::unique_lock<std::mu
if (maChangesListeners.getLength(guard) > 0)
{
ChangesEvent aEvent;
aEvent.Source = mpxEventSource;
aEvent.Source = rOwner.getXWeak();
aEvent.Base <<= aEvent.Source;
aEvent.Changes = { { Any(aName),
{}, // Element remains empty (meaning "replaced with nothing")
@@ -2690,7 +2690,6 @@ void SAL_CALL SfxLibraryContainer::addContainerListener( const Reference< XConta
{
LibraryContainerMethodGuard aGuard( *this );
std::unique_lock guard(m_aMutex);
maNameContainer.setEventSource( getXWeak() );
maNameContainer.addContainerListener(xListener, guard);
}
@@ -3110,7 +3109,6 @@ void SfxLibrary::removeByName( const OUString& Name )
// Methods XContainer
void SAL_CALL SfxLibrary::addContainerListener( const Reference< XContainerListener >& xListener )
{
maNameContainer.setEventSource( getXWeak() );
maNameContainer.addContainerListener(xListener, o3tl::temporary(std::unique_lock(m_aMutex)));
}
@@ -3122,7 +3120,6 @@ void SAL_CALL SfxLibrary::removeContainerListener( const Reference< XContainerLi
// Methods XChangesNotifier
void SAL_CALL SfxLibrary::addChangesListener( const Reference< XChangesListener >& xListener )
{
maNameContainer.setEventSource( getXWeak() );
maNameContainer.addChangesListener(xListener, o3tl::temporary(std::unique_lock(m_aMutex)));
}