Title: [194932] trunk/Source/WebInspectorUI
Revision
194932
Author
[email protected]
Date
2016-01-12 16:04:25 -0800 (Tue, 12 Jan 2016)

Log Message

Web Inspector: Move helper methods for getting icons/text to TimelineTabContentView
https://bugs.webkit.org/show_bug.cgi?id=152996

Reviewed by Brian Burg.

In preparation for the Timelines UI redesign, helper methods which existed
in the sidebar panel and timeline tree elements need to be relocated,
since the sidebar won't exist in the new UI.

* UserInterface/Views/TimelineRecordTreeElement.js:
(WebInspector.TimelineRecordTreeElement):
Removed icon/title code, replaced with calls to new helper methods.
Code to create the alternate subtitle was broken out form the rest
of the icon/title code, and kept in the constructor.

* UserInterface/Views/TimelineRecordingContentView.js:
(WebInspector.TimelineRecordingContentView.prototype._instrumentAdded):
Updated calls to helper methods.

* UserInterface/Views/TimelineSidebarPanel.js:
(WebInspector.TimelineSidebarPanel.prototype._instrumentAdded):
(WebInspector.TimelineSidebarPanel.displayNameForTimeline): Deleted.
(WebInspector.TimelineSidebarPanel.iconClassNameForTimeline): Deleted.
Moved to TimelineTabContentView.

* UserInterface/Views/TimelineTabContentView.js:
(WebInspector.TimelineTabContentView.displayNameForTimeline):
(WebInspector.TimelineTabContentView.iconClassNameForTimeline):
Relocated from TimelineSidebarPanel.
(WebInspector.TimelineTabContentView.iconClassNameForRecord):
(WebInspector.TimelineTabContentView.displayNameForRecord):
New helper methods. Previously part of TimelineRecordTreeElement.

Modified Paths

Diff

Modified: trunk/Source/WebInspectorUI/ChangeLog (194931 => 194932)


--- trunk/Source/WebInspectorUI/ChangeLog	2016-01-13 00:02:04 UTC (rev 194931)
+++ trunk/Source/WebInspectorUI/ChangeLog	2016-01-13 00:04:25 UTC (rev 194932)
@@ -1,3 +1,38 @@
+2016-01-12  Matt Baker  <[email protected]>
+
+        Web Inspector: Move helper methods for getting icons/text to TimelineTabContentView
+        https://bugs.webkit.org/show_bug.cgi?id=152996
+
+        Reviewed by Brian Burg.
+
+        In preparation for the Timelines UI redesign, helper methods which existed
+        in the sidebar panel and timeline tree elements need to be relocated,
+        since the sidebar won't exist in the new UI.
+
+        * UserInterface/Views/TimelineRecordTreeElement.js:
+        (WebInspector.TimelineRecordTreeElement):
+        Removed icon/title code, replaced with calls to new helper methods.
+        Code to create the alternate subtitle was broken out form the rest
+        of the icon/title code, and kept in the constructor.
+
+        * UserInterface/Views/TimelineRecordingContentView.js:
+        (WebInspector.TimelineRecordingContentView.prototype._instrumentAdded):
+        Updated calls to helper methods.
+
+        * UserInterface/Views/TimelineSidebarPanel.js:
+        (WebInspector.TimelineSidebarPanel.prototype._instrumentAdded):
+        (WebInspector.TimelineSidebarPanel.displayNameForTimeline): Deleted.
+        (WebInspector.TimelineSidebarPanel.iconClassNameForTimeline): Deleted.
+        Moved to TimelineTabContentView.
+
+        * UserInterface/Views/TimelineTabContentView.js:
+        (WebInspector.TimelineTabContentView.displayNameForTimeline):
+        (WebInspector.TimelineTabContentView.iconClassNameForTimeline):
+        Relocated from TimelineSidebarPanel.
+        (WebInspector.TimelineTabContentView.iconClassNameForRecord):
+        (WebInspector.TimelineTabContentView.displayNameForRecord):
+        New helper methods. Previously part of TimelineRecordTreeElement.
+
 2016-01-12  Brian Burg  <[email protected]>
 
         Web Inspector: fix some common misspellings in localized strings

Modified: trunk/Source/WebInspectorUI/UserInterface/Views/TimelineRecordTreeElement.js (194931 => 194932)


