Backed out 2 changesets (bug 1716537) for WP failures on iframe-cross-origin-print.sub.html

Backed out changeset aa3e3f80bd68 (bug 1716537)
Backed out changeset 3226bc23c713 (bug 1716537)
This commit is contained in:
Narcis Beleuzu 2021-07-07 23:20:47 +03:00
Родитель 1797d18b9c
Коммит 935ff18b48
6 изменённых файлов: 17 добавлений и 42 удалений

Просмотреть файл

@ -174,12 +174,6 @@ IPCResult BrowserBridgeParent::RecvUpdateEffects(const EffectsInfo& aEffects) {
return IPC_OK();
}
IPCResult BrowserBridgeParent::RecvUpdateRemotePrintSettings(
const embedding::PrintData& aPrintData) {
Unused << mBrowserParent->SendUpdateRemotePrintSettings(aPrintData);
return IPC_OK();
}
IPCResult BrowserBridgeParent::RecvRenderLayers(
const bool& aEnabled, const layers::LayersObserverEpoch& aEpoch) {
Unused << mBrowserParent->SendRenderLayers(aEnabled, aEpoch);

Просмотреть файл

@ -17,10 +17,6 @@ namespace a11y {
class DocAccessibleParent;
}
namespace embedding {
class PrintData;
}
namespace dom {
class BrowserParent;
@ -79,8 +75,6 @@ class BrowserBridgeParent : public PBrowserBridgeParent {
mozilla::ipc::IPCResult RecvUpdateDimensions(const nsIntRect& aRect,
const ScreenIntSize& aSize);
mozilla::ipc::IPCResult RecvUpdateEffects(const EffectsInfo& aEffects);
mozilla::ipc::IPCResult RecvUpdateRemotePrintSettings(
const embedding::PrintData&);
mozilla::ipc::IPCResult RecvRenderLayers(const bool& aEnabled,
const LayersObserverEpoch& aEpoch);

Просмотреть файл

@ -1089,7 +1089,10 @@ mozilla::ipc::IPCResult BrowserChild::RecvCloneDocumentTreeIntoSelf(
}
}
return RecvUpdateRemotePrintSettings(aPrintData);
rv = cv->SetPrintSettingsForSubdocument(printSettings);
if (NS_WARN_IF(NS_FAILED(rv))) {
return IPC_OK();
}
#endif
return IPC_OK();
}
@ -1107,8 +1110,9 @@ mozilla::ipc::IPCResult BrowserChild::RecvUpdateRemotePrintSettings(
return IPC_OK();
}
RefPtr<BrowsingContext> bc = ourDocShell->GetBrowsingContext();
if (NS_WARN_IF(!bc)) {
nsCOMPtr<nsIContentViewer> cv;
ourDocShell->GetContentViewer(getter_AddRefs(cv));
if (NS_WARN_IF(!cv)) {
return IPC_OK();
}
@ -1126,31 +1130,11 @@ mozilla::ipc::IPCResult BrowserChild::RecvUpdateRemotePrintSettings(
}
printSettingsSvc->DeserializeToPrintSettings(aPrintData, printSettings);
bc->PreOrderWalk([&](BrowsingContext* aBc) {
if (nsCOMPtr<nsIDocShell> inProcess = aBc->GetDocShell()) {
nsCOMPtr<nsIContentViewer> cv;
inProcess->GetContentViewer(getter_AddRefs(cv));
if (NS_WARN_IF(!cv)) {
return BrowsingContext::WalkFlag::Skip;
}
// The CanRunScript analysis is not smart enough to see across
// the std::function PreOrderWalk uses, so we cheat a bit here, but it is
// fine because PreOrderWalk does deal with arbitrary script changing the
// BC tree, and our code above is simple enough and keeps strong refs to
// everything.
([&]() MOZ_CAN_RUN_SCRIPT_BOUNDARY {
cv->SetPrintSettingsForSubdocument(printSettings);
}());
} else if (RefPtr<BrowserBridgeChild> remoteChild =
BrowserBridgeChild::GetFrom(aBc->GetEmbedderElement())) {
Unused << remoteChild->SendUpdateRemotePrintSettings(aPrintData);
return BrowsingContext::WalkFlag::Skip;
}
return BrowsingContext::WalkFlag::Next;
});
rv = cv->SetPrintSettingsForSubdocument(printSettings);
if (NS_WARN_IF(NS_FAILED(rv))) {
return IPC_OK();
}
#endif
return IPC_OK();
}

Просмотреть файл

@ -10,7 +10,6 @@ include protocol PDocAccessible;
#endif
include DOMTypes;
include PPrintingTypes;
include "mozilla/LayoutMessageUtils.h";
include "mozilla/dom/BindingIPCUtils.h";
@ -93,7 +92,6 @@ parent:
async RenderLayers(bool aEnabled, LayersObserverEpoch aEpoch);
async UpdateEffects(EffectsInfo aEffects);
async UpdateRemotePrintSettings(PrintData aPrintData);
/**
* Navigate by key (Tab/Shift+Tab/F6/Shift+f6).

Просмотреть файл

@ -747,7 +747,7 @@ void nsSubDocumentFrame::Reflow(nsPresContext* aPresContext,
FinishAndStoreOverflow(&aDesiredSize);
if (!aPresContext->IsRootPaginatedDocument() && !mPostedReflowCallback) {
if (!aPresContext->IsPaginated() && !mPostedReflowCallback) {
PresShell()->PostReflowCallback(this);
mPostedReflowCallback = true;
}

Просмотреть файл

@ -0,0 +1,5 @@
[iframe-cross-origin-print.sub.html]
bug:
if fission: https://bugzilla.mozilla.org/show_bug.cgi?id=1695806
expected:
if fission: FAIL