Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(816)

Unified Diff: Source/devtools/front_end/sdk/OverridesSupport.js

Issue 315003008: [DevTools] UI for network conditions emulation. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/devtools/front_end/overrides.css ('k') | Source/devtools/front_end/ui/SettingsUI.js » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/devtools/front_end/sdk/OverridesSupport.js
diff --git a/Source/devtools/front_end/sdk/OverridesSupport.js b/Source/devtools/front_end/sdk/OverridesSupport.js
index b335a0edd63a3da475a4dc87c26495a89f089fa8..522b6e06e9275a43967f754582ccfe001c41c564 100644
--- a/Source/devtools/front_end/sdk/OverridesSupport.js
+++ b/Source/devtools/front_end/sdk/OverridesSupport.js
@@ -267,6 +267,21 @@ WebInspector.OverridesSupport.inputValidator = function(value)
return WebInspector.UIString("Value must be non-negative integer");
}
+/**
+ * @param {string} value
eustas 2014/06/05 15:06:51 please specify return type.
+ */
+WebInspector.OverridesSupport.networkDomainsValidator = function(value)
+{
+ function test(s)
+ {
+ return /^[\w\-]+(\.[\w\-]+)*$/.test(s.trim());
+ }
+
+ if (!value.trim())
+ return "";
+ return value.split(",").every(test) ? "" : WebInspector.UIString("Value must be a comma-separated list of domains");
+}
+
// Third element lists device metrics separated by 'x':
// - screen width,
// - screen height,
@@ -533,6 +548,9 @@ WebInspector.OverridesSupport.prototype = {
if (this.settings.overrideUserAgent.get())
this._userAgentChanged();
+ if (this.settings.emulateNetworkConditions.get())
+ this._networkConditionsChanged();
+
this._showRulersChanged();
},
@@ -708,6 +726,14 @@ WebInspector.OverridesSupport.prototype = {
this.maybeHasActiveOverridesChanged();
},
+ _networkConditionsChanged: function()
+ {
+ var domainsString = this.settings.networkDomains.get().trim();
+ var domains = domainsString ? domainsString.split(",").map(function (s) { return s.trim(); }) : [];
+ NetworkAgent.emulateNetworkConditions(domains, 0, this.settings.emulateNetworkConditions.get());
+ this.maybeHasActiveOverridesChanged();
+ },
+
/**
* @return {boolean}
*/
@@ -811,6 +837,9 @@ WebInspector.OverridesSupport.prototype = {
this.settings.emulatedCSSMedia = WebInspector.settings.createSetting("emulatedCSSMedia", "print");
this.settings.emulatedDevice = WebInspector.settings.createSetting("emulatedDevice", "Google Nexus 5");
+ this.settings.emulateNetworkConditions = WebInspector.settings.createSetting("emulateNetworkConditions", false);
+ this.settings.networkDomains = WebInspector.settings.createSetting("networkDomains", "");
+
pfeldman 2014/06/05 15:13:43 networkOfflineDomains?
this.maybeHasActiveOverridesChanged();
this.settings.overrideUserAgent.addChangeListener(this._userAgentChanged, this);
@@ -835,6 +864,9 @@ WebInspector.OverridesSupport.prototype = {
this.settings.overrideCSSMedia.addChangeListener(this._cssMediaChanged, this);
this.settings.emulatedCSSMedia.addChangeListener(this._cssMediaChanged, this);
+ this.settings.emulateNetworkConditions.addChangeListener(this._networkConditionsChanged, this);
+ this.settings.networkDomains.addChangeListener(this._networkConditionsChanged, this);
+
WebInspector.settings.showMetricsRulers.addChangeListener(this._showRulersChanged, this);
if (this._applyInitialOverridesOnTargetAdded) {
« no previous file with comments | « Source/devtools/front_end/overrides.css ('k') | Source/devtools/front_end/ui/SettingsUI.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698