Changeset 84905 in webkit


Ignore:
Timestamp:
Apr 26, 2011 5:25:05 AM (13 years ago)
Author:
pfeldman@chromium.org
Message:

2011-04-26 Pavel Feldman <pfeldman@google.com>

Reviewed by Yury Semikhatsky.

Web Inspector: introduce DOMStorage::enable and disable.
https://bugs.webkit.org/show_bug.cgi?id=59445

  • inspector/Inspector.json:
  • inspector/InspectorAgent.cpp: (WebCore::InspectorAgent::InspectorAgent): (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
  • inspector/InspectorDOMStorageAgent.cpp: (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent): (WebCore::InspectorDOMStorageAgent::restore): (WebCore::InspectorDOMStorageAgent::enable): (WebCore::InspectorDOMStorageAgent::disable):
  • inspector/InspectorDOMStorageAgent.h: (WebCore::InspectorDOMStorageAgent::create):
  • inspector/front-end/DOMStorage.js: (WebInspector.DOMStorageDispatcher.prototype.addDOMStorage):
  • inspector/front-end/ResourcesPanel.js: (WebInspector.ResourcesPanel.prototype._reset):
  • inspector/front-end/inspector.js:
Location:
trunk
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/inspector/extensions/extensions-events-expected.txt

    r83033 r84905  
    66Page reloaded.
    77Page reloaded.
     8Navigated to: extensions-events.html
    89Navigated to: extensions-events.html?navigated
    9 Navigated to: extensions-events.html
    1010RUNNING TEST: extension_testOnResourceFinished
    1111onFinished fired
  • trunk/Source/WebCore/ChangeLog

    r84904 r84905  
     12011-04-26  Pavel Feldman  <pfeldman@google.com>
     2
     3        Reviewed by Yury Semikhatsky.
     4
     5        Web Inspector: introduce DOMStorage::enable and disable.
     6        https://bugs.webkit.org/show_bug.cgi?id=59445
     7
     8        * inspector/Inspector.json:
     9        * inspector/InspectorAgent.cpp:
     10        (WebCore::InspectorAgent::InspectorAgent):
     11        (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
     12        * inspector/InspectorDOMStorageAgent.cpp:
     13        (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
     14        (WebCore::InspectorDOMStorageAgent::restore):
     15        (WebCore::InspectorDOMStorageAgent::enable):
     16        (WebCore::InspectorDOMStorageAgent::disable):
     17        * inspector/InspectorDOMStorageAgent.h:
     18        (WebCore::InspectorDOMStorageAgent::create):
     19        * inspector/front-end/DOMStorage.js:
     20        (WebInspector.DOMStorageDispatcher.prototype.addDOMStorage):
     21        * inspector/front-end/ResourcesPanel.js:
     22        (WebInspector.ResourcesPanel.prototype._reset):
     23        * inspector/front-end/inspector.js:
     24
    1252011-04-26  Pavel Feldman  <pfeldman@google.com>
    226
  • trunk/Source/WebCore/inspector/Inspector.json

    r84904 r84905  
    626626        "types": [],
    627627        "commands": [
     628            {
     629                "name": "enable",
     630                "description": "Enables storage tracking, storage events will now be delivered to the client."
     631            },
     632            {
     633                "name": "disable",
     634                "description": "Disables storage tracking, prevents storage events from being sent to the client."
     635            },
    628636            {
    629637                "name": "getDOMStorageEntries",
  • trunk/Source/WebCore/inspector/InspectorAgent.cpp

    r84904 r84905  
    121121#endif
    122122#if ENABLE(DOM_STORAGE)
    123     , m_domStorageAgent(InspectorDOMStorageAgent::create(m_instrumentingAgents.get()))
     123    , m_domStorageAgent(InspectorDOMStorageAgent::create(m_instrumentingAgents.get(), m_state.get()))
    124124#endif
    125125    , m_timelineAgent(InspectorTimelineAgent::create(m_instrumentingAgents.get(), m_state.get()))
     
    202202#if ENABLE(DATABASE)
    203203    m_databaseAgent->restore();
     204#endif
     205
     206#if ENABLE(DOM_STORAGE)
     207    m_domStorageAgent->restore();
    204208#endif
    205209
  • trunk/Source/WebCore/inspector/InspectorDOMStorageAgent.cpp

    r81572 r84905  
    3939#include "InspectorDOMStorageResource.h"
    4040#include "InspectorFrontend.h"
     41#include "InspectorState.h"
    4142#include "InspectorValues.h"
    4243#include "InstrumentingAgents.h"
     
    4950namespace WebCore {
    5051
     52namespace DOMStorageAgentState {
     53static const char domStorageAgentEnabled[] = "domStorageAgentEnabled";
     54};
     55
    5156typedef HashMap<int, RefPtr<InspectorDOMStorageResource> > DOMStorageResourcesMap;
    5257
    53 InspectorDOMStorageAgent::InspectorDOMStorageAgent(InstrumentingAgents* instrumentingAgents)
     58InspectorDOMStorageAgent::InspectorDOMStorageAgent(InstrumentingAgents* instrumentingAgents, InspectorState* state)
    5459    : m_instrumentingAgents(instrumentingAgents)
     60    , m_inspectorState(state)
    5561    , m_frontend(0)
     62    , m_enabled(false)
    5663{
    5764    m_instrumentingAgents->setInspectorDOMStorageAgent(this);
     
    7885        it->second->unbind();
    7986    m_frontend = 0;
     87}
     88
     89void InspectorDOMStorageAgent::restore()
     90{
     91    m_enabled =  m_inspectorState->getBoolean(DOMStorageAgentState::domStorageAgentEnabled);
     92}
     93
     94void InspectorDOMStorageAgent::enable(ErrorString*)
     95{
     96    if (m_enabled)
     97        return;
     98    m_enabled = true;
     99    m_inspectorState->setBoolean(DOMStorageAgentState::domStorageAgentEnabled, m_enabled);
     100
     101    DOMStorageResourcesMap::iterator resourcesEnd = m_resources.end();
     102    for (DOMStorageResourcesMap::iterator it = m_resources.begin(); it != resourcesEnd; ++it)
     103        it->second->bind(m_frontend);
     104}
     105
     106void InspectorDOMStorageAgent::disable(ErrorString*)
     107{
     108    if (!m_enabled)
     109        return;
     110    m_enabled = false;
     111    m_inspectorState->setBoolean(DOMStorageAgentState::domStorageAgentEnabled, m_enabled);
    80112}
    81113
  • trunk/Source/WebCore/inspector/InspectorDOMStorageAgent.h

    r81572 r84905  
    4040class InspectorDOMStorageResource;
    4141class InspectorFrontend;
     42class InspectorState;
    4243class InstrumentingAgents;
    4344class Storage;
     
    4849class InspectorDOMStorageAgent {
    4950public:
    50     static PassOwnPtr<InspectorDOMStorageAgent> create(InstrumentingAgents* instrumentingAgents)
     51    static PassOwnPtr<InspectorDOMStorageAgent> create(InstrumentingAgents* instrumentingAgents, InspectorState* state)
    5152    {
    52         return adoptPtr(new InspectorDOMStorageAgent(instrumentingAgents));
     53        return adoptPtr(new InspectorDOMStorageAgent(instrumentingAgents, state));
    5354    }
    5455    ~InspectorDOMStorageAgent();
     
    5859
    5960    void clearResources();
     61    void restore();
    6062
    6163    // Called from the front-end.
     64    void enable(ErrorString*);
     65    void disable(ErrorString*);
    6266    void getDOMStorageEntries(ErrorString*, int storageId, RefPtr<InspectorArray>* entries);
    6367    void setDOMStorageItem(ErrorString*, int storageId, const String& key, const String& value, bool* success);
     
    7175
    7276private:
    73     explicit InspectorDOMStorageAgent(InstrumentingAgents*);
     77    InspectorDOMStorageAgent(InstrumentingAgents*, InspectorState*);
    7478
    7579    InspectorDOMStorageResource* getDOMStorageResourceForId(int storageId);
    7680
    7781    InstrumentingAgents* m_instrumentingAgents;
     82    InspectorState* m_inspectorState;
    7883    typedef HashMap<int, RefPtr<InspectorDOMStorageResource> > DOMStorageResourcesMap;
    7984    DOMStorageResourcesMap m_resources;
    8085    InspectorFrontend* m_frontend;
     86    bool m_enabled;
    8187};
    8288
  • trunk/Source/WebCore/inspector/front-end/inspector.js

    r84904 r84905  
    501501
    502502    DatabaseAgent.enable();
     503    DOMStorageAgent.enable();
    503504
    504505    WebInspector.showPanel(WebInspector.settings.lastActivePanel);
Note: See TracChangeset for help on using the changeset viewer.