From be8d88eef8e7ab7c6bbfb6d553b34b4a9a3a7755 Mon Sep 17 00:00:00 2001 From: Timothy Pearson Date: Thu, 13 Sep 2012 09:51:31 -0500 Subject: [PATCH] Fix focus rectangle fill when brush is set on call to focus rectangle paint method --- src/kernel/qpainter_x11.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/kernel/qpainter_x11.cpp b/src/kernel/qpainter_x11.cpp index 126c0d6..fd6979b 100644 --- a/src/kernel/qpainter_x11.cpp +++ b/src/kernel/qpainter_x11.cpp @@ -1839,7 +1839,8 @@ void QPainter::drawWinFocusRect( int x, int y, int w, int h, static char winfocus_line[] = { 1, 1 }; QPen old_pen = cpen; - RasterOp old_rop = (RasterOp)rop; + QBrush old_brush = cbrush; + RasterOp old_rop = (RasterOp)rop; if ( xorPaint ) { if ( QColor::numBitPlanes() <= 8 ) @@ -1858,10 +1859,13 @@ void QPainter::drawWinFocusRect( int x, int y, int w, int h, if ( testf(ExtDev) ) { QPDevCmdParam param[1]; QRect r( x, y, w-1, h-1 ); + QBrush noBrush; param[0].rect = &r; + param[0].brush = &noBrush; if ( !pdev->cmd( QPaintDevice::PdcDrawRect, this, param ) || !hd) { setRasterOp( old_rop ); setPen( old_pen ); + setBrush( old_brush ); return; } }