From c54819463a047a4c8997b2cdc428751c06d0b89b Mon Sep 17 00:00:00 2001 From: cxl Date: Fri, 22 Jul 2011 14:43:21 +0000 Subject: [PATCH] CtrlCore: Fix in MakeDragImage (fixed premultiplied alpha issue) git-svn-id: svn://ultimatepp.org/upp/trunk@3700 f0d560ea-af0d-0410-9eb7-867de7ffcac7 --- uppsrc/CtrlCore/CtrlClip.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/uppsrc/CtrlCore/CtrlClip.cpp b/uppsrc/CtrlCore/CtrlClip.cpp index 4f0fc3c34..9c25484e8 100644 --- a/uppsrc/CtrlCore/CtrlClip.cpp +++ b/uppsrc/CtrlCore/CtrlClip.cpp @@ -138,6 +138,7 @@ Image MakeDragImage(const Image& arrow, Image sample) memset(~b, 0, sizeof(RGBA) * b.GetLength()); Size ssz = sample.GetSize(); Over(b, Point(2, 22), sample, sample.GetSize()); + Unmultiply(b); for(int y = 20; y < 96; y++) { RGBA *s = b[y]; RGBA *e = s + 96; @@ -185,6 +186,7 @@ Image MakeDragImage(const Image& arrow, Image sample) s += b.GetWidth(); Swap(c1, c2); } + Premultiply(b); GuiPlatformAdjustDragImage(b); Over(b, Point(0, 0), arrow, arrow.GetSize()); }