Changeset 61014 in webkit
- Timestamp:
- Jun 11, 2010 6:47:12 AM (14 years ago)
- Location:
- trunk
- Files:
-
- 20 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/WebCore/ChangeLog
r61012 r61014 1 2010-06-11 Alexander Pavlov <apavlov@chromium.org> 2 3 Reviewed by Pavel Feldman. 4 5 Web Inspector: Enable serialization/deserialization of the frontend state 6 https://bugs.webkit.org/show_bug.cgi?id=40228 7 8 * inspector/InspectorBackend.cpp: 9 (WebCore::InspectorBackend::saveApplicationSettings): 10 (WebCore::InspectorBackend::saveSessionSettings): 11 * inspector/InspectorBackend.h: 12 * inspector/InspectorBackend.idl: 13 * inspector/InspectorController.cpp: 14 (WebCore::InspectorController::InspectorController): 15 (WebCore::InspectorController::setSessionSettings): 16 (WebCore::InspectorController::populateScriptObjects): 17 (WebCore::InspectorController::didCommitLoad): 18 * inspector/InspectorController.h: 19 * inspector/InspectorFrontend.cpp: 20 (WebCore::InspectorFrontend::populateApplicationSettings): 21 (WebCore::InspectorFrontend::populateSessionSettings): 22 * inspector/InspectorFrontend.h: 23 * inspector/front-end/ConsoleView.js: 24 (WebInspector.ConsoleView.prototype._settingsLoaded): 25 (WebInspector.ConsoleView.prototype._enterKeyPressed.printResult): 26 (WebInspector.ConsoleView.prototype._enterKeyPressed): 27 * inspector/front-end/EventListenersSidebarPane.js: 28 (WebInspector.EventListenersSidebarPane.prototype._settingsLoaded): 29 (WebInspector.EventListenersSidebarPane.prototype): 30 (): 31 * inspector/front-end/InspectorBackendStub.js: 32 (.WebInspector.InspectorBackendStub.prototype.saveApplicationSettings): 33 (.WebInspector.InspectorBackendStub.prototype.saveSessionSettings): 34 * inspector/front-end/ResourceView.js: 35 (WebInspector.ResourceView.prototype._selectTab): 36 (WebInspector.ResourceView.prototype._selectHeadersTab): 37 (WebInspector.ResourceView.prototype.selectContentTab): 38 * inspector/front-end/ResourcesPanel.js: 39 (WebInspector.ResourcesPanel.prototype._createStatusbarButtons): 40 (WebInspector.ResourcesPanel.prototype._settingsLoaded): 41 (WebInspector.ResourcesPanel.prototype._toggleLargerResources): 42 * inspector/front-end/ScriptsPanel.js: 43 (WebInspector.ScriptsPanel.prototype._showScriptOrResource): 44 (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu): 45 * inspector/front-end/Settings.js: 46 (WebInspector.populateApplicationSettings): 47 (WebInspector.populateSessionSettings): 48 (WebInspector.Settings): 49 (WebInspector.Settings.prototype.reset): 50 (WebInspector.Settings.prototype._load): 51 (WebInspector.Settings.prototype._set): 52 * inspector/front-end/StylesSidebarPane.js: 53 (WebInspector.StylesSidebarPane.prototype._settingsLoaded): 54 (WebInspector.StylesSidebarPane.prototype.update): 55 (WebInspector.StylesSidebarPane.prototype._changeSetting): 56 (WebInspector.StylesSidebarPane.prototype._changeColorFormat): 57 (WebInspector.ComputedStyleSidebarPane.settingsLoaded): 58 (WebInspector.ComputedStyleSidebarPane.showInheritedToggleFunction): 59 (WebInspector.ComputedStyleSidebarPane): 60 * inspector/front-end/WatchExpressionsSidebarPane.js: 61 (WebInspector.WatchExpressionsSidebarPane): 62 (WebInspector.WatchExpressionsSidebarPane.prototype._settingsLoaded): 63 (WebInspector.WatchExpressionsSection): 64 (WebInspector.WatchExpressionsSection.prototype.saveExpressions): 65 * inspector/front-end/inspector.js: 66 (WebInspector.loaded): 67 (WebInspector.reset): 68 1 69 2010-06-10 Pavel Feldman <pfeldman@chromium.org> 2 70 -
trunk/WebCore/inspector/InspectorBackend.cpp
r61012 r61014 80 80 } 81 81 82 void InspectorBackend::save FrontendSettings(const String& settings)82 void InspectorBackend::saveApplicationSettings(const String& settings) 83 83 { 84 84 if (m_inspectorController) 85 85 m_inspectorController->setSetting(InspectorController::frontendSettingsSettingName(), settings); 86 } 87 88 void InspectorBackend::saveSessionSettings(const String& settings) 89 { 90 if (m_inspectorController) 91 m_inspectorController->setSessionSettings(settings); 86 92 } 87 93 -
trunk/WebCore/inspector/InspectorBackend.h
r61012 r61014 58 58 void disconnectController() { m_inspectorController = 0; } 59 59 60 void saveFrontendSettings(const String&); 60 void saveApplicationSettings(const String&); 61 void saveSessionSettings(const String&); 61 62 62 63 void storeLastActivePanel(const String& panelName); -
trunk/WebCore/inspector/InspectorBackend.idl
r61012 r61014 35 35 void storeLastActivePanel(in DOMString panelName); 36 36 37 void saveFrontendSettings(in DOMString settings); 37 void saveApplicationSettings(in DOMString settings); 38 void saveSessionSettings(in DOMString settings); 38 39 39 40 void enableSearchingForNode(); -
trunk/WebCore/inspector/InspectorController.cpp
r61011 r61014 149 149 , m_expiredConsoleMessageCount(0) 150 150 , m_showAfterVisible(CurrentPanel) 151 , m_sessionSettings(InspectorObject::create()) 151 152 , m_groupLevel(0) 152 153 , m_searchingForNode(false) … … 228 229 m_settings.set(key, value); 229 230 m_client->storeSetting(key, value); 231 } 232 233 void InspectorController::setSessionSettings(const String& settingsJSON) 234 { 235 m_sessionSettings = InspectorValue::readJSON(settingsJSON); 230 236 } 231 237 … … 556 562 return; 557 563 558 m_frontend->populate FrontendSettings(setting(frontendSettingsSettingName()));564 m_frontend->populateApplicationSettings(setting(frontendSettingsSettingName())); 559 565 560 566 if (m_resourceTrackingEnabled) … … 603 609 #endif 604 610 611 m_frontend->populateSessionSettings(m_sessionSettings->toJSONString()); 605 612 m_frontend->populateInterface(); 606 613 … … 680 687 681 688 m_cssStore->reset(); 689 m_sessionSettings = InspectorObject::create(); 682 690 if (m_frontend) { 683 691 m_frontend->reset(); -
trunk/WebCore/inspector/InspectorController.h
r60965 r61014 33 33 #include "Cookie.h" 34 34 #include "InspectorDOMAgent.h" 35 #include "InspectorValues.h" 35 36 #include "PlatformString.h" 36 37 #include "ScriptArray.h" … … 127 128 String setting(const String& key) const; 128 129 void setSetting(const String& key, const String& value); 130 void setSessionSettings(const String&); 129 131 130 132 void inspect(Node*); … … 345 347 SpecialPanels m_showAfterVisible; 346 348 RefPtr<Node> m_highlightedNode; 349 RefPtr<InspectorValue> m_sessionSettings; 347 350 unsigned m_groupLevel; 348 351 bool m_searchingForNode; -
trunk/WebCore/inspector/InspectorFrontend.cpp
r61012 r61014 87 87 } 88 88 89 void InspectorFrontend::populateFrontendSettings(const String& settings) 90 { 91 ScriptFunctionCall function(m_webInspector, "dispatch"); 92 function.appendArgument("populateFrontendSettings"); 89 void InspectorFrontend::populateApplicationSettings(const String& settings) 90 { 91 ScriptFunctionCall function(m_webInspector, "dispatch"); 92 function.appendArgument("populateApplicationSettings"); 93 function.appendArgument(settings); 94 function.call(); 95 } 96 97 void InspectorFrontend::populateSessionSettings(const String& settings) 98 { 99 ScriptFunctionCall function(m_webInspector, "dispatch"); 100 function.appendArgument("populateSessionSettings"); 93 101 function.appendArgument(settings); 94 102 function.call(); -
trunk/WebCore/inspector/InspectorFrontend.h
r61012 r61014 60 60 void didCommitLoad(); 61 61 62 void populateFrontendSettings(const String& settings); 62 void populateApplicationSettings(const String& settings); 63 void populateSessionSettings(const String& settings); 63 64 64 65 void updateConsoleMessageExpiredCount(unsigned count); -
trunk/WebCore/inspector/front-end/ConsoleView.js
r60234 r61014 49 49 this.promptElement.addEventListener("keydown", this._promptKeyDown.bind(this), true); 50 50 this.prompt = new WebInspector.TextPrompt(this.promptElement, this.completions.bind(this), ExpressionStopCharacters + "."); 51 WebInspector. settings.addEventListener("loaded", this._settingsLoaded, this);51 WebInspector.applicationSettings.addEventListener("loaded", this._settingsLoaded, this); 52 52 53 53 this.topGroup = new WebInspector.ConsoleGroup(null, 0); … … 105 105 _settingsLoaded: function() 106 106 { 107 this.prompt.history = WebInspector. settings.consoleHistory;107 this.prompt.history = WebInspector.applicationSettings.consoleHistory; 108 108 }, 109 109 … … 537 537 self.prompt.text = ""; 538 538 539 WebInspector. settings.consoleHistory = self.prompt.history.slice(-30);539 WebInspector.applicationSettings.consoleHistory = self.prompt.history.slice(-30); 540 540 541 541 self.addMessage(new WebInspector.ConsoleCommandResult(result, exception, commandMessage)); -
trunk/WebCore/inspector/front-end/EventListenersSidebarPane.js
r58869 r61014 47 47 this.settingsSelectElement.appendChild(option); 48 48 49 WebInspector. settings.addEventListener("loaded", this._settingsLoaded, this);49 WebInspector.applicationSettings.addEventListener("loaded", this._settingsLoaded, this); 50 50 this.settingsSelectElement.addEventListener("click", function(event) { event.stopPropagation() }, false); 51 51 this.settingsSelectElement.addEventListener("change", this._changeSetting.bind(this), false); … … 57 57 _settingsLoaded: function() 58 58 { 59 var filter = WebInspector. settings.eventListenersFilter;59 var filter = WebInspector.applicationSettings.eventListenersFilter; 60 60 if (filter === "all") 61 61 this.settingsSelectElement[0].selected = true; … … 113 113 { 114 114 var selectedOption = this.settingsSelectElement[this.settingsSelectElement.selectedIndex]; 115 WebInspector. settings.eventListenersFilter = selectedOption.value;115 WebInspector.applicationSettings.eventListenersFilter = selectedOption.value; 116 116 117 117 for (var i = 0; i < this.sections.length; ++i) … … 143 143 // A Filtered Array simplifies when to create connectors 144 144 var filteredEventListeners = this.eventListeners; 145 if (WebInspector. settings.eventListenersFilter === "selected") {145 if (WebInspector.applicationSettings.eventListenersFilter === "selected") { 146 146 filteredEventListeners = []; 147 147 for (var i = 0; i < this.eventListeners.length; ++i) { -
trunk/WebCore/inspector/front-end/InspectorBackendStub.js
r61012 r61014 248 248 }, 249 249 250 saveFrontendSettings: function() 250 saveApplicationSettings: function() 251 { 252 }, 253 254 saveSessionSettings: function() 251 255 { 252 256 }, -
trunk/WebCore/inspector/front-end/ResourceView.js
r60562 r61014 144 144 { 145 145 if (this._headersVisible) { 146 if (!this.hasContentTab() || WebInspector. settings.resourceViewTab === "headers")146 if (!this.hasContentTab() || WebInspector.applicationSettings.resourceViewTab === "headers") 147 147 this._selectHeadersTab(); 148 148 else … … 155 155 { 156 156 if (updatePrefs) 157 WebInspector. settings.resourceViewTab = "headers";157 WebInspector.applicationSettings.resourceViewTab = "headers"; 158 158 this.tabbedPane.selectTabById("headers"); 159 159 }, … … 162 162 { 163 163 if (updatePrefs) 164 WebInspector. settings.resourceViewTab = "content";164 WebInspector.applicationSettings.resourceViewTab = "content"; 165 165 this._innerSelectContentTab(); 166 166 }, -
trunk/WebCore/inspector/front-end/ResourcesPanel.js
r59688 r61014 152 152 this.largerResourcesButton = new WebInspector.StatusBarButton(WebInspector.UIString("Use small resource rows."), "resources-larger-resources-status-bar-item"); 153 153 154 WebInspector. settings.addEventListener("loaded", this._settingsLoaded, this);154 WebInspector.applicationSettings.addEventListener("loaded", this._settingsLoaded, this); 155 155 this.largerResourcesButton.addEventListener("click", this._toggleLargerResources.bind(this), false); 156 156 this.sortingSelectElement = document.createElement("select"); … … 161 161 _settingsLoaded: function() 162 162 { 163 this.largerResourcesButton.toggled = WebInspector. settings.resourcesLargeRows;164 if (!WebInspector. settings.resourcesLargeRows)165 this._setLargerResources(WebInspector. settings.resourcesLargeRows);163 this.largerResourcesButton.toggled = WebInspector.applicationSettings.resourcesLargeRows; 164 if (!WebInspector.applicationSettings.resourcesLargeRows) 165 this._setLargerResources(WebInspector.applicationSettings.resourcesLargeRows); 166 166 }, 167 167 … … 638 638 return; 639 639 640 WebInspector. settings.resourcesLargeRows = !WebInspector.settings.resourcesLargeRows;640 WebInspector.applicationSettings.resourcesLargeRows = !WebInspector.applicationSettings.resourcesLargeRows; 641 641 this._setLargerResources(this.itemsTreeElement.smallChildren); 642 642 }, -
trunk/WebCore/inspector/front-end/ScriptsPanel.js
r60843 r61014 640 640 var url = scriptOrResource.url || scriptOrResource.sourceURL; 641 641 if (url && !options.initialLoad) 642 WebInspector. settings.lastViewedScriptFile = url;642 WebInspector.applicationSettings.lastViewedScriptFile = url; 643 643 644 644 if (!options.fromBackForwardAction) { … … 741 741 // if not first item, check to see if this was the last viewed 742 742 var url = option.representedObject.url || option.representedObject.sourceURL; 743 var lastURL = WebInspector. settings.lastViewedScriptFile;743 var lastURL = WebInspector.applicationSettings.lastViewedScriptFile; 744 744 if (url && url === lastURL) 745 745 this._showScriptOrResource(option.representedObject, {initialLoad: true}); -
trunk/WebCore/inspector/front-end/Settings.js
r60843 r61014 46 46 } 47 47 48 WebInspector.populate FrontendSettings = function(settingsString)48 WebInspector.populateApplicationSettings = function(settingsString) 49 49 { 50 WebInspector.settings._load(settingsString); 50 WebInspector.applicationSettings._load(settingsString); 51 WebInspector.applicationSettings._installSetting("eventListenersFilter", "event-listeners-filter", "all"); 52 WebInspector.applicationSettings._installSetting("colorFormat", "color-format", "hex"); 53 WebInspector.applicationSettings._installSetting("resourcesLargeRows", "resources-large-rows", true); 54 WebInspector.applicationSettings._installSetting("watchExpressions", "watch-expressions", []); 55 WebInspector.applicationSettings._installSetting("lastViewedScriptFile", "last-viewed-script-file"); 56 WebInspector.applicationSettings._installSetting("showInheritedComputedStyleProperties", "show-inherited-computed-style-properties", false); 57 WebInspector.applicationSettings._installSetting("showUserAgentStyles", "show-user-agent-styles", true); 58 WebInspector.applicationSettings._installSetting("resourceViewTab", "resource-view-tab", "content"); 59 WebInspector.applicationSettings._installSetting("consoleHistory", "console-history", []); 60 WebInspector.applicationSettings.dispatchEventToListeners("loaded"); 51 61 } 52 62 53 WebInspector. Settings = function()63 WebInspector.populateSessionSettings = function(settingsString) 54 64 { 65 WebInspector.sessionSettings._load(settingsString); 66 WebInspector.sessionSettings.dispatchEventToListeners("loaded"); 67 } 68 69 WebInspector.Settings = function(sessionScope) 70 { 71 this._sessionScope = sessionScope; 55 72 } 56 73 57 74 WebInspector.Settings.prototype = { 75 reset: function() 76 { 77 this._store = {}; 78 this.dispatchEventToListeners("loaded"); 79 }, 80 58 81 _load: function(settingsString) 59 82 { … … 64 87 this._store = {}; 65 88 } 66 67 this._installSetting("eventListenersFilter", "event-listeners-filter", "all");68 this._installSetting("colorFormat", "color-format", "hex");69 this._installSetting("resourcesLargeRows", "resources-large-rows", true);70 this._installSetting("watchExpressions", "watch-expressions", []);71 this._installSetting("lastViewedScriptFile", "last-viewed-script-file");72 this._installSetting("showInheritedComputedStyleProperties", "show-inherited-computed-style-properties", false);73 this._installSetting("showUserAgentStyles", "show-user-agent-styles", true);74 this._installSetting("resourceViewTab", "resource-view-tab", "content");75 this._installSetting("consoleHistory", "console-history", []);76 this.dispatchEventToListeners("loaded");77 89 }, 78 90 … … 95 107 this._store[propertyName] = newValue; 96 108 try { 97 InspectorBackend.saveFrontendSettings(JSON.stringify(this._store)); 109 var store = JSON.stringify(this._store); 110 if (this._sessionScope) 111 InspectorBackend.saveSessionSettings(store); 112 else 113 InspectorBackend.saveApplicationSettings(store); 98 114 } catch (e) { 99 115 // May fail; -
trunk/WebCore/inspector/front-end/StylesSidebarPane.js
r60680 r61014 61 61 this.settingsSelectElement.addEventListener("click", function(event) { event.stopPropagation() }, false); 62 62 this.settingsSelectElement.addEventListener("change", this._changeSetting.bind(this), false); 63 WebInspector. settings.addEventListener("loaded", this._settingsLoaded, this);63 WebInspector.applicationSettings.addEventListener("loaded", this._settingsLoaded, this); 64 64 65 65 this.titleElement.appendChild(this.settingsSelectElement); … … 97 97 _settingsLoaded: function() 98 98 { 99 var format = WebInspector. settings.colorFormat;99 var format = WebInspector.applicationSettings.colorFormat; 100 100 if (format === "hex") 101 101 this.settingsSelectElement[0].selected = true; … … 149 149 WebInspector.cssModel.getComputedStyleAsync(node.id, computedStyleCallback.bind(this)); 150 150 else 151 WebInspector.cssModel.getStylesAsync(node.id, !WebInspector. settings.showUserAgentStyles, stylesCallback.bind(this));151 WebInspector.cssModel.getStylesAsync(node.id, !WebInspector.applicationSettings.showUserAgentStyles, stylesCallback.bind(this)); 152 152 }, 153 153 … … 483 483 var selectedIndex = 0; 484 484 for (var i = 0; i < options.length; ++i) { 485 if (options[i].value === WebInspector. settings.colorFormat) {485 if (options[i].value === WebInspector.applicationSettings.colorFormat) { 486 486 selectedIndex = i; 487 487 break; … … 495 495 { 496 496 var selectedOption = this.settingsSelectElement[this.settingsSelectElement.selectedIndex]; 497 WebInspector. settings.colorFormat = selectedOption.value;497 WebInspector.applicationSettings.colorFormat = selectedOption.value; 498 498 499 499 for (var pseudoId in this.sections) { … … 582 582 function settingsLoaded() 583 583 { 584 if (WebInspector. settings.showInheritedComputedStyleProperties) {584 if (WebInspector.applicationSettings.showInheritedComputedStyleProperties) { 585 585 this.bodyElement.addStyleClass("show-inherited"); 586 586 showInheritedCheckbox.checked = true; … … 588 588 } 589 589 590 WebInspector. settings.addEventListener("loaded", settingsLoaded.bind(this));590 WebInspector.applicationSettings.addEventListener("loaded", settingsLoaded.bind(this)); 591 591 592 592 function showInheritedToggleFunction(event) 593 593 { 594 WebInspector. settings.showInheritedComputedStyleProperties = showInheritedCheckbox.checked;595 if (WebInspector. settings.showInheritedComputedStyleProperties)594 WebInspector.applicationSettings.showInheritedComputedStyleProperties = showInheritedCheckbox.checked; 595 if (WebInspector.applicationSettings.showInheritedComputedStyleProperties) 596 596 this.bodyElement.addStyleClass("show-inherited"); 597 597 else … … 1123 1123 if (Preferences.showColorNicknames && color.nickname) 1124 1124 format = "nickname"; 1125 else if (WebInspector. settings.colorFormat === "rgb")1125 else if (WebInspector.applicationSettings.colorFormat === "rgb") 1126 1126 format = (color.simple ? "rgb" : "rgba"); 1127 else if (WebInspector. settings.colorFormat === "hsl")1127 else if (WebInspector.applicationSettings.colorFormat === "hsl") 1128 1128 format = (color.simple ? "hsl" : "hsla"); 1129 1129 else if (color.simple) -
trunk/WebCore/inspector/front-end/WatchExpressionsSidebarPane.js
r53933 r61014 32 32 { 33 33 WebInspector.SidebarPane.call(this, WebInspector.UIString("Watch Expressions")); 34 WebInspector. settings.addEventListener("loaded", this._settingsLoaded, this);34 WebInspector.applicationSettings.addEventListener("loaded", this._settingsLoaded, this); 35 35 } 36 36 … … 40 40 this.bodyElement.removeChildren(); 41 41 42 this.expanded = WebInspector. settings.watchExpressions.length > 0;42 this.expanded = WebInspector.applicationSettings.watchExpressions.length > 0; 43 43 this.section = new WebInspector.WatchExpressionsSection(); 44 44 this.bodyElement.appendChild(this.section.element); … … 78 78 WebInspector.ObjectPropertiesSection.call(this); 79 79 80 this.watchExpressions = WebInspector. settings.watchExpressions;80 this.watchExpressions = WebInspector.applicationSettings.watchExpressions; 81 81 82 82 this.headerElement.className = "hidden"; … … 196 196 toSave.push(this.watchExpressions[i]); 197 197 198 WebInspector. settings.watchExpressions = toSave;198 WebInspector.applicationSettings.watchExpressions = toSave; 199 199 return toSave.length; 200 200 } -
trunk/WebCore/inspector/front-end/inspector.js
r60895 r61014 441 441 document.body.addStyleClass("port-" + port); 442 442 443 this.settings = new WebInspector.Settings(); 443 this.applicationSettings = new WebInspector.Settings(false); 444 this.sessionSettings = new WebInspector.Settings(true); 444 445 this._registerShortcuts(); 445 446 … … 1362 1363 } 1363 1364 1365 this.sessionSettings.reset(); 1364 1366 this.breakpointManager.reset(); 1365 1367 -
trunk/WebKit/chromium/ChangeLog
r61013 r61014 1 2010-06-11 Alexander Pavlov <apavlov@chromium.org> 2 3 Reviewed by Pavel Feldman. 4 5 Web Inspector: Enable serialization/deserialization of the frontend state 6 https://bugs.webkit.org/show_bug.cgi?id=40228 7 8 * src/js/InspectorControllerImpl.js: 9 (devtools.InspectorBackendImpl): 10 1 11 2010-06-10 Søren Gjesse <sgjesse@chromium.org> 2 12 -
trunk/WebKit/chromium/src/js/InspectorControllerImpl.js
r61012 r61014 69 69 this.installInspectorControllerDelegate_("removeDOMStorageItem"); 70 70 this.installInspectorControllerDelegate_("removeNode"); 71 this.installInspectorControllerDelegate_("saveFrontendSettings"); 71 this.installInspectorControllerDelegate_("saveApplicationSettings"); 72 this.installInspectorControllerDelegate_("saveSessionSettings"); 72 73 this.installInspectorControllerDelegate_("searchCanceled"); 73 74 this.installInspectorControllerDelegate_("setAttribute");
Note: See TracChangeset
for help on using the changeset viewer.