framework/source/loadenv/loadenv.cxx |    8 +++++---
 vcl/win/window/salframe.cxx          |    4 ++--
 2 files changed, 7 insertions(+), 5 deletions(-)

New commits:
commit d6eeeeb5378c66b81b8af604dd65306541a572d3
Author:     Tibor Nagy <tibor.nagy.ext...@allotropia.de>
AuthorDate: Sun Oct 27 23:44:00 2024 +0100
Commit:     Nagy Tibor <tibor.nagy.ext...@allotropia.de>
CommitDate: Mon Nov 4 10:26:28 2024 +0100

    tdf#76981 sd: Hide the document opening process when opening linked
    
    presentation in slideshow mode, only the presentation should be visible.
    The user should not see any intermediate loading processes or windows,
    providing a seamless transition directly to the presentation content.
    After closing the opened presentation, the running presentation should 
receive focus.
    
    Change-Id: Idc24de3d38523f044d7969f1eacb05c6bae91b83
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175706
    Tested-by: Jenkins
    Reviewed-by: Nagy Tibor <tibor.nagy.ext...@allotropia.de>
    (cherry picked from commit d239ac793f89c95cac95e5601a7d7a06c76dfd3c)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175905
    Tested-by: allotropia jenkins <jenk...@allotropia.de>

diff --git a/framework/source/loadenv/loadenv.cxx 
b/framework/source/loadenv/loadenv.cxx
index 299b0fcd5ba4..f95dd85c32c9 100644
--- a/framework/source/loadenv/loadenv.cxx
+++ b/framework/source/loadenv/loadenv.cxx
@@ -159,7 +159,6 @@ css::uno::Reference< css::lang::XComponent > 
LoadEnv::loadComponentFromURL(const
     try
     {
         LoadEnv aEnv(xContext);
-
         LoadEnvFeatures loadEnvFeatures = LoadEnvFeatures::WorkWithUI;
         // tdf#118238 Only disable UI interaction when loading as hidden
         if (comphelper::NamedValueCollection::get(lArgs, u"Hidden") == 
uno::Any(true) || Application::IsHeadlessModeEnabled())
@@ -1103,8 +1102,9 @@ bool LoadEnv::impl_loadContent()
     bool bHidden    = 
m_lMediaDescriptor.getUnpackedValueOrDefault(utl::MediaDescriptor::PROP_HIDDEN, 
false);
     bool bMinimized = 
m_lMediaDescriptor.getUnpackedValueOrDefault(utl::MediaDescriptor::PROP_MINIMIZED,
 false);
     bool bPreview   = 
m_lMediaDescriptor.getUnpackedValueOrDefault(utl::MediaDescriptor::PROP_PREVIEW,
 false);
+    bool bStartPres = m_lMediaDescriptor.contains("StartPresentation");
 
-    if (!bHidden && !bMinimized && !bPreview)
+    if (!bHidden && !bMinimized && !bPreview && !bStartPres)
     {
         css::uno::Reference<css::task::XStatusIndicator> xProgress = 
m_lMediaDescriptor.getUnpackedValueOrDefault(
             utl::MediaDescriptor::PROP_STATUSINDICATOR, 
css::uno::Reference<css::task::XStatusIndicator>());
@@ -1596,6 +1596,8 @@ void LoadEnv::impl_reactForLoadingState()
         css::uno::Reference< css::awt::XWindow > xWindow      = 
m_xTargetFrame->getContainerWindow();
         bool                                 bHidden      = 
m_lMediaDescriptor.getUnpackedValueOrDefault(utl::MediaDescriptor::PROP_HIDDEN, 
false);
         bool                                 bMinimized = 
m_lMediaDescriptor.getUnpackedValueOrDefault(utl::MediaDescriptor::PROP_MINIMIZED,
 false);
+        bool                                 bStartPres = 
m_lMediaDescriptor.contains("StartPresentation");
+
         VclPtr<vcl::Window> pWindow = VCLUnoHelper::GetWindow(xWindow);
 
         if (bMinimized)
@@ -1605,7 +1607,7 @@ void LoadEnv::impl_reactForLoadingState()
             if (pWindow && pWindow->IsSystemWindow())
                 static_cast<WorkWindow*>(pWindow.get())->Minimize();
         }
-        else if (!bHidden)
+        else if (!bHidden && !bStartPres)
         {
             // show frame ... if it's not still visible ...
             // But do nothing if it's already visible!
diff --git a/vcl/win/window/salframe.cxx b/vcl/win/window/salframe.cxx
index 783ca27192c6..c26070ac078e 100644
--- a/vcl/win/window/salframe.cxx
+++ b/vcl/win/window/salframe.cxx
@@ -813,8 +813,8 @@ static void ImplSalCalcFullScreenSize( const WinSalFrame* 
pFrame,
         }
         nScreenX = aRect.Left();
         nScreenY = aRect.Top();
-        nScreenDX = aRect.GetWidth();
-        nScreenDY = aRect.GetHeight();
+        nScreenDX = aRect.GetWidth() + 1;
+        nScreenDY = aRect.GetHeight() + 1;
     }
     catch( Exception& )
     {

Reply via email to