[Libreoffice-commits] core.git: offapi/com sfx2/source

Stephan Bergmann (via logerrit) logerrit at kemper.freedesktop.org
Tue Feb 18 21:04:41 UTC 2020


 offapi/com/sun/star/frame/XGlobalEventBroadcaster.idl |    3 ---
 sfx2/source/notify/globalevents.cxx                   |    1 +
 2 files changed, 1 insertion(+), 3 deletions(-)

New commits:
commit dba6ed31438d7d1b75cf239f2d59c4b615e34102
Author:     Stephan Bergmann <sbergman at redhat.com>
AuthorDate: Tue Feb 18 20:47:17 2020 +0100
Commit:     Stephan Bergmann <sbergman at redhat.com>
CommitDate: Tue Feb 18 22:04:00 2020 +0100

    Drop obsolete XEventBroadcaster again from XGlobalEventBroadcaster
    
    272f0e97b12e634cdf49a1bff45e1b9068af7d9c "Improvements on previous commit" had
    "[m]ade XGlobalEventBroadcaster inherit document::XDocumentEventBroadcaster/
    Listener replacements for obsolete document::XEventBroadcaster/Listener.  This
    means some client sides unfortunately still need to use UNO_QUERY_THROW to
    obtain the obsolete interfaces; those client sides should be cleaned up to use
    the replacement interfaces instead."
    
    But then 13bedc55b1d533eadcfd4932ef57076e3642caaf "fdo#46808, use service
    constructor for frame::GlobalEventBroadcaster" unhelpfully added
    XEventBroadcaster back to XGlobalEventBroadcaster because the AutoRecovery code
    in framework/source/services/autorecovery.cxx still used the XEventBroadcaster
    interface via UNO_QUERY (but which was actually as intended).
    
    (And 79e0e713f798718902fed9740f147ce143bf7b76 "Update to
    XDocumentEventBroadcaster et al" meanwhile cleaned up the AutoRecovery code to
    use XDocumentEventBroadcaster instead of XEventBroadcaster, anyway.)
    
    This could be considered an incompatible change to XGlobalEventBroadcaster, but
    which is an unpublished interface added only in LO times, so lets assume that no
    3rd-party code relies on its obsolete XEventBroadcaster interface.
    
    SfxGlobalEvents_Impl keeps implementing XEventBroadcaster (as well as
    XEventListener) for backwards compatibility.
    
    Change-Id: I13a5a7fc45d0b79acfdcd3e11bd9b8cc0ece6314
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88986
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <sbergman at redhat.com>

diff --git a/offapi/com/sun/star/frame/XGlobalEventBroadcaster.idl b/offapi/com/sun/star/frame/XGlobalEventBroadcaster.idl
index e4b6043f2894..cb42d0a876db 100644
--- a/offapi/com/sun/star/frame/XGlobalEventBroadcaster.idl
+++ b/offapi/com/sun/star/frame/XGlobalEventBroadcaster.idl
@@ -22,7 +22,6 @@
 #include <com/sun/star/container/XSet.idl>
 #include <com/sun/star/document/XDocumentEventBroadcaster.idl>
 #include <com/sun/star/document/XDocumentEventListener.idl>
-#include <com/sun/star/document/XEventBroadcaster.idl>
 #include <com/sun/star/document/XEventsSupplier.idl>
 
 module com {  module sun {  module star {  module frame {
@@ -44,8 +43,6 @@ interface XGlobalEventBroadcaster
          */
         interface ::com::sun::star::document::XDocumentEventBroadcaster;
 
-        interface ::com::sun::star::document::XEventBroadcaster;
-
         interface ::com::sun::star::container::XSet;
 
         interface ::com::sun::star::document::XDocumentEventListener;
diff --git a/sfx2/source/notify/globalevents.cxx b/sfx2/source/notify/globalevents.cxx
index 71c1128444ea..b8cc21131090 100644
--- a/sfx2/source/notify/globalevents.cxx
+++ b/sfx2/source/notify/globalevents.cxx
@@ -59,6 +59,7 @@ typedef ::std::vector< css::uno::Reference< css::frame::XModel > > TModelList;
 class SfxGlobalEvents_Impl : public ModelCollectionMutexBase
                            , public ::cppu::WeakImplHelper< css::lang::XServiceInfo
                                                            , css::frame::XGlobalEventBroadcaster
+                                                           , css::document::XEventBroadcaster
                                                            , css::document::XEventListener
                                                             >
 {


More information about the Libreoffice-commits mailing list