diff options
author | Jan Holesovsky <kendy@suse.cz> | 2010-11-01 13:54:40 +0100 |
---|---|---|
committer | Jan Holesovsky <kendy@suse.cz> | 2010-11-01 13:54:40 +0100 |
commit | bb7dd559d58281f40166d11112b2242838356e2a (patch) | |
tree | a4a414858e1b6505b94a596ad0230edf5b77afed /vcl | |
parent | 0bafc38b53e170a148b6f1e346a070bd2d77fe3b (diff) | |
parent | 5248ca01ee107220bf786f9e0b368206ac1facb4 (diff) |
Merge commit 'ooo/OOO330_m13'
Conflicts:
vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx
Diffstat (limited to 'vcl')
-rw-r--r-- | vcl/inc/vcl/svdata.hxx | 4 | ||||
-rw-r--r-- | vcl/source/app/svdata.cxx | 1 | ||||
-rw-r--r-- | vcl/source/control/spinfld.cxx | 5 | ||||
-rw-r--r-- | vcl/source/window/brdwin.cxx | 6 | ||||
-rw-r--r-- | vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx | 4 |
5 files changed, 14 insertions, 6 deletions
diff --git a/vcl/inc/vcl/svdata.hxx b/vcl/inc/vcl/svdata.hxx index 8b180183a9b3..3229b6f1654d 100644 --- a/vcl/inc/vcl/svdata.hxx +++ b/vcl/inc/vcl/svdata.hxx @@ -315,6 +315,10 @@ struct ImplSVNWFData // window background before drawing the native // checkbox bool mbScrollbarJumpPage; // true for "jump to here" behavior + bool mbCanDrawWidgetAnySize; // set to true currently on gtk + // signals that widgets can be drawn in any size and + // brdwin.cxx ImplSmallBorderWindowView::DrawWindow + // should not do GetNativeControlRegion }; diff --git a/vcl/source/app/svdata.cxx b/vcl/source/app/svdata.cxx index 9fa919802728..db166af1b295 100644 --- a/vcl/source/app/svdata.cxx +++ b/vcl/source/app/svdata.cxx @@ -109,7 +109,6 @@ void ImplInitSVData() // init global instance data memset( pImplSVData, 0, sizeof( ImplSVData ) ); pImplSVData->maHelpData.mbAutoHelpId = sal_True; - pImplSVData->maHelpData.mbAutoHelpId = sal_True; pImplSVData->maNWFData.maMenuBarHighlightTextColor = Color( COL_TRANSPARENT ); // find out whether we are running in the testtool diff --git a/vcl/source/control/spinfld.cxx b/vcl/source/control/spinfld.cxx index a85367326004..1124819af8ab 100644 --- a/vcl/source/control/spinfld.cxx +++ b/vcl/source/control/spinfld.cxx @@ -115,8 +115,9 @@ BOOL ImplDrawNativeSpinfield( Window *pWin, const SpinbuttonValue& rSpinbuttonVa Size aSize( pBorder->GetOutputSizePixel() ); // the size of the border window, i.e., the whole control Rectangle aBound, aContent; Rectangle aNatRgn( aPt, aSize ); - if( pBorder->GetNativeControlRegion(CTRL_SPINBOX, PART_ENTIRE_CONTROL, - aNatRgn, 0, rSpinbuttonValue, rtl::OUString(), aBound, aContent) ) + if( ! ImplGetSVData()->maNWFData.mbCanDrawWidgetAnySize && + pBorder->GetNativeControlRegion( CTRL_SPINBOX, PART_ENTIRE_CONTROL, + aNatRgn, 0, rSpinbuttonValue, rtl::OUString(), aBound, aContent) ) { aSize = aContent.GetSize(); } diff --git a/vcl/source/window/brdwin.cxx b/vcl/source/window/brdwin.cxx index 7ee62467bfa5..ebb63f07b11b 100644 --- a/vcl/source/window/brdwin.cxx +++ b/vcl/source/window/brdwin.cxx @@ -1347,8 +1347,10 @@ void ImplSmallBorderWindowView::DrawWindow( USHORT nDrawFlags, OutputDevice*, co Rectangle aBoundingRgn( aPoint, Size( mnWidth, mnHeight ) ); Rectangle aContentRgn( aCtrlRegion ); - if(pWin->GetNativeControlRegion( aCtrlType, aCtrlPart, aCtrlRegion, - nState, aControlValue, rtl::OUString(), aBoundingRgn, aContentRgn )) + if( ! ImplGetSVData()->maNWFData.mbCanDrawWidgetAnySize && + pWin->GetNativeControlRegion( aCtrlType, aCtrlPart, aCtrlRegion, + nState, aControlValue, rtl::OUString(), + aBoundingRgn, aContentRgn )) { aCtrlRegion=aContentRgn; } diff --git a/vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx b/vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx index 423e254aed6a..b307f955cc2a 100644 --- a/vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx +++ b/vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx @@ -412,12 +412,14 @@ void GtkData::initNWF( void ) // open first menu on F10 pSVData->maNWFData.mbOpenMenuOnF10 = true; + // omit GetNativeControl while painting (see brdwin.cxx) + pSVData->maNWFData.mbCanDrawWidgetAnySize = true; + int nScreens = GetX11SalData()->GetDisplay()->GetScreenCount(); gWidgetData = std::vector<NWFWidgetData>( nScreens ); for( int i = 0; i < nScreens; i++ ) gWidgetData[i].gNWPixmapCacheList = new NWPixmapCacheList; - if( SalGetDesktopEnvironment().equalsAscii( "KDE" ) ) { // #i97196# ensure a widget exists and the style engine was loaded |