Changes between Version 7 and Version 8 of ProposedWebInspectorRearchitecting


Ignore:
Timestamp:
Sep 13, 2008, 11:21:35 PM (16 years ago)
Author:
timothy@apple.com
Comment:

Further define the message types and callback functions.

Legend:

Unmodified
Added
Removed
Modified
  • ProposedWebInspectorRearchitecting

    v7 v8  
    2323
    2424== Message Observers ==
    25 We will need an API for observing messages by name.
     25We will need an API for observing messages by name. There would be two types of messages — notification messages and response messages. Notification messages will be sent to all observers that have registered to receive messages matching a name. Unlike notification messages, response messages are handled for callers of API functions.
     26
     27Any API function that has a response will also take a {{{callbackFunction}}} argument. When a request message is sent for an API call, it will contain a unique identifier. This unique identifier is stored locally and maps to the {{{callbackFunction}}}. When a response message comes back with that unique identifier, the {{{callbackFunction}}} is then called with data from the message passed to the {{{callbackFunction}}} as an argument.
    2628
    2729== Console ==
    2830=== Functions ===
    2931
    30 {{{InspectorController.Console.evaluate(expression)}}}[[BR]]
     32{{{InspectorController.Console.evaluate(expression, callbackFunction)}}}[[BR]]
    3133''evaluates the expression in the global context of the inspected page''
    3234
    33 {{{InspectorController.Console.messages()}}}[[BR]]
    34 ''requests an array of all recent messages up to the messageLimit. this is used to populated the Console when opening the Inspector. new messages are gotten from the {{{new-messages}}} notification message''
     35{{{InspectorController.Console.fetchMessages(callbackFunction)}}}[[BR]]
     36''requests an array of all recent messages up to the messageLimit. this is used to populated the Console when opening the Inspector. new messages are gotten from the {{{console:new-messages}}} notification message''
    3537
    3638{{{InspectorController.Console.clearMessages()}}}[[BR]]
    3739''requests that all messages should be removed''
    3840
    39 {{{InspectorController.Console.messageLimit()}}}[[BR]]
     41{{{InspectorController.Console.fetchMessageLimit(callbackFunction)}}}[[BR]]
    4042''requests the current message limit''
    4143
     
    4446
    4547=== Response Messages ===
    46 The {{{evaluate}}}, {{{messages}}} and {{{messageLimit}}} functions above will have response messages that are sent to observers.
     48The {{{evaluate}}}, {{{messages}}} and {{{messageLimit}}} functions above will have response messages.
    4749
    4850{{{console:evaluate}}}[[BR]]
     
    7173== DOM ==
    7274
    73 InspectorController.DOM.getChildren(node)
     75InspectorController.DOM.fetchChildren(node, callbackFunction)
    7476
    75 InspectorController.DOM.getParent(node)
     77InspectorController.DOM.fetchParent(node, callbackFunction)
    7678
    7779node here is a JS object that has a one-to-one mapping with the DOM node in the page. Everything above this API layer only knows about the node JS object. Somewhere in the implementation of the API there needs to be a mapping. Initially, it can just be an in JS map. Eventually, the map will probably move to C++, at the very least it will for the IPC-based version.
     
    7981== Database ==
    8082
    81 InspectorController.Database.getCurrentStack() ?
     83InspectorController.Database.fetchDatabases(callbackFunction)
    8284
    8385InspectorConteoller.Database.?
     
    9597== BUGS FILED ==
    9698
    97 https://bugs.webkit.org/show_bug.cgi?id=20804 - Objects viewable in debugger should not be garbage collectable
    98 
    99 https://bugs.webkit.org/show_bug.cgi?id=20803 - Console objects being snapshots
    100 
    101 https://bugs.webkit.org/show_bug.cgi?id=20800 - Network monitoring opt-in
    102 
    103 https://bugs.webkit.org/show_bug.cgi?id=20801 - Infinite console logging opt-in
     99https://bugs.webkit.org/show_bug.cgi?id=20804 - Objects viewable in debugger should not be garbage collectable[[BR]]
     100https://bugs.webkit.org/show_bug.cgi?id=20803 - Console objects being snapshots[[BR]]
     101https://bugs.webkit.org/show_bug.cgi?id=20800 - Network monitoring opt-in[[BR]]
     102https://bugs.webkit.org/show_bug.cgi?id=20801 - Infinite console logging opt-in[[BR]]