[Libreoffice-commits] .: vcl/inc vcl/source

Michael Meeks mmeeks at kemper.freedesktop.org
Tue Oct 12 07:42:04 PDT 2010


 vcl/inc/vcl/svapp.hxx        |    1 +
 vcl/source/app/svapp.cxx     |    5 +++++
 vcl/source/window/window.cxx |   31 ++++++++++++++++++++-----------
 3 files changed, 26 insertions(+), 11 deletions(-)

New commits:
commit a961c948e59af15c07f09c844d35e01c693e6875
Author: Jan Holesovsky <kendy at suse.cz>
Date:   Tue Oct 12 15:31:05 2010 +0100

    Implement hooks for unix quickstarter

diff --git a/vcl/inc/vcl/svapp.hxx b/vcl/inc/vcl/svapp.hxx
index d12ff0d..ed6ce0a 100644
--- a/vcl/inc/vcl/svapp.hxx
+++ b/vcl/inc/vcl/svapp.hxx
@@ -261,6 +261,7 @@ public:
     virtual void                DataChanged( const DataChangedEvent& rDCEvt );
 
     virtual void                Init();
+    virtual void                InitFinished();
     virtual void                DeInit();
 
     static void                 InitAppRes( const ResId& rResId );
diff --git a/vcl/source/app/svapp.cxx b/vcl/source/app/svapp.cxx
index c87aca5..056c5c2 100644
--- a/vcl/source/app/svapp.cxx
+++ b/vcl/source/app/svapp.cxx
@@ -312,6 +312,11 @@ void Application::Init()
 }
 
 // -----------------------------------------------------------------------
+void Application::InitFinished()
+{
+}
+
+// -----------------------------------------------------------------------
 
 void Application::DeInit()
 {
diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx
index 6797bc3..38f48fe 100644
--- a/vcl/source/window/window.cxx
+++ b/vcl/source/window/window.cxx
@@ -633,10 +633,10 @@ void Window::ImplInitWindowData( WindowType nType )
     mpWindowImpl->mbDockWin           = FALSE;        // TRUE: DockingWindow is the base class
     mpWindowImpl->mbFloatWin          = FALSE;        // TRUE: FloatingWindow is the base class
     mpWindowImpl->mbPushButton        = FALSE;        // TRUE: PushButton is the base class
-    mpWindowImpl->mbToolBox			= FALSE;		// TRUE: ToolBox is the base class
-    mpWindowImpl->mbMenuFloatingWindow= FALSE;		// TRUE: MenuFloatingWindow is the base class
-    mpWindowImpl->mbToolbarFloatingWindow= FALSE;		// TRUE: ImplPopupFloatWin is the base class, used for subtoolbars
-    mpWindowImpl->mbSplitter			= FALSE;		// TRUE: Splitter is the base class
+    mpWindowImpl->mbToolBox                     = FALSE;                // TRUE: ToolBox is the base class
+    mpWindowImpl->mbMenuFloatingWindow= FALSE;          // TRUE: MenuFloatingWindow is the base class
+    mpWindowImpl->mbToolbarFloatingWindow= FALSE;               // TRUE: ImplPopupFloatWin is the base class, used for subtoolbars
+    mpWindowImpl->mbSplitter                    = FALSE;                // TRUE: Splitter is the base class
     mpWindowImpl->mbVisible           = FALSE;        // TRUE: Show( true ) called
     mpWindowImpl->mbOverlapVisible    = FALSE;        // TRUE: Hide called for visible window from ImplHideAllOverlapWindow()
     mpWindowImpl->mbDisabled          = FALSE;        // TRUE: Enable( FALSE ) called
@@ -1315,7 +1315,7 @@ ImplWinData* Window::ImplGetWinData() const
         mpWindowImpl->mpWinData->mpFocusRect      = NULL;
         mpWindowImpl->mpWinData->mpTrackRect      = NULL;
         mpWindowImpl->mpWinData->mnTrackFlags     = 0;
-        mpWindowImpl->mpWinData->mnIsTopWindow	= (USHORT) ~0;  // not initialized yet, 0/1 will indicate TopWindow (see IsTopWindow())
+        mpWindowImpl->mpWinData->mnIsTopWindow  = (USHORT) ~0;  // not initialized yet, 0/1 will indicate TopWindow (see IsTopWindow())
         mpWindowImpl->mpWinData->mbMouseOver      = FALSE;
         mpWindowImpl->mpWinData->mbEnableNativeWidget = (pNoNWF && *pNoNWF) ? FALSE : TRUE; // TRUE: try to draw this control with native theme API
         mpWindowImpl->mpWinData->mpSmartHelpId    = NULL;
@@ -3291,7 +3291,7 @@ void Window::ImplPosSizeWindow( long nX, long nY,
             }
             mpWindowImpl->mnX = nX;
             mpWindowImpl->maPos.X() = nOrgX;
-            mpWindowImpl->mnAbsScreenX = aPtDev.X();	// --- RTL --- (store real screen pos)
+            mpWindowImpl->mnAbsScreenX = aPtDev.X();    // --- RTL --- (store real screen pos)
             bNewPos = TRUE;
         }
     }
@@ -6585,10 +6585,19 @@ void Window::Show( BOOL bVisible, USHORT nFlags )
             mpWindowImpl->mpBorderWindow->Show( true, nFlags );
         else if ( mpWindowImpl->mbFrame )
         {
-            ImplSVData* pSVData = ImplGetSVData();
             // #106431#, hide SplashScreen
-            if( pSVData->mpIntroWindow && !ImplIsWindowOrChild( pSVData->mpIntroWindow ) )
+            ImplSVData* pSVData = ImplGetSVData();
+            if ( !pSVData->mpIntroWindow )
+            {
+                // The right way would be just to call this (not even in the 'if')
+                GetpApp()->InitFinished();
+            }
+            else if ( !ImplIsWindowOrChild( pSVData->mpIntroWindow ) )
+            {
+                // ... but the VCL splash is broken, and it needs this
+                // (for ./soffice slot:5500)
                 pSVData->mpIntroWindow->Hide();
+            }
 
             //DBG_ASSERT( !mpWindowImpl->mbSuppressAccessibilityEvents, "Window::Show() - Frame reactivated");
             mpWindowImpl->mbSuppressAccessibilityEvents = FALSE;
@@ -8717,8 +8726,8 @@ Reference< XClipboard > Window::GetPrimarySelection()
 
                     mpWindowImpl->mpFrameData->mxSelection = Reference< XClipboard >( xFactory->createInstanceWithArguments(
                     OUString::createFromAscii( "com.sun.star.datatransfer.clipboard.SystemClipboard" ), aArgumentList ), UNO_QUERY );
-#	else
-                    static Reference< XClipboard >	s_xSelection;
+#       else
+                    static Reference< XClipboard >      s_xSelection;
 
                     if ( !s_xSelection.is() )
                          s_xSelection = Reference< XClipboard >( xFactory->createInstance( OUString::createFromAscii( "com.sun.star.datatransfer.clipboard.GenericClipboardExt" ) ), UNO_QUERY );
@@ -8727,7 +8736,7 @@ Reference< XClipboard > Window::GetPrimarySelection()
                          s_xSelection = Reference< XClipboard >( xFactory->createInstance( OUString::createFromAscii( "com.sun.star.datatransfer.clipboard.GenericClipboard" ) ), UNO_QUERY );
 
                     mpWindowImpl->mpFrameData->mxSelection = s_xSelection;
-#	endif
+#       endif
                 }
             }
 


More information about the Libreoffice-commits mailing list