diff options
Diffstat (limited to 'desktop')
-rw-r--r-- | desktop/source/app/app.cxx | 7 | ||||
-rw-r--r-- | desktop/source/deployment/gui/dp_gui_updatedialog.cxx | 28 | ||||
-rw-r--r-- | desktop/source/migration/pages.cxx | 2 |
3 files changed, 32 insertions, 5 deletions
diff --git a/desktop/source/app/app.cxx b/desktop/source/app/app.cxx index efc689b54ff8..ede5fdf7511a 100644 --- a/desktop/source/app/app.cxx +++ b/desktop/source/app/app.cxx @@ -1468,6 +1468,13 @@ void Desktop::Main() xContainerWindow = xBackingFrame->getContainerWindow(); if (xContainerWindow.is()) { + // set the WB_EXT_DOCUMENT style. Normally, this is done by the TaskCreator service when a "_blank" + // frame/window is created. Since we do not use the TaskCreator here, we need to mimic its behavior, + // otherwise documents loaded into this frame will later on miss functionality depending on the style. + Window* pContainerWindow = VCLUnoHelper::GetWindow( xContainerWindow ); + OSL_ENSURE( pContainerWindow, "Desktop::Main: no implementation access to the frame's container window!" ); + pContainerWindow->SetExtendedStyle( pContainerWindow->GetExtendedStyle() | WB_EXT_DOCUMENT ); + SetSplashScreenProgress(75); Sequence< Any > lArgs(1); lArgs[0] <<= xContainerWindow; diff --git a/desktop/source/deployment/gui/dp_gui_updatedialog.cxx b/desktop/source/deployment/gui/dp_gui_updatedialog.cxx index 0e1955359bbc..58e2cbd9bd0a 100644 --- a/desktop/source/deployment/gui/dp_gui_updatedialog.cxx +++ b/desktop/source/deployment/gui/dp_gui_updatedialog.cxx @@ -284,8 +284,8 @@ private: css::uno::Reference< css::uno::XComponentContext > m_context; UpdateDialog & m_dialog; std::vector< dp_gui::TUpdateListEntry > m_vExtensionList; - css::uno::Reference< css::deployment::XUpdateInformationProvider > - m_updateInformation; + css::uno::Reference< css::deployment::XUpdateInformationProvider > m_updateInformation; + css::uno::Reference< css::task::XInteractionHandler > m_xInteractionHdl; // guarded by Application::GetSolarMutex(): css::uno::Reference< css::task::XAbortChannel > m_abort; @@ -302,7 +302,21 @@ UpdateDialog::Thread::Thread( m_updateInformation( css::deployment::UpdateInformationProvider::create(context)), m_stop(false) -{} +{ + if( m_context.is() ) + { + css::uno::Reference< css::lang::XMultiComponentFactory > xServiceManager( m_context->getServiceManager() ); + + if( xServiceManager.is() ) + { + m_xInteractionHdl = css::uno::Reference< css::task::XInteractionHandler > ( + xServiceManager->createInstanceWithContext( OUSTR( "com.sun.star.task.InteractionHandler" ), m_context), + css::uno::UNO_QUERY ); + if ( m_xInteractionHdl.is() ) + m_updateInformation->setInteractionHandler( m_xInteractionHdl ); + } + } +} void UpdateDialog::Thread::stop() { css::uno::Reference< css::task::XAbortChannel > abort; @@ -327,7 +341,11 @@ UpdateDialog::Thread::Entry::Entry( version(theVersion) {} -UpdateDialog::Thread::~Thread() {} +UpdateDialog::Thread::~Thread() +{ + if ( m_xInteractionHdl.is() ) + m_updateInformation->setInteractionHandler( css::uno::Reference< css::task::XInteractionHandler > () ); +} void UpdateDialog::Thread::execute() { @@ -1260,7 +1278,7 @@ IMPL_LINK( UpdateDialog, hyperlink_clicked, svt::FixedHyperlink*, pHyperlink ) { css::uno::Reference< css::system::XSystemShellExecute > xSystemShellExecute( m_context->getServiceManager()->createInstanceWithContext( - ::rtl::OUString::createFromAscii( "com.sun.star.system.SystemShellExecute" ), + OUSTR( "com.sun.star.system.SystemShellExecute" ), m_context), css::uno::UNO_QUERY_THROW); //throws css::lang::IllegalArgumentException, css::system::SystemShellExecuteException xSystemShellExecute->execute( diff --git a/desktop/source/migration/pages.cxx b/desktop/source/migration/pages.cxx index 80c5849ee4d9..2c85828f540f 100644 --- a/desktop/source/migration/pages.cxx +++ b/desktop/source/migration/pages.cxx @@ -373,9 +373,11 @@ UserPage::UserPage( svt::OWizardMachine* parent, const ResId& resid) SvtUserOptions aUserOpt; m_edFirst.SetText(aUserOpt.GetFirstName()); m_edLast.SetText(aUserOpt.GetLastName()); +#if 0 rtl::OUString aUserName; vos::OSecurity().getUserName( aUserName ); aUserOpt.SetID( aUserName ); +#endif m_edInitials.SetText(aUserOpt.GetID()); if (m_lang == LANGUAGE_RUSSIAN) |