[Libreoffice-commits] core.git: Branch 'feature/lok-clipboard' - 3 commits - desktop/source
Ashod Nakashian (via logerrit)
logerrit at kemper.freedesktop.org
Wed Jul 24 16:57:04 UTC 2019
Rebased ref, commits from common ancestor:
commit ad28cf191d24dfbd0b0c29ab1d72a5b20f4b66ef
Author: Ashod Nakashian <ashod.nakashian at collabora.co.uk>
AuthorDate: Mon Jul 22 19:00:23 2019 -0400
Commit: Michael Meeks <michael.meeks at collabora.com>
CommitDate: Tue Jul 23 09:51:36 2019 +0100
clipboard: log before erasing
Change-Id: I6d59cdd31c62bbc7db81ccb8985745f68d19cd28
diff --git a/desktop/source/lib/lokclipboard.cxx b/desktop/source/lib/lokclipboard.cxx
index 7eefd09370d1..f44f4e9fed81 100644
--- a/desktop/source/lib/lokclipboard.cxx
+++ b/desktop/source/lib/lokclipboard.cxx
@@ -51,8 +51,8 @@ void LOKClipboardFactory::releaseClipboardForView(int nViewId)
auto it = gClipboards.get()->find(nViewId);
if (it != gClipboards.get()->end())
{
+ SAL_INFO("lok", "Releasing clip: " << it->second.get() << " for destroyed " << nViewId);
gClipboards.get()->erase(it);
- SAL_INFO("lok", "Released clip: " << it->second.get() << " for destroyed " << nViewId);
}
}
}
commit 26255a756c308ec296a670da4f758980b8fa105c
Author: Michael Meeks <michael.meeks at collabora.com>
AuthorDate: Tue Jul 23 09:49:11 2019 +0100
Commit: Michael Meeks <michael.meeks at collabora.com>
CommitDate: Tue Jul 23 09:49:11 2019 +0100
clipboard: check for null.
Change-Id: I07060035a9744642c98d4a0946695408dc0f6b42
diff --git a/desktop/source/lib/lokclipboard.cxx b/desktop/source/lib/lokclipboard.cxx
index 3285965c846f..7eefd09370d1 100644
--- a/desktop/source/lib/lokclipboard.cxx
+++ b/desktop/source/lib/lokclipboard.cxx
@@ -37,7 +37,6 @@ rtl::Reference<LOKClipboard> LOKClipboardFactory::getClipboardForCurView()
return xClip;
}
-/// FIXME: should really copy and stash its content for a bit.
void LOKClipboardFactory::releaseClipboardForView(int nViewId)
{
osl::MutexGuard aGuard(gMutex);
@@ -47,7 +46,7 @@ void LOKClipboardFactory::releaseClipboardForView(int nViewId)
gClipboards.get()->clear();
SAL_INFO("lok", "Released all clipboards on doc destroy\n");
}
- else
+ else if (gClipboards.get())
{
auto it = gClipboards.get()->find(nViewId);
if (it != gClipboards.get()->end())
commit c6ad8b963e64217ccdac1914720b9e20c81fd28a
Author: Michael Meeks <michael.meeks at collabora.com>
AuthorDate: Mon Jul 22 09:48:46 2019 +0100
Commit: Michael Meeks <michael.meeks at collabora.com>
CommitDate: Mon Jul 22 11:39:22 2019 +0100
lok: share more of the clipboard mime-type handling code.
Change-Id: I98fc9fa0fd1b5afa00c33b642d2d504eab0b62ba
diff --git a/desktop/source/lib/lokclipboard.cxx b/desktop/source/lib/lokclipboard.cxx
index 17a9c5c54e4f..3285965c846f 100644
--- a/desktop/source/lib/lokclipboard.cxx
+++ b/desktop/source/lib/lokclipboard.cxx
@@ -189,20 +189,7 @@ LOKTransferable::LOKTransferable(const size_t nInCount, const char** pInMimeType
m_aFlavors = css::uno::Sequence<css::datatransfer::DataFlavor>(nInCount);
for (size_t i = 0; i < nInCount; ++i)
{
- OUString aMimeType = OUString::fromUtf8(pInMimeTypes[i]);
-
- // cf. sot/source/base/exchange.cxx for these two exceptional types.
- if (aMimeType.startsWith("text/plain"))
- {
- aMimeType = "text/plain;charset=utf-16";
- m_aFlavors[i].DataType = cppu::UnoType<OUString>::get();
- }
- else if (aMimeType == "application/x-libreoffice-tsvc")
- m_aFlavors[i].DataType = cppu::UnoType<OUString>::get();
- else
- m_aFlavors[i].DataType = cppu::UnoType<uno::Sequence<sal_Int8>>::get();
- m_aFlavors[i].MimeType = aMimeType;
- m_aFlavors[i].HumanPresentableName = aMimeType;
+ initFlavourFromMime(m_aFlavors[i], OUString::fromUtf8(pInMimeTypes[i]));
uno::Any aContent;
if (m_aFlavors[i].DataType == cppu::UnoType<OUString>::get())
More information about the Libreoffice-commits
mailing list