--- trunk/Source/WebInspectorUI/UserInterface/Views/TimelineRecordTreeElement.js	2016-01-13 00:02:04 UTC (rev 194931)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/TimelineRecordTreeElement.js	2016-01-13 00:04:25 UTC (rev 194932)
@@ -31,10 +31,18 @@
 
         sourceCodeLocation = sourceCodeLocation || timelineRecord.sourceCodeLocation || null;
 
-        var title = "";
-        var subtitle = null;
-        var alternateSubtitle = null;
+        let alternateSubtitle = null;
+        if (includeDetailsInMainTitle && timelineRecord.type === WebInspector.TimelineRecord.Type.Script && timelineRecord.eventType === WebInspector.ScriptTimelineRecord.EventType.TimerInstalled) {
+            let timeoutString = Number.secondsToString(timelineRecord.details.timeout / 1000);
+            alternateSubtitle = document.createElement("span");
+            alternateSubtitle.classList.add("alternate-subtitle");
+            if (timelineRecord.details.repeating)
+                alternateSubtitle.textContent = WebInspector.UIString("%s interval").format(timeoutString);
+            else
+                alternateSubtitle.textContent = WebInspector.UIString("%s delay").format(timeoutString);
+        }
 
+        let subtitle = null;
         if (sourceCodeLocation) {
             subtitle = document.createElement("span");
 
@@ -44,94 +52,9 @@
                 sourceCodeLocation.populateLiveDisplayLocationString(subtitle, "textContent", null, WebInspector.SourceCodeLocation.NameStyle.None, WebInspector.UIString("line "));
         }
 
-        var iconStyleClass = null;
+        let iconStyleClass = WebInspector.TimelineTabContentView.iconClassNameForRecord(timelineRecord);
+        let title = WebInspector.TimelineTabContentView.displayNameForRecord(timelineRecord);
 
-        switch (timelineRecord.type) {
-        case WebInspector.TimelineRecord.Type.Layout:
-            title = WebInspector.LayoutTimelineRecord.displayNameForEventType(timelineRecord.eventType);
-
-            switch (timelineRecord.eventType) {
-            case WebInspector.LayoutTimelineRecord.EventType.InvalidateStyles:
-            case WebInspector.LayoutTimelineRecord.EventType.RecalculateStyles:
-                iconStyleClass = WebInspector.TimelineRecordTreeElement.StyleRecordIconStyleClass;
-                break;
-            case WebInspector.LayoutTimelineRecord.EventType.InvalidateLayout:
-            case WebInspector.LayoutTimelineRecord.EventType.ForcedLayout:
-            case WebInspector.LayoutTimelineRecord.EventType.Layout:
-                iconStyleClass = WebInspector.TimelineRecordTreeElement.LayoutRecordIconStyleClass;
-                break;
-            case WebInspector.LayoutTimelineRecord.EventType.Paint:
-                iconStyleClass = WebInspector.TimelineRecordTreeElement.PaintRecordIconStyleClass;
-                break;
-            case WebInspector.LayoutTimelineRecord.EventType.Composite:
-                iconStyleClass = WebInspector.TimelineRecordTreeElement.CompositeRecordIconStyleClass;
-                break;
-            default:
-                console.error("Unknown LayoutTimelineRecord eventType: " + timelineRecord.eventType, timelineRecord);
-            }
-
-            break;
-
-        case WebInspector.TimelineRecord.Type.Script:
-            title = WebInspector.ScriptTimelineRecord.EventType.displayName(timelineRecord.eventType, timelineRecord.details, includeDetailsInMainTitle);
-
-            switch (timelineRecord.eventType) {
-            case WebInspector.ScriptTimelineRecord.EventType.APIScriptEvaluated:
-                iconStyleClass = WebInspector.TimelineRecordTreeElement.APIRecordIconStyleClass;
-                break;
-            case WebInspector.ScriptTimelineRecord.EventType.ScriptEvaluated:
-                iconStyleClass = WebInspector.TimelineRecordTreeElement.EvaluatedRecordIconStyleClass;
-                break;
-            case WebInspector.ScriptTimelineRecord.EventType.MicrotaskDispatched:
-            case WebInspector.ScriptTimelineRecord.EventType.EventDispatched:
-                iconStyleClass = WebInspector.TimelineRecordTreeElement.EventRecordIconStyleClass;
-                break;
-            case WebInspector.ScriptTimelineRecord.EventType.ProbeSampleRecorded:
-                iconStyleClass = WebInspector.TimelineRecordTreeElement.ProbeRecordIconStyleClass;
-                break;
-            case WebInspector.ScriptTimelineRecord.EventType.ConsoleProfileRecorded:
-                iconStyleClass = WebInspector.TimelineRecordTreeElement.ConsoleProfileIconStyleClass;
-                break;
-            case WebInspector.ScriptTimelineRecord.EventType.GarbageCollected:
-                iconStyleClass = WebInspector.TimelineRecordTreeElement.GarbageCollectionIconStyleClass;
-                break;
-            case WebInspector.ScriptTimelineRecord.EventType.TimerInstalled:
-                if (includeDetailsInMainTitle) {
-                    let timeoutString =  Number.secondsToString(timelineRecord.details.timeout / 1000);
-                    alternateSubtitle = document.createElement("span");
-                    alternateSubtitle.classList.add("alternate-subtitle");
-                    if (timelineRecord.details.repeating)
-                        alternateSubtitle.textContent = WebInspector.UIString("%s interval").format(timeoutString);
-                    else
-                        alternateSubtitle.textContent = WebInspector.UIString("%s delay").format(timeoutString);
-                }
-
-                iconStyleClass = WebInspector.TimelineRecordTreeElement.TimerRecordIconStyleClass;
-                break;
-            case WebInspector.ScriptTimelineRecord.EventType.TimerFired:
-            case WebInspector.ScriptTimelineRecord.EventType.TimerRemoved:
-                iconStyleClass = WebInspector.TimelineRecordTreeElement.TimerRecordIconStyleClass;
-                break;
-            case WebInspector.ScriptTimelineRecord.EventType.AnimationFrameFired:
-            case WebInspector.ScriptTimelineRecord.EventType.AnimationFrameRequested:
-            case WebInspector.ScriptTimelineRecord.EventType.AnimationFrameCanceled:
-                iconStyleClass = WebInspector.TimelineRecordTreeElement.AnimationRecordIconStyleClass;
-                break;
-            default:
-                console.error("Unknown ScriptTimelineRecord eventType: " + timelineRecord.eventType, timelineRecord);
-            }
-
-            break;
-
-        case WebInspector.TimelineRecord.Type.RenderingFrame:
-            title = WebInspector.UIString("Frame %d").format(timelineRecord.frameNumber);
-            iconStyleClass = WebInspector.TimelineRecordTreeElement.RenderingFrameRecordIconStyleClass;
-            break;
-
-        default:
-            console.error("Unknown TimelineRecord type: " + timelineRecord.type, timelineRecord);
-        }
-
         super([iconStyleClass], title, subtitle, representedObject || timelineRecord, false);
 
         this._record = timelineRecord;

