summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatúš Kukan <matus.kukan@collabora.com>2014-02-12 20:01:03 +0100
committerMatúš Kukan <matus.kukan@collabora.com>2014-02-13 11:26:33 +0100
commitce02519c5c7e43fabe7b0c587e3304d48b795d0f (patch)
tree08b05553bb91b9182b4a5fb07dca1c650ec2db7e
parent924a415e68cfeb8eda54db3e19f71eafcd2b9b1e (diff)
Introduce com.sun.star.frame.theDesktop singleton.
Change-Id: I3d269609119149e289652f6bc106e6bd9061672d
-rw-r--r--framework/util/fwk.component1
-rwxr-xr-xoffapi/UnoApi_offapi.mk1
-rw-r--r--offapi/com/sun/star/frame/Desktop.idl14
-rw-r--r--offapi/com/sun/star/frame/theDesktop.idl47
4 files changed, 54 insertions, 9 deletions
diff --git a/framework/util/fwk.component b/framework/util/fwk.component
index 9d5fbb1a7cc5..3503f74fce7d 100644
--- a/framework/util/fwk.component
+++ b/framework/util/fwk.component
@@ -38,6 +38,7 @@
</implementation>
<implementation name="com.sun.star.comp.framework.Desktop">
<service name="com.sun.star.frame.Desktop"/>
+ <singleton name="com.sun.star.frame.theDesktop"/>
</implementation>
<implementation name="com.sun.star.comp.framework.DocumentAcceleratorConfiguration"
constructor="com_sun_star_comp_framework_DocumentAcceleratorConfiguration_get_implementation">
diff --git a/offapi/UnoApi_offapi.mk b/offapi/UnoApi_offapi.mk
index 2e1f2d75aa1d..3ae45b053078 100755
--- a/offapi/UnoApi_offapi.mk
+++ b/offapi/UnoApi_offapi.mk
@@ -201,6 +201,7 @@ $(eval $(call gb_UnoApi_add_idlfiles_nohdl,offapi,com/sun/star/frame,\
TaskCreator \
UICommandDescription \
theAutoRecovery \
+ theDesktop \
theGlobalEventBroadcaster \
theUICommandDescription \
))
diff --git a/offapi/com/sun/star/frame/Desktop.idl b/offapi/com/sun/star/frame/Desktop.idl
index c1a1c04c094a..2d6f18de7604 100644
--- a/offapi/com/sun/star/frame/Desktop.idl
+++ b/offapi/com/sun/star/frame/Desktop.idl
@@ -24,17 +24,13 @@
module com { module sun { module star { module frame {
-/** is the environment for components which can instantiate within frames
-
- <p>
- A desktop environment contains tasks with one or more frames
- in which components can be loaded. The term "task" or naming a frame as a
- "task frame" is not in any way related to any additional implemented
- interfaces, it's just because these frames use task windows.
- </p>
+/**
+ A legacy (single-instance) service-variant of theDesktop singleton.
+
+ @deprecated Use theDesktop singleton instead.
*/
-published service Desktop : XDesktop2;
+published service Desktop : XDesktop2;
}; }; }; };
diff --git a/offapi/com/sun/star/frame/theDesktop.idl b/offapi/com/sun/star/frame/theDesktop.idl
new file mode 100644
index 000000000000..12c7d792031b
--- /dev/null
+++ b/offapi/com/sun/star/frame/theDesktop.idl
@@ -0,0 +1,47 @@
+/* -*- 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_theDesktop_idl__
+#define __com_sun_star_frame_theDesktop_idl__
+
+#include <com/sun/star/frame/XDesktop2.idl>
+
+
+ module com { module sun { module star { module frame {
+
+/** is the environment for components which can instantiate within frames
+
+ <p>
+ A desktop environment contains tasks with one or more frames
+ in which components can be loaded. The term "task" or naming a frame as a
+ "task frame" is not in any way related to any additional implemented
+ interfaces, it's just because these frames use task windows.
+ </p>
+
+ Prior to LibreOffice 4.3, this singleton was only available as a
+ (single-instance) Desktop service.
+
+ @since LibreOffice 4.3
+ */
+published singleton theDesktop : XDesktop2;
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */