diff options
Diffstat (limited to 'framework/source/services/frame.cxx')
-rw-r--r-- | framework/source/services/frame.cxx | 27 |
1 files changed, 11 insertions, 16 deletions
diff --git a/framework/source/services/frame.cxx b/framework/source/services/frame.cxx index b56b561e34ba..5d956076d5bc 100644 --- a/framework/source/services/frame.cxx +++ b/framework/source/services/frame.cxx @@ -54,6 +54,7 @@ #include <com/sun/star/util/URLTransformer.hpp> #include <com/sun/star/util/XURLTransformer.hpp> #include <com/sun/star/util/XCloseable.hpp> +#include <com/sun/star/awt/Toolkit.hpp> #include <com/sun/star/awt/XDevice.hpp> #include <com/sun/star/awt/XTopWindow.hpp> #include <com/sun/star/frame/XDesktop.hpp> @@ -2926,15 +2927,12 @@ void Frame::implts_startWindowListening() { xTopWindow->addTopWindowListener( xTopWindowListener ); - css::uno::Reference< css::awt::XDataTransferProviderAccess > xTransfer( xFactory->createInstance( SERVICENAME_VCLTOOLKIT ), css::uno::UNO_QUERY ); - if( xTransfer.is() == sal_True ) + css::uno::Reference< css::awt::XToolkit2 > xToolkit = css::awt::Toolkit::create( comphelper::getComponentContext(xFactory) ); + css::uno::Reference< css::datatransfer::dnd::XDropTarget > xDropTarget = xToolkit->getDropTarget( xContainerWindow ); + if( xDropTarget.is() == sal_True ) { - css::uno::Reference< css::datatransfer::dnd::XDropTarget > xDropTarget = xTransfer->getDropTarget( xContainerWindow ); - if( xDropTarget.is() == sal_True ) - { - xDropTarget->addDropTargetListener( xDragDropListener ); - xDropTarget->setActive( sal_True ); - } + xDropTarget->addDropTargetListener( xDragDropListener ); + xDropTarget->setActive( sal_True ); } } } @@ -2969,15 +2967,12 @@ void Frame::implts_stopWindowListening() { xTopWindow->removeTopWindowListener( xTopWindowListener ); - css::uno::Reference< css::awt::XDataTransferProviderAccess > xTransfer( xFactory->createInstance( SERVICENAME_VCLTOOLKIT ), css::uno::UNO_QUERY ); - if( xTransfer.is() == sal_True ) + css::uno::Reference< css::awt::XToolkit2 > xToolkit = css::awt::Toolkit::create( comphelper::getComponentContext(xFactory) ); + css::uno::Reference< css::datatransfer::dnd::XDropTarget > xDropTarget = xToolkit->getDropTarget( xContainerWindow ); + if( xDropTarget.is() == sal_True ) { - css::uno::Reference< css::datatransfer::dnd::XDropTarget > xDropTarget = xTransfer->getDropTarget( xContainerWindow ); - if( xDropTarget.is() == sal_True ) - { - xDropTarget->removeDropTargetListener( xDragDropListener ); - xDropTarget->setActive( sal_False ); - } + xDropTarget->removeDropTargetListener( xDragDropListener ); + xDropTarget->setActive( sal_False ); } } } |