summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--framework/inc/services.h1
-rw-r--r--framework/source/loadenv/loadenv.cxx3
-rw-r--r--offapi/UnoApi_offapi.mk1
-rw-r--r--offapi/com/sun/star/frame/OfficeFrameLoader.idl37
-rw-r--r--sfx2/source/view/frmload.cxx3
-rw-r--r--sfx2/util/sfx.component1
6 files changed, 43 insertions, 3 deletions
diff --git a/framework/inc/services.h b/framework/inc/services.h
index 24503d4041ee..6b35bf2da568 100644
--- a/framework/inc/services.h
+++ b/framework/inc/services.h
@@ -59,7 +59,6 @@ namespace framework{
#define IMPLEMENTATIONNAME_DESKTOP DECLARE_ASCII("com.sun.star.comp.framework.Desktop" )
#define IMPLEMENTATIONNAME_URLTRANSFORMER DECLARE_ASCII("com.sun.star.comp.framework.URLTransformer" )
-#define IMPLEMENTATIONNAME_GENERICFRAMELOADER DECLARE_ASCII("com.sun.star.comp.office.FrameLoader" )
#define IMPLEMENTATIONNAME_MEDIATYPEDETECTIONHELPER DECLARE_ASCII("com.sun.star.comp.framework.MediaTypeDetectionHelper")
#define IMPLEMENTATIONNAME_OXT_HANDLER DECLARE_ASCII("com.sun.star.comp.framework.OXTFileHandler" )
#define IMPLEMENTATIONNAME_SFXTERMINATOR DECLARE_ASCII("com.sun.star.comp.sfx2.SfxTerminateListener" )
diff --git a/framework/source/loadenv/loadenv.cxx b/framework/source/loadenv/loadenv.cxx
index b8a584092982..577973677b33 100644
--- a/framework/source/loadenv/loadenv.cxx
+++ b/framework/source/loadenv/loadenv.cxx
@@ -52,6 +52,7 @@
#include <com/sun/star/awt/XWindow2.hpp>
#include <com/sun/star/awt/XTopWindow.hpp>
#include <com/sun/star/frame/Desktop.hpp>
+#include <com/sun/star/frame/OfficeFrameLoader.hpp>
#include <com/sun/star/frame/XModel.hpp>
#include <com/sun/star/frame/XFrameLoader.hpp>
#include <com/sun/star/frame/XSynchronousFrameLoader.hpp>
@@ -1194,7 +1195,7 @@ css::uno::Reference< css::uno::XInterface > LoadEnv::impl_searchLoader()
{
try
{
- return m_xContext->getServiceManager()->createInstanceWithContext(IMPLEMENTATIONNAME_GENERICFRAMELOADER, m_xContext);
+ return css::frame::OfficeFrameLoader::create(m_xContext);
}
catch(const css::uno::RuntimeException&)
{ throw; }
diff --git a/offapi/UnoApi_offapi.mk b/offapi/UnoApi_offapi.mk
index b3b12758e9c1..7d44fc52e7ea 100644
--- a/offapi/UnoApi_offapi.mk
+++ b/offapi/UnoApi_offapi.mk
@@ -198,6 +198,7 @@ $(eval $(call gb_UnoApi_add_idlfiles_nohdl,offapi,offapi/com/sun/star/frame,\
LayoutManager \
MediaTypeDetectionHelper \
ModuleManager \
+ OfficeFrameLoader \
SessionListener \
StartModule \
TaskCreator \
diff --git a/offapi/com/sun/star/frame/OfficeFrameLoader.idl b/offapi/com/sun/star/frame/OfficeFrameLoader.idl
new file mode 100644
index 000000000000..67823eb4110a
--- /dev/null
+++ b/offapi/com/sun/star/frame/OfficeFrameLoader.idl
@@ -0,0 +1,37 @@
+/* -*- 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 __com_sun_star_frame_OfficeFrameLoader_idl__
+#define __com_sun_star_frame_OfficeFrameLoader_idl__
+
+#include <com/sun/star/frame/XSynchronousFrameLoader.idl>
+
+
+ module com { module sun { module star { module frame {
+
+/**
+ @since LibreOffice 4.2
+ */
+service OfficeFrameLoader : XSynchronousFrameLoader;
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sfx2/source/view/frmload.cxx b/sfx2/source/view/frmload.cxx
index 03f242bd8b3c..624de0f12398 100644
--- a/sfx2/source/view/frmload.cxx
+++ b/sfx2/source/view/frmload.cxx
@@ -681,8 +681,9 @@ Sequence< OUString > SAL_CALL SfxFrameLoader_Impl::getSupportedServiceNames() th
Sequence< OUString > SfxFrameLoader_Impl::impl_getStaticSupportedServiceNames()
{
::osl::MutexGuard aGuard( ::osl::Mutex::getGlobalMutex() );
- Sequence< OUString > seqServiceNames( 1 );
+ Sequence< OUString > seqServiceNames( 2 );
seqServiceNames.getArray() [0] = OUString( "com.sun.star.frame.SynchronousFrameLoader" );
+ seqServiceNames.getArray() [1] = OUString( "com.sun.star.frame.OfficeFrameLoader" );
return seqServiceNames ;
}
diff --git a/sfx2/util/sfx.component b/sfx2/util/sfx.component
index 05c8c3bbf76e..0de2629eb110 100644
--- a/sfx2/util/sfx.component
+++ b/sfx2/util/sfx.component
@@ -38,6 +38,7 @@
</implementation>
<implementation name="com.sun.star.comp.office.FrameLoader">
<service name="com.sun.star.frame.SynchronousFrameLoader"/>
+ <service name="com.sun.star.frame.OfficeFrameLoader"/>
</implementation>
<implementation name="com.sun.star.comp.sfx2.AppDispatchProvider">
<service name="com.sun.star.frame.ProtocolHandler"/>