mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-28 23:31:56 +00:00
17acacfbf5
This patch builds on top of part 7.1 by creating this object within nsWindowWatcher and ContentParent to carry the relevant information through provider interfaces when creating new content windows. The nsOpenWindowInfo object is not created for new chrome windows. This patch does not propagate these flags all of the way through to the nsFrameLoader. That change is performed in later parts to keep each part smaller. Differential Revision: https://phabricator.services.mozilla.com/D67051 --HG-- extra : moz-landing-system : lando
41 lines
1.3 KiB
C++
41 lines
1.3 KiB
C++
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
|
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
#include "mozilla/BasePrincipal.h"
|
|
#include "nsCycleCollectionParticipant.h"
|
|
#include "nsIBrowserDOMWindow.h"
|
|
#include "nsFrameLoaderOwner.h"
|
|
#include "nsIContentSecurityPolicy.h"
|
|
#include "nsIPrincipal.h"
|
|
#include "nsIReferrerInfo.h"
|
|
#include "nsString.h"
|
|
|
|
namespace mozilla {
|
|
class OriginAttributes;
|
|
namespace dom {
|
|
class Element;
|
|
} // namespace dom
|
|
} // namespace mozilla
|
|
|
|
class nsOpenURIInFrameParams final : public nsIOpenURIInFrameParams {
|
|
public:
|
|
NS_DECL_CYCLE_COLLECTION_CLASS(nsOpenURIInFrameParams)
|
|
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
|
|
NS_DECL_NSIOPENURIINFRAMEPARAMS
|
|
|
|
explicit nsOpenURIInFrameParams(nsIOpenWindowInfo* aOpenWindowInfo,
|
|
mozilla::dom::Element* aOpener);
|
|
|
|
private:
|
|
~nsOpenURIInFrameParams();
|
|
|
|
nsCOMPtr<nsIOpenWindowInfo> mOpenWindowInfo;
|
|
RefPtr<mozilla::dom::Element> mOpenerBrowser;
|
|
nsCOMPtr<nsIReferrerInfo> mReferrerInfo;
|
|
nsCOMPtr<nsIPrincipal> mTriggeringPrincipal;
|
|
nsCOMPtr<nsIContentSecurityPolicy> mCsp;
|
|
};
|