diff options
Diffstat (limited to 'sd/source/ui/framework/tools/FrameworkHelper.cxx')
-rwxr-xr-x | sd/source/ui/framework/tools/FrameworkHelper.cxx | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/sd/source/ui/framework/tools/FrameworkHelper.cxx b/sd/source/ui/framework/tools/FrameworkHelper.cxx index 078f86a88d86..8c325ff202af 100755 --- a/sd/source/ui/framework/tools/FrameworkHelper.cxx +++ b/sd/source/ui/framework/tools/FrameworkHelper.cxx @@ -565,12 +565,27 @@ Reference<XResourceId> FrameworkHelper::RequestView ( void FrameworkHelper::RequestTaskPanel ( - const OUString& rsTaskPanelURL) + const OUString& rsTaskPanelURL, + const bool bEnsureTaskPaneIsVisible) { try { if (mxConfigurationController.is()) { + // Check the existence of the task pane. + if ( ! bEnsureTaskPaneIsVisible) + { + Reference<XConfiguration> xConfiguration ( + mxConfigurationController->getCurrentConfiguration()); + if (xConfiguration.is()) + if ( ! xConfiguration->hasResource( + CreateResourceId(msTaskPaneURL, msRightPaneURL))) + { + // Task pane does is not active. Do not force it. + return; + } + } + // Create the resource id from URLs for the pane, the task pane // view, and the task panel. mxConfigurationController->requestResourceActivation( |