Diff
Modified: trunk/Source/WebInspectorUI/ChangeLog (225249 => 225250)
--- trunk/Source/WebInspectorUI/ChangeLog 2017-11-29 01:33:29 UTC (rev 225249)
+++ trunk/Source/WebInspectorUI/ChangeLog 2017-11-29 01:47:01 UTC (rev 225250)
@@ -1,5 +1,50 @@
2017-11-28 Joseph Pecoraro <[email protected]>
+ Web Inspector: Network Tab - Add a toggle in the network tab to control automatically clearing or preserving log across loads
+ https://bugs.webkit.org/show_bug.cgi?id=180110
+ <rdar://problem/34071789>
+
+ Reviewed by Timothy Hatcher.
+
+ * Localizations/en.lproj/localizedStrings.js:
+ New strings.
+
+ * UserInterface/Views/CheckboxNavigationItem.css:
+ (.navigation-bar .item.checkbox input[type=checkbox]):
+ Tweak style to more center the checkbox vertically.
+
+ * UserInterface/Views/CheckboxNavigationItem.js:
+ (WI.CheckboxNavigationItem):
+ Fix setting the initial value of a checkbox navigation item.
+
+ * UserInterface/Views/NetworkTableContentView.js:
+ (WI.NetworkTableContentView):
+ (WI.NetworkTableContentView.prototype.get navigationItems):
+ (WI.NetworkTableContentView.prototype.closed):
+ (WI.NetworkTableContentView.prototype._clearNetworkOnNavigateSettingChanged):
+ Add a new checkbox for the clear on navigation setting.
+
+ * UserInterface/Views/SettingEditor.js:
+ (WI.SettingEditor.createForSetting):
+ Update the editor checkbox if the setting changes outside of the setting editor.
+
+ * UserInterface/Views/NavigationItem.js:
+ (WI.NavigationItem.prototype.get tooltip):
+ (WI.NavigationItem.prototype.set tooltip):
+ * UserInterface/Views/ActivateButtonNavigationItem.js:
+ (WI.ActivateButtonNavigationItem.prototype.set activated):
+ * UserInterface/Views/ButtonNavigationItem.js:
+ (WI.ButtonNavigationItem):
+ (WI.ButtonNavigationItem.prototype.get toolTip): Deleted.
+ (WI.ButtonNavigationItem.prototype.set toolTip): Deleted.
+ * UserInterface/Views/ToggleButtonNavigationItem.js:
+ (WI.ToggleButtonNavigationItem.prototype.set alternateToolTip):
+ (WI.ToggleButtonNavigationItem.prototype.set toggled):
+ Move tooltip to the base class and rename it from `toolTip` to `tooltip` to
+ match existing generic places like TreeElement.
+
+2017-11-28 Joseph Pecoraro <[email protected]>
+
Web Inspector: Include Beacon loads in the Network Table's "Other" filter
https://bugs.webkit.org/show_bug.cgi?id=180113
Modified: trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js (225249 => 225250)
--- trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js 2017-11-29 01:33:29 UTC (rev 225249)
+++ trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js 2017-11-29 01:47:01 UTC (rev 225250)
@@ -307,6 +307,7 @@
localizedStrings["Disk Cache"] = "Disk Cache";
localizedStrings["Display"] = "Display";
localizedStrings["Displayed Columns"] = "Displayed Columns";
+localizedStrings["Do not clear network items on new page loads"] = "Do not clear network items on new page loads";
localizedStrings["Do not fade unexecuted code"] = "Do not fade unexecuted code";
localizedStrings["Dock to bottom of window"] = "Dock to bottom of window";
localizedStrings["Dock to side of window"] = "Dock to side of window";
@@ -700,6 +701,7 @@
localizedStrings["Position X"] = "Position X";
localizedStrings["Position Y"] = "Position Y";
localizedStrings["Prefer indent using:"] = "Prefer indent using:";
+localizedStrings["Preserve Log"] = "Preserve Log";
localizedStrings["Pressed"] = "Pressed";
localizedStrings["Pretty print"] = "Pretty print";
localizedStrings["Preview"] = "Preview";
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/ActivateButtonNavigationItem.js (225249 => 225250)
--- trunk/Source/WebInspectorUI/UserInterface/Views/ActivateButtonNavigationItem.js 2017-11-29 01:33:29 UTC (rev 225249)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/ActivateButtonNavigationItem.js 2017-11-29 01:47:01 UTC (rev 225250)
@@ -56,11 +56,11 @@
this.element.classList.toggle(WI.ActivateButtonNavigationItem.ActivatedStyleClassName, flag);
if (flag) {
- this.toolTip = this._activatedToolTip;
+ this.tooltip = this._activatedToolTip;
if (this._role === "tab")
this.element.setAttribute("aria-selected", "true");
} else {
- this.toolTip = this._defaultToolTip;
+ this.tooltip = this._defaultToolTip;
if (this._role === "tab")
this.element.removeAttribute("aria-selected");
}
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/ButtonNavigationItem.js (225249 => 225250)
--- trunk/Source/WebInspectorUI/UserInterface/Views/ButtonNavigationItem.js 2017-11-29 01:33:29 UTC (rev 225249)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/ButtonNavigationItem.js 2017-11-29 01:47:01 UTC (rev 225250)
@@ -34,7 +34,7 @@
this._enabled = true;
- this.toolTip = toolTipOrLabel;
+ this.tooltip = toolTipOrLabel;
this.element.addEventListener("click", this._mouseClicked.bind(this));
@@ -53,20 +53,6 @@
// Public
- get toolTip()
- {
- return this.element.title;
- }
-
- set toolTip(newToolTip)
- {
- console.assert(newToolTip);
- if (!newToolTip)
- return;
-
- this.element.title = newToolTip;
- }
-
get label()
{
return this._label;
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/CheckboxNavigationItem.css (225249 => 225250)
--- trunk/Source/WebInspectorUI/UserInterface/Views/CheckboxNavigationItem.css 2017-11-29 01:33:29 UTC (rev 225249)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/CheckboxNavigationItem.css 2017-11-29 01:47:01 UTC (rev 225250)
@@ -31,3 +31,8 @@
.navigation-bar .item.checkbox label {
-webkit-padding-start: 3px;
}
+
+.navigation-bar .item.checkbox input[type=checkbox] {
+ position: relative;
+ top: 1px;
+}
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/CheckboxNavigationItem.js (225249 => 225250)
--- trunk/Source/WebInspectorUI/UserInterface/Views/CheckboxNavigationItem.js 2017-11-29 01:33:29 UTC (rev 225249)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/CheckboxNavigationItem.js 2017-11-29 01:47:01 UTC (rev 225250)
@@ -30,7 +30,7 @@
super(identifier, "checkbox");
this._checkboxElement = this.element.appendChild(document.createElement("input"));
- this._checkboxElement.checked = !checked;
+ this._checkboxElement.checked = checked;
this._checkboxElement.id = "checkbox-navigation-item-" + identifier;
this._checkboxElement.type = "checkbox";
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/NavigationItem.js (225249 => 225250)
--- trunk/Source/WebInspectorUI/UserInterface/Views/NavigationItem.js 2017-11-29 01:33:29 UTC (rev 225249)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/NavigationItem.js 2017-11-29 01:47:01 UTC (rev 225250)
@@ -88,6 +88,16 @@
this._parentNavigationBar.needsLayout();
}
+ get tooltip()
+ {
+ return this.element.title;
+ }
+
+ set tooltip(x)
+ {
+ this.element.title = x;
+ }
+
// Protected
didAttach(navigationBar)
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/NetworkTableContentView.js (225249 => 225250)
--- trunk/Source/WebInspectorUI/UserInterface/Views/NetworkTableContentView.js 2017-11-29 01:33:29 UTC (rev 225249)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/NetworkTableContentView.js 2017-11-29 01:47:01 UTC (rev 225250)
@@ -96,11 +96,22 @@
this._emptyFilterResultsMessageElement = null;
+ this._clearOnLoadNavigationItem = new WI.CheckboxNavigationItem("perserve-log", WI.UIString("Preserve Log"), !WI.settings.clearNetworkOnNavigate.value);
+ this._clearOnLoadNavigationItem.tooltip = WI.UIString("Do not clear network items on new page loads");
+ this._clearOnLoadNavigationItem.addEventListener(WI.CheckboxNavigationItem.Event.CheckedDidChange, () => { WI.settings.clearNetworkOnNavigate.value = !WI.settings.clearNetworkOnNavigate.value; });
+ WI.settings.clearNetworkOnNavigate.addEventListener(WI.Setting.Event.Changed, this._clearNetworkOnNavigateSettingChanged, this);
+
this._harExportNavigationItem = new WI.ButtonNavigationItem("har-export", WI.UIString("Export"), "Images/Export.svg", 15, 15);
this._harExportNavigationItem.buttonStyle = WI.ButtonNavigationItem.Style.ImageAndText;
- this._harExportNavigationItem.toolTip = WI.UIString("HAR Export (%s)").format(WI.saveKeyboardShortcut.displayName);
+ this._harExportNavigationItem.tooltip = WI.UIString("HAR Export (%s)").format(WI.saveKeyboardShortcut.displayName);
this._harExportNavigationItem.addEventListener(WI.ButtonNavigationItem.Event.Clicked, () => { this._exportHAR(); });
+ this._checkboxsNavigationItemGroup = new WI.GroupNavigationItem([this._clearOnLoadNavigationItem, new WI.DividerNavigationItem]);
+ this._checkboxsNavigationItemGroup.visibilityPriority = WI.NavigationItem.VisibilityPriority.Low;
+
+ this._buttonsNavigationItemGroup = new WI.GroupNavigationItem([this._harExportNavigationItem, new WI.DividerNavigationItem]);
+ this._buttonsNavigationItemGroup.visibilityPriority = WI.NavigationItem.VisibilityPriority.Low;
+
// COMPATIBILITY (iOS 10.3): Network.setDisableResourceCaching did not exist.
if (window.NetworkAgent && NetworkAgent.setResourceCachingDisabled) {
let toolTipForDisableResourceCache = WI.UIString("Ignore the resource cache when loading resources");
@@ -181,7 +192,7 @@
get navigationItems()
{
- let items = [this._harExportNavigationItem, new WI.DividerNavigationItem];
+ let items = [this._checkboxsNavigationItemGroup, this._buttonsNavigationItemGroup];
if (this._disableResourceCacheNavigationItem)
items.push(this._disableResourceCacheNavigationItem);
items.push(this._clearNetworkItemsNavigationItem);
@@ -240,6 +251,7 @@
WI.Frame.removeEventListener(null, null, this);
WI.Resource.removeEventListener(null, null, this);
WI.resourceCachingDisabledSetting.removeEventListener(null, null, this);
+ WI.settings.clearNetworkOnNavigate.removeEventListener(null, null, this);
WI.frameResourceManager.removeEventListener(WI.FrameResourceManager.Event.MainFrameDidChange, this._mainFrameDidChange, this);
WI.timelineManager.persistentNetworkTimeline.removeEventListener(WI.Timeline.Event.RecordAdded, this._networkTimelineRecordAdded, this);
@@ -1064,6 +1076,11 @@
this._emptyFilterResultsMessageElement.style.width = width + "px";
}
+ _clearNetworkOnNavigateSettingChanged()
+ {
+ this._clearOnLoadNavigationItem.checked = !WI.settings.clearNetworkOnNavigate.value;
+ }
+
_resourceCachingDisabledSettingChanged()
{
this._disableResourceCacheNavigationItem.activated = WI.resourceCachingDisabledSetting.value;
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/SettingEditor.js (225249 => 225250)
--- trunk/Source/WebInspectorUI/UserInterface/Views/SettingEditor.js 2017-11-29 01:33:29 UTC (rev 225249)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/SettingEditor.js 2017-11-29 01:47:01 UTC (rev 225250)
@@ -65,6 +65,7 @@
let editor = new WI.SettingEditor(type, label, options);
editor.value = setting.value;
editor.addEventListener(WI.SettingEditor.Event.ValueDidChange, () => { setting.value = editor.value; });
+ setting.addEventListener(WI.Setting.Event.Changed, () => { editor.value = setting.value; });
return editor;
}
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/ToggleButtonNavigationItem.js (225249 => 225250)
--- trunk/Source/WebInspectorUI/UserInterface/Views/ToggleButtonNavigationItem.js 2017-11-29 01:33:29 UTC (rev 225249)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/ToggleButtonNavigationItem.js 2017-11-29 01:47:01 UTC (rev 225250)
@@ -53,7 +53,7 @@
this._alternateToolTip = toolTip;
if (this._toggled)
- this.toolTip = this._alternateToolTip;
+ this.tooltip = this._alternateToolTip;
}
get defaultImage()
@@ -89,10 +89,10 @@
this._toggled = flag;
if (this._toggled) {
- this.toolTip = this._alternateToolTip;
+ this.tooltip = this._alternateToolTip;
this.image = this._alternateImage;
} else {
- this.toolTip = this._defaultToolTip;
+ this.tooltip = this._defaultToolTip;
this.image = this._defaultImage;
}
}