summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorNoel Power <noel.power@novell.com>2010-10-13 13:14:57 +0100
committerNoel Power <noel.power@novell.com>2010-10-13 13:14:57 +0100
commit44b6cad4026d7c48325a43c970d05493c4113e1b (patch)
tree30a4b54e129ee7686913d567ae39e843d6d58c68 /vcl
parent8c6ba71655f67845e11c5a7566a45118151f55c9 (diff)
parente10b5bef6746338777cb350a87cf7aa5890c4809 (diff)
Merge commit 'origin/master'
Diffstat (limited to 'vcl')
-rw-r--r--vcl/inc/vcl/svapp.hxx1
-rw-r--r--vcl/source/app/svapp.cxx5
-rw-r--r--vcl/source/window/window.cxx27
3 files changed, 24 insertions, 9 deletions
diff --git a/vcl/inc/vcl/svapp.hxx b/vcl/inc/vcl/svapp.hxx
index bcfa489ca1de..c4813e465f94 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 029f282b6252..616b7c1fdab3 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 d4c8ee32ae64..2ec9a8caeeae 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
@@ -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
}
}