trunk: visual bbox of objects clipped with a clone doesn't update when size of the clone's original is changed (rev >= 10618)

Bug #1349018 reported by su_v on 2014-07-26
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Inkscape
Medium
Alvin Penner

Bug Description

The visual bounding box of an object clipped with a clone does not update after the clone's original was edited. The visual part of the clipped object OTOH is correctly updated, thus the selection cue of the visual bbox of the clipped object is out-of-sync.

Steps to reproduce:
1) launch current trunk (default prefs, default new doc, locale: en_US)
2) draw a closed filled path
3) draw another closed filled path
4) clone first path and move the clone on-top of the second path
5) clip the second path with clone
6) select original of clone, change e.g. its width
7) select the clipped object

Expected result:
The selection cue of the visual bbox fits tightly the around the visual part of the clipped object.

Actual result:
The sel cue of the clipped object doesn't update to the changed size of the clip-path (clone), and no longer matches the visual part of the clipped object.

Based on tests with archived builds on OS X 10.7.5:
- not reproduced with stable 0.48.5
- not reproduced with 0.48+devel rev <= 10617
- reproduced with 0.48+devel rev >= 10618
the regression seems to be related to the introduction of bbox caching in r10618. The initial lack of update of the visual bbox of clips was tracked in bug #1005085, later related reports are bug #1322940 and bug #1339305.

Reproduced with r13471 on OS X 10.7.5 (noticed while testing the fix for bug #1339305 in r13470).

Related branches

su_v (suv-lp) on 2014-07-26
description: updated
Alvin Penner (apenner) wrote :

confirmed on Inkscape rev 13470

Changed in inkscape:
status: New → Confirmed
Alvin Penner (apenner) wrote :

a somewhat similar refresh problem can be produced by using only two objects, without the use of a clone. In this case the editing of the shape of the clipping object is done in the XML editor, not done by the mouse.

- draw a rectangle with a lot of width
- draw an overlapping ellipse with a large rx
- select both, perform Object->Clip->Set
- hopefully the clipped object will have a lot of width
- open XML editor, click on the clip path in the defs section
- click on the path beneath the clip path in XML
- click on sodipodi:rx and reduce it significantly
- after clicking on Set, note that the size of the clipped rectangle has reduced but the bbox has not changed
- with the object selected, hit the down arrow on the keyboard and note that the bbox refreshes to the correct size

su_v (suv-lp) on 2014-07-29
Changed in inkscape:
importance: Undecided → Medium
Alvin Penner (apenner) wrote :

fix committed to rev 13491.
I believe this fixes the original bug report.
It does not fix the problem mentioned in comment 2, not sure whether to split this out as a separate bug issue or not.

Alvin Penner (apenner) wrote :

comment 2 has been dealt with by forcing a refresh when clicking on the Set button in the XML editor

committed to rev 13502

Changed in inkscape:
status: Confirmed → Fix Committed
assignee: nobody → Alvin Penner (apenner)
Bryce Harrington (bryce) on 2015-02-23
Changed in inkscape:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers