Issue 105856 - Selection behaviour changed for text objects
Summary: Selection behaviour changed for text objects
Alias: None
Product: Draw
Classification: Application
Component: ui (show other issues)
Version: DEV300m60
Hardware: All All
: P3 Trivial (vote)
Target Milestone: OOo 3.2
Assignee: wolframgarten
QA Contact: issues@graphics
Keywords: regression
Depends on:
Blocks: 99999
  Show dependency tree
Reported: 2009-10-13 12:27 UTC by clippka
Modified: 2017-05-20 10:28 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---


Note You need to log in before you can comment on or make changes to this issue.
Description clippka 2009-10-13 12:27:30 UTC
- create a new presentation document
- insert a rectangle in the middle of the slide
- select the "title, text" layout
- click on the rectangle

OOo 3.1.1 behavior was that the rectangle gets selected
DEV300m60 makes it impossible to select the rectangle with the mouse
Comment 1 clippka 2009-10-13 12:30:18 UTC
adding regression keywoard and proposed as a OOo 3.2 release blocker on the
releases mailing list
Comment 2 Armin Le Grand 2009-10-13 12:34:12 UTC
AW: Indeed this is a problem and a regression. For PresObj's (empty ones; adding
text makes it work) there must have been an exception in the old HitTest
handling. It may have to do with the callback and replacement mechanism at
primitive creation. Taking a look...
Comment 3 Armin Le Grand 2009-10-20 12:27:00 UTC
AW: Re-checked  the HitTest changes in #i103709# which lead to this situation.
In fact, the old HitTest for TextFrames was not only dependent from bTextFrame,
but also from IsPickThroughTransparentTextFrames. This seems to have been the
real reason for changed HitTest in SW compared to Draw/Impress. Checking...
Comment 4 Armin Le Grand 2009-10-20 12:42:59 UTC
AW: Code from DEV300 m29 used:

	FASTBOOL bPickThrough=pModel!=NULL && pModel->IsPickThroughTransparentTextFrames();
	if (bTextFrame && !bPickThrough) bFilled=TRUE;
Comment 5 Armin Le Grand 2009-10-20 12:58:38 UTC
AW: Works as expected. Checked in, done.
Comment 6 Armin Le Grand 2009-10-22 10:55:12 UTC
AW: Checked in CWS build, works well.
AW->WG: Please verify in CWS ooo32gsl02
Comment 7 wolframgarten 2009-10-26 14:15:51 UTC
Works under Windows but not under Linux.
Comment 8 wolframgarten 2009-10-26 14:16:22 UTC
Comment 9 Armin Le Grand 2009-10-26 16:05:12 UTC
AW: Hmm, strange. IKt works with the Layouts 'Title, Slide', 'Centered Text',
'title, Object' and others. There has to be another difference when Text with
outline is involved. Checking if this was different in old version...
AW: Indeed, it was. I need to debug for this one...
Comment 10 Armin Le Grand 2009-10-26 16:38:07 UTC
AW: Debugged the WIN32 version, it works as expected. Since the HitTest stuff
has NO system-dependent parts, i'll try a svx/sd rebuild on the CWS...
Comment 11 Armin Le Grand 2009-10-26 17:22:49 UTC
AW: Very strange. Have compared the values for GetRectObj().IsTextFrame() and
bPickThroughTransparentTextFrames for EmptyPresObj's, both are true on WIN32 and
linux; they are combined to false (!bPickThroughTransparentTextFrames), so
bForceFillForHitTest in ViewContactOfSdrRectObj is the same for both systems.
This is the defining factor for the HitTest helper creation, so i have no idea
why it works different. Looking further...
Comment 12 Armin Le Grand 2009-10-26 18:51:37 UTC
AW: Found a difference now and a potential error, too: in HitTestProcessor2D,
the usages of getB2DRange at BasePrimitive2D are not checked against being empty
before usage. I just do not know how this could lead to different decisions
under WIN32 and Linux, but it seems to lead to differences. At least the
TextSimplePortionPrimitive2D::getB2DRange uses getTextBoundRect and thus
potentially may deliver different, system-dependent results.
It works when securing the getB2DRange calls in HitTestProcessor2D, so i will do
just that...
Comment 13 Armin Le Grand 2009-10-26 19:47:33 UTC
AW: Checked in, done. All versions (except, building install set)
rebuilt with change. Setting to fixed. Waiting for
Comment 14 Armin Le Grand 2009-10-26 20:20:48 UTC
AW: Okay, is done, too.
Comment 15 Armin Le Grand 2009-10-26 20:21:27 UTC
AW->WG: Please verify.
Comment 16 wolframgarten 2009-10-27 10:29:25 UTC
Verified in CWS.