[ooo-build-commit] .: Branch 'ooo-build-3-2-1' - 2 commits - patches/dev300 src/easter
Petr Mladek
pmladek at kemper.freedesktop.org
Mon May 24 05:39:31 PDT 2010
patches/dev300/apply | 3
patches/dev300/kde4-statusbar-redrawing.diff | 85 +++++++++++++++++++++++++++
src/easter/weimingkhoo.png |binary
3 files changed, 88 insertions(+)
New commits:
commit 1c62cbd803f7aa17f392d645be54362666234b62
Author: Petr Mladek <pmladek at suse.cz>
Date: Mon May 24 14:38:28 2010 +0200
Add Wei Ming Khoo to the Go-oo team
* src/easter/weimingkhoo.png: add
diff --git a/src/easter/weimingkhoo.png b/src/easter/weimingkhoo.png
new file mode 100644
index 0000000..7f6533c
Binary files /dev/null and b/src/easter/weimingkhoo.png differ
commit 3a8e3d899865cf9a18af36d5055761e4913b366a
Author: Petr Mladek <pmladek at suse.cz>
Date: Mon May 24 14:03:10 2010 +0200
redraw the status bar when needed in KDE4 (bnc#567886, i#107945)
* patches/dev300/kde4-statusbar-redrawing.diff:
* patches/dev300/apply: backport from CWS vcl109; fix by pl
diff --git a/patches/dev300/apply b/patches/dev300/apply
index ca5db8c..113a1e9 100644
--- a/patches/dev300/apply
+++ b/patches/dev300/apply
@@ -2338,6 +2338,9 @@ qt-moc-detect.diff
# Fix frame border calculation
kde4-border-frame.diff, i#111464, jholesov
+# redraw the status bar when needed; backport from CWS vcl109; fix by pl
+kde4-statusbar-redrawing.diff, bnc#567886, i#107945, pmladek
+
[ KDE4Experimental ]
# Not yet ported to co-exist with the KDE3 stuff
kde4-kab.diff
diff --git a/patches/dev300/kde4-statusbar-redrawing.diff b/patches/dev300/kde4-statusbar-redrawing.diff
new file mode 100644
index 0000000..2a91ff7
--- /dev/null
+++ b/patches/dev300/kde4-statusbar-redrawing.diff
@@ -0,0 +1,85 @@
+--- vcl/unx/kde4/KDESalGraphics.cxx.old 2010-05-14 20:00:31.000000000 +0200
++++ vcl/unx/kde4/KDESalGraphics.cxx 2010-05-24 13:37:29.000000000 +0200
+@@ -228,6 +228,8 @@ BOOL KDESalGraphics::drawNativeControl(
+ QImage::Format_ARGB32);
+ m_image->fill(KApplication::palette().color(QPalette::Window).rgb());
+ }
++
++ XLIB_Region pTempClipRegion = 0;
+
+ if (type == CTRL_PUSHBUTTON)
+ {
+@@ -451,6 +453,19 @@ BOOL KDESalGraphics::drawNativeControl(
+ {
+ lcl_drawFrame(QStyle::PE_Frame, m_image,
+ vclStateValue2StateFlag(nControlState, value));
++
++ int size = kapp->style()->pixelMetric(QStyle::PM_LayoutLeftMargin);
++ pTempClipRegion = XCreateRegion();
++ XRectangle xRect = { widgetRect.left(), widgetRect.top(), widgetRect.width(), widgetRect.height() };
++ XUnionRectWithRegion( &xRect, pTempClipRegion, pTempClipRegion );
++ XLIB_Region pSubtract = XCreateRegion();
++ xRect.x += size;
++ xRect.y += size;
++ xRect.width -= 2* size;
++ xRect.height -= 2*size;
++ XUnionRectWithRegion( &xRect, pSubtract, pSubtract );
++ XSubtractRegion( pTempClipRegion, pSubtract, pTempClipRegion );
++ XDestroyRegion( pSubtract );
+ }
+ else if (type == CTRL_FIXEDBORDER)
+ {
+@@ -472,24 +487,42 @@ BOOL KDESalGraphics::drawNativeControl(
+ }
+ else
+ {
+- return false;
++ returnVal = false;
+ }
+
+ if (returnVal)
+ {
+- if( SelectFont() == 0 )
+- return false;
+-
+- QPixmap pixmap = QPixmap::fromImage(*m_image, Qt::ColorOnly | Qt::OrderedDither | Qt::OrderedAlphaDither);
+- X11SalGraphics::CopyScreenArea( GetXDisplay(),
+- pixmap.handle(), pixmap.x11Info().screen(), pixmap.x11Info().depth(),
+- GetDrawable(), GetScreenNumber(), GetVisual().GetDepth(),
+- SelectFont(), 0, 0, widgetRect.width(), widgetRect.height(), widgetRect.left(), widgetRect.top());
++ GC gc = SelectFont();
+
+- return true;
++ if( gc )
++ {
++ if( pTempClipRegion )
++ {
++ if( pClipRegion_ )
++ XIntersectRegion( pTempClipRegion, pClipRegion_, pTempClipRegion );
++ XSetRegion( GetXDisplay(), gc, pTempClipRegion );
++ }
++ QPixmap pixmap = QPixmap::fromImage(*m_image, Qt::ColorOnly | Qt::OrderedDither | Qt::OrderedAlphaDither);
++ X11SalGraphics::CopyScreenArea( GetXDisplay(),
++ pixmap.handle(), pixmap.x11Info().screen(), pixmap.x11Info().depth(),
++ GetDrawable(), GetScreenNumber(), GetVisual().GetDepth(),
++ gc, 0, 0, widgetRect.width(), widgetRect.height(), widgetRect.left(), widgetRect.top());
++
++ if( pTempClipRegion )
++ {
++ if( pClipRegion_ )
++ XSetRegion( GetXDisplay(), gc, pClipRegion_ );
++ else
++ XSetClipMask( GetXDisplay(), gc, None );
++ }
++ }
++ else
++ returnVal = false;
+ }
++ if( pTempClipRegion )
++ XDestroyRegion( pTempClipRegion );
+
+- return false;
++ return returnVal;
+ }
+
+ BOOL KDESalGraphics::getNativeControlRegion( ControlType type, ControlPart part,
More information about the ooo-build-commit
mailing list