warn when nsIDOMCSSStyleDeclaration::GetPropertyCSSValue is called

RESOLVED FIXED in Firefox 61

Status

()

defect
P3
normal
RESOLVED FIXED
11 years ago
Last year

People

(Reporter: dbaron, Assigned: dbaron)

Tracking

({site-compat})

Trunk
mozilla61
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox61 fixed)

Details

Attachments

(2 attachments)

I think we should have a console warning when any of the implemementations of nsIDOMCSSStyleDeclaration::GetPropertyCSSValue are called, since this is an API that we're considering eliminating (I think we're the only implementor, and we implement it only for computed style, at considerable cost in code size).

So, for a start, I think we should add a warning to the error console that a deprecated API is being used, and then see if anybody complains...

Does that seem reasonable?
OS: Linux → All
Priority: -- → P3
Hardware: x86 → All
Assignee: nobody → dbaron
Target Milestone: --- → mozilla1.9.2a1
Posted patch patchSplinter Review
I checked that the warning shows up for the computed style and style attribute cases, and that it doesn't in those cases for getPropertyValue.
Attachment #358015 - Flags: superreview?(bzbarsky)
Attachment #358015 - Flags: review?(bzbarsky)
I wonder how we might write a test for this.  I know in xpcshell land, we can easily register a JS test component (see do_load_module in tools/test-harness/xpcshell-simple/head.js ), and that console listener components can register themselves with the console service.  But getComputedStyle requires a window (nsIDOMViewCSS), and I'm not sure if the style property of elements does.

So it might require a mochitest to test this, and I don't know if mochitests can register new components.
> I wonder how we might write a test for this.

Mochitest.  You don't need a "js component" to register a console listener.  Heck, there are existing mochitests that do it that you should be able to crib from.
Comment on attachment 358015 [details] [diff] [review]
patch

This looks ok.  Some people actually use this API to get things like sizes in em, but ideally we'd implement a better CSSOM API they could use before this goes away completely.
Attachment #358015 - Flags: superreview?(bzbarsky)
Attachment #358015 - Flags: superreview+
Attachment #358015 - Flags: review?(bzbarsky)
Attachment #358015 - Flags: review+
Does the patch cause lots of warnings on some pages? Perhaps one warning per
document? (Similar to getBoxObjectFor warning)
http://hg.mozilla.org/mozilla-central/rev/eec3076f3bab

Where does the getBoxObjectFor warning store the state that it's given the warning already?  In the property table or something?

(My understanding is that we're the only browser implementing this API, so I'm not expecting to see a lot of users in the real world.)
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
boxObjects are also gecko only.
For the boxObject warning there is a flag in nsDocument.
Depends on: 475311
I backed this out because of bug 475311:

http://hg.mozilla.org/mozilla-central/rev/674246a64ed2
http://hg.mozilla.org/mozilla-central/rev/e2a26d16bf06
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Target Milestone: mozilla1.9.2a1 → ---
QA Contact: general → style-system
We should probably use a deprecated operation thing for this now that we have them.  That will give us telemetry in addition to the deprecation warning.
Comment hidden (mozreview-request)

Comment 12

Last year
mozreview-review
Comment on attachment 8958798 [details]
Bug 474655: Add a deprecation warning + use counter to GetPropertyCSSValue.

https://reviewboard.mozilla.org/r/227708/#review233570
Attachment #8958798 - Flags: review?(bobbyholley) → review+

Comment 13

Last year
Pushed by ecoal95@gmail.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/151e6dc2df8e
Add a deprecation warning + use counter to GetPropertyCSSValue. r=bholley
https://hg.mozilla.org/mozilla-central/rev/151e6dc2df8e
Status: REOPENED → RESOLVED
Closed: 11 years agoLast year
Resolution: --- → FIXED
Target Milestone: --- → mozilla61
You need to log in before you can comment on or make changes to this bug.