New issue
Advanced search Search tips

Issue 666004 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Nov 2016
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Chrome , Mac
Pri: 2
Type: Bug



Sign in to add a comment

Use a separate IPC for extension event dispatching

Project Member Reported by rdevlin....@chromium.org, Nov 16 2016

Issue description

Currently, extension events are dispatched using the MessageInvoke IPC,
which instructs the the renderer to invoke the JS methods to disptach
the event. This has a few problems:
- It reuses the invoke IPC when it really shouldn't. Looks like there's
  a long-standing TODO to change this.
- It's incompatible if we ever change the way we want to dispatch
  events, as we are with the C++ bindings work.

 

Comment 1 Deleted

Project Member

Comment 2 by bugdroid1@chromium.org, Nov 16 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ff516ab47c3fe130da26006e0f677ee5a78a9f19

commit ff516ab47c3fe130da26006e0f677ee5a78a9f19
Author: rdevlin.cronin <rdevlin.cronin@chromium.org>
Date: Wed Nov 16 22:25:18 2016

[Extensions] Use a separate IPC message for extension events

Currently, extension events are dispatched using the MessageInvoke IPC,
which instructs the the renderer to invoke the JS methods to disptach
the event. This has a few problems:
- It reuses the invoke IPC when it really shouldn't. Looks like there's
  a long-standing TODO to change this.
- It's incompatible if we ever change the way we want to dispatch
  events, as we are with the C++ bindings work.

Migrate event dispatching to a separate IPC message, and remove the
now-unneeded user gesture parameter from the MessageInvoke IPC.

BUG= 666004 
BUG= 653596 

Review-Url: https://codereview.chromium.org/2495213007
Cr-Commit-Position: refs/heads/master@{#432645}

[modify] https://crrev.com/ff516ab47c3fe130da26006e0f677ee5a78a9f19/chrome/browser/extensions/api/web_request/web_request_api_unittest.cc
[modify] https://crrev.com/ff516ab47c3fe130da26006e0f677ee5a78a9f19/extensions/browser/app_window/app_window_contents.cc
[modify] https://crrev.com/ff516ab47c3fe130da26006e0f677ee5a78a9f19/extensions/browser/event_router.cc
[modify] https://crrev.com/ff516ab47c3fe130da26006e0f677ee5a78a9f19/extensions/common/event_filtering_info.cc
[modify] https://crrev.com/ff516ab47c3fe130da26006e0f677ee5a78a9f19/extensions/common/event_filtering_info.h
[modify] https://crrev.com/ff516ab47c3fe130da26006e0f677ee5a78a9f19/extensions/common/extension_messages.h
[modify] https://crrev.com/ff516ab47c3fe130da26006e0f677ee5a78a9f19/extensions/renderer/dispatcher.cc
[modify] https://crrev.com/ff516ab47c3fe130da26006e0f677ee5a78a9f19/extensions/renderer/dispatcher.h
[modify] https://crrev.com/ff516ab47c3fe130da26006e0f677ee5a78a9f19/extensions/renderer/extension_frame_helper.cc
[modify] https://crrev.com/ff516ab47c3fe130da26006e0f677ee5a78a9f19/extensions/renderer/extension_frame_helper.h

Status: Fixed (was: Started)

Sign in to add a comment