Modified: trunk/Source/WebInspectorUI/UserInterface/Views/TimelineRecordingContentView.js (194931 => 194932)


--- trunk/Source/WebInspectorUI/UserInterface/Views/TimelineRecordingContentView.js	2016-01-13 00:02:04 UTC (rev 194931)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/TimelineRecordingContentView.js	2016-01-13 00:04:25 UTC (rev 194932)
@@ -586,8 +586,8 @@
         if (timeline.type === WebInspector.TimelineRecord.Type.RenderingFrame)
             this._renderingFrameTimeline = timeline;
 
-        let displayName = WebInspector.TimelineSidebarPanel.displayNameForTimeline(timeline);
-        let iconClassName = WebInspector.TimelineSidebarPanel.iconClassNameForTimeline(timeline);
+        let displayName = WebInspector.TimelineTabContentView.displayNameForTimeline(timeline);
+        let iconClassName = WebInspector.TimelineTabContentView.iconClassNameForTimeline(timeline);
         let pathComponent = new WebInspector.HierarchicalPathComponent(displayName, iconClassName, timeline);
         pathComponent.addEventListener(WebInspector.HierarchicalPathComponent.Event.SiblingWasSelected, this._pathComponentSelected, this);
         this._pathComponentMap.set(timeline, pathComponent);

Modified: trunk/Source/WebInspectorUI/UserInterface/Views/TimelineSidebarPanel.js (194931 => 194932)


--- trunk/Source/WebInspectorUI/UserInterface/Views/TimelineSidebarPanel.js	2016-01-13 00:02:04 UTC (rev 194931)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/TimelineSidebarPanel.js	2016-01-13 00:04:25 UTC (rev 194932)
@@ -182,40 +182,6 @@
         this._toggleNewRecordingShortcut.disabled = true;
     }
 
