Closed
Bug 818219
Opened 8 years ago
Closed 8 years ago
Replace HTMLElement quickstubs with new binding methods
Categories
(Core :: DOM: Core & HTML, defect)
Core
DOM: Core & HTML
Tracking
()
RESOLVED
FIXED
mozilla20
People
(Reporter: peterv, Assigned: peterv)
References
Details
Attachments
(4 files)
|
4.53 KB,
patch
|
bzbarsky
:
review+
|
Details | Diff | Splinter Review |
|
5.62 KB,
patch
|
bzbarsky
:
review+
|
Details | Diff | Splinter Review |
|
3.59 KB,
patch
|
bzbarsky
:
review+
|
Details | Diff | Splinter Review |
|
44.51 KB,
patch
|
bzbarsky
:
review+
|
Details | Diff | Splinter Review |
No description provided.
| Assignee | ||
Comment 1•8 years ago
|
||
Currently compilation fails for castable interfaces in union types because we don't include the binding headers in UnionConversion.h but then then try to use the PrototypeTraits etc.
Attachment #688401 -
Flags: review?(bzbarsky)
Comment 2•8 years ago
|
||
Comment on attachment 688401 [details] [diff] [review] Support castable types in unions v1 r=me
Attachment #688401 -
Flags: review?(bzbarsky) → review+
| Assignee | ||
Comment 3•8 years ago
|
||
It's annoying to have to change the dom/worker code just because we added an interface that has a longer prototype chain than the current max.
Attachment #688409 -
Flags: review?(bzbarsky)
| Assignee | ||
Comment 4•8 years ago
|
||
Attachment #688411 -
Flags: review?(bzbarsky)
| Assignee | ||
Comment 5•8 years ago
|
||
Attachment #688413 -
Flags: review?(bzbarsky)
Comment 6•8 years ago
|
||
Comment on attachment 688409 [details] [diff] [review] Remove hardcoded interface list in workers v1 I like. Well, not the necessity, but the solution. ;)
Attachment #688409 -
Flags: review?(bzbarsky) → review+
Comment 7•8 years ago
|
||
Comment on attachment 688411 [details] [diff] [review] Add a constructor to callbacks to allow conversion between callback types v1 r=me
Attachment #688411 -
Flags: review?(bzbarsky) → review+
Comment 8•8 years ago
|
||
Comment on attachment 688413 [details] [diff] [review] Replace HTMLElement quickstubs with new binding methods v1 >+#define EVENT(name_, id_, type_, struct_) /* nothing; handled by the nsINode */ s/the nsINode/nsINode/ >+ nsCOMPtr<nsIScriptGlobalObject> sgo = do_QueryInterface(win); \ >+ nsGlobalWindow* globalWin = nsGlobalWindow::FromSupports(sgo); \ Why not just QI to nsISupports, since FromSupports _has_ to work with the canonical nsISupports? Same in a few more places. >+ return new EventHandlerNonNull(errorHandler); \ I would much rather we had this method return already_AddRefed<EventHandlerNonNull> and addref inside here as needed, to make sure that the caller is not just sticking it into a raw ptr. As a side note, maybe we should allow resultNotAddRefed for callbacks? >+ OnErrorEventHandlerNonNull* errorHandler = \ >+ new OnErrorEventHandlerNonNull(handler); \ nsRefPtr, please, so we're not passing in a 0-refcount object. >+++ b/content/html/content/src/nsHTMLBodyElement.cpp Could you file a followup on using some of the existing nsDOMEventTargetHelper bits in this code? r=me with the above nits fixed.
Attachment #688413 -
Flags: review?(bzbarsky) → review+
Comment 9•8 years ago
|
||
Comment on attachment 688413 [details] [diff] [review] Replace HTMLElement quickstubs with new binding methods v1 Review of attachment 688413 [details] [diff] [review]: ----------------------------------------------------------------- ::: content/html/content/src/nsGenericHTMLElement.cpp @@ +1896,5 @@ > + \ > + return nsINode::SetOn##name_(handler, error); \ > +} > +#include "nsEventNameList.h" > +#undef ERROR_EVENT Trailing whitespace ::: dom/base/nsGlobalWindow.cpp @@ +11330,5 @@ > #include "nsEventNameList.h" > #undef TOUCH_EVENT > #undef WINDOW_ONLY_EVENT > +#undef BEFOREUNLOAD_EVENT > +#undef ERROR_EVENT And here ::: dom/base/nsGlobalWindow.h @@ +673,5 @@ > +#include "nsEventNameList.h" > +#undef TOUCH_EVENT > +#undef WINDOW_ONLY_EVENT > +#undef BEFOREUNLOAD_EVENT > +#undef ERROR_EVENT And here
| Assignee | ||
Comment 10•8 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/a0e79206a110 https://hg.mozilla.org/integration/mozilla-inbound/rev/92187bc8ec48 https://hg.mozilla.org/integration/mozilla-inbound/rev/f23cff8ec6c9 https://hg.mozilla.org/integration/mozilla-inbound/rev/d5179738abfe
Comment 11•8 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/a0e79206a110 https://hg.mozilla.org/mozilla-central/rev/92187bc8ec48 https://hg.mozilla.org/mozilla-central/rev/f23cff8ec6c9 https://hg.mozilla.org/mozilla-central/rev/d5179738abfe
Status: ASSIGNED → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla20
Updated•2 years ago
|
Component: DOM → DOM: Core & HTML
You need to log in
before you can comment on or make changes to this bug.
Description
•