Comment on attachment 34764[details]
V8 Bindings for Notifications
Why so much custom bindings code? We'd much rather share as much bindings code with JSC as possible. Why do all of these functions need to be custom?

The V8 code generator requires event listener accessors to be custom, which is the vast majority of that custom file.
Beyond that there are the 2 createNotification functions which I made custom, as explained in the ChangeLog, because I need them to be different in page context and worker context.
I don't particularly like that either since the difference is so minor. The alternative solution would be to change the code generator to be aware that V8 uses different proxy objects in worker and page contexts, and mark up the IDL with a tag that causes context-aware code to be generated. But I consider that a more substantial change.

For completeness of my response, there is also requestPermission which was already custom in JSC for the same reason, the need to distinguish between worker and page contexts, and in a more substantial way: not executing in worker context, rather than just using different proxies.

Eric, I agree with that and I'm happy to help with it (although the code generator is not an area of my expertise yet). But I think that could happen in parallel with moving notifications forward for Chromium. Would you want to wait on this patch until those changes can be made?

I left this r=? because I agree, it doesn't need to block this change. That said, we need to file some bugs about the missing features. It would be great if you could file bugs for the needed additions to the code generators, and ideally link them here. :)