-    // Static
-
-    static displayNameForTimeline(timeline)
-    {
-        switch (timeline.type) {
-        case WebInspector.TimelineRecord.Type.Network:
-            return WebInspector.UIString("Network Requests");
-        case WebInspector.TimelineRecord.Type.Layout:
-            return WebInspector.UIString("Layout & Rendering");
-        case WebInspector.TimelineRecord.Type.Script:
-            return WebInspector.UIString("_javascript_ & Events");
-        case WebInspector.TimelineRecord.Type.RenderingFrame:
-            return WebInspector.UIString("Rendering Frames");
-        }
-
-        console.error("Unknown Timeline type:", timeline.type);
-    }
-
-    static iconClassNameForTimeline(timeline)
-    {
-        switch (timeline.type) {
-        case WebInspector.TimelineRecord.Type.Network:
-            return "network-icon";
-        case WebInspector.TimelineRecord.Type.Layout:
-            return "colors-icon";
-        case WebInspector.TimelineRecord.Type.Script:
-            return "script-icon";
-        case WebInspector.TimelineRecord.Type.RenderingFrame:
-            return "rendering-frame-icon";
-        }
-
-        console.error("Unknown Timeline type:", timeline.type);
-    }
-
     // Public
 
     get minimumWidth()
@@ -788,8 +754,8 @@
             return;
         }
 
-        let displayName = WebInspector.TimelineSidebarPanel.displayNameForTimeline(timeline);
-        let iconClassName = WebInspector.TimelineSidebarPanel.iconClassNameForTimeline(timeline);
+        let displayName = WebInspector.TimelineTabContentView.displayNameForTimeline(timeline);
+        let iconClassName = WebInspector.TimelineTabContentView.iconClassNameForTimeline(timeline);
         let timelineTreeElement = new WebInspector.GeneralTreeElement([iconClassName, WebInspector.TimelineSidebarPanel.LargeIconStyleClass], displayName, null, timeline);
         let tooltip = WebInspector.UIString("Close %s timeline view").format(displayName);
         let button = new WebInspector.TreeElementStatusButton(useSVGSymbol("Images/CloseLarge.svg", "close-button", tooltip));

Modified: trunk/Source/WebInspectorUI/UserInterface/Views/TimelineTabContentView.js (194931 => 194932)


--- trunk/Source/WebInspectorUI/UserInterface/Views/TimelineTabContentView.js	2016-01-13 00:02:04 UTC (rev 194931)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/TimelineTabContentView.js	2016-01-13 00:04:25 UTC (rev 194932)
@@ -34,6 +34,8 @@
         super(identifier || "timeline", "timeline", tabBarItem, WebInspector.TimelineSidebarPanel, detailsSidebarPanels);
     }
 
