Bug 48711 - Web Inspector: event listener breakpoints are not preserved upon navigation / refresh.
Summary: Web Inspector: event listener breakpoints are not preserved upon navigation /...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Web Inspector (Deprecated) (show other bugs)
Version: 528+ (Nightly build)
Hardware: All All
: P2 Normal
Assignee: Pavel Podivilov
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-10-30 03:45 PDT by Pavel Feldman
Modified: 2010-11-02 03:44 PDT (History)
11 users (show)

See Also:


Attachments
Patch. (26.28 KB, patch)
2010-11-01 09:10 PDT, Pavel Podivilov
pfeldman: review-
Details | Formatted Diff | Diff
Patch. (44.95 KB, patch)
2010-11-02 02:52 PDT, Pavel Podivilov
pfeldman: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Pavel Feldman 2010-10-30 03:45:22 PDT
Also, checkboxes should be smaller (as in regular breakpoints).
Comment 1 Pavel Feldman 2010-10-30 03:53:04 PDT
Also, neither DOM nor XHR breakpoints are preserved.
Comment 2 Pavel Podivilov 2010-11-01 09:10:50 PDT
Created attachment 72513 [details]
Patch.
Comment 3 Pavel Feldman 2010-11-01 10:51:32 PDT
Comment on attachment 72513 [details]
Patch.

View in context: https://bugs.webkit.org/attachment.cgi?id=72513&action=review

> WebCore/inspector/front-end/BreakpointManager.js:259
> +        for (var i = 0; i < breakpoints.length; ++i) {

breakpoints can be non-array / empty.

> WebCore/inspector/front-end/BreakpointManager.js:261
> +                this.createEventListenerBreakpoint(breakpoints[i].condition.eventName);

Breakpoint can be of wrong structure here as well.

> WebCore/inspector/front-end/BreakpointManager.js:272
> +        for (var i = 0; i < breakpoints.length; ++i) {

ditto

> WebCore/inspector/front-end/BreakpointManager.js:283
> +        function didPushNodeByPathToFrontend(path, nodeId)

We usually put local functions above the usage.

> WebCore/inspector/front-end/Settings.js:68
> +    this.installProjectSetting("nativeBreakpoints", {});

{} -> []

> WebCore/inspector/front-end/inspector.js:1570
> +    this.applicationSettings.inspectedURLChanged(url);

It is strange that project-related settings that are affected by the URL change are accessed via applicationSettings object.
Comment 4 Pavel Podivilov 2010-11-02 02:52:52 PDT
Created attachment 72642 [details]
Patch.

All comments addressed.
Comment 5 Pavel Podivilov 2010-11-02 03:44:11 PDT
Committed r71109: <http://trac.webkit.org/changeset/71109>