Closed Bug 1016330 Opened 6 years ago Closed 5 years ago

[css coverage] make it work with B2G

Categories

(DevTools :: General, defect)

x86_64
All
defect
Not set

Tracking

(Not tracked)

RESOLVED FIXED
Firefox 32

People

(Reporter: paul, Assigned: jwalker)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

I'll use this bug to tack issues with css coverage and B2G
Some rules are considered as used when they're not. For example: http://i.imgur.com/kFwydII.png
A querySelectorAll of the 2nd rule doesn't return any element in any loaded document.
Kill reference to this._tabActor.browser. This might create issues with sub documents ("load" is sent to browser even for inner documents. It's not the case with tabActor.window).
prettifyCSS needs to be used client side or moved at the toolkit level.
Depends on: 975522
Move the call to makeRemote to DeveloperToolbar.jsm
http://mxr.mozilla.org/mozilla-central/source/toolkit/devtools/server/actors/csscoverage.js#706

We need to test first there's a cssusage actor. A toolbox might be debugging gecko < 32.
Exception when debugging B2G:

Full message: TypeError: this.conn.allocID is not a function
See https://developer.mozilla.org/Mozilla/JavaScript_code_modules/Promise.jsm/Promise
Full stack: Pool<.manage@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/protocol.js:726:7
UsageReportFront<.initialize@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/csscoverage.js:692:5
constructor@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///home/paul/.mozilla/firefox/tf5iw6v8.dev/extensions/appmanagerlauncher@paulrouget.com.xpi!/bootstrap.js -> resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/core/heritage.js:145:23
exports.getUsage/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/csscoverage.js:765:7
Handler.prototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:863:11
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:742:7
(In reply to Joe Walker [:jwalker] from comment #4)
> Move the call to makeRemote to DeveloperToolbar.jsm

I'm not doing this here because the toolbar works with multiple targets (i.e the target changes whenever a new tab is shown) and there's a nasty clash of events and promises involved in having the current target be always-remoted.

(Dear Future-Joe: We (by which I mean you) can call target.makeRemote on DeveloperToolbar.show(), and on handleEvent/TabSelect or handleEvent/load, but how do we be sure that keyDown in the input element happens only after that call to makeRemote completes? The obvious answer is a shared promise, but the input element handling is part of GCLI so you need to pass in some sort of a makeRemotePromiseContainer thing to createDisplay(). Ug. Have fun.)
Assignee: nobody → jwalker
Status: NEW → ASSIGNED
Attachment #8435735 - Flags: review?(paul)
Attachment #8435735 - Flags: review?(paul) → review+
https://hg.mozilla.org/mozilla-central/rev/776897298340
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 32
(In reply to Paul Rouget [:paul] (slow to respond. Ping me on IRC) from comment #2)
> Kill reference to this._tabActor.browser. This might create issues with sub
> documents ("load" is sent to browser even for inner documents. It's not the
> case with tabActor.window).

Bug 1022587

(In reply to Paul Rouget [:paul] (slow to respond. Ping me on IRC) from comment #1)
> Some rules are considered as used when they're not. For example:
> http://i.imgur.com/kFwydII.png
> A querySelectorAll of the 2nd rule doesn't return any element in any loaded
> document.

Bug 1016285
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Status: REOPENED → RESOLVED
Closed: 5 years ago5 years ago
Resolution: --- → FIXED
Product: Firefox → DevTools
You need to log in before you can comment on or make changes to this bug.