Merge mozilla-central to autoland. CLOSED TREE

--HG--
rename : devtools/client/debugger/src/actions/tests/helpers/threadFront.js => devtools/client/debugger/src/actions/tests/helpers/mockCommandClient.js
This commit is contained in:
Csoregi Natalia 2019-08-16 07:03:46 +03:00
Родитель 1c8509c472 838811e23f
Коммит 3acf519302
3 изменённых файлов: 26 добавлений и 12 удалений

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

@ -331,6 +331,7 @@
#include "mozilla/PendingFullscreenEvent.h"
#include "mozilla/RestyleManager.h"
#include "mozilla/ClearOnShutdown.h"
#include "mozilla/ResultExtensions.h"
#include "nsHTMLTags.h"
#include "MobileViewportManager.h"
#include "NodeUbiReporting.h"
@ -5750,6 +5751,14 @@ void Document::SetBaseURI(nsIURI* aURI) {
RefreshLinkHrefs();
}
Result<nsCOMPtr<nsIURI>, nsresult> Document::ResolveWithBaseURI(
const nsAString& aURI) {
nsCOMPtr<nsIURI> resolvedURI;
MOZ_TRY(
NS_NewURI(getter_AddRefs(resolvedURI), aURI, nullptr, GetDocBaseURI()));
return std::move(resolvedURI);
}
URLExtraData* Document::DefaultStyleAttrURLData() {
MOZ_ASSERT(NS_IsMainThread());
nsIURI* baseURI = GetDocBaseURI();

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

@ -910,6 +910,11 @@ class Document : public nsINode,
void SetBaseURI(nsIURI* aURI);
/**
* Resolves a URI based on the document's base URI.
*/
Result<nsCOMPtr<nsIURI>, nsresult> ResolveWithBaseURI(const nsAString& aURI);
/**
* Return the URL data which style system needs for resolving url value.
* This method attempts to use the cached object in mCachedURLData, but

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

@ -3711,6 +3711,14 @@ nsresult nsWindow::Create(nsIWidget* aParent, nsNativeWidget aNativeParent,
}
}
// We have a toplevel window with transparency. Mark it as transparent
// now as nsWindow::SetTransparencyMode() can't be called after
// nsWindow is created (Bug 1344839).
if (mWindowType == eWindowType_toplevel &&
(mHasAlphaVisual || mTransparencyBitmapForTitlebar)) {
mIsTransparent = true;
}
// We only move a general managed toplevel window if someone has
// actually placed the window somewhere. If no placement has taken
// place, we just let the window manager Do The Right Thing.
@ -4444,12 +4452,7 @@ void nsWindow::SetTransparencyMode(nsTransparencyMode aMode) {
if (mIsTransparent == isTransparent) {
return;
}
if (mWindowType != eWindowType_popup && !mHasAlphaVisual &&
!mTransparencyBitmapForTitlebar) {
// https://bugzilla.mozilla.org/show_bug.cgi?id=1344839 reported
// problems cleaning the layer manager for toplevel windows, so ignore
// the request to workaround that.
} else if (mWindowType != eWindowType_popup) {
NS_WARNING("Cannot set transparency mode on non-popup windows.");
return;
}
@ -4461,12 +4464,9 @@ void nsWindow::SetTransparencyMode(nsTransparencyMode aMode) {
mIsTransparent = isTransparent;
if (!mHasAlphaVisual && !mTransparencyBitmapForTitlebar) {
// The choice of layer manager depends on
// GtkCompositorWidgetInitData::Shaped(), which will need to change, so
// clean out the old layer manager.
CleanLayerManagerRecursive();
}
// Need to clean our LayerManager up while still alive because
// we don't want to use layers acceleration on shaped windows
CleanLayerManagerRecursive();
}
nsTransparencyMode nsWindow::GetTransparencyMode() {