Issue 116318

Summary: axial gradient has wrong border in presentation mode
Product: Impress Reporter: Regina Henschel <rb.henschel>
Component: viewingAssignee: wolframgarten
Status: CLOSED FIXED QA Contact: issues@graphics <issues>
Severity: Trivial    
Priority: P3 CC: issues, mdxonefour, vitriol_vitriol
Version: DEV300m77Keywords: regression
Target Milestone: OOo 3.3   
Hardware: PC   
OS: All   
Issue Type: DEFECT Latest Confirmation in: ---
Developer Difficulty: ---
Issue Depends on:    
Issue Blocks: 111112    
Attachments:
Description Flags
Palette with some gradients for testing
none
Rectangles with axial gradients to compare edit and presentation mode none

Description Regina Henschel 2011-01-05 21:20:40 UTC
Start Impress and load the attached palette and then the file.
The palette contains some axial gradients, so that you can watch the display of
some borders.
The file contains a sreenshot of the rectangles in edit mode.
Go to presentation mode and compare the displayed rectangles with the
screenshot. Notice, that the axial gradients have wrong borders. It seems as if
the border is not added symmetrically as it should be for an axial gradient.

DEV300m76 is OK. I see the bug first in DEV300m77 and unfortunately in OOo33RC8 too.
Comment 1 Regina Henschel 2011-01-05 21:21:44 UTC
Created attachment 75474 [details]
Palette with some gradients for testing
Comment 2 Regina Henschel 2011-01-05 21:22:57 UTC
Created attachment 75475 [details]
Rectangles with axial gradients to compare edit and presentation mode
Comment 3 parity 2011-01-06 09:51:33 UTC
I can confirm this bug. Happens in LibreOffice 3.3 RC2, too.
Comment 4 wolframgarten 2011-01-06 10:04:21 UTC
Reproducible in DEV300_m96 and OOO330_m18. Reassigned.
Comment 5 mdxonefour 2011-01-13 15:01:19 UTC
MD: adjusting target, keyword, owner
Comment 6 groucho266 2011-01-13 15:37:18 UTC
This issue has been introduced by issue 105937 in cws thbfixes10 (which was
integrated into DEV300 m77): a simple mix-up of method names.  In
cppcanvas/source/mtfrenderer/implrenderer.cxx the method
ImplRenderer::createGradientAction called
basegfx::tools::createLinearODFGradientInfo instead of
basegfx::tools::createAxialODFGradientInfo to paint axial gradients.

The border value had to be adapted for the new method: the area covered by the
actual gradient (1 minus the border) was doubled to counteract the compression
caused by painting (in effect) two linear gradients side-by-side.

Modified file:
    cppcanvas/source/mtfrenderer/implrenderer.cxx
Comment 7 philipp.lohmann 2011-01-13 15:41:12 UTC
patch reviewed and endorsed
Comment 8 niklas.nebel 2011-01-13 17:45:28 UTC
reassigning to QA for verification
Comment 9 wolframgarten 2011-01-14 10:01:40 UTC
Verified  in CWS.