diff -ru vcl.orig/unx/gtk/gdi/salnativewidgets-gtk.cxx vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx --- vcl.orig/unx/gtk/gdi/salnativewidgets-gtk.cxx 2009-05-01 13:20:35.000000000 +0100 +++ vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx 2009-05-01 14:28:12.000000000 +0100 @@ -407,6 +407,9 @@ // open first menu on F10 pSVData->maNWFData.mbOpenMenuOnF10 = true; + + // Enable focus rectangles + pSVData->maNWFData.mbNoFocusRects = true; int nScreens = GetX11SalData()->GetDisplay()->GetScreenCount(); gWidgetData = std::vector( nScreens ); @@ -1087,6 +1090,17 @@ rNativeContentRegion = Region( aIndicatorRect ); returnVal = TRUE; } + if ( + (nType==CTRL_EDITBOX || nType == CTRL_MULTILINE_EDITBOX) || + ((nType == CTRL_COMBOBOX || nType == CTRL_LISTBOX) && (nPart == PART_ENTIRE_CONTROL)) + ) + { + rNativeBoundingRegion = NWGetEditBoxPixmapRect( m_nScreen, nType, nPart, rControlRegion.GetBoundRect(), + nState, aValue, rControlHandle, rCaption ); + rNativeContentRegion = rControlRegion; + + returnVal = TRUE; + } return( returnVal ); }