On Wed, Jun 10, 2009 at 12:18 PM, John Abd-El-Malek<[email protected]> wrote:
>
>
> On Wed, Jun 10, 2009 at 11:48 AM, Meryl Silverburgh
> <[email protected]> wrote:
>>
>> From this document, it talks about Messaging between
>>
>> http://dev.chromium.org/developers/design-documents/displaying-a-web-page-in-chrome
>>
>> Can you please help me understand what is the Message Flow for an Alert
>> Dialog?
>>
>> like in this case:
>> <html><script> function f1() { var a = 1; alert("hello"); a = 2;};
>> f1(); </script></html>
>>
>> I assume it is like this, please correct me if i am wrong:
>> 1. Browser Process downloads the test page
>> 2. Renderer Process gets the html source, parses the html and have v8
>> executes script node
>> 3. v8 pauses at 'alert' call, sends a message to Browser Process to
>> pop up the alert dialog and Render Process blocked till it receives
>> message from Browser.
>> 4. Browser Process shows the alert dialog with the right message (in
>> this case 'hello')
>> 5. When user clicks 'Okay', browser process sends a message back to
>> Renderer Process and v8 continues execute the rest of the Script node.
>>
>> Is this correct?
>
> Yep this is pretty much what happens. For more details, search
> for ViewHostMsg_RunJavaScriptMessage
>
Thank you. John.
I think this method is Render process to send a message to Browser
process to pop up an alert dialog.
bool RenderView::RunJavaScriptMessage(int type,
const std::wstring& message,
const std::wstring& default_value,
const GURL& frame_url,
std::wstring* result)
that calls:
bool Channel::Send(Message* message);
and then
bool Channel::ChannelImpl::ProcessOutgoingMessages()
My question is how the Render process being blocked after it sends the
message to Browser process, which one is a blocking calls or which one
calls a blocking method?
And how it will resume when Browser process replys a message? How
Render is being resumed (which method does that)?
Thank you.
>>
>> Thank you for any clarificaiton.
>>
>> >>
>
>
--~--~---------~--~----~------------~-------~--~----~
Chromium Developers mailing list: [email protected]
View archives, change email options, or unsubscribe:
http://groups.google.com/group/chromium-dev
-~----------~----~----~----~------~----~------~--~---