<html>
    <head>
      <base href="https://bugs.webkit.org/" />
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Web Inspector: Tabs: Conflicts with multiple Formatters per SourceCode"
   href="https://bugs.webkit.org/show_bug.cgi?id=144717#c6">Comment # 6</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Web Inspector: Tabs: Conflicts with multiple Formatters per SourceCode"
   href="https://bugs.webkit.org/show_bug.cgi?id=144717">bug 144717</a>
              from <span class="vcard"><a class="email" href="mailto:dcrousso+webkit&#64;gmail.com" title="Devin Rousso &lt;dcrousso+webkit&#64;gmail.com&gt;"> <span class="fn">Devin Rousso</span></a>
</span></b>
        <pre>Comment on <span class=""><a href="attachment.cgi?id=271128&amp;action=diff" name="attach_271128" title="[PATCH] Proposed Fix">attachment 271128</a> <a href="attachment.cgi?id=271128&amp;action=edit" title="[PATCH] Proposed Fix">[details]</a></span>
[PATCH] Proposed Fix

View in context: <a href="https://bugs.webkit.org/attachment.cgi?id=271128&amp;action=review">https://bugs.webkit.org/attachment.cgi?id=271128&amp;action=review</a>

<span class="quote">&gt; Source/WebInspectorUI/UserInterface/Models/BackForwardEntry.js:133
&gt; +            var position = {scrollTop: element.scrollTop, scrollLeft: element.scrollLeft};</span >

Might as well make this &quot;let&quot; too

<span class="quote">&gt; Source/WebInspectorUI/UserInterface/Views/ContentView.js:44
&gt; +    static existingContentViewForRepresentedObject(representedObject)</span >

NIT: Shouldn't this go under a &quot;// Static&quot; section?

<span class="quote">&gt; Source/WebInspectorUI/UserInterface/Views/ContentView.js:47
&gt; +        return finalRepresentedObject[WebInspector.ContentView.ContentViewForRepresentedObjectSymbol];</span >

It seems like everywhere you call this function asserts that the returned object is truthy (has value).  Maybe move some/all of the asserts above this line and say something along the lines of &quot;Represented Object should have content view&quot; if it is falsy.

<span class="quote">&gt; Source/WebInspectorUI/UserInterface/Views/ContentView.js:50
&gt; +    static closedContentViewForRepresentedObject(representedObject)</span >

Should this be &quot;closeContentViewForRepresentedObject&quot; instead of a past-tense version?

<span class="quote">&gt; Source/WebInspectorUI/UserInterface/Views/ContentView.js:82
&gt; +            if (representedObject.sourceCode instanceof WebInspector.Resource)</span >

NIT: Are you not combining the &quot;else if&quot; condition with this because it's too long, or is there a different reason?  Since they both return the same thing, it looks a bit weird...

<span class="quote">&gt; Source/WebInspectorUI/UserInterface/Views/ContentView.js:91
&gt; +    static _createFromRepresentedObject(representedObject, extraArguments)</span >

NIT: Instead of making this a &quot;private&quot; static function, could you just place it inside another function in createFromRepresentedObject?  I personally think that having a &quot;public&quot; and &quot;private&quot; function with almost the same name is a bit confusing.

<span class="quote">&gt; Source/WebInspectorUI/UserInterface/Views/ContentViewContainer.js:70
&gt; +        var contentView = WebInspector.ContentView.existingContentViewForRepresentedObject(representedObject);</span >

NIT: let instead of var

<span class="quote">&gt; Source/WebInspectorUI/UserInterface/Views/ContentViewContainer.js:407
&gt; +        console.assert(contentView.parentContainer !== this);</span >

In the case that this is true, I think you should early return to prevent a bunch of extra work from happening.

<span class="quote">&gt; Source/WebInspectorUI/UserInterface/Views/ContentViewContainer.js:414
&gt; +        contentView._parentContainer = this;</span >

Shouldn't we make _parentContainer into a setter on ContentView?

<span class="quote">&gt; Source/WebInspectorUI/UserInterface/Views/ContentViewContainer.js:486
&gt; +            if (otherInterestedContentViews[0] !== this)</span >

So, if I am following this right, I think the reason why you're using [0] here is because you're only interested in passing the contentView to the most recent interested view if one exists and is not the current one.  If so, could you add a brief statement explaining something to that effect (about the [0]).  If not, definitely add a comment.

<span class="quote">&gt; Source/WebInspectorUI/UserInterface/Views/ContentViewContainer.js:519
&gt; +        // If this was a tombstone, it should already have been hidden.</span >

Should you add an assert here then?</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>