Web Inspector: Implement frontend for device metrics emulation
authorapavlov@chromium.org <apavlov@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 2 Apr 2012 14:45:29 +0000 (14:45 +0000)
committerapavlov@chromium.org <apavlov@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 2 Apr 2012 14:45:29 +0000 (14:45 +0000)
commit2be9b2fa73dfbafaf83c7a6f044681c8fcff6082
tree448abdb7d659ef827a2fb5807f9697154ebe8262
parent672b124c6e119a4f8ee30e7e6fc41053fab155fa
Web Inspector: Implement frontend for device metrics emulation
https://bugs.webkit.org/show_bug.cgi?id=82891

This change implements the backend-based device metrics emulation capability discovery,
UI (enablement checkbox + input controls), and a persistence setting
for the user-specified device metrics (screen width/height and an auxiliary font scale factor).

Reviewed by Pavel Feldman.

* English.lproj/localizedStrings.js:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* inspector/compile-front-end.py:
* inspector/front-end/Settings.js:
* inspector/front-end/SettingsScreen.js:
(WebInspector.SettingsScreen):
(WebInspector.SettingsScreen.prototype._createUserAgentSelectRowElement.get const):
(WebInspector.SettingsScreen.prototype._showPaintRectsChanged):
(WebInspector.SettingsScreen.prototype.set _applyDeviceMetricsUserInput):
(WebInspector.SettingsScreen.prototype._setDeviceMetricsOverride):
(WebInspector.SettingsScreen.prototype._setDeviceMetricsOverride.set if):
(WebInspector.SettingsScreen.prototype._createDeviceMetricsElement.createInput):
(WebInspector.SettingsScreen.prototype._createDeviceMetricsElement):
* inspector/front-end/UserAgentSupport.js: Added.
(WebInspector.UserAgentSupport.DeviceMetrics):
(WebInspector.UserAgentSupport.DeviceMetrics.parseSetting):
(WebInspector.UserAgentSupport.DeviceMetrics.parseUserInput):
(WebInspector.UserAgentSupport.DeviceMetrics.prototype.isValid):
(WebInspector.UserAgentSupport.DeviceMetrics.prototype.isWidthValid):
(WebInspector.UserAgentSupport.DeviceMetrics.prototype.isHeightValid):
(WebInspector.UserAgentSupport.DeviceMetrics.prototype.isFontScaleFactorValid):
(WebInspector.UserAgentSupport.DeviceMetrics.prototype.toSetting):
(WebInspector.UserAgentSupport.DeviceMetrics.prototype.widthToInput):
(WebInspector.UserAgentSupport.DeviceMetrics.prototype.heightToInput):
(WebInspector.UserAgentSupport.DeviceMetrics.prototype.fontScaleFactorToInput):
* inspector/front-end/WebKit.qrc:
* inspector/front-end/helpScreen.css:
(.help-table > tr > th):
(.help-table > tr > td):
(#resolution-override-section):
* inspector/front-end/inspector.css:
(.hidden):
(.error-input):
* inspector/front-end/inspector.html:
* inspector/front-end/inspector.js:
(WebInspector.doLoadedDone):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112884 268f45cc-cd09-0410-ab3c-d52691b4dbfc
13 files changed:
Source/WebCore/ChangeLog
Source/WebCore/English.lproj/localizedStrings.js
Source/WebCore/WebCore.gypi
Source/WebCore/WebCore.vcproj/WebCore.vcproj
Source/WebCore/inspector/compile-front-end.py
Source/WebCore/inspector/front-end/Settings.js
Source/WebCore/inspector/front-end/SettingsScreen.js
Source/WebCore/inspector/front-end/UserAgentSupport.js [new file with mode: 0644]
Source/WebCore/inspector/front-end/WebKit.qrc
Source/WebCore/inspector/front-end/helpScreen.css
Source/WebCore/inspector/front-end/inspector.css
Source/WebCore/inspector/front-end/inspector.html
Source/WebCore/inspector/front-end/inspector.js