Diff
Modified: trunk/LayoutTests/ChangeLog (91407 => 91408)
--- trunk/LayoutTests/ChangeLog 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/LayoutTests/ChangeLog 2011-07-20 21:52:18 UTC (rev 91408)
@@ -1,3 +1,22 @@
+2011-07-19 Vsevolod Vlasov <vse...@chromium.org>
+
+ Web Inspector: Add support for disabling cache in web inspector.
+ https://bugs.webkit.org/show_bug.cgi?id=64097
+
+ Reviewed by Pavel Feldman.
+
+ * http/tests/inspector/inspector-test.js:
+ (initialize_InspectorTest):
+ * http/tests/inspector/network/network-disable-cache-memory-expected.txt: Added.
+ * http/tests/inspector/network/network-disable-cache-memory.html: Added.
+ * http/tests/inspector/network/network-disable-cache-xhrs-expected.txt: Added.
+ * http/tests/inspector/network/network-disable-cache-xhrs.html: Added.
+ * http/tests/inspector/network/resources/resource.php:
+ * platform/gtk/Skipped:
+ * platform/mac/Skipped:
+ * platform/qt/Skipped:
+ * platform/win/Skipped:
+
2011-07-20 Stephen White <senorbla...@chromium.org>
Chromium test_expectations update for tests now passing on WIN7.
Modified: trunk/LayoutTests/http/tests/inspector/inspector-test.js (91407 => 91408)
--- trunk/LayoutTests/http/tests/inspector/inspector-test.js 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/LayoutTests/http/tests/inspector/inspector-test.js 2011-07-20 21:52:18 UTC (rev 91408)
@@ -263,7 +263,7 @@
InspectorTest.assertTrue = function(found, message)
{
- InspectorTest.assertEquals(true, !!found);
+ InspectorTest.assertEquals(true, !!found, message);
}
InspectorTest.safeWrap = function(func, onexception)
Added: trunk/LayoutTests/http/tests/inspector/network/network-disable-cache-memory-expected.txt (0 => 91408)
--- trunk/LayoutTests/http/tests/inspector/network/network-disable-cache-memory-expected.txt (rev 0)
+++ trunk/LayoutTests/http/tests/inspector/network/network-disable-cache-memory-expected.txt 2011-07-20 21:52:18 UTC (rev 91408)
@@ -0,0 +1,8 @@
+CONSOLE MESSAGE: line 26: First two images loaded.
+CONSOLE MESSAGE: line 36: Done.
+Tests disabling cache from inspector.
+
+
+http://127.0.0.1:8000/inspector/network/resources/resource.php?type=image&random=1&cached=1
+http://127.0.0.1:8000/inspector/network/resources/resource.php?type=image&random=1&cached=1
+
Property changes on: trunk/LayoutTests/http/tests/inspector/network/network-disable-cache-memory-expected.txt
___________________________________________________________________
Added: svn:eol-style
Added: trunk/LayoutTests/http/tests/inspector/network/network-disable-cache-memory.html (0 => 91408)
--- trunk/LayoutTests/http/tests/inspector/network/network-disable-cache-memory.html (rev 0)
+++ trunk/LayoutTests/http/tests/inspector/network/network-disable-cache-memory.html 2011-07-20 21:52:18 UTC (rev 91408)
@@ -0,0 +1,93 @@
+<html>
+<head>
+<script src=""
+<script src=""
+<script>
+function loadImage(callback)
+{
+ var image = new Image();
+ image._onload_ = callback;
+ image.src = ""
+ document.body.appendChild(image);
+}
+
+function loadData()
+{
+ loadImage(imageLoaded1);
+}
+
+function imageLoaded1()
+{
+ loadImage(imageLoaded2);
+}
+
+function imageLoaded2()
+{
+ console.log("First two images loaded.");
+}
+
+function cacheDisabled()
+{
+ loadImage(allImagesLoaded);
+}
+
+function allImagesLoaded()
+{
+ console.log("Done.");
+}
+
+function test()
+{
+ InspectorTest.addSniffer(WebInspector.ConsoleView.prototype, "addMessage", step2);
+ InspectorTest.evaluateInPage("loadData()");
+
+ function step2(msg)
+ {
+ NetworkAgent.setCacheDisabled(true, step3);
+ }
+
+ function step3(msg)
+ {
+ InspectorTest.addSniffer(WebInspector.ConsoleView.prototype, "addMessage", step4);
+ InspectorTest.evaluateInPage("cacheDisabled()");
+ }
+
+ function step4(msg)
+ {
+ // inspector-test.js appears in network panel occasionally in Safari on
+ // Mac, so checking two last resources.
+ var resourcesCount = WebInspector.panels.network.resources.length;
+ var resource1 = WebInspector.panels.network.resources[resourcesCount - 2];
+ var resource2 = WebInspector.panels.network.resources[resourcesCount - 1];
+ resource1.requestContent(contentLoaded);
+ resource2.requestContent(contentLoaded);
+ }
+
+ var contentLoadedCount = 0;
+ function contentLoaded()
+ {
+ if (++contentLoadedCount !== 2)
+ return;
+
+ var resourcesCount = WebInspector.panels.network.resources.length;
+ var resource1 = WebInspector.panels.network.resources[resourcesCount - 2];
+ var resource2 = WebInspector.panels.network.resources[resourcesCount - 1];
+
+ InspectorTest.addResult(resource1.url);
+ InspectorTest.addResult(resource2.url);
+ InspectorTest.assertTrue(resource1.content !== resource2.content, "Second and third resources differ");
+ NetworkAgent.setCacheDisabled(false, step5);
+ }
+
+ function step5(msg)
+ {
+ InspectorTest.completeTest();
+ }
+}
+</script>
+</head>
+<body _onload_="runTest()">
+ <p>Tests disabling cache from inspector.</p>
+</body>
+</html>
+
Property changes on: trunk/LayoutTests/http/tests/inspector/network/network-disable-cache-memory.html
___________________________________________________________________
Added: svn:eol-style
Added: trunk/LayoutTests/http/tests/inspector/network/network-disable-cache-xhrs-expected.txt (0 => 91408)
--- trunk/LayoutTests/http/tests/inspector/network/network-disable-cache-xhrs-expected.txt (rev 0)
+++ trunk/LayoutTests/http/tests/inspector/network/network-disable-cache-xhrs-expected.txt 2011-07-20 21:52:18 UTC (rev 91408)
@@ -0,0 +1,8 @@
+CONSOLE MESSAGE: line 23: First XHR loaded.
+CONSOLE MESSAGE: line 33: Done.
+Tests disabling cache from inspector.
+
+http://127.0.0.1:8000/inspector/network/resources/resource.php?random=1&cached=1
+http://127.0.0.1:8000/inspector/network/resources/resource.php?random=1&cached=1
+http://127.0.0.1:8000/inspector/network/resources/resource.php?random=1&cached=1
+
Property changes on: trunk/LayoutTests/http/tests/inspector/network/network-disable-cache-xhrs-expected.txt
___________________________________________________________________
Added: svn:eol-style
Added: trunk/LayoutTests/http/tests/inspector/network/network-disable-cache-xhrs.html (0 => 91408)
--- trunk/LayoutTests/http/tests/inspector/network/network-disable-cache-xhrs.html (rev 0)
+++ trunk/LayoutTests/http/tests/inspector/network/network-disable-cache-xhrs.html 2011-07-20 21:52:18 UTC (rev 91408)
@@ -0,0 +1,102 @@
+<html>
+<head>
+<script src=""
+<script src=""
+<script>
+function loadXHR(callback)
+{
+ doXHR("GET", "resources/resource.php?random=1&cached=1", true, callback);
+}
+
+function loadData()
+{
+ loadXHR(xhrLoaded1);
+}
+
+function xhrLoaded1()
+{
+ loadXHR(xhrLoaded2);
+}
+
+function xhrLoaded2()
+{
+ console.log("First XHR loaded.");
+}
+
+function cacheDisabled()
+{
+ loadXHR(allXHRsLoaded);
+}
+
+function allXHRsLoaded()
+{
+ console.log("Done.");
+}
+
+function test()
+{
+ // Since this test could be run together with other inspector backend cache
+ // tests, we need to reset size limits to default ones.
+ InspectorTest.resetInspectorResourcesData(step1);
+
+ function step1()
+ {
+ InspectorTest.addSniffer(WebInspector.ConsoleView.prototype, "addMessage", step2);
+ InspectorTest.evaluateInPage("loadData()");
+ }
+
+ function step2(msg)
+ {
+ NetworkAgent.setCacheDisabled(true, step3);
+ }
+
+ function step3(msg)
+ {
+ InspectorTest.addSniffer(WebInspector.ConsoleView.prototype, "addMessage", step4);
+ InspectorTest.evaluateInPage("cacheDisabled()");
+ }
+
+ function step4(msg)
+ {
+ // inspector-test.js appears in network panel occasionally in Safari on
+ // Mac, so checking two last resources.
+ var resourcesCount = WebInspector.panels.network.resources.length;
+ var resource1 = WebInspector.panels.network.resources[resourcesCount - 3];
+ var resource2 = WebInspector.panels.network.resources[resourcesCount - 2];
+ var resource3 = WebInspector.panels.network.resources[resourcesCount - 1];
+ resource1.requestContent(contentLoaded);
+ resource2.requestContent(contentLoaded);
+ resource3.requestContent(contentLoaded);
+ }
+
+ var contentLoadedCount = 0;
+ function contentLoaded()
+ {
+ if (++contentLoadedCount !== 3)
+ return;
+
+ var resourcesCount = WebInspector.panels.network.resources.length;
+ var resource1 = WebInspector.panels.network.resources[resourcesCount - 3];
+ var resource2 = WebInspector.panels.network.resources[resourcesCount - 2];
+ var resource3 = WebInspector.panels.network.resources[resourcesCount - 1];
+
+ InspectorTest.addResult(resource1.url);
+ InspectorTest.addResult(resource2.url);
+ InspectorTest.addResult(resource3.url);
+ InspectorTest.assertTrue(resource1.content === resource2.content, "First and second resources are equal");
+ InspectorTest.assertTrue(resource2.content !== resource3.content, "Second and third resources differ");
+ NetworkAgent.setCacheDisabled(false, step5);
+ }
+
+ function step5(msg)
+ {
+ InspectorTest.completeTest();
+ }
+}
+</script>
+</head>
+<body _onload_="runTest()">
+ <p>Tests disabling cache from inspector.</p>
+</body>
+</html>
+
Property changes on: trunk/LayoutTests/http/tests/inspector/network/network-disable-cache-xhrs.html
___________________________________________________________________
Added: svn:eol-style
Modified: trunk/LayoutTests/http/tests/inspector/network/resources/resource.php (91407 => 91408)
--- trunk/LayoutTests/http/tests/inspector/network/resources/resource.php 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/LayoutTests/http/tests/inspector/network/resources/resource.php 2011-07-20 21:52:18 UTC (rev 91408)
@@ -8,19 +8,37 @@
$jscontent = $_GET["jscontent"];
$chunked = $_GET["chunked"];
$random = $_GET["random"];
+ $cached = $_GET["cached"];
+ # Wait before sending response
+ if ($wait)
+ usleep($wait * 1000);
+
+ # Exit early if we return 304 code.
+ if ($cached && $_SERVER["HTTP_IF_MODIFIED_SINCE"]) {
+ header("HTTP/1.0 304 Not Modified");
+ exit;
+ }
+
# Enable gzip compression if needed
if ($gzip)
ob_start("ob_gzhandler");
- # Wait before sending response
- if ($wait)
- usleep($wait * 1000);
+ # Send headers
+ if ($cached) {
+ $max_age = 12 * 31 * 24 * 60 * 60; //one year
+ $expires = gmdate(DATE_RFC1123, time() + $max_age);
+ $last_modified = gmdate(DATE_RFC1123, time() - $max_age);
- # Send headers
- header("Expires: Thu, 01 Dec 2003 16:00:00 GMT");
- header("Cache-Control: no-store, no-cache, must-revalidate");
- header("Pragma: no-cache");
+ header("Cache-Control: public, max-age=" . 5*$max_age);
+ header("Cache-control: max-age=0");
+ header("Expires: " . $expires);
+ header("Last-Modified: " . $last_modified);
+ } else {
+ header("Expires: Thu, 01 Dec 2003 16:00:00 GMT");
+ header("Cache-Control: no-store, no-cache, must-revalidate");
+ header("Pragma: no-cache");
+ }
if ($type == "js")
header("Content-Type:text/_javascript_; charset=UTF-8");
else if ($type == "image")
@@ -94,6 +112,8 @@
flush();
}
echo("world");
+ if ($random)
+ echo(": " . rand());
}
}
?>
Modified: trunk/LayoutTests/platform/gtk/Skipped (91407 => 91408)
--- trunk/LayoutTests/platform/gtk/Skipped 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/LayoutTests/platform/gtk/Skipped 2011-07-20 21:52:18 UTC (rev 91408)
@@ -1463,6 +1463,10 @@
http/tests/inspector/network/network-size-sync.html
http/tests/inspector/network/network-size.html
+# https://bugs.webkit.org/show_bug.cgi?id=64097
+http/tests/inspector/network/network-disable-cache-memory.html
+http/tests/inspector/network/network-disable-cache-xhrs.html
+
# https://bugs.webkit.org/show_bug.cgi?id=61437
http/tests/inspector/network/network-clear-after-disabled.html
http/tests/inspector/network/network-close-load-open.html
Modified: trunk/LayoutTests/platform/mac/Skipped (91407 => 91408)
--- trunk/LayoutTests/platform/mac/Skipped 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/LayoutTests/platform/mac/Skipped 2011-07-20 21:52:18 UTC (rev 91408)
@@ -326,6 +326,10 @@
http/tests/inspector/network/network-size-chunked.html
http/tests/inspector/network/network-size-sync.html
+# https://bugs.webkit.org/show_bug.cgi?id=64097
+http/tests/inspector/network/network-disable-cache-memory.html
+http/tests/inspector/network/network-disable-cache-xhrs.html
+
# https://bugs.webkit.org/show_bug.cgi?id=58515
compositing/overflow/clip-content-under-overflow-controls.html
Modified: trunk/LayoutTests/platform/qt/Skipped (91407 => 91408)
--- trunk/LayoutTests/platform/qt/Skipped 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/LayoutTests/platform/qt/Skipped 2011-07-20 21:52:18 UTC (rev 91408)
@@ -2200,6 +2200,10 @@
http/tests/inspector/network/network-size-chunked.html
http/tests/inspector/network/network-size-sync.html
+# https://bugs.webkit.org/show_bug.cgi?id=64097
+http/tests/inspector/network/network-disable-cache-memory.html
+http/tests/inspector/network/network-disable-cache-xhrs.html
+
# [Qt] media/video-playbackrate.html fails
# https://bugs.webkit.org/show_bug.cgi?id=57476
media/video-playbackrate.html
Modified: trunk/LayoutTests/platform/win/Skipped (91407 => 91408)
--- trunk/LayoutTests/platform/win/Skipped 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/LayoutTests/platform/win/Skipped 2011-07-20 21:52:18 UTC (rev 91408)
@@ -52,6 +52,10 @@
http/tests/inspector/network/network-size-chunked.html
http/tests/inspector/network/network-size-sync.html
+# https://bugs.webkit.org/show_bug.cgi?id=64097
+http/tests/inspector/network/network-disable-cache-memory.html
+http/tests/inspector/network/network-disable-cache-xhrs.html
+
# Fails <rdar://problem/5674289>
media/video-seek-past-end-paused.html
Modified: trunk/Source/WebCore/ChangeLog (91407 => 91408)
--- trunk/Source/WebCore/ChangeLog 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/Source/WebCore/ChangeLog 2011-07-20 21:52:18 UTC (rev 91408)
@@ -1,3 +1,31 @@
+2011-07-19 Vsevolod Vlasov <vse...@chromium.org>
+
+ Web Inspector: Add support for disabling cache in web inspector.
+ https://bugs.webkit.org/show_bug.cgi?id=64097
+
+ Reviewed by Pavel Feldman.
+
+ Tests: http/tests/inspector/network/network-disable-cache-memory.html
+ http/tests/inspector/network/network-disable-cache-xhrs.html
+
+ * English.lproj/localizedStrings.js:
+ * inspector/Inspector.json:
+ * inspector/InspectorClient.h:
+ (WebCore::InspectorClient::setCacheDisabled):
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::InspectorResourceAgent::willSendRequest):
+ (WebCore::InspectorResourceAgent::enable):
+ (WebCore::InspectorResourceAgent::disable):
+ (WebCore::InspectorResourceAgent::setCacheDisabled):
+ * inspector/InspectorResourceAgent.h:
+ * inspector/front-end/NetworkManager.js:
+ (WebInspector.NetworkManager.prototype.inflightResourceForURL):
+ (WebInspector.NetworkManager.prototype._cacheDisabledSettingChanged):
+ * inspector/front-end/Settings.js:
+ (WebInspector.Settings):
+ * inspector/front-end/SettingsScreen.js:
+ (WebInspector.SettingsScreen):
+
2011-07-20 Peter Kasting <pkast...@google.com>
Remove "const" from obviously-non-const accessors
Modified: trunk/Source/WebCore/English.lproj/localizedStrings.js
(Binary files differ)
Modified: trunk/Source/WebCore/inspector/Inspector.json (91407 => 91408)
--- trunk/Source/WebCore/inspector/Inspector.json 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/Source/WebCore/inspector/Inspector.json 2011-07-20 21:52:18 UTC (rev 91408)
@@ -508,7 +508,14 @@
{
"name": "clearBrowserCookies",
"description": "Clears browser cookies."
- }
+ },
+ {
+ "name": "setCacheDisabled",
+ "parameters": [
+ { "name": "cacheDisabled", "type": "boolean", "description": "Cache disabled state." }
+ ],
+ "description": "Toggles ignoring cache for each request. If <code>true</code>, cache will not be used."
+ },
],
"events": [
{
Modified: trunk/Source/WebCore/inspector/InspectorClient.h (91407 => 91408)
--- trunk/Source/WebCore/inspector/InspectorClient.h 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/Source/WebCore/inspector/InspectorClient.h 2011-07-20 21:52:18 UTC (rev 91408)
@@ -54,6 +54,7 @@
virtual void clearBrowserCache() { }
virtual void clearBrowserCookies() { }
+ virtual void setCacheDisabled(bool) { }
bool doDispatchMessageOnFrontendPage(Page* frontendPage, const String& message);
};
Modified: trunk/Source/WebCore/inspector/InspectorResourceAgent.cpp (91407 => 91408)
--- trunk/Source/WebCore/inspector/InspectorResourceAgent.cpp 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/Source/WebCore/inspector/InspectorResourceAgent.cpp 2011-07-20 21:52:18 UTC (rev 91408)
@@ -74,6 +74,7 @@
static const char resourceAgentEnabled[] = "resourceAgentEnabled";
static const char extraRequestHeaders[] = "extraRequestHeaders";
static const char backgroundEventsCollectionEnabled[] = "backgroundEventsCollectionEnabled";
+static const char cacheDisabled[] = "cacheDisabled";
}
void InspectorResourceAgent::setFrontend(InspectorFrontend* frontend)
@@ -217,6 +218,12 @@
request.setReportLoadTiming(true);
request.setReportRawHeaders(true);
+ if (m_state->getBoolean(ResourceAgentState::cacheDisabled)) {
+ request.setCachePolicy(ReloadIgnoringCacheData);
+ request.setHTTPHeaderField("Pragma", "no-cache");
+ request.setHTTPHeaderField("Cache-Control", "no-cache");
+ }
+
RefPtr<ScriptCallStack> callStack = createScriptCallStack(ScriptCallStack::maxCallStackSizeToCapture, true);
RefPtr<InspectorArray> callStackValue;
if (callStack)
@@ -435,12 +442,15 @@
return;
m_state->setBoolean(ResourceAgentState::resourceAgentEnabled, true);
m_instrumentingAgents->setInspectorResourceAgent(this);
+
+ m_client->setCacheDisabled(m_state->getBoolean(ResourceAgentState::cacheDisabled));
}
void InspectorResourceAgent::disable(ErrorString*)
{
m_state->setBoolean(ResourceAgentState::resourceAgentEnabled, false);
m_instrumentingAgents->setInspectorResourceAgent(0);
+ m_client->setCacheDisabled(false);
}
void InspectorResourceAgent::setUserAgentOverride(ErrorString*, const String& userAgent)
@@ -499,6 +509,12 @@
m_client->clearBrowserCookies();
}
+void InspectorResourceAgent::setCacheDisabled(ErrorString*, bool cacheDisabled)
+{
+ m_client->setCacheDisabled(cacheDisabled);
+ m_state->setBoolean(ResourceAgentState::cacheDisabled, cacheDisabled);
+}
+
void InspectorResourceAgent::mainFrameNavigated(DocumentLoader* loader)
{
m_resourcesData->clear(m_pageAgent->loaderId(loader));
Modified: trunk/Source/WebCore/inspector/InspectorResourceAgent.h (91407 => 91408)
--- trunk/Source/WebCore/inspector/InspectorResourceAgent.h 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/Source/WebCore/inspector/InspectorResourceAgent.h 2011-07-20 21:52:18 UTC (rev 91408)
@@ -127,6 +127,7 @@
void clearBrowserCache(ErrorString*);
void clearBrowserCookies(ErrorString*);
+ void setCacheDisabled(ErrorString*, bool cacheDisabled);
private:
InspectorResourceAgent(InstrumentingAgents*, InspectorPageAgent*, InspectorClient*, InspectorState*);
Modified: trunk/Source/WebCore/inspector/front-end/NetworkManager.js (91407 => 91408)
--- trunk/Source/WebCore/inspector/front-end/NetworkManager.js 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/Source/WebCore/inspector/front-end/NetworkManager.js 2011-07-20 21:52:18 UTC (rev 91408)
@@ -32,7 +32,11 @@
{
WebInspector.Object.call(this);
this._dispatcher = new WebInspector.NetworkDispatcher(this);
+ if (WebInspector.settings.cacheDisabled.get())
+ NetworkAgent.setCacheDisabled(true);
NetworkAgent.enable();
+
+ WebInspector.settings.cacheDisabled.addChangeListener(this._cacheDisabledSettingChanged.bind(this));
}
WebInspector.NetworkManager.EventTypes = {
@@ -62,6 +66,11 @@
inflightResourceForURL: function(url)
{
return this._dispatcher._inflightResourcesByURL[url];
+ },
+
+ _cacheDisabledSettingChanged: function(event)
+ {
+ NetworkAgent.setCacheDisabled(event.data);
}
}
Modified: trunk/Source/WebCore/inspector/front-end/Settings.js (91407 => 91408)
--- trunk/Source/WebCore/inspector/front-end/Settings.js 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/Source/WebCore/inspector/front-end/Settings.js 2011-07-20 21:52:18 UTC (rev 91408)
@@ -53,7 +53,8 @@
saveAsAvailable: false,
useLowerCaseMenuTitlesOnWindows: false,
canInspectWorkers: false,
- canClearCacheAndCookies: false
+ canClearCacheAndCookies: false,
+ canDisableCache: false
}
WebInspector.Settings = function()
@@ -82,6 +83,7 @@
this.installApplicationSetting("domBreakpoints", []);
this.installApplicationSetting("xhrBreakpoints", []);
this.installApplicationSetting("workerInspectionEnabled", []);
+ this.installApplicationSetting("cacheDisabled", false);
// If there are too many breakpoints in a storage, it is likely due to a recent bug that caused
// periodical breakpoints duplication leading to inspector slowness.
Modified: trunk/Source/WebCore/inspector/front-end/SettingsScreen.js (91407 => 91408)
--- trunk/Source/WebCore/inspector/front-end/SettingsScreen.js 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/Source/WebCore/inspector/front-end/SettingsScreen.js 2011-07-20 21:52:18 UTC (rev 91408)
@@ -45,6 +45,11 @@
[ WebInspector.StylesSidebarPane.ColorFormat.RGB, "RGB: rgb(128, 255, 255)" ],
[ WebInspector.StylesSidebarPane.ColorFormat.HSL, "HSL: hsl(300, 80%, 90%)" ] ], WebInspector.settings.colorFormat));
+ if (Preferences.canDisableCache) {
+ p = this._appendSection(WebInspector.UIString("Network"));
+ p.appendChild(this._createCheckboxSetting(WebInspector.UIString("Disable cache"), WebInspector.settings.cacheDisabled));
+ }
+
p = this._appendSection(WebInspector.UIString("Console"));
p.appendChild(this._createCheckboxSetting(WebInspector.UIString("Log XMLHttpRequests"), WebInspector.settings.monitoringXHREnabled));
p.appendChild(this._createCheckboxSetting(WebInspector.UIString("Preserve log upon navigation"), WebInspector.settings.preserveConsoleLog));
Modified: trunk/Source/WebKit/chromium/ChangeLog (91407 => 91408)
--- trunk/Source/WebKit/chromium/ChangeLog 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/Source/WebKit/chromium/ChangeLog 2011-07-20 21:52:18 UTC (rev 91408)
@@ -1,3 +1,19 @@
+2011-07-19 Vsevolod Vlasov <vse...@chromium.org>
+
+ Web Inspector: Add support for disabling cache in web inspector.
+ https://bugs.webkit.org/show_bug.cgi?id=64097
+
+ Reviewed by Pavel Feldman.
+
+ * src/InspectorClientImpl.cpp:
+ (WebKit::InspectorClientImpl::setCacheDisabled):
+ * src/InspectorClientImpl.h:
+ * src/WebDevToolsAgentImpl.cpp:
+ (WebKit::WebDevToolsAgentImpl::setCacheDisabled):
+ * src/WebDevToolsAgentImpl.h:
+ * src/js/DevTools.js:
+ ():
+
2011-07-20 Peter Kasting <pkast...@google.com>
Remove "const" from obviously-non-const accessors
Modified: trunk/Source/WebKit/chromium/src/InspectorClientImpl.cpp (91407 => 91408)
--- trunk/Source/WebKit/chromium/src/InspectorClientImpl.cpp 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/Source/WebKit/chromium/src/InspectorClientImpl.cpp 2011-07-20 21:52:18 UTC (rev 91408)
@@ -106,6 +106,12 @@
agent->clearBrowserCookies();
}
+void InspectorClientImpl::setCacheDisabled(bool cacheDisabled)
+{
+ if (WebDevToolsAgentImpl* agent = devToolsAgent())
+ agent->setCacheDisabled(cacheDisabled);
+}
+
WebDevToolsAgentImpl* InspectorClientImpl::devToolsAgent()
{
return static_cast<WebDevToolsAgentImpl*>(m_inspectedWebView->devToolsAgent());
Modified: trunk/Source/WebKit/chromium/src/InspectorClientImpl.h (91407 => 91408)
--- trunk/Source/WebKit/chromium/src/InspectorClientImpl.h 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/Source/WebKit/chromium/src/InspectorClientImpl.h 2011-07-20 21:52:18 UTC (rev 91408)
@@ -59,6 +59,7 @@
virtual void clearBrowserCache();
virtual void clearBrowserCookies();
+ virtual void setCacheDisabled(bool);
private:
WebDevToolsAgentImpl* devToolsAgent();
Modified: trunk/Source/WebKit/chromium/src/WebDevToolsAgentImpl.cpp (91407 => 91408)
--- trunk/Source/WebKit/chromium/src/WebDevToolsAgentImpl.cpp 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/Source/WebKit/chromium/src/WebDevToolsAgentImpl.cpp 2011-07-20 21:52:18 UTC (rev 91408)
@@ -39,6 +39,7 @@
#include "InspectorBackendDispatcher.h"
#include "InspectorController.h"
#include "InspectorInstrumentation.h"
+#include "MemoryCache.h"
#include "Page.h"
#include "PageGroup.h"
#include "PageOverlay.h"
@@ -316,6 +317,11 @@
m_client->clearBrowserCookies();
}
+void WebDevToolsAgentImpl::setCacheDisabled(bool cacheDisabled)
+{
+ memoryCache()->setDisabled(cacheDisabled);
+}
+
// FIXME: remove once renamed to setProcessId downstream.
void WebDevToolsAgentImpl::setAgentIdentifierPrefix(const WebString& prefix)
{
Modified: trunk/Source/WebKit/chromium/src/WebDevToolsAgentImpl.h (91407 => 91408)
--- trunk/Source/WebKit/chromium/src/WebDevToolsAgentImpl.h 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/Source/WebKit/chromium/src/WebDevToolsAgentImpl.h 2011-07-20 21:52:18 UTC (rev 91408)
@@ -95,6 +95,7 @@
virtual void clearBrowserCache();
virtual void clearBrowserCookies();
+ virtual void setCacheDisabled(bool);
int hostId() { return m_hostId; }
Modified: trunk/Source/WebKit/chromium/src/js/DevTools.js (91407 => 91408)
--- trunk/Source/WebKit/chromium/src/js/DevTools.js 2011-07-20 21:27:22 UTC (rev 91407)
+++ trunk/Source/WebKit/chromium/src/js/DevTools.js 2011-07-20 21:52:18 UTC (rev 91408)
@@ -54,6 +54,7 @@
Preferences.useLowerCaseMenuTitlesOnWindows = true;
Preferences.canInspectWorkers = true;
Preferences.canClearCacheAndCookies = true;
+ Preferences.canDisableCache = true;
})();
// Recognize WebP as a valid image mime type.