diff options
author | Henry Castro <hcastro@collabora.com> | 2018-05-28 10:20:53 -0400 |
---|---|---|
committer | Henry Castro <hcastro@collabora.com> | 2018-05-28 23:59:56 +0200 |
commit | 8f9f66e8d2bae94c1f469ffc51bdbffeba853a2b (patch) | |
tree | 6f5ec1060116967ff8bab3c7280d24ea0c199cb0 /sc | |
parent | 92e6be6614af2d8c1697faf5fc37e74af3700cea (diff) |
sc: simplify ScModule::GetClipDoc
Change-Id: I36a79a41b989d37efc35a9f9b4bebca9bdaf9ee9
Reviewed-on: https://gerrit.libreoffice.org/54935
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Henry Castro <hcastro@collabora.com>
Diffstat (limited to 'sc')
-rw-r--r-- | sc/source/ui/app/scmod.cxx | 24 |
1 files changed, 9 insertions, 15 deletions
diff --git a/sc/source/ui/app/scmod.cxx b/sc/source/ui/app/scmod.cxx index fc8145365871..26652ddf1808 100644 --- a/sc/source/ui/app/scmod.cxx +++ b/sc/source/ui/app/scmod.cxx @@ -662,28 +662,22 @@ void ScModule::SetDragJump( ScDocument* ScModule::GetClipDoc() { // called from document + SfxViewFrame* pViewFrame = nullptr; ScTabViewShell* pViewShell = nullptr; - const ScTransferObj* pObj = nullptr; + css::uno::Reference<css::datatransfer::XTransferable2> xTransferable; if ((pViewShell = dynamic_cast<ScTabViewShell*>(SfxViewShell::Current()))) - pObj = ScTransferObj::GetOwnClipboard(pViewShell->GetClipData()); + xTransferable.set(pViewShell->GetClipData()); else if ((pViewShell = dynamic_cast<ScTabViewShell*>(SfxViewShell::GetFirst()))) - pObj = ScTransferObj::GetOwnClipboard(pViewShell->GetClipData()); - else + xTransferable.set(pViewShell->GetClipData()); + else if ((pViewFrame = SfxViewFrame::GetFirst())) { - css::uno::Reference<css::datatransfer::clipboard::XClipboard> xClipboard; - - if (SfxViewFrame* pViewFrame = SfxViewFrame::GetFirst()) - xClipboard = pViewFrame->GetWindow().GetClipboard(); - - if (xClipboard.is()) - { - css::uno::Reference<css::datatransfer::XTransferable2> xTransferable( - xClipboard->getContents(), css::uno::UNO_QUERY); - pObj = ScTransferObj::GetOwnClipboard(xTransferable); - } + css::uno::Reference<css::datatransfer::clipboard::XClipboard> xClipboard = + pViewFrame->GetWindow().GetClipboard(); + xTransferable.set(xClipboard.is() ? xClipboard->getContents() : nullptr, css::uno::UNO_QUERY); } + const ScTransferObj* pObj = ScTransferObj::GetOwnClipboard(xTransferable); if (pObj) { ScDocument* pDoc = pObj->GetDocument(); |