diff options
Diffstat (limited to 'sd')
-rw-r--r-- | sd/source/ui/framework/factories/BasicViewFactory.cxx | 14 | ||||
-rw-r--r-- | sd/source/ui/framework/factories/ViewShellWrapper.cxx | 8 |
2 files changed, 13 insertions, 9 deletions
diff --git a/sd/source/ui/framework/factories/BasicViewFactory.cxx b/sd/source/ui/framework/factories/BasicViewFactory.cxx index 9badf15dd459..237dc720c08c 100644 --- a/sd/source/ui/framework/factories/BasicViewFactory.cxx +++ b/sd/source/ui/framework/factories/BasicViewFactory.cxx @@ -368,10 +368,22 @@ void SAL_CALL BasicViewFactory::initialize (const Sequence<Any>& aArguments) pDescriptor->mpViewShell->Init(bIsCenterPane); mpBase->GetViewShellManager()->ActivateViewShell(pDescriptor->mpViewShell.get()); + Reference<awt::XWindow> xWindow(rxPane->getWindow()); pDescriptor->mpWrapper = new ViewShellWrapper( pDescriptor->mpViewShell, rxViewId, - rxPane->getWindow()); + xWindow); + + // register ViewShellWrapper on pane window + if (xWindow.is()) + { + xWindow->addWindowListener(pDescriptor->mpWrapper); + if (pDescriptor->mpViewShell != NULL) + { + pDescriptor->mpViewShell->Resize(); + } + } + pDescriptor->mxView.set( pDescriptor->mpWrapper->queryInterface( XResource::static_type() ), UNO_QUERY_THROW ); } diff --git a/sd/source/ui/framework/factories/ViewShellWrapper.cxx b/sd/source/ui/framework/factories/ViewShellWrapper.cxx index 1108ffe23c58..ad27974b580b 100644 --- a/sd/source/ui/framework/factories/ViewShellWrapper.cxx +++ b/sd/source/ui/framework/factories/ViewShellWrapper.cxx @@ -67,14 +67,6 @@ ViewShellWrapper::ViewShellWrapper ( mxViewId(rxViewId), mxWindow(rxWindow) { - if (rxWindow.is()) - { - rxWindow->addWindowListener(this); - if (pViewShell != NULL) - { - pViewShell->Resize(); - } - } } |