summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2018-05-30 13:57:02 +0100
committerCaolán McNamara <caolanm@redhat.com>2018-05-31 10:14:24 +0200
commit0b40212c18bb3c518bf54e55b9060f908ed84ed1 (patch)
treede1a20cde041e05cae158de399b8d214a1ace03f
parentc1dc72e9e853a80ce0876df6958c18bb881deb85 (diff)
tdf#117864 TransferableHelper::GetSystemClipboard requires a focus window
Change-Id: Ibd9b9218cf12e80db1fc9a70bdbab38d3df950f7 Reviewed-on: https://gerrit.libreoffice.org/55073 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r--chart2/source/controller/main/ChartController_Tools.cxx3
-rw-r--r--chart2/source/controller/sidebar/ChartSeriesPanel.cxx4
2 files changed, 6 insertions, 1 deletions
diff --git a/chart2/source/controller/main/ChartController_Tools.cxx b/chart2/source/controller/main/ChartController_Tools.cxx
index a89f2ef70821..59444c95d5fb 100644
--- a/chart2/source/controller/main/ChartController_Tools.cxx
+++ b/chart2/source/controller/main/ChartController_Tools.cxx
@@ -524,7 +524,8 @@ void ChartController::executeDispatch_Copy()
}
if ( xTransferable.is() )
{
- Reference< datatransfer::clipboard::XClipboard > xClipboard( TransferableHelper::GetSystemClipboard() );
+ SolarMutexGuard aSolarGuard;
+ Reference<datatransfer::clipboard::XClipboard> xClipboard(GetChartWindow()->GetClipboard());
if ( xClipboard.is() )
{
xClipboard->setContents( xTransferable, Reference< datatransfer::clipboard::XClipboardOwner >() );
diff --git a/chart2/source/controller/sidebar/ChartSeriesPanel.cxx b/chart2/source/controller/sidebar/ChartSeriesPanel.cxx
index 836aaaba3002..edf0190d75fc 100644
--- a/chart2/source/controller/sidebar/ChartSeriesPanel.cxx
+++ b/chart2/source/controller/sidebar/ChartSeriesPanel.cxx
@@ -266,6 +266,10 @@ OUString getCID(const css::uno::Reference<css::frame::XModel>& xModel)
OUString aCID;
aAny >>= aCID;
+
+ if (aCID.isEmpty())
+ return OUString();
+
#ifdef DBG_UTIL
ObjectType eType = ObjectIdentifier::getObjectType(aCID);
assert(eType == OBJECTTYPE_DATA_SERIES);