Issue 101169

Summary: word / character wise effects broken
Product: Impress Reporter: andreschnabel <andre.schnabel>
Component: viewingAssignee: wolframgarten
Status: CLOSED FIXED QA Contact: issues@graphics <issues>
Severity: Trivial    
Priority: P3 CC: Armin.Le.Grand, clippka, issues, maand, stefan.baltzer, thb, wolframgarten
Version: OOo 3.1 RC1Keywords: regression
Target Milestone: OOo 3.1   
Hardware: All   
OS: All   
Issue Type: DEFECT Latest Confirmation in: ---
Developer Difficulty: ---
Issue Depends on:    
Issue Blocks: 95768    
Attachments:
Description Flags
test case with several effects
none
Diff showing the fix none

Description andreschnabel 2009-04-17 18:16:50 UTC
in OOo 3.1RC1 it is notpossible to have a word or charcter wise object animation
/ effect. The object will alwasy be animated as a whole.

Regression from OOo 3.0.1 in common functionality
Comment 1 andreschnabel 2009-04-17 18:17:34 UTC
Created attachment 61646 [details]
test case with several effects
Comment 2 maand 2009-04-17 18:29:33 UTC
I tested it on openSUSE 10.3-i586, KDE 3.5.10 with OpenOffice.org 3.0.1-de and
OpenOffice.org 3.1rc1-de (RPM) and can confirm the issue. I tried it out with
the animation turning (drehen) and slow. It worked on OOo 3.0.1. If I run the
test on 3.1rc1 the whole sentence was turned.
Comment 3 stefan.baltzer 2009-04-17 19:33:16 UTC
Reassigned to AF.
Comment 4 stefan.baltzer 2009-04-17 19:36:09 UTC
Add CCs.
Comment 5 groucho266 2009-04-20 14:43:03 UTC
Information about the animated text is taken from meta files.  Character and
word boundaries are encoded in comments.  These somehow got lost in the recent
transition to a primitive based drawing layer.

A simple fix for this is this:

Index: source/processor2d/vclmetafileprocessor2d.cxx
===================================================================
--- source/processor2d/vclmetafileprocessor2d.cxx       (revision 270468)
+++ source/processor2d/vclmetafileprocessor2d.cxx       (working copy)
@@ -924,7 +924,7 @@
                                        // restore DrawMode
                                       
mpOutputDevice->SetDrawMode(nOriginalDrawMode);

-                                       if(pTextDecoratedCandidate)
+                    //                                 if(pTextDecoratedCandidate)
                     {
                         // support for TEXT_ MetaFile actions only for
decorated texts
                         if(!mxBreakIterator.is())


With this fix the animation looks largely as before.  However, there is a long
delay between lines.
Comment 6 groucho266 2009-04-21 10:41:47 UTC
The long delay between lines is probably related to too many "words" that are
created with the "fix".  Here is the count of "words" for the first slide:

OOO300m15: 33
DEV300m45: 3
DEV300m45 with "fix": 89

@aw: Please take over.  You know the metafile generation from primitives much
better than I do.
Comment 7 clippka 2009-04-21 11:29:22 UTC
I would suggest to concentrate on the question why pTextDecoratedCandidate is
null....
Comment 8 Armin Le Grand 2009-04-21 11:39:13 UTC
AW: Okay, taking a look. Comparing DEV300 m29 (last version before primitives)
with OOO310 m7. This shows that the preparation is pretty identical, but the
decision for pTextDecoratedCandidate has to be removed (as already stated).
The 2nd issue with the too many generated breaks is quickly found: The code in
drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx uses rTxt =
rTextCandidate.getText() and rTxt.getLength() for the BreakIterator looping and
processing. This is generally wrong, since the TextSimplePortionPrimitive2D
works with String, Position and Length parameters; thus currently e.g. for a
text portion with start at 50 and length of 30, the whole string was tagged
again and again for each single portion. Corrected, that, works as expected.
Tesing a little more...
Comment 9 Armin Le Grand 2009-04-21 11:46:32 UTC
Created attachment 61702 [details]
Diff showing the fix
Comment 10 Armin Le Grand 2009-04-21 11:49:31 UTC
AW: Looks good, compared BugDoc animation completely with old behaviour, looks
identical now. Attached the fix.
It's not a dangerous one, it's very locally bounded in
drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx and only used for
this MetaFile tag generation (one advantage of modular architectures with
primitives :-)).
Comment 11 groucho266 2009-04-21 12:47:46 UTC
I can confirm that the fix restores the original behavior.
Comment 12 Armin Le Grand 2009-04-21 12:59:16 UTC
AW: Changing target, adding to CWS aw072, targeted for OOo 3.1...
Comment 13 Armin Le Grand 2009-04-21 16:50:37 UTC
AW: Checked in, done.
Comment 14 Armin Le Grand 2009-04-21 17:14:48 UTC
AW->WG: Please verify. To do so, use the BugDoc. When starting the presentation,
word/character wise will work now as in OOo 3.0.
Comment 15 wolframgarten 2009-04-22 07:49:36 UTC
Verified in CWS under Linux and Windows XP.
Comment 16 wolframgarten 2009-04-29 14:11:09 UTC
Tested in master m11. Closed.