From 093bfb82967719e95a8753f81fce0bee1bb1a0a5 Mon Sep 17 00:00:00 2001 From: Timothy Pearson Date: Mon, 10 Sep 2012 09:23:43 -0500 Subject: Use high quality uuid_generate on Linux instead of PRNG --- src/tools/quuid.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src') diff --git a/src/tools/quuid.cpp b/src/tools/quuid.cpp index ee663d7..c745613 100644 --- a/src/tools/quuid.cpp +++ b/src/tools/quuid.cpp @@ -389,6 +389,18 @@ QUuid QUuid::createUuid() return result; } #else // !Q_OS_WIN32 +#if defined(Q_OS_LINUX) +#include +QUuid QUuid::createUuid() +{ + uuid_t raw_uuid; + char uuid_string[37]; + + uuid_generate(raw_uuid); + uuid_unparse(raw_uuid, uuid_string); + return QUuid(uuid_string); +} +#else // !Q_OS_LINUX #include "qdatetime.h" #include "stdlib.h" // For srand/rand QUuid QUuid::createUuid() @@ -417,5 +429,6 @@ QUuid QUuid::createUuid() return result; } +#endif // !Q_OS_LINUX #endif // !Q_OS_WIN32 -- cgit v1.2.3 From be8d88eef8e7ab7c6bbfb6d553b34b4a9a3a7755 Mon Sep 17 00:00:00 2001 From: Timothy Pearson Date: Thu, 13 Sep 2012 09:51:31 -0500 Subject: 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(-) (limited to 'src') 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; } } -- cgit v1.2.3 From 1faf4cf70f8ed79f83bb4e8c1ccbb2c52b1aec44 Mon Sep 17 00:00:00 2001 From: Timothy Pearson Date: Thu, 13 Sep 2012 19:46:36 -0500 Subject: Fix focus rectangle drawing on external paint device --- src/kernel/qpainter_x11.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src') diff --git a/src/kernel/qpainter_x11.cpp b/src/kernel/qpainter_x11.cpp index fd6979b..c1e4e07 100644 --- a/src/kernel/qpainter_x11.cpp +++ b/src/kernel/qpainter_x11.cpp @@ -1860,8 +1860,8 @@ void QPainter::drawWinFocusRect( int x, int y, int w, int h, QPDevCmdParam param[1]; QRect r( x, y, w-1, h-1 ); QBrush noBrush; + setBrush( noBrush ); param[0].rect = &r; - param[0].brush = &noBrush; if ( !pdev->cmd( QPaintDevice::PdcDrawRect, this, param ) || !hd) { setRasterOp( old_rop ); setPen( old_pen ); -- cgit v1.2.3