зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1736077 - Remove unusued LayerManager.cpp. r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D128632
This commit is contained in:
Родитель
98cf1fa5fa
Коммит
cde3f4b00b
|
@ -6151,7 +6151,7 @@ VideoFrameContainer* HTMLMediaElement::GetVideoFrameContainer() {
|
|||
}
|
||||
|
||||
mVideoFrameContainer = new VideoFrameContainer(
|
||||
this, LayerManager::CreateImageContainer(ImageContainer::ASYNCHRONOUS));
|
||||
this, MakeAndAddRef<ImageContainer>(ImageContainer::ASYNCHRONOUS));
|
||||
|
||||
return mVideoFrameContainer;
|
||||
}
|
||||
|
|
|
@ -46,7 +46,7 @@ void VideoFrame::TakeFrom(VideoFrame* aFrame) {
|
|||
already_AddRefed<Image> VideoFrame::CreateBlackImage(
|
||||
const gfx::IntSize& aSize) {
|
||||
RefPtr<ImageContainer> container =
|
||||
LayerManager::CreateImageContainer(ImageContainer::ASYNCHRONOUS);
|
||||
MakeAndAddRef<ImageContainer>(ImageContainer::ASYNCHRONOUS);
|
||||
RefPtr<PlanarYCbCrImage> image = container->CreatePlanarYCbCrImage();
|
||||
if (!image) {
|
||||
return nullptr;
|
||||
|
|
|
@ -246,7 +246,7 @@ nsresult MediaEngineDefaultVideoSource::Start() {
|
|||
}
|
||||
|
||||
if (!mImageContainer) {
|
||||
mImageContainer = layers::LayerManager::CreateImageContainer(
|
||||
mImageContainer = MakeAndAddRef<layers::ImageContainer>(
|
||||
layers::ImageContainer::ASYNCHRONOUS);
|
||||
}
|
||||
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
#include "Tracing.h"
|
||||
#include "VideoFrameUtils.h"
|
||||
#include "VideoUtils.h"
|
||||
#include "ImageContainer.h"
|
||||
#include "webrtc/common_video/include/video_frame_buffer.h"
|
||||
#include "webrtc/common_video/libyuv/include/webrtc_libyuv.h"
|
||||
|
||||
|
@ -247,7 +248,7 @@ void MediaEngineRemoteVideoSource::SetTrack(const RefPtr<MediaTrack>& aTrack,
|
|||
MOZ_ASSERT(aTrack->AsSourceTrack());
|
||||
|
||||
if (!mImageContainer) {
|
||||
mImageContainer = layers::LayerManager::CreateImageContainer(
|
||||
mImageContainer = MakeAndAddRef<layers::ImageContainer>(
|
||||
layers::ImageContainer::ASYNCHRONOUS);
|
||||
}
|
||||
|
||||
|
|
|
@ -9,6 +9,7 @@
|
|||
#include "MediaDataDecoderProxy.h"
|
||||
#include "PDMFactory.h"
|
||||
#include "VideoUtils.h"
|
||||
#include "ImageContainer.h"
|
||||
#include "mozilla/layers/ImageBridgeChild.h"
|
||||
#include "mozilla/media/MediaUtils.h"
|
||||
#include "webrtc/rtc_base/keep_ref_until_done.h"
|
||||
|
@ -19,7 +20,7 @@ WebrtcMediaDataDecoder::WebrtcMediaDataDecoder(nsACString& aCodecMimeType)
|
|||
: mThreadPool(GetMediaThreadPool(MediaThreadType::SUPERVISOR)),
|
||||
mTaskQueue(new TaskQueue(do_AddRef(mThreadPool),
|
||||
"WebrtcMediaDataDecoder::mTaskQueue")),
|
||||
mImageContainer(layers::LayerManager::CreateImageContainer(
|
||||
mImageContainer(MakeAndAddRef<layers::ImageContainer>(
|
||||
layers::ImageContainer::ASYNCHRONOUS)),
|
||||
mFactory(new PDMFactory()),
|
||||
mTrackType(TrackInfo::kUndefinedTrack),
|
||||
|
|
|
@ -1559,7 +1559,7 @@ class MediaPipelineReceiveVideo::PipelineListener
|
|||
const PrincipalHandle& aPrincipalHandle)
|
||||
: GenericReceiveListener(std::move(aMainThread), aTrack),
|
||||
mImageContainer(
|
||||
LayerManager::CreateImageContainer(ImageContainer::ASYNCHRONOUS)),
|
||||
MakeAndAddRef<ImageContainer>(ImageContainer::ASYNCHRONOUS)),
|
||||
mMutex("MediaPipelineReceiveVideo::PipelineListener::mMutex"),
|
||||
mPrincipalHandle(aPrincipalHandle) {}
|
||||
|
||||
|
|
|
@ -1,110 +0,0 @@
|
|||
/* -*- 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/layers/LayerManager.h"
|
||||
|
||||
#include <stdint.h> // for uint64_t, uint8_t
|
||||
#include <stdlib.h> // for abort
|
||||
#include <algorithm> // for copy, copy_backward
|
||||
#include <utility> // for move, forward
|
||||
#include "FrameMetrics.h" // for FrameMetrics
|
||||
#include "ImageContainer.h" // for ImageContainer, ImageContainer::Mode
|
||||
#include "LayerUserData.h" // for LayerUserData
|
||||
#include "Layers.h" // for RecordCompositionPayloadsPresented, Layer
|
||||
#include "TreeTraversal.h" // for ForwardIterator, BreadthFirstSearch
|
||||
#include "gfxPlatform.h" // for gfxPlatform
|
||||
#include "mozilla/AlreadyAddRefed.h" // for already_AddRefed
|
||||
#include "mozilla/ArrayIterator.h" // for ArrayIterator
|
||||
#include "mozilla/Assertions.h" // for AssertionConditionType, MOZ_ASSERT, MOZ_ASSERT_HELPER1
|
||||
#include "mozilla/EffectSet.h" // for EffectSet
|
||||
#include "mozilla/Logging.h" // for LazyLogModule, LogModule (ptr only)
|
||||
#include "mozilla/RefPtr.h" // for RefPtr, getter_AddRefs, RefPtrGetterAddRefs
|
||||
#include "mozilla/StaticPrefs_layers.h" // for layers_componentalpha_enabled_AtStartup_DoNotUseDirectly
|
||||
#include "mozilla/UniquePtr.h" // for UniquePtr
|
||||
#include "mozilla/dom/Animation.h" // for Animation
|
||||
#include "mozilla/dom/AnimationEffect.h" // for AnimationEffect
|
||||
#include "mozilla/gfx/Point.h" // for IntSize
|
||||
#include "mozilla/gfx/Types.h" // for SurfaceFormat, gfx
|
||||
#include "mozilla/gfx/UserData.h" // for UserData, UserDataKey (ptr only)
|
||||
#include "mozilla/layers/LayersTypes.h" // for CompositionPayload
|
||||
#include "mozilla/layers/PersistentBufferProvider.h" // for PersistentBufferProviderBasic, PersistentBufferProvider (ptr only)
|
||||
#include "mozilla/layers/ScrollableLayerGuid.h" // for ScrollableLayerGuid, ScrollableLayerGuid::NULL_SCROLL_ID, ScrollableLayerGu...
|
||||
#include "nsHashKeys.h" // for nsUint64HashKey
|
||||
#include "nsRefPtrHashtable.h" // for nsRefPtrHashtable
|
||||
#include "nsTArray.h" // for nsTArray
|
||||
|
||||
uint8_t gLayerManagerLayerBuilder;
|
||||
|
||||
// Undo the damage done by mozzconf.h
|
||||
#undef compress
|
||||
#include "mozilla/Compression.h"
|
||||
|
||||
namespace mozilla {
|
||||
namespace layers {
|
||||
|
||||
using namespace mozilla::gfx;
|
||||
using namespace mozilla::Compression;
|
||||
|
||||
//--------------------------------------------------
|
||||
// LayerManager
|
||||
|
||||
LayerManager::LayerManager()
|
||||
: mDestroyed(false),
|
||||
mSnapEffectiveTransforms(true),
|
||||
mId(0),
|
||||
mInTransaction(false),
|
||||
mContainsSVG(false),
|
||||
mPaintedPixelCount(0) {}
|
||||
|
||||
LayerManager::~LayerManager() = default;
|
||||
|
||||
void LayerManager::Destroy() {
|
||||
mDestroyed = true;
|
||||
mUserData.Destroy();
|
||||
mPartialPrerenderedAnimations.Clear();
|
||||
}
|
||||
|
||||
/* static */ mozilla::LogModule* LayerManager::GetLog() {
|
||||
static LazyLogModule sLog("Layers");
|
||||
return sLog;
|
||||
}
|
||||
|
||||
already_AddRefed<DrawTarget> LayerManager::CreateOptimalDrawTarget(
|
||||
const gfx::IntSize& aSize, SurfaceFormat aFormat) {
|
||||
return gfxPlatform::GetPlatform()->CreateOffscreenContentDrawTarget(aSize,
|
||||
aFormat);
|
||||
}
|
||||
|
||||
already_AddRefed<DrawTarget> LayerManager::CreateOptimalMaskDrawTarget(
|
||||
const gfx::IntSize& aSize) {
|
||||
return CreateOptimalDrawTarget(aSize, SurfaceFormat::A8);
|
||||
}
|
||||
|
||||
already_AddRefed<DrawTarget> LayerManager::CreateDrawTarget(
|
||||
const IntSize& aSize, SurfaceFormat aFormat) {
|
||||
return gfxPlatform::GetPlatform()->CreateOffscreenCanvasDrawTarget(aSize,
|
||||
aFormat);
|
||||
}
|
||||
|
||||
already_AddRefed<ImageContainer> LayerManager::CreateImageContainer(
|
||||
ImageContainer::Mode flag) {
|
||||
RefPtr<ImageContainer> container = new ImageContainer(flag);
|
||||
return container.forget();
|
||||
}
|
||||
|
||||
/*static*/
|
||||
void LayerManager::LayerUserDataDestroy(void* data) {
|
||||
delete static_cast<LayerUserData*>(data);
|
||||
}
|
||||
|
||||
UniquePtr<LayerUserData> LayerManager::RemoveUserData(void* aKey) {
|
||||
UniquePtr<LayerUserData> d(static_cast<LayerUserData*>(
|
||||
mUserData.Remove(static_cast<gfx::UserDataKey*>(aKey))));
|
||||
return d;
|
||||
}
|
||||
|
||||
} // namespace layers
|
||||
} // namespace mozilla
|
|
@ -92,68 +92,7 @@ void WriteSnapshotToDumpFile(Compositor* aCompositor, DrawTarget* aTarget) {
|
|||
//--------------------------------------------------
|
||||
// LayerManager
|
||||
|
||||
void LayerManager::Log(const char* aPrefix) {
|
||||
if (!IsLogEnabled()) return;
|
||||
|
||||
LogSelf(aPrefix);
|
||||
|
||||
nsAutoCString pfx(aPrefix);
|
||||
pfx += " ";
|
||||
if (!GetRoot()) {
|
||||
MOZ_LAYERS_LOG(("%s(null)", pfx.get()));
|
||||
return;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void LayerManager::LogSelf(const char* aPrefix) {
|
||||
nsAutoCString str;
|
||||
std::stringstream ss;
|
||||
PrintInfo(ss, aPrefix);
|
||||
MOZ_LAYERS_LOG(("%s", ss.str().c_str()));
|
||||
}
|
||||
|
||||
void LayerManager::PrintInfo(std::stringstream& aStream, const char* aPrefix) {
|
||||
aStream << aPrefix
|
||||
<< nsPrintfCString("%sLayerManager (0x%p)", Name(), this).get();
|
||||
}
|
||||
|
||||
/*static*/
|
||||
bool LayerManager::IsLogEnabled() {
|
||||
return MOZ_LOG_TEST(GetLog(), LogLevel::Debug);
|
||||
}
|
||||
|
||||
bool LayerManager::AddPendingScrollUpdateForNextTransaction(
|
||||
ScrollableLayerGuid::ViewID aScrollId,
|
||||
const ScrollPositionUpdate& aUpdateInfo) {
|
||||
return true;
|
||||
}
|
||||
|
||||
Maybe<nsTArray<ScrollPositionUpdate>> LayerManager::GetPendingScrollInfoUpdate(
|
||||
ScrollableLayerGuid::ViewID aScrollId) {
|
||||
auto p = mPendingScrollUpdates.Lookup(aScrollId);
|
||||
if (!p) {
|
||||
return Nothing();
|
||||
}
|
||||
// We could have this function return a CopyableTArray or something, but it
|
||||
// seems better to avoid implicit copies and just do the one explicit copy
|
||||
// where we need it, here.
|
||||
nsTArray<ScrollPositionUpdate> copy;
|
||||
copy.AppendElements(p.Data());
|
||||
return Some(std::move(copy));
|
||||
}
|
||||
|
||||
std::unordered_set<ScrollableLayerGuid::ViewID>
|
||||
LayerManager::ClearPendingScrollInfoUpdate() {
|
||||
std::unordered_set<ScrollableLayerGuid::ViewID> scrollIds(
|
||||
mPendingScrollUpdates.Keys().cbegin(),
|
||||
mPendingScrollUpdates.Keys().cend());
|
||||
mPendingScrollUpdates.Clear();
|
||||
return scrollIds;
|
||||
}
|
||||
|
||||
void SetAntialiasingFlags(Layer* aLayer, DrawTarget* aTarget) {
|
||||
}
|
||||
void SetAntialiasingFlags(Layer* aLayer, DrawTarget* aTarget) {}
|
||||
|
||||
IntRect ToOutsideIntRect(const gfxRect& aRect) {
|
||||
return IntRect::RoundOut(aRect.X(), aRect.Y(), aRect.Width(), aRect.Height());
|
||||
|
|
|
@ -392,7 +392,6 @@ UNIFIED_SOURCES += [
|
|||
"ipc/UiCompositorControllerParent.cpp",
|
||||
"ipc/VideoBridgeChild.cpp",
|
||||
"ipc/VideoBridgeParent.cpp",
|
||||
"LayerManager.cpp",
|
||||
"Layers.cpp",
|
||||
"LayersTypes.cpp",
|
||||
"MemoryPressureObserver.cpp",
|
||||
|
|
|
@ -2389,8 +2389,7 @@ WebRenderCommandBuilder::GenerateFallbackData(
|
|||
|
||||
imageData->CreateImageClientIfNeeded();
|
||||
RefPtr<ImageClient> imageClient = imageData->GetImageClient();
|
||||
RefPtr<ImageContainer> imageContainer =
|
||||
LayerManager::CreateImageContainer();
|
||||
RefPtr<ImageContainer> imageContainer = MakeAndAddRef<ImageContainer>();
|
||||
|
||||
{
|
||||
UpdateImageHelper helper(imageContainer, imageClient,
|
||||
|
|
|
@ -409,7 +409,7 @@ void WebRenderCanvasData::SetImageContainer(ImageContainer* aImageContainer) {
|
|||
|
||||
ImageContainer* WebRenderCanvasData::GetImageContainer() {
|
||||
if (!mContainer) {
|
||||
mContainer = LayerManager::CreateImageContainer();
|
||||
mContainer = MakeAndAddRef<ImageContainer>();
|
||||
}
|
||||
return mContainer;
|
||||
}
|
||||
|
|
|
@ -288,7 +288,7 @@ ImgDrawResult ImageResource::GetImageContainerImpl(
|
|||
|
||||
if (!container) {
|
||||
// We need a new ImageContainer, so create one.
|
||||
container = layers::LayerManager::CreateImageContainer();
|
||||
container = MakeAndAddRef<layers::ImageContainer>();
|
||||
|
||||
if (i >= 0) {
|
||||
entry->mContainer = container;
|
||||
|
|
|
@ -2252,7 +2252,7 @@ void nsIWidget::CaptureRegisteredPlugins(uintptr_t aOwnerWidget) {
|
|||
|
||||
uint64_t nsBaseWidget::CreateScrollCaptureContainer() {
|
||||
mScrollCaptureContainer =
|
||||
LayerManager::CreateImageContainer(ImageContainer::ASYNCHRONOUS);
|
||||
MakeAndAddRef<ImageContainer>(ImageContainer::ASYNCHRONOUS);
|
||||
if (!mScrollCaptureContainer) {
|
||||
NS_WARNING("Failed to create ImageContainer for widget image capture.");
|
||||
return ImageContainer::sInvalidAsyncContainerId;
|
||||
|
|
Загрузка…
Ссылка в новой задаче