+    // Static
+
     static tabInfo()
     {
         return {
@@ -47,6 +49,122 @@
         return !!window.TimelineAgent || !!window.ScriptProfilerAgent;
     }
 
+    static displayNameForTimeline(timeline)
+    {
+        switch (timeline.type) {
+        case WebInspector.TimelineRecord.Type.Network:
+            return WebInspector.UIString("Network Requests");
+        case WebInspector.TimelineRecord.Type.Layout:
+            return WebInspector.UIString("Layout & Rendering");
+        case WebInspector.TimelineRecord.Type.Script:
+            return WebInspector.UIString("_javascript_ & Events");
+        case WebInspector.TimelineRecord.Type.RenderingFrame:
+            return WebInspector.UIString("Rendering Frames");
+        default:
+            console.error("Unknown Timeline type:", timeline.type);
+        }
+
+        return null;
+    }
+
+    static iconClassNameForTimeline(timeline)
+    {
+        switch (timeline.type) {
+        case WebInspector.TimelineRecord.Type.Network:
+            return "network-icon";
+        case WebInspector.TimelineRecord.Type.Layout:
+            return "colors-icon";
+        case WebInspector.TimelineRecord.Type.Script:
+            return "script-icon";
+        case WebInspector.TimelineRecord.Type.RenderingFrame:
+            return "rendering-frame-icon";
+        default:
+            console.error("Unknown Timeline type:", timeline.type);
+        }
+
+        return null;
+    }
+
+    static iconClassNameForRecord(timelineRecord)
+    {
+        switch (timelineRecord.type) {
+        case WebInspector.TimelineRecord.Type.Layout:
+            switch (timelineRecord.eventType) {
+            case WebInspector.LayoutTimelineRecord.EventType.InvalidateStyles:
+            case WebInspector.LayoutTimelineRecord.EventType.RecalculateStyles:
+                return WebInspector.TimelineRecordTreeElement.StyleRecordIconStyleClass;
+            case WebInspector.LayoutTimelineRecord.EventType.InvalidateLayout:
+            case WebInspector.LayoutTimelineRecord.EventType.ForcedLayout:
+            case WebInspector.LayoutTimelineRecord.EventType.Layout:
+                return WebInspector.TimelineRecordTreeElement.LayoutRecordIconStyleClass;
+            case WebInspector.LayoutTimelineRecord.EventType.Paint:
+                return WebInspector.TimelineRecordTreeElement.PaintRecordIconStyleClass;
+            case WebInspector.LayoutTimelineRecord.EventType.Composite:
+                return WebInspector.TimelineRecordTreeElement.CompositeRecordIconStyleClass;
+            default:
+                console.error("Unknown LayoutTimelineRecord eventType: " + timelineRecord.eventType, timelineRecord);
+            }
+
+            break;
+
+        case WebInspector.TimelineRecord.Type.Script:
+            switch (timelineRecord.eventType) {
+            case WebInspector.ScriptTimelineRecord.EventType.APIScriptEvaluated:
+                return WebInspector.TimelineRecordTreeElement.APIRecordIconStyleClass;
+            case WebInspector.ScriptTimelineRecord.EventType.ScriptEvaluated:
+                return WebInspector.TimelineRecordTreeElement.EvaluatedRecordIconStyleClass;
+            case WebInspector.ScriptTimelineRecord.EventType.MicrotaskDispatched:
+            case WebInspector.ScriptTimelineRecord.EventType.EventDispatched:
+                return WebInspector.TimelineRecordTreeElement.EventRecordIconStyleClass;
+            case WebInspector.ScriptTimelineRecord.EventType.ProbeSampleRecorded:
+                return WebInspector.TimelineRecordTreeElement.ProbeRecordIconStyleClass;
+            case WebInspector.ScriptTimelineRecord.EventType.ConsoleProfileRecorded:
+                return WebInspector.TimelineRecordTreeElement.ConsoleProfileIconStyleClass;
+            case WebInspector.ScriptTimelineRecord.EventType.GarbageCollected:
+                return WebInspector.TimelineRecordTreeElement.GarbageCollectionIconStyleClass;
+            case WebInspector.ScriptTimelineRecord.EventType.TimerInstalled:
+                return WebInspector.TimelineRecordTreeElement.TimerRecordIconStyleClass;
+            case WebInspector.ScriptTimelineRecord.EventType.TimerFired:
+            case WebInspector.ScriptTimelineRecord.EventType.TimerRemoved:
+                return WebInspector.TimelineRecordTreeElement.TimerRecordIconStyleClass;
+            case WebInspector.ScriptTimelineRecord.EventType.AnimationFrameFired:
+            case WebInspector.ScriptTimelineRecord.EventType.AnimationFrameRequested:
+            case WebInspector.ScriptTimelineRecord.EventType.AnimationFrameCanceled:
+                return WebInspector.TimelineRecordTreeElement.AnimationRecordIconStyleClass;
+            default:
+                console.error("Unknown ScriptTimelineRecord eventType: " + timelineRecord.eventType, timelineRecord);
+            }
+
+            break;
+
+        case WebInspector.TimelineRecord.Type.RenderingFrame:
+            return WebInspector.TimelineRecordTreeElement.RenderingFrameRecordIconStyleClass;
+
+        default:
+            console.error("Unknown TimelineRecord type: " + timelineRecord.type, timelineRecord);
+        }
+
+        return null;
+    }
+
+    static displayNameForRecord(timelineRecord, includeDetailsInMainTitle)
+    {
+        switch (timelineRecord.type) {
+        case WebInspector.TimelineRecord.Type.Network:
+            return WebInspector.displayNameForURL(timelineRecord.resource.url, timelineRecord.resource.urlComponents);
+        case WebInspector.TimelineRecord.Type.Layout:
+            return WebInspector.LayoutTimelineRecord.displayNameForEventType(timelineRecord.eventType);
+        case WebInspector.TimelineRecord.Type.Script:
+            return WebInspector.ScriptTimelineRecord.EventType.displayName(timelineRecord.eventType, timelineRecord.details, includeDetailsInMainTitle);
+        case WebInspector.TimelineRecord.Type.RenderingFrame:
+            return WebInspector.UIString("Frame %d").format(timelineRecord.frameNumber);
+        default:
+            console.error("Unknown TimelineRecord type: " + timelineRecord.type, timelineRecord);
+        }
+
+        return null;
+    }
+
     // Public
 
     get type()
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to