Index: Source/devtools/front_end/OverridesSupport.js |
diff --git a/Source/devtools/front_end/OverridesSupport.js b/Source/devtools/front_end/OverridesSupport.js |
index b4f5c643f3b61e36a99d54e531a36c10e6c37e0a..60f3d96ef85e33b1008c0b6fa2bddcabe0a96e2b 100644 |
--- a/Source/devtools/front_end/OverridesSupport.js |
+++ b/Source/devtools/front_end/OverridesSupport.js |
@@ -29,10 +29,15 @@ |
*/ |
/** |
+ * @extends {WebInspector.Object} |
* @constructor |
*/ |
WebInspector.OverridesSupport = function() |
{ |
+ WebInspector.resourceTreeModel.addEventListener(WebInspector.ResourceTreeModel.EventTypes.MainFrameNavigated, this._updateCanForceCompositingMode.bind(this), this); |
+ this.canForceCompositingMode = true; |
pfeldman
2013/10/31 11:23:58
Should be private w/ accessor if necessary.
dgozman
2013/10/31 12:39:50
Done.
|
+ this._updateCanForceCompositingMode(); |
pfeldman
2013/10/31 11:23:58
It is too early, you should do this if you are abo
dgozman
2013/10/31 12:39:50
No, it's needed right away to disable UI elements.
|
+ |
this._updateAllOverrides(); |
WebInspector.settings.overrideUserAgent.addChangeListener(this._userAgentChanged, this); |
@@ -54,6 +59,10 @@ WebInspector.OverridesSupport = function() |
WebInspector.settings.emulatedCSSMedia.addChangeListener(this._cssMediaChanged, this); |
} |
+WebInspector.OverridesSupport.Events = { |
+ CanForceCompositingModeChanged: "CanForceCompositingModeChanged", |
+} |
+ |
/** |
* @constructor |
* @param {number} width |
@@ -400,7 +409,8 @@ WebInspector.OverridesSupport.prototype = { |
{ |
WebInspector.settings.deviceMetrics.set(deviceMetrics); |
WebInspector.settings.userAgent.set(userAgent); |
- WebInspector.settings.overrideDeviceMetrics.set(true); |
+ if (this.canForceCompositingMode) |
+ WebInspector.settings.overrideDeviceMetrics.set(true); |
WebInspector.settings.overrideUserAgent.set(true); |
WebInspector.settings.emulateTouchEvents.set(true); |
}, |
@@ -488,7 +498,23 @@ WebInspector.OverridesSupport.prototype = { |
WebInspector.settings.showEmulationViewInDrawer.set(true); |
WebInspector.inspectorView.showViewInDrawer("emulation"); |
} |
- } |
+ }, |
+ |
+ _updateCanForceCompositingMode: function() |
+ { |
+ function callback(error, result) |
+ { |
+ if (!error) { |
+ this.canForceCompositingMode = result; |
+ this.dispatchEventToListeners(WebInspector.OverridesSupport.Events.CanForceCompositingModeChanged); |
pfeldman
2013/10/31 11:23:58
You should only dispatch it if this.canForce != re
dgozman
2013/10/31 12:39:50
Done.
|
+ if (!result && WebInspector.settings.overrideDeviceMetrics.get()) |
+ WebInspector.settings.overrideDeviceMetrics.set(false); |
+ } |
+ } |
+ PageAgent.canForceCompositingMode(callback.bind(this)); |
+ }, |
+ |
+ __proto__: WebInspector.Object.prototype |
} |