WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
144231
Web Inspector: Restoring the last selected DOM node fails on reload (DOMAgent: No node with given path found)
https://bugs.webkit.org/show_bug.cgi?id=144231
Summary
Web Inspector: Restoring the last selected DOM node fails on reload (DOMAgent...
Timothy Hatcher
Reported
2015-04-26 11:19:02 PDT
DOMTreeManager.js:109:30: CONSOLE ERROR Error during DOMAgent operation: No node with given path found
Attachments
[Patch] WIP
(3.00 KB, patch)
2015-05-28 12:36 PDT
,
Matt Baker
no flags
Details
Formatted Diff
Diff
[Patch] Proposed Fix
(2.88 KB, patch)
2015-05-29 02:21 PDT
,
Matt Baker
no flags
Details
Formatted Diff
Diff
Show Obsolete
(1)
View All
Add attachment
proposed patch, testcase, etc.
Radar WebKit Bug Importer
Comment 1
2015-04-26 11:19:13 PDT
<
rdar://problem/20702160
>
Matt Baker
Comment 2
2015-05-28 12:36:02 PDT
Regressed in
http://trac.webkit.org/changeset/183816
. Restoring the last selected DOM node works after backing out the DOMTreeContentView changes, but the DOMTreeManager console error still occurs.
Matt Baker
Comment 3
2015-05-28 12:36:48 PDT
Created
attachment 253856
[details]
[Patch] WIP
Timothy Hatcher
Comment 4
2015-05-28 14:34:05 PDT
Comment on
attachment 253856
[details]
[Patch] WIP View in context:
https://bugs.webkit.org/attachment.cgi?id=253856&action=review
> Source/WebInspectorUI/ChangeLog:9 > + Removed _restoreSelectedNodeIsAllowed checks from DOMTreeContentView. The DOMTree is invalidated twice on page > + reload, and the content view was preventing the last selected node from being reselected the second time.
I am trying to remember what the bug I was fixing was when I added this. I think I was trying to prevent a refuter restore from clobbering the Inspect Element element if you inspect from the context menu to open the Inspector. Does that work? Or does it jump from the inspected element to the pervasively selected (restored) element?
> Source/WebInspectorUI/ChangeLog:15 > + (WebInspector.DOMTreeContentView): Deleted. > + (WebInspector.DOMTreeContentView.prototype.selectAndRevealDOMNode): Deleted.
These were not deleted.
Matt Baker
Comment 5
2015-05-28 14:55:01 PDT
Comment on
attachment 253856
[details]
[Patch] WIP View in context:
https://bugs.webkit.org/attachment.cgi?id=253856&action=review
>> Source/WebInspectorUI/ChangeLog:9 >> + reload, and the content view was preventing the last selected node from being reselected the second time. > > I am trying to remember what the bug I was fixing was when I added this. I think I was trying to prevent a refuter restore from clobbering the Inspect Element element if you inspect from the context menu to open the Inspector. Does that work? Or does it jump from the inspected element to the pervasively selected (restored) element?
I'll look into this.
>> Source/WebInspectorUI/ChangeLog:15 >> + (WebInspector.DOMTreeContentView.prototype.selectAndRevealDOMNode): Deleted. > > These were not deleted.
Not sure why the change log was generated that way, I'll clean it up by hand.
Matt Baker
Comment 6
2015-05-28 14:55:03 PDT
Comment on
attachment 253856
[details]
[Patch] WIP View in context:
https://bugs.webkit.org/attachment.cgi?id=253856&action=review
>> Source/WebInspectorUI/ChangeLog:9 >> + reload, and the content view was preventing the last selected node from being reselected the second time. > > I am trying to remember what the bug I was fixing was when I added this. I think I was trying to prevent a refuter restore from clobbering the Inspect Element element if you inspect from the context menu to open the Inspector. Does that work? Or does it jump from the inspected element to the pervasively selected (restored) element?
I'll look into this.
>> Source/WebInspectorUI/ChangeLog:15 >> + (WebInspector.DOMTreeContentView.prototype.selectAndRevealDOMNode): Deleted. > > These were not deleted.
Not sure why the change log was generated that way, I'll clean it up by hand.
Matt Baker
Comment 7
2015-05-28 16:15:00 PDT
Comment on
attachment 253856
[details]
[Patch] WIP View in context:
https://bugs.webkit.org/attachment.cgi?id=253856&action=review
>>>> Source/WebInspectorUI/ChangeLog:9 >>>> + reload, and the content view was preventing the last selected node from being reselected the second time. >>> >>> I am trying to remember what the bug I was fixing was when I added this. I think I was trying to prevent a refuter restore from clobbering the Inspect Element element if you inspect from the context menu to open the Inspector. Does that work? Or does it jump from the inspected element to the pervasively selected (restored) element? >> >> I'll look into this. > > I'll look into this.
I tried the following and wasn't able to reproduce an issue: 1. Inspect Element via content menu 2. Close Inspector 3. Inspect a new element via context menu => Inspector opens, correct node is selected.
Matt Baker
Comment 8
2015-05-28 16:45:03 PDT
The Inspector receives two documentUpdated events from the DOM Agent, and attempts to push the last selected node to the frontend in response to both events. The backend sends the first documentUpdated as soon as the frame's document is set. The DOMTreeManager console error occurs while handling this first event. The second documentUpdated is sent once the document has finished parsing and DOM content has loaded, at which time the node exists and can be pushed to the frontend.
Timothy Hatcher
Comment 9
2015-05-28 18:06:21 PDT
So it sounds like the error is expected in the first update when most of the DOM isn't populated yet. I wonder if we can suppress that error in that case?
Matt Baker
Comment 10
2015-05-29 02:21:31 PDT
Created
attachment 253899
[details]
[Patch] Proposed Fix
WebKit Commit Bot
Comment 11
2015-05-29 08:23:28 PDT
Comment on
attachment 253899
[details]
[Patch] Proposed Fix Rejecting
attachment 253899
[details]
from commit-queue. Failed to run "['/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch', '--status-host=webkit-queues.appspot.com', '--bot-id=webkit-cq-01', 'land-attachment', '--force-clean', '--non-interactive', '--parent-command=commit-queue', 253899, '--port=mac']" exit_code: 1 cwd: /Volumes/Data/EWS/WebKit Last 500 characters of output: ubmit return self.open(self.click(*args, **kwds)) File "/Volumes/Data/EWS/WebKit/Tools/Scripts/webkitpy/thirdparty/autoinstalled/mechanize/_mechanize.py", line 203, in open return self._mech_open(url, data, timeout=timeout) File "/Volumes/Data/EWS/WebKit/Tools/Scripts/webkitpy/thirdparty/autoinstalled/mechanize/_mechanize.py", line 255, in _mech_open raise response webkitpy.thirdparty.autoinstalled.mechanize._response.httperror_seek_wrapper: HTTP Error 500: Internal Server Error Full output:
http://webkit-queues.appspot.com/results/5663146568056832
WebKit Commit Bot
Comment 12
2015-05-29 11:06:12 PDT
Comment on
attachment 253899
[details]
[Patch] Proposed Fix Clearing flags on attachment: 253899 Committed
r184993
: <
http://trac.webkit.org/changeset/184993
>
WebKit Commit Bot
Comment 13
2015-05-29 11:06:19 PDT
All reviewed patches have been landed. Closing bug.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug