Closed Bug 1575186 Opened 6 years ago Closed 6 years ago

Shape Path Editor does not work for circle basic shape without coordinates

Categories

(DevTools :: Inspector: Rules, defect, P1)

69 Branch
defect

Tracking

(firefox-esr60 unaffected, firefox-esr68 unaffected, firefox68 unaffected, firefox69 fixed, firefox70 fixed)

RESOLVED FIXED
Firefox 70
Tracking Status
firefox-esr60 --- unaffected
firefox-esr68 --- unaffected
firefox68 --- unaffected
firefox69 --- fixed
firefox70 --- fixed

People

(Reporter: rcaliman, Assigned: rcaliman)

References

(Blocks 1 open bug, Regression)

Details

(Keywords: regression)

Attachments

(2 files)

If the circle() basic shape is used without coordinates, the Shape Path Editor fails to run and errors are thrown in the browser console.

First identified on the profile pictures of people listed on http://thewebahead.net/

Steps to reproduce:

  • Run this in the address bar of a new tab:
data:text/html,<style>div {clip-path: circle(); width: 300px; height: 300px; background: black;}</style><div>
  • Open DevTools Inspector and inspect the <div> element
  • In the Rules panel, click the icon to trigger the Shape Path Editor on to the clip-path: circle() declaration.

Expected result
The Shape Path Editor shows up on the page over the black circle and allows the user to edit the shape.

Actual result
The Shape Path Editor does not show up. Errors are thrown in the browser console about missing coords. An infinite loop is triggered without a chance to stop it.

Has STR: --- → yes

Mozregression points to this range of which Bug 1559796 is the likely cause for the regression.

Regressed by: 1559796

:rcaliman, could you try to find a regression range in using for example mozregression?

The patch for Bug 1559796 has changed the computed value for the default circle() basic shape (no coordinates). It now reflects the approach used with default ellipse() basic shape (no coordinates), thus addressing the issue with inconsistency raised in Bug 1521508.

The change means the Shape Path Editor's parsing of circle() and ellipse() need to account for the missing "closest-side" default radius. This patch addresses this need and introduces a test to check whether the Shape Path Editor successfully triggers for basic shapes with default values.

(In reply to Release mgmt bot [:sylvestre / :calixte / :marco for bugbug] from comment #2)

:rcaliman, could you try to find a regression range in using for example mozregression?

See Comment #1. Found Bug 1559796 to be the regression.

Pushed by rcaliman@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/79741214531f Ensure Shape Path Editor can be toggled for basic shapes with default values. r=pbro
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 70

Please nominate this for Beta approval when you get a chance. We have one beta left before RC next week.

Flags: needinfo?(rcaliman)
Flags: in-testsuite+

Comment on attachment 9086650 [details]
Bug 1575186 - Ensure Shape Path Editor can be toggled for basic shapes with default values. r=pbro

Beta/Release Uplift Approval Request

  • User impact if declined: Developers are unable to use the Shape Path Editor with circle() paths due to a breaking change that occurred a while ago at the platform level in Bug 1559796.
  • Is this code covered by automated tests?: Yes
  • Has the fix been verified in Nightly?: Yes
  • Needs manual test from QE?: No
  • If yes, steps to reproduce:
  • List of other uplifts needed: None
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): Low risk: fixes a regression with parsing default circle() shape values in the Shape Path editor. No other shape values or functionality changed.
    Introduces an automated test to catch any failures like these in the future.
  • String changes made/needed:
Flags: needinfo?(rcaliman)
Attachment #9086650 - Flags: approval-mozilla-beta?

Comment on attachment 9086650 [details]
Bug 1575186 - Ensure Shape Path Editor can be toggled for basic shapes with default values. r=pbro

Fixes a devtools regression in Fx69. Approved for 69.0b16.

Attachment #9086650 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
Has Regression Range: --- → yes
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: