Re: Splitting inner and outer windows
\o/ This is a big deal, excellent to see this coming, and it's been a long time coming (since ~2004 when we first created the notion of inner and outer windows. Thanks for taking this on Kyle! - jst On Sat, Jan 30, 2016 at 4:04 PM, Kyle Hueywrote: > This has landed (and stuck) on inbound. > > - Kyle > > On Thu, Jan 21, 2016 at 9:52 PM, Kyle Huey wrote: > >> Early in the next release cycle I plan to land a patch that will remove >> nsPIDOMWindow in favor of two separate types for inner and outer windows >> (fittingly, called nsPIDOMWindowInner/nsPIDOMWindowOuter) I'll also make >> changes to the XPIDL interface hierarchy (effectively removing nsIDOMWindow >> and introducing two new base interfaces for inner and outer windows) to >> support this. When the dust settles places that today use nsPIDOMWindow or >> nsIDOMWindow will instead use a type that specifies, at compile time, >> whether we have an inner or outer window. >> >> The actual methods exposed on nsPIDOMWindow will be carried over in almost >> all cases. Splitting the interface itself, or nsGlobalWindow, apart will >> happen later. >> >> You can follow along in bug 1241764. >> >> - Kyle >> > ___ > dev-platform mailing list > dev-platform@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-platform ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Splitting inner and outer windows
This has landed (and stuck) on inbound. - Kyle On Thu, Jan 21, 2016 at 9:52 PM, Kyle Hueywrote: > Early in the next release cycle I plan to land a patch that will remove > nsPIDOMWindow in favor of two separate types for inner and outer windows > (fittingly, called nsPIDOMWindowInner/nsPIDOMWindowOuter) I'll also make > changes to the XPIDL interface hierarchy (effectively removing nsIDOMWindow > and introducing two new base interfaces for inner and outer windows) to > support this. When the dust settles places that today use nsPIDOMWindow or > nsIDOMWindow will instead use a type that specifies, at compile time, > whether we have an inner or outer window. > > The actual methods exposed on nsPIDOMWindow will be carried over in almost > all cases. Splitting the interface itself, or nsGlobalWindow, apart will > happen later. > > You can follow along in bug 1241764. > > - Kyle > ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Splitting inner and outer windows
On Fri, Jan 22, 2016 at 11:24 AM, Bobby Holleywrote: > > > On Thu, Jan 21, 2016 at 9:52 PM, Kyle Huey wrote: > >> Early in the next release cycle I plan to land a patch that will remove >> nsPIDOMWindow in favor of two separate types for inner and outer windows >> (fittingly, called nsPIDOMWindowInner/nsPIDOMWindowOuter) I'll also make >> changes to the XPIDL interface hierarchy (effectively removing >> nsIDOMWindow >> and introducing two new base interfaces for inner and outer windows) to >> support this. When the dust settles places that today use nsPIDOMWindow >> or >> nsIDOMWindow will instead use a type that specifies, at compile time, >> whether we have an inner or outer window. >> > > Huzzah! > > >> The actual methods exposed on nsPIDOMWindow will be carried over in almost >> all cases. Splitting the interface itself, or nsGlobalWindow, apart will >> happen later. >> > > Is the nsGlobalWindow split likely to happen soon, or is it being > indefinitely postponed? We have a fair amount of code that uses it directly > to avoid virtual calls. > > >> >> You can follow along in bug 1241764. >> >> - Kyle >> ___ >> dev-platform mailing list >> dev-platform@lists.mozilla.org >> https://lists.mozilla.org/listinfo/dev-platform >> > > My long term plan of sorts is to move "outer" windows into docshell rather than actually splitting it. I don't expect to work on that part myself anytime soon though. - Kyle ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Splitting inner and outer windows
On Thu, Jan 21, 2016 at 9:52 PM, Kyle Hueywrote: > Early in the next release cycle I plan to land a patch that will remove > nsPIDOMWindow in favor of two separate types for inner and outer windows > (fittingly, called nsPIDOMWindowInner/nsPIDOMWindowOuter) I'll also make > changes to the XPIDL interface hierarchy (effectively removing nsIDOMWindow > and introducing two new base interfaces for inner and outer windows) to > support this. When the dust settles places that today use nsPIDOMWindow or > nsIDOMWindow will instead use a type that specifies, at compile time, > whether we have an inner or outer window. > Huzzah! > The actual methods exposed on nsPIDOMWindow will be carried over in almost > all cases. Splitting the interface itself, or nsGlobalWindow, apart will > happen later. > Is the nsGlobalWindow split likely to happen soon, or is it being indefinitely postponed? We have a fair amount of code that uses it directly to avoid virtual calls. > > You can follow along in bug 1241764. > > - Kyle > ___ > dev-platform mailing list > dev-platform@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-platform > ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Splitting inner and outer windows
Does this mean that window objects will no longer implement nsIDOMWindow (at least as far as JS is concerned)? Querying for nsIDOMWindow is something add-ons do a lot and I'd expect to see a lot of add-ons break if we changed that. On Thu, Jan 21, 2016 at 9:52 PM, Kyle Hueywrote: > Early in the next release cycle I plan to land a patch that will remove > nsPIDOMWindow in favor of two separate types for inner and outer windows > (fittingly, called nsPIDOMWindowInner/nsPIDOMWindowOuter) I'll also make > changes to the XPIDL interface hierarchy (effectively removing nsIDOMWindow > and introducing two new base interfaces for inner and outer windows) to > support this. When the dust settles places that today use nsPIDOMWindow or > nsIDOMWindow will instead use a type that specifies, at compile time, > whether we have an inner or outer window. > > The actual methods exposed on nsPIDOMWindow will be carried over in almost > all cases. Splitting the interface itself, or nsGlobalWindow, apart will > happen later. > > You can follow along in bug 1241764. > > - Kyle > ___ > dev-platform mailing list > dev-platform@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-platform ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Splitting inner and outer windows
They will continue to implement nsIDOMWindow just like they do nsIDOMWindowInternal. We're simply not going to use it for anything. - Kyle On Fri, Jan 22, 2016 at 7:53 AM, Dave Townsendwrote: > Does this mean that window objects will no longer implement > nsIDOMWindow (at least as far as JS is concerned)? Querying for > nsIDOMWindow is something add-ons do a lot and I'd expect to see a lot > of add-ons break if we changed that. > > On Thu, Jan 21, 2016 at 9:52 PM, Kyle Huey wrote: > > Early in the next release cycle I plan to land a patch that will remove > > nsPIDOMWindow in favor of two separate types for inner and outer windows > > (fittingly, called nsPIDOMWindowInner/nsPIDOMWindowOuter) I'll also make > > changes to the XPIDL interface hierarchy (effectively removing > nsIDOMWindow > > and introducing two new base interfaces for inner and outer windows) to > > support this. When the dust settles places that today use nsPIDOMWindow > or > > nsIDOMWindow will instead use a type that specifies, at compile time, > > whether we have an inner or outer window. > > > > The actual methods exposed on nsPIDOMWindow will be carried over in > almost > > all cases. Splitting the interface itself, or nsGlobalWindow, apart will > > happen later. > > > > You can follow along in bug 1241764. > > > > - Kyle > > ___ > > dev-platform mailing list > > dev-platform@lists.mozilla.org > > https://lists.mozilla.org/listinfo/dev-platform > ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Splitting inner and outer windows
Early in the next release cycle I plan to land a patch that will remove nsPIDOMWindow in favor of two separate types for inner and outer windows (fittingly, called nsPIDOMWindowInner/nsPIDOMWindowOuter) I'll also make changes to the XPIDL interface hierarchy (effectively removing nsIDOMWindow and introducing two new base interfaces for inner and outer windows) to support this. When the dust settles places that today use nsPIDOMWindow or nsIDOMWindow will instead use a type that specifies, at compile time, whether we have an inner or outer window. The actual methods exposed on nsPIDOMWindow will be carried over in almost all cases. Splitting the interface itself, or nsGlobalWindow, apart will happen later. You can follow along in bug 1241764. - Kyle ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform