summaryrefslogtreecommitdiff
path: root/desktop
diff options
context:
space:
mode:
authorTor Lillqvist <tml@collabora.com>2019-11-20 18:14:07 +0200
committerTor Lillqvist <tml@collabora.com>2019-11-26 12:45:55 +0200
commit8ce79f1a9188ae389dc8be1f53de0000b3ca0951 (patch)
tree974f9c650cb707d198b5f90bc946058ff9a8fc74 /desktop
parent939331c0935d671984079051fda03feb3dcf23d9 (diff)
We use the system clipboard on iOS and not the "LOK clipboard"
The use of the system clipboard was implemented for iOS in vcl already in cp-6.0. This "LOK clipboard" thing is for different situations in web-based Online and not applicable for the iOS app. Change-Id: I679b5c27d308a563eadaf1e543ce8c45d763f3c6 Reviewed-on: https://gerrit.libreoffice.org/83339 Reviewed-by: Tor Lillqvist <tml@collabora.com> Tested-by: Tor Lillqvist <tml@collabora.com>
Diffstat (limited to 'desktop')
-rw-r--r--desktop/Library_sofficeapp.mk3
-rw-r--r--desktop/source/lib/init.cxx22
2 files changed, 23 insertions, 2 deletions
diff --git a/desktop/Library_sofficeapp.mk b/desktop/Library_sofficeapp.mk
index e7c56f4ee0b7..9dd91971a825 100644
--- a/desktop/Library_sofficeapp.mk
+++ b/desktop/Library_sofficeapp.mk
@@ -155,7 +155,8 @@ ifneq ($(filter $(OS),ANDROID iOS MACOSX WNT),)
$(eval $(call gb_Library_add_exception_objects,sofficeapp,\
desktop/source/lib/init \
desktop/source/lib/lokinteractionhandler \
- desktop/source/lib/lokclipboard \
+ $(if $(filter-out $(OS),IOS), \
+ desktop/source/lib/lokclipboard) \
$(if $(filter $(OS),ANDROID), \
desktop/source/lib/lokandroid) \
))
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx
index a5100da75627..db7ca361ba88 100644
--- a/desktop/source/lib/init.cxx
+++ b/desktop/source/lib/init.cxx
@@ -936,6 +936,8 @@ ITiledRenderable* getTiledRenderable(LibreOfficeKitDocument* pThis)
return dynamic_cast<ITiledRenderable*>(pDocument->mxComponent.get());
}
+#ifndef IOS
+
/*
* Unfortunately clipboard creation using UNO is insanely baroque.
* we also need to ensure that this works for the first view which
@@ -952,6 +954,9 @@ rtl::Reference<LOKClipboard> forceSetClipboardForCurrentView(LibreOfficeKitDocum
return xClip;
}
+
+#endif
+
} // anonymous namespace
LibLODocument_Impl::LibLODocument_Impl(const uno::Reference <css::lang::XComponent> &xComponent)
@@ -1037,7 +1042,9 @@ LibLODocument_Impl::LibLODocument_Impl(const uno::Reference <css::lang::XCompone
}
pClass = m_pDocumentClass.get();
+#ifndef IOS
forceSetClipboardForCurrentView(this);
+#endif
}
LibLODocument_Impl::~LibLODocument_Impl()
@@ -1620,10 +1627,12 @@ bool CallbackFlushHandler::processWindowEvent(CallbackData& aCallbackData)
return false;
}
+#ifndef IOS
auto xClip = forceSetClipboardForCurrentView(m_pDocument);
uno::Reference<datatransfer::clipboard::XClipboard> xClipboard(xClip.get());
pWindow->SetClipboard(xClipboard);
+#endif
}
else if (aAction == "size_changed")
{
@@ -3929,6 +3938,13 @@ static int doc_setClipboard(LibreOfficeKitDocument* pThis,
const size_t *pInSizes,
const char **pInStreams)
{
+#ifdef IOS
+ (void) pThis;
+ (void) nInCount;
+ (void) pInMimeTypes;
+ (void) pInSizes;
+ (void) pInStreams;
+#else
comphelper::ProfileZone aZone("doc_setClipboard");
SolarMutexGuard aGuard;
@@ -3953,7 +3969,7 @@ static int doc_setClipboard(LibreOfficeKitDocument* pThis,
SetLastExceptionMsg("Document doesn't support this mime type");
return false;
}
-
+#endif
return true;
}
@@ -4629,7 +4645,11 @@ static int doc_createViewWithOptions(LibreOfficeKitDocument* pThis,
int nId = SfxLokHelper::createView();
+#ifdef IOS
+ (void) pThis;
+#else
forceSetClipboardForCurrentView(pThis);
+#endif
return nId;
}