[Webkit-unassigned] [Bug 26350] Make WebInspector's console evaluation/completion asynchronous.

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sat Jun 13 04:17:30 PDT 2009


pfeldman at chromium.org changed:

           What    |Removed                     |Added
  Attachment #31206|review?                     |
               Flag|                            |
  Attachment #31206|0                           |1
        is obsolete|                            |
  Attachment #31232|                            |review?
               Flag|                            |

------- Comment #3 from pfeldman at chromium.org  2009-06-13 04:17 PDT -------
Created an attachment (id=31232)
 --> (https://bugs.webkit.org/attachment.cgi?id=31232&action=view)

Thanks for the review!

(In reply to comment #2)
> (From update of attachment 31206 [review])
> The code looks correct. I think this just gets ready for asynchronous
> evaluation, but the callback is still called synchronously. Is that correct?

Calls receiving callbacks are always the last ones in the methods, so that it
should not really matter. However you are right - putting these into SetTimeout
would give better guarantees. This is now done.

> Maybe use setTimeout with a zero/quick delay to simulate asynchronous
> behaviour.


> One concern I have with the completion code being asynchronous is if the user
> keeps typing and the completions for the previous range have not been returned
> yet. When the results are returned to the callback, the user typed text might
> get messed up or mangled in some way.
> So I think completion results need to be ignored if more user typing has
> happened since. Make sense?

I've added post-evaluation filtering into completionReady, so that only the
ones that do match currently added query are suggested.

I've also extracted couple of methods in the code: 
- installation of the console API 
    (just for convenience)
- Console::doEvalInWindow and ScriptsPanel::doEvalInCallFrame 
    (these are supposed to do the actual eval work over the serialization

Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

More information about the webkit-unassigned mailing list