| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2011 Google Inc. All rights reserved. | 2 * Copyright (C) 2011 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 84 namespace WebCore { | 84 namespace WebCore { |
| 85 | 85 |
| 86 namespace PageAgentState { | 86 namespace PageAgentState { |
| 87 static const char pageAgentEnabled[] = "pageAgentEnabled"; | 87 static const char pageAgentEnabled[] = "pageAgentEnabled"; |
| 88 static const char pageAgentScriptExecutionDisabled[] = "pageAgentScriptExecution
Disabled"; | 88 static const char pageAgentScriptExecutionDisabled[] = "pageAgentScriptExecution
Disabled"; |
| 89 static const char pageAgentScriptsToEvaluateOnLoad[] = "pageAgentScriptsToEvalua
teOnLoad"; | 89 static const char pageAgentScriptsToEvaluateOnLoad[] = "pageAgentScriptsToEvalua
teOnLoad"; |
| 90 static const char deviceMetricsOverrideEnabled[] = "deviceMetricsOverrideEnabled
"; | 90 static const char deviceMetricsOverrideEnabled[] = "deviceMetricsOverrideEnabled
"; |
| 91 static const char pageAgentScreenWidthOverride[] = "pageAgentScreenWidthOverride
"; | 91 static const char pageAgentScreenWidthOverride[] = "pageAgentScreenWidthOverride
"; |
| 92 static const char pageAgentScreenHeightOverride[] = "pageAgentScreenHeightOverri
de"; | 92 static const char pageAgentScreenHeightOverride[] = "pageAgentScreenHeightOverri
de"; |
| 93 static const char pageAgentDeviceScaleFactorOverride[] = "pageAgentDeviceScaleFa
ctorOverride"; | 93 static const char pageAgentDeviceScaleFactorOverride[] = "pageAgentDeviceScaleFa
ctorOverride"; |
| 94 static const char pageAgentEmulateViewport[] = "pageAgentEmulateViewport"; | 94 static const char pageAgentEmulateMobile[] = "pageAgentEmulateMobile"; |
| 95 static const char pageAgentFitWindow[] = "pageAgentFitWindow"; | 95 static const char pageAgentFitWindow[] = "pageAgentFitWindow"; |
| 96 static const char deviceScale[] = "deviceScale"; | 96 static const char deviceScale[] = "deviceScale"; |
| 97 static const char deviceOffsetX[] = "deviceOffsetX"; | 97 static const char deviceOffsetX[] = "deviceOffsetX"; |
| 98 static const char deviceOffsetY[] = "deviceOffsetY"; | 98 static const char deviceOffsetY[] = "deviceOffsetY"; |
| 99 static const char pageAgentShowFPSCounter[] = "pageAgentShowFPSCounter"; | 99 static const char pageAgentShowFPSCounter[] = "pageAgentShowFPSCounter"; |
| 100 static const char pageAgentContinuousPaintingEnabled[] = "pageAgentContinuousPai
ntingEnabled"; | 100 static const char pageAgentContinuousPaintingEnabled[] = "pageAgentContinuousPai
ntingEnabled"; |
| 101 static const char pageAgentShowPaintRects[] = "pageAgentShowPaintRects"; | 101 static const char pageAgentShowPaintRects[] = "pageAgentShowPaintRects"; |
| 102 static const char pageAgentShowDebugBorders[] = "pageAgentShowDebugBorders"; | 102 static const char pageAgentShowDebugBorders[] = "pageAgentShowDebugBorders"; |
| 103 static const char pageAgentShowScrollBottleneckRects[] = "pageAgentShowScrollBot
tleneckRects"; | 103 static const char pageAgentShowScrollBottleneckRects[] = "pageAgentShowScrollBot
tleneckRects"; |
| 104 static const char touchEventEmulationEnabled[] = "touchEventEmulationEnabled"; | 104 static const char touchEventEmulationEnabled[] = "touchEventEmulationEnabled"; |
| (...skipping 289 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 394 : InspectorBaseAgent<InspectorPageAgent>("Page") | 394 : InspectorBaseAgent<InspectorPageAgent>("Page") |
| 395 , m_page(page) | 395 , m_page(page) |
| 396 , m_injectedScriptManager(injectedScriptManager) | 396 , m_injectedScriptManager(injectedScriptManager) |
| 397 , m_client(client) | 397 , m_client(client) |
| 398 , m_frontend(0) | 398 , m_frontend(0) |
| 399 , m_overlay(overlay) | 399 , m_overlay(overlay) |
| 400 , m_lastScriptIdentifier(0) | 400 , m_lastScriptIdentifier(0) |
| 401 , m_enabled(false) | 401 , m_enabled(false) |
| 402 , m_ignoreScriptsEnabledNotification(false) | 402 , m_ignoreScriptsEnabledNotification(false) |
| 403 , m_deviceMetricsOverridden(false) | 403 , m_deviceMetricsOverridden(false) |
| 404 , m_emulateViewportEnabled(false) | 404 , m_emulateMobileEnabled(false) |
| 405 , m_touchEmulationEnabled(false) | 405 , m_touchEmulationEnabled(false) |
| 406 , m_originalTouchEnabled(false) | 406 , m_originalTouchEnabled(false) |
| 407 , m_originalDeviceSupportsMouse(false) | 407 , m_originalDeviceSupportsMouse(false) |
| 408 , m_originalDeviceSupportsTouch(false) | 408 , m_originalDeviceSupportsTouch(false) |
| 409 , m_embedderTextAutosizingEnabled(m_page->settings().textAutosizingEnabled()
) | 409 , m_embedderTextAutosizingEnabled(m_page->settings().textAutosizingEnabled()
) |
| 410 , m_embedderFontScaleFactor(m_page->settings().deviceScaleAdjustment()) | 410 , m_embedderFontScaleFactor(m_page->settings().deviceScaleAdjustment()) |
| 411 { | 411 { |
| 412 } | 412 } |
| 413 | 413 |
| 414 void InspectorPageAgent::setTextAutosizingEnabled(bool enabled) | 414 void InspectorPageAgent::setTextAutosizingEnabled(bool enabled) |
| 415 { | 415 { |
| 416 m_embedderTextAutosizingEnabled = enabled; | 416 m_embedderTextAutosizingEnabled = enabled; |
| 417 bool emulateViewportEnabled = m_enabled && m_deviceMetricsOverridden && m_em
ulateViewportEnabled; | 417 bool emulateMobileEnabled = m_enabled && m_deviceMetricsOverridden && m_emul
ateMobileEnabled; |
| 418 if (!emulateViewportEnabled) | 418 if (!emulateMobileEnabled) |
| 419 m_page->settings().setTextAutosizingEnabled(enabled); | 419 m_page->settings().setTextAutosizingEnabled(enabled); |
| 420 } | 420 } |
| 421 | 421 |
| 422 void InspectorPageAgent::setDeviceScaleAdjustment(float deviceScaleAdjustment) | 422 void InspectorPageAgent::setDeviceScaleAdjustment(float deviceScaleAdjustment) |
| 423 { | 423 { |
| 424 m_embedderFontScaleFactor = deviceScaleAdjustment; | 424 m_embedderFontScaleFactor = deviceScaleAdjustment; |
| 425 bool emulateViewportEnabled = m_enabled && m_deviceMetricsOverridden && m_em
ulateViewportEnabled; | 425 bool emulateMobileEnabled = m_enabled && m_deviceMetricsOverridden && m_emul
ateMobileEnabled; |
| 426 if (!emulateViewportEnabled) | 426 if (!emulateMobileEnabled) |
| 427 m_page->settings().setDeviceScaleAdjustment(deviceScaleAdjustment); | 427 m_page->settings().setDeviceScaleAdjustment(deviceScaleAdjustment); |
| 428 } | 428 } |
| 429 | 429 |
| 430 void InspectorPageAgent::setFrontend(InspectorFrontend* frontend) | 430 void InspectorPageAgent::setFrontend(InspectorFrontend* frontend) |
| 431 { | 431 { |
| 432 m_frontend = frontend->page(); | 432 m_frontend = frontend->page(); |
| 433 } | 433 } |
| 434 | 434 |
| 435 void InspectorPageAgent::clearFrontend() | 435 void InspectorPageAgent::clearFrontend() |
| 436 { | 436 { |
| (...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 497 } | 497 } |
| 498 | 498 |
| 499 if (!deviceMetricsChanged(false, 0, 0, 0, false, false, 1, 0, 0)) | 499 if (!deviceMetricsChanged(false, 0, 0, 0, false, false, 1, 0, 0)) |
| 500 return; | 500 return; |
| 501 | 501 |
| 502 // When disabling the agent, reset the override values if necessary. | 502 // When disabling the agent, reset the override values if necessary. |
| 503 updateViewMetrics(false, 0, 0, 0, false, false, 1, 0, 0); | 503 updateViewMetrics(false, 0, 0, 0, false, false, 1, 0, 0); |
| 504 m_state->setLong(PageAgentState::pageAgentScreenWidthOverride, 0); | 504 m_state->setLong(PageAgentState::pageAgentScreenWidthOverride, 0); |
| 505 m_state->setLong(PageAgentState::pageAgentScreenHeightOverride, 0); | 505 m_state->setLong(PageAgentState::pageAgentScreenHeightOverride, 0); |
| 506 m_state->setDouble(PageAgentState::pageAgentDeviceScaleFactorOverride, 0); | 506 m_state->setDouble(PageAgentState::pageAgentDeviceScaleFactorOverride, 0); |
| 507 m_state->setBoolean(PageAgentState::pageAgentEmulateViewport, false); | 507 m_state->setBoolean(PageAgentState::pageAgentEmulateMobile, false); |
| 508 m_state->setBoolean(PageAgentState::pageAgentFitWindow, false); | 508 m_state->setBoolean(PageAgentState::pageAgentFitWindow, false); |
| 509 m_state->setDouble(PageAgentState::deviceScale, 1); | 509 m_state->setDouble(PageAgentState::deviceScale, 1); |
| 510 m_state->setDouble(PageAgentState::deviceOffsetX, 0); | 510 m_state->setDouble(PageAgentState::deviceOffsetX, 0); |
| 511 m_state->setDouble(PageAgentState::deviceOffsetY, 0); | 511 m_state->setDouble(PageAgentState::deviceOffsetY, 0); |
| 512 } | 512 } |
| 513 | 513 |
| 514 void InspectorPageAgent::addScriptToEvaluateOnLoad(ErrorString*, const String& s
ource, String* identifier) | 514 void InspectorPageAgent::addScriptToEvaluateOnLoad(ErrorString*, const String& s
ource, String* identifier) |
| 515 { | 515 { |
| 516 RefPtr<JSONObject> scripts = m_state->getObject(PageAgentState::pageAgentScr
iptsToEvaluateOnLoad); | 516 RefPtr<JSONObject> scripts = m_state->getObject(PageAgentState::pageAgentScr
iptsToEvaluateOnLoad); |
| 517 if (!scripts) { | 517 if (!scripts) { |
| (...skipping 246 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 764 return; | 764 return; |
| 765 | 765 |
| 766 Document* document = frame->document(); | 766 Document* document = frame->document(); |
| 767 if (!document) { | 767 if (!document) { |
| 768 *errorString = "No Document instance to set HTML for"; | 768 *errorString = "No Document instance to set HTML for"; |
| 769 return; | 769 return; |
| 770 } | 770 } |
| 771 DOMPatchSupport::patchDocument(*document, html); | 771 DOMPatchSupport::patchDocument(*document, html); |
| 772 } | 772 } |
| 773 | 773 |
| 774 void InspectorPageAgent::setDeviceMetricsOverride(ErrorString* errorString, int
width, int height, double deviceScaleFactor, bool emulateViewport, bool fitWindo
w, const double* optionalScale, const double* optionalOffsetX, const double* opt
ionalOffsetY) | 774 void InspectorPageAgent::setDeviceMetricsOverride(ErrorString* errorString, int
width, int height, double deviceScaleFactor, bool mobile, bool fitWindow, const
double* optionalScale, const double* optionalOffsetX, const double* optionalOffs
etY) |
| 775 { | 775 { |
| 776 const static long maxDimension = 10000000; | 776 const static long maxDimension = 10000000; |
| 777 const static double maxScale = 10; | 777 const static double maxScale = 10; |
| 778 | 778 |
| 779 double scale = optionalScale ? *optionalScale : 1; | 779 double scale = optionalScale ? *optionalScale : 1; |
| 780 double offsetX = optionalOffsetX ? *optionalOffsetX : 0; | 780 double offsetX = optionalOffsetX ? *optionalOffsetX : 0; |
| 781 double offsetY = optionalOffsetY ? *optionalOffsetY : 0; | 781 double offsetY = optionalOffsetY ? *optionalOffsetY : 0; |
| 782 | 782 |
| 783 if (width < 0 || height < 0 || width > maxDimension || height > maxDimension
) { | 783 if (width < 0 || height < 0 || width > maxDimension || height > maxDimension
) { |
| 784 *errorString = "Width and height values must be positive, not greater th
an " + String::number(maxDimension); | 784 *errorString = "Width and height values must be positive, not greater th
an " + String::number(maxDimension); |
| (...skipping 10 matching lines...) Expand all Loading... |
| 795 return; | 795 return; |
| 796 } | 796 } |
| 797 | 797 |
| 798 Settings& settings = m_page->settings(); | 798 Settings& settings = m_page->settings(); |
| 799 if (!settings.acceleratedCompositingEnabled()) { | 799 if (!settings.acceleratedCompositingEnabled()) { |
| 800 if (errorString) | 800 if (errorString) |
| 801 *errorString = "Compositing mode is not supported"; | 801 *errorString = "Compositing mode is not supported"; |
| 802 return; | 802 return; |
| 803 } | 803 } |
| 804 | 804 |
| 805 if (!deviceMetricsChanged(true, width, height, deviceScaleFactor, emulateVie
wport, fitWindow, scale, offsetX, offsetY)) | 805 if (!deviceMetricsChanged(true, width, height, deviceScaleFactor, mobile, fi
tWindow, scale, offsetX, offsetY)) |
| 806 return; | 806 return; |
| 807 | 807 |
| 808 m_state->setBoolean(PageAgentState::deviceMetricsOverrideEnabled, true); | 808 m_state->setBoolean(PageAgentState::deviceMetricsOverrideEnabled, true); |
| 809 m_state->setLong(PageAgentState::pageAgentScreenWidthOverride, width); | 809 m_state->setLong(PageAgentState::pageAgentScreenWidthOverride, width); |
| 810 m_state->setLong(PageAgentState::pageAgentScreenHeightOverride, height); | 810 m_state->setLong(PageAgentState::pageAgentScreenHeightOverride, height); |
| 811 m_state->setDouble(PageAgentState::pageAgentDeviceScaleFactorOverride, devic
eScaleFactor); | 811 m_state->setDouble(PageAgentState::pageAgentDeviceScaleFactorOverride, devic
eScaleFactor); |
| 812 m_state->setBoolean(PageAgentState::pageAgentEmulateViewport, emulateViewpor
t); | 812 m_state->setBoolean(PageAgentState::pageAgentEmulateMobile, mobile); |
| 813 m_state->setBoolean(PageAgentState::pageAgentFitWindow, fitWindow); | 813 m_state->setBoolean(PageAgentState::pageAgentFitWindow, fitWindow); |
| 814 m_state->setDouble(PageAgentState::deviceScale, scale); | 814 m_state->setDouble(PageAgentState::deviceScale, scale); |
| 815 m_state->setDouble(PageAgentState::deviceOffsetX, offsetX); | 815 m_state->setDouble(PageAgentState::deviceOffsetX, offsetX); |
| 816 m_state->setDouble(PageAgentState::deviceOffsetY, offsetY); | 816 m_state->setDouble(PageAgentState::deviceOffsetY, offsetY); |
| 817 updateViewMetricsFromState(); | 817 updateViewMetricsFromState(); |
| 818 } | 818 } |
| 819 | 819 |
| 820 void InspectorPageAgent::clearDeviceMetricsOverride(ErrorString*) | 820 void InspectorPageAgent::clearDeviceMetricsOverride(ErrorString*) |
| 821 { | 821 { |
| 822 if (m_state->getBoolean(PageAgentState::deviceMetricsOverrideEnabled)) { | 822 if (m_state->getBoolean(PageAgentState::deviceMetricsOverrideEnabled)) { |
| 823 m_state->setBoolean(PageAgentState::deviceMetricsOverrideEnabled, false)
; | 823 m_state->setBoolean(PageAgentState::deviceMetricsOverrideEnabled, false)
; |
| 824 updateViewMetricsFromState(); | 824 updateViewMetricsFromState(); |
| 825 } | 825 } |
| 826 } | 826 } |
| 827 | 827 |
| 828 void InspectorPageAgent::resetScrollAndPageScaleFactor(ErrorString*) | 828 void InspectorPageAgent::resetScrollAndPageScaleFactor(ErrorString*) |
| 829 { | 829 { |
| 830 m_client->resetScrollAndPageScaleFactor(); | 830 m_client->resetScrollAndPageScaleFactor(); |
| 831 } | 831 } |
| 832 | 832 |
| 833 bool InspectorPageAgent::deviceMetricsChanged(bool enabled, int width, int heigh
t, double deviceScaleFactor, bool emulateViewport, bool fitWindow, double scale,
double offsetX, double offsetY) | 833 bool InspectorPageAgent::deviceMetricsChanged(bool enabled, int width, int heigh
t, double deviceScaleFactor, bool mobile, bool fitWindow, double scale, double o
ffsetX, double offsetY) |
| 834 { | 834 { |
| 835 bool currentEnabled = m_state->getBoolean(PageAgentState::deviceMetricsOverr
ideEnabled); | 835 bool currentEnabled = m_state->getBoolean(PageAgentState::deviceMetricsOverr
ideEnabled); |
| 836 // These two always fit an int. | 836 // These two always fit an int. |
| 837 int currentWidth = static_cast<int>(m_state->getLong(PageAgentState::pageAge
ntScreenWidthOverride)); | 837 int currentWidth = static_cast<int>(m_state->getLong(PageAgentState::pageAge
ntScreenWidthOverride)); |
| 838 int currentHeight = static_cast<int>(m_state->getLong(PageAgentState::pageAg
entScreenHeightOverride)); | 838 int currentHeight = static_cast<int>(m_state->getLong(PageAgentState::pageAg
entScreenHeightOverride)); |
| 839 double currentDeviceScaleFactor = m_state->getDouble(PageAgentState::pageAge
ntDeviceScaleFactorOverride, 0); | 839 double currentDeviceScaleFactor = m_state->getDouble(PageAgentState::pageAge
ntDeviceScaleFactorOverride, 0); |
| 840 bool currentEmulateViewport = m_state->getBoolean(PageAgentState::pageAgentE
mulateViewport); | 840 bool currentMobile = m_state->getBoolean(PageAgentState::pageAgentEmulateMob
ile); |
| 841 bool currentFitWindow = m_state->getBoolean(PageAgentState::pageAgentFitWind
ow); | 841 bool currentFitWindow = m_state->getBoolean(PageAgentState::pageAgentFitWind
ow); |
| 842 double currentScale = m_state->getDouble(PageAgentState::deviceScale, 1); | 842 double currentScale = m_state->getDouble(PageAgentState::deviceScale, 1); |
| 843 double currentOffsetX = m_state->getDouble(PageAgentState::deviceOffsetX, 0)
; | 843 double currentOffsetX = m_state->getDouble(PageAgentState::deviceOffsetX, 0)
; |
| 844 double currentOffsetY = m_state->getDouble(PageAgentState::deviceOffsetY, 0)
; | 844 double currentOffsetY = m_state->getDouble(PageAgentState::deviceOffsetY, 0)
; |
| 845 | 845 |
| 846 return enabled != currentEnabled | 846 return enabled != currentEnabled |
| 847 || width != currentWidth | 847 || width != currentWidth |
| 848 || height != currentHeight | 848 || height != currentHeight |
| 849 || deviceScaleFactor != currentDeviceScaleFactor | 849 || deviceScaleFactor != currentDeviceScaleFactor |
| 850 || emulateViewport != currentEmulateViewport | 850 || mobile != currentMobile |
| 851 || fitWindow != currentFitWindow | 851 || fitWindow != currentFitWindow |
| 852 || scale != currentScale | 852 || scale != currentScale |
| 853 || offsetX != currentOffsetX | 853 || offsetX != currentOffsetX |
| 854 || offsetY != currentOffsetY; | 854 || offsetY != currentOffsetY; |
| 855 } | 855 } |
| 856 | 856 |
| 857 void InspectorPageAgent::setShowPaintRects(ErrorString*, bool show) | 857 void InspectorPageAgent::setShowPaintRects(ErrorString*, bool show) |
| 858 { | 858 { |
| 859 m_state->setBoolean(PageAgentState::pageAgentShowPaintRects, show); | 859 m_state->setBoolean(PageAgentState::pageAgentShowPaintRects, show); |
| 860 m_client->setShowPaintRects(show); | 860 m_client->setShowPaintRects(show); |
| (...skipping 415 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1276 childrenArray->addItem(buildObjectForFrameTree(toLocalFrame(child))); | 1276 childrenArray->addItem(buildObjectForFrameTree(toLocalFrame(child))); |
| 1277 } | 1277 } |
| 1278 return result; | 1278 return result; |
| 1279 } | 1279 } |
| 1280 | 1280 |
| 1281 void InspectorPageAgent::updateViewMetricsFromState() | 1281 void InspectorPageAgent::updateViewMetricsFromState() |
| 1282 { | 1282 { |
| 1283 bool enabled = m_state->getBoolean(PageAgentState::deviceMetricsOverrideEnab
led); | 1283 bool enabled = m_state->getBoolean(PageAgentState::deviceMetricsOverrideEnab
led); |
| 1284 int width = static_cast<int>(m_state->getLong(PageAgentState::pageAgentScree
nWidthOverride)); | 1284 int width = static_cast<int>(m_state->getLong(PageAgentState::pageAgentScree
nWidthOverride)); |
| 1285 int height = static_cast<int>(m_state->getLong(PageAgentState::pageAgentScre
enHeightOverride)); | 1285 int height = static_cast<int>(m_state->getLong(PageAgentState::pageAgentScre
enHeightOverride)); |
| 1286 bool emulateViewport = m_state->getBoolean(PageAgentState::pageAgentEmulateV
iewport); | 1286 bool mobile = m_state->getBoolean(PageAgentState::pageAgentEmulateMobile); |
| 1287 double deviceScaleFactor = m_state->getDouble(PageAgentState::pageAgentDevic
eScaleFactorOverride); | 1287 double deviceScaleFactor = m_state->getDouble(PageAgentState::pageAgentDevic
eScaleFactorOverride); |
| 1288 bool fitWindow = m_state->getBoolean(PageAgentState::pageAgentFitWindow); | 1288 bool fitWindow = m_state->getBoolean(PageAgentState::pageAgentFitWindow); |
| 1289 double scale = m_state->getDouble(PageAgentState::deviceScale, 1); | 1289 double scale = m_state->getDouble(PageAgentState::deviceScale, 1); |
| 1290 double offsetX = m_state->getDouble(PageAgentState::deviceOffsetX, 0); | 1290 double offsetX = m_state->getDouble(PageAgentState::deviceOffsetX, 0); |
| 1291 double offsetY = m_state->getDouble(PageAgentState::deviceOffsetY, 0); | 1291 double offsetY = m_state->getDouble(PageAgentState::deviceOffsetY, 0); |
| 1292 updateViewMetrics(enabled, width, height, deviceScaleFactor, emulateViewport
, fitWindow, scale, offsetX, offsetY); | 1292 updateViewMetrics(enabled, width, height, deviceScaleFactor, mobile, fitWind
ow, scale, offsetX, offsetY); |
| 1293 } | 1293 } |
| 1294 | 1294 |
| 1295 void InspectorPageAgent::updateViewMetrics(bool enabled, int width, int height,
double deviceScaleFactor, bool emulateViewport, bool fitWindow, double scale, do
uble offsetX, double offsetY) | 1295 void InspectorPageAgent::updateViewMetrics(bool enabled, int width, int height,
double deviceScaleFactor, bool mobile, bool fitWindow, double scale, double offs
etX, double offsetY) |
| 1296 { | 1296 { |
| 1297 if (enabled && !m_page->settings().acceleratedCompositingEnabled()) | 1297 if (enabled && !m_page->settings().acceleratedCompositingEnabled()) |
| 1298 return; | 1298 return; |
| 1299 | 1299 |
| 1300 m_deviceMetricsOverridden = enabled; | 1300 m_deviceMetricsOverridden = enabled; |
| 1301 m_emulateViewportEnabled = emulateViewport; | 1301 m_emulateMobileEnabled = mobile; |
| 1302 if (enabled) | 1302 if (enabled) |
| 1303 m_client->setDeviceMetricsOverride(width, height, static_cast<float>(dev
iceScaleFactor), emulateViewport, fitWindow, static_cast<float>(scale), static_c
ast<float>(offsetX), static_cast<float>(offsetY)); | 1303 m_client->setDeviceMetricsOverride(width, height, static_cast<float>(dev
iceScaleFactor), mobile, fitWindow, static_cast<float>(scale), static_cast<float
>(offsetX), static_cast<float>(offsetY)); |
| 1304 else | 1304 else |
| 1305 m_client->clearDeviceMetricsOverride(); | 1305 m_client->clearDeviceMetricsOverride(); |
| 1306 | 1306 |
| 1307 Document* document = mainFrame()->document(); | 1307 Document* document = mainFrame()->document(); |
| 1308 if (document) { | 1308 if (document) { |
| 1309 document->styleResolverChanged(); | 1309 document->styleResolverChanged(); |
| 1310 document->mediaQueryAffectingValueChanged(); | 1310 document->mediaQueryAffectingValueChanged(); |
| 1311 } | 1311 } |
| 1312 InspectorInstrumentation::mediaQueryResultChanged(document); | 1312 InspectorInstrumentation::mediaQueryResultChanged(document); |
| 1313 | 1313 |
| 1314 if (m_deviceMetricsOverridden) { | 1314 if (m_deviceMetricsOverridden) { |
| 1315 m_page->settings().setTextAutosizingEnabled(emulateViewport); | 1315 m_page->settings().setTextAutosizingEnabled(mobile); |
| 1316 m_page->settings().setDeviceScaleAdjustment(calculateFontScaleFactor(wid
th, height, static_cast<float>(deviceScaleFactor))); | 1316 m_page->settings().setDeviceScaleAdjustment(calculateFontScaleFactor(wid
th, height, static_cast<float>(deviceScaleFactor))); |
| 1317 } else { | 1317 } else { |
| 1318 m_page->settings().setTextAutosizingEnabled(m_embedderTextAutosizingEnab
led); | 1318 m_page->settings().setTextAutosizingEnabled(m_embedderTextAutosizingEnab
led); |
| 1319 m_page->settings().setDeviceScaleAdjustment(m_embedderFontScaleFactor); | 1319 m_page->settings().setDeviceScaleAdjustment(m_embedderFontScaleFactor); |
| 1320 } | 1320 } |
| 1321 | 1321 |
| 1322 // FIXME: allow metrics override, fps counter and continuous painting at the
same time: crbug.com/299837. | 1322 // FIXME: allow metrics override, fps counter and continuous painting at the
same time: crbug.com/299837. |
| 1323 m_client->setShowFPSCounter(m_state->getBoolean(PageAgentState::pageAgentSho
wFPSCounter) && !m_deviceMetricsOverridden); | 1323 m_client->setShowFPSCounter(m_state->getBoolean(PageAgentState::pageAgentSho
wFPSCounter) && !m_deviceMetricsOverridden); |
| 1324 m_client->setContinuousPaintingEnabled(m_state->getBoolean(PageAgentState::p
ageAgentContinuousPaintingEnabled) && !m_deviceMetricsOverridden); | 1324 m_client->setContinuousPaintingEnabled(m_state->getBoolean(PageAgentState::p
ageAgentContinuousPaintingEnabled) && !m_deviceMetricsOverridden); |
| 1325 } | 1325 } |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1373 document = m_page->deprecatedLocalMainFrame()->document(); | 1373 document = m_page->deprecatedLocalMainFrame()->document(); |
| 1374 if (document) { | 1374 if (document) { |
| 1375 document->mediaQueryAffectingValueChanged(); | 1375 document->mediaQueryAffectingValueChanged(); |
| 1376 document->styleResolverChanged(); | 1376 document->styleResolverChanged(); |
| 1377 document->updateLayout(); | 1377 document->updateLayout(); |
| 1378 } | 1378 } |
| 1379 } | 1379 } |
| 1380 | 1380 |
| 1381 bool InspectorPageAgent::applyViewportStyleOverride(StyleResolver* resolver) | 1381 bool InspectorPageAgent::applyViewportStyleOverride(StyleResolver* resolver) |
| 1382 { | 1382 { |
| 1383 if (!m_deviceMetricsOverridden || !m_emulateViewportEnabled) | 1383 if (!m_deviceMetricsOverridden || !m_emulateMobileEnabled) |
| 1384 return false; | 1384 return false; |
| 1385 | 1385 |
| 1386 RefPtrWillBeRawPtr<StyleSheetContents> styleSheet = StyleSheetContents::crea
te(CSSParserContext(UASheetMode, 0)); | 1386 RefPtrWillBeRawPtr<StyleSheetContents> styleSheet = StyleSheetContents::crea
te(CSSParserContext(UASheetMode, 0)); |
| 1387 styleSheet->parseString(String(viewportAndroidCss, sizeof(viewportAndroidCss
))); | 1387 styleSheet->parseString(String(viewportAndroidCss, sizeof(viewportAndroidCss
))); |
| 1388 OwnPtrWillBeRawPtr<RuleSet> ruleSet = RuleSet::create(); | 1388 OwnPtrWillBeRawPtr<RuleSet> ruleSet = RuleSet::create(); |
| 1389 ruleSet->addRulesFromSheet(styleSheet.get(), MediaQueryEvaluator("screen")); | 1389 ruleSet->addRulesFromSheet(styleSheet.get(), MediaQueryEvaluator("screen")); |
| 1390 resolver->viewportStyleResolver()->collectViewportRules(ruleSet.get(), Viewp
ortStyleResolver::UserAgentOrigin); | 1390 resolver->viewportStyleResolver()->collectViewportRules(ruleSet.get(), Viewp
ortStyleResolver::UserAgentOrigin); |
| 1391 return true; | 1391 return true; |
| 1392 } | 1392 } |
| 1393 | 1393 |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1427 bool InspectorPageAgent::getEditedResourceContent(const String& url, String* con
tent) | 1427 bool InspectorPageAgent::getEditedResourceContent(const String& url, String* con
tent) |
| 1428 { | 1428 { |
| 1429 if (!m_editedResourceContent.contains(url)) | 1429 if (!m_editedResourceContent.contains(url)) |
| 1430 return false; | 1430 return false; |
| 1431 *content = m_editedResourceContent.get(url); | 1431 *content = m_editedResourceContent.get(url); |
| 1432 return true; | 1432 return true; |
| 1433 } | 1433 } |
| 1434 | 1434 |
| 1435 } // namespace WebCore | 1435 } // namespace WebCore |
| 1436 | 1436 |
| OLD | NEW |