Bug 1630704 - Part 28: Remove nsFrame r=emilio

Differential Revision: https://phabricator.services.mozilla.com/D81865
This commit is contained in:
Kagami Sascha Rosylight 2020-07-06 22:38:11 +00:00
Родитель 1afcf4d621
Коммит f6d17b63b5
40 изменённых файлов: 57 добавлений и 133 удалений

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

@ -293,7 +293,7 @@
#include "mozilla/dom/TimeoutManager.h"
#include "mozilla/dom/DocumentL10n.h"
#include "mozilla/ExtensionPolicyService.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsDOMCaretPosition.h"
#include "nsViewportInfo.h"
#include "mozilla/StaticPtr.h"
@ -12412,7 +12412,7 @@ already_AddRefed<nsDOMCaretPosition> Document::CaretPositionFromPoint(
nsPoint adjustedPoint = nsLayoutUtils::GetEventCoordinatesRelativeTo(
widget, refPoint, RelativeTo{ptFrame});
nsFrame::ContentOffsets offsets =
nsIFrame::ContentOffsets offsets =
ptFrame->GetContentOffsetsFromPoint(adjustedPoint);
nsCOMPtr<nsIContent> node = offsets.content;

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

@ -27,7 +27,7 @@
#include "mozilla/PendingAnimationTracker.h"
#include "mozilla/SharedStyleSheetCache.h"
#include "nsIObjectLoadingContent.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "mozilla/layers/APZCCallbackHelper.h"
#include "mozilla/layers/PCompositorBridgeTypes.h"
#include "mozilla/layers/ShadowLayers.h"
@ -3318,9 +3318,8 @@ nsDOMWindowUtils::SelectAtPoint(float aX, float aY, uint32_t aSelectBehavior,
nsPoint relPoint = nsLayoutUtils::GetEventCoordinatesRelativeTo(
widget, pt, RelativeTo{targetFrame});
nsresult rv = static_cast<nsFrame*>(targetFrame)
->SelectByTypeAtPoint(GetPresContext(), relPoint, amount,
amount, nsFrame::SELECT_ACCUMULATE);
nsresult rv = targetFrame->SelectByTypeAtPoint(
GetPresContext(), relPoint, amount, amount, nsIFrame::SELECT_ACCUMULATE);
*_retval = !NS_FAILED(rv);
return NS_OK;
}

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

@ -1749,8 +1749,8 @@ void WebRenderCommandBuilder::CreateWebRenderCommandsFromDisplayList(
if (dumpEnabled) {
std::stringstream ss;
nsFrame::PrintDisplayItem(aDisplayListBuilder, item, ss,
static_cast<uint32_t>(mDumpIndent));
nsIFrame::PrintDisplayItem(aDisplayListBuilder, item, ss,
static_cast<uint32_t>(mDumpIndent));
printf_stderr("%s", ss.str().c_str());
}

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

@ -25,7 +25,7 @@
#include "nsContentUtils.h"
#include "nsDebug.h"
#include "nsFocusManager.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsFrameSelection.h"
#include "nsGenericHTMLElement.h"
#include "nsIHapticFeedback.h"

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

@ -60,7 +60,7 @@
#include "nsAnimationManager.h"
#include "nsNameSpaceManager.h" // for Pref-related rule management (bugs 22963,20760,31816)
#include "nsFlexContainerFrame.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "FrameLayerBuilder.h"
#include "nsViewManager.h"
#include "nsView.h"

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

@ -7,7 +7,7 @@
/* some layout debugging functions that ought to live in nsFrame.cpp */
#include "nsAttrValue.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsDisplayList.h"
#include "FrameLayerBuilder.h"
#include "nsPrintfCString.h"

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

@ -25,7 +25,7 @@
#include "nsGenericHTMLFrameElement.h"
#include "mozilla/dom/Attr.h"
#include "mozilla/dom/PopupBlocker.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsFrameState.h"
#include "nsGlobalWindow.h"
#include "nsGkAtoms.h"

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

@ -14,7 +14,7 @@
#include "mozilla/Unused.h"
#include "nsDisplayList.h"
#include "nsITheme.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "mozilla/EventStates.h"
#include "mozilla/dom/Element.h"
#include "Layers.h"

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

@ -12,7 +12,6 @@
class gfxContext;
class nsIFrame;
class nsFrame;
class nsDisplayList;
class nsDisplayListBuilder;
class nsPresContext;

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

@ -12,7 +12,7 @@
#include "nsCOMPtr.h"
#include "nsContainerFrame.h"
#include "nsFontMetrics.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsPresContext.h"
#include "nsLineLayout.h"
#include "nsStyleConsts.h"

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

@ -31,7 +31,6 @@ FRAME_CLASSES = [
Frame("nsFirstLetterFrame", "Letter", NOT_LEAF),
Frame("nsFirstLineFrame", "Line", NOT_LEAF),
Frame("nsFlexContainerFrame", "FlexContainer", NOT_LEAF),
Frame("nsFrame", "None", NOT_LEAF),
Frame("nsIFrame", "None", NOT_LEAF),
Frame("nsGfxButtonControlFrame", "GfxButtonControl", LEAF),
Frame("nsGridContainerFrame", "GridContainer", NOT_LEAF),

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

@ -11,7 +11,7 @@
#include "LayoutLogging.h"
#include "nsStyleConsts.h"
#include "nsCSSAnonBoxes.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsIContent.h"
#include "nsGkAtoms.h"
#include "nsPresContext.h"

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

@ -6,7 +6,7 @@
/* rendering object for HTML <wbr> elements */
#include "nsFrame.h"
#include "nsIFrame.h"
using namespace mozilla;

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

@ -100,7 +100,6 @@ EXPORTS += [
'nsCanvasFrame.h',
'nsContainerFrame.h',
'nsDirection.h',
'nsFrame.h',
'nsFrameList.h',
'nsFrameSelection.h',
'nsFrameState.h',
@ -183,7 +182,6 @@ UNIFIED_SOURCES += [
'nsFlexContainerFrame.cpp',
'nsFloatManager.cpp',
'nsFontInflationData.cpp',
'nsFrame.cpp',
'nsFrameList.cpp',
'nsFrameSelection.cpp',
'nsFrameSetFrame.cpp',
@ -191,6 +189,7 @@ UNIFIED_SOURCES += [
'nsGfxScrollFrame.cpp',
'nsGridContainerFrame.cpp',
'nsHTMLCanvasFrame.cpp',
'nsIFrame.cpp',
'nsImageFrame.cpp',
'nsImageMap.cpp',
'nsInlineFrame.cpp',

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

@ -9,7 +9,7 @@
#ifndef nsBackdropFrame_h___
#define nsBackdropFrame_h___
#include "nsFrame.h"
#include "nsIFrame.h"
class nsBackdropFrame final : public nsIFrame {
public:

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

@ -10,7 +10,7 @@
#define nsBulletFrame_h___
#include "mozilla/Attributes.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "imgIContainer.h"
#include "imgINotificationObserver.h"

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

@ -1,78 +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/. */
/* base class of all rendering objects */
#ifndef nsFrame_h___
#define nsFrame_h___
#include "mozilla/Attributes.h"
#include "mozilla/EventForwards.h"
#include "mozilla/Likely.h"
#include "mozilla/Logging.h"
#include "mozilla/ReflowInput.h"
#include "nsHTMLParts.h"
#include "nsISelectionDisplay.h"
namespace mozilla {
enum class TableSelectionMode : uint32_t;
class PresShell;
} // namespace mozilla
struct nsBoxLayoutMetrics;
struct nsRect;
/**
* Implementation of a simple frame that's not splittable and has no
* child frames.
*
* Sets the NS_FRAME_SYNCHRONIZE_FRAME_AND_VIEW bit, so the default
* behavior is to keep the frame and view position and size in sync.
*/
class nsFrame : public nsIFrame {
public:
/**
* Create a new "empty" frame that maps a given piece of content into a
* 0,0 area.
*/
friend nsIFrame* NS_NewEmptyFrame(mozilla::PresShell* aShell,
ComputedStyle* aStyle);
private:
// Left undefined; nsFrame objects are never allocated from the heap.
void* operator new(size_t sz) noexcept(true);
protected:
// Overridden to prevent the global delete from being called, since
// the memory came out of an arena instead of the heap.
//
// Ideally this would be private and undefined, like the normal
// operator new. Unfortunately, the C++ standard requires an
// overridden operator delete to be accessible to any subclass that
// defines a virtual destructor, so we can only make it protected;
// worse, some C++ compilers will synthesize calls to this function
// from the "deleting destructors" that they emit in case of
// delete-expressions, so it can't even be undefined.
void operator delete(void* aPtr, size_t sz);
public:
// nsQueryFrame
NS_DECL_QUERYFRAME
NS_DECL_QUERYFRAME_TARGET(nsFrame)
nsQueryFrame::FrameIID GetFrameId() const override MOZ_MUST_OVERRIDE {
return kFrameIID;
}
void* operator new(size_t, mozilla::PresShell*) MOZ_MUST_OVERRIDE;
protected:
// Protected constructor and destructor
nsFrame(ComputedStyle* aStyle, nsPresContext* aPresContext, ClassID aID);
explicit nsFrame(ComputedStyle* aStyle, nsPresContext* aPresContext)
: nsFrame(aStyle, aPresContext, ClassID::nsFrame_id) {}
};
#endif /* nsFrame_h___ */

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

@ -6,7 +6,7 @@
/* base class of all rendering objects */
#include "nsFrame.h"
#include "nsIFrame.h"
#include <stdarg.h>
#include <algorithm>
@ -469,10 +469,6 @@ nsIFrame* NS_NewEmptyFrame(PresShell* aPresShell, ComputedStyle* aStyle) {
return new (aPresShell) nsIFrame(aStyle, aPresShell->GetPresContext());
}
nsFrame::nsFrame(ComputedStyle* aStyle, nsPresContext* aPresContext,
ClassID aID)
: nsIFrame(aStyle, aPresContext, aID) {}
nsIFrame::~nsIFrame() {
MOZ_COUNT_DTOR(nsIFrame);
@ -480,19 +476,14 @@ nsIFrame::~nsIFrame() {
"Visible nsFrame is being destroyed");
}
NS_IMPL_FRAMEARENA_HELPERS(nsFrame)
NS_IMPL_FRAMEARENA_HELPERS(nsIFrame)
// Dummy operator delete. Will never be called, but must be defined
// to satisfy some C++ ABIs.
void nsFrame::operator delete(void*, size_t) {
void nsIFrame::operator delete(void*, size_t) {
MOZ_CRASH("nsIFrame::operator delete should never be called");
}
NS_QUERYFRAME_HEAD(nsFrame)
NS_QUERYFRAME_ENTRY(nsIFrame)
NS_QUERYFRAME_TAIL_INHERITING(nsIFrame)
NS_QUERYFRAME_HEAD(nsIFrame)
NS_QUERYFRAME_ENTRY(nsIFrame)
NS_QUERYFRAME_TAIL_INHERITANCE_ROOT

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

@ -63,6 +63,7 @@
#include "nsFrameList.h"
#include "nsFrameState.h"
#include "mozilla/ReflowInput.h"
#include "nsHTMLParts.h"
#include "nsITheme.h"
#include "nsLayoutUtils.h"
#include "nsQueryFrame.h"
@ -813,13 +814,27 @@ class nsIFrame : public nsQueryFrame {
friend class nsLineBox; // needed to pass aDestructRoot through to children
friend class nsContainerFrame; // needed to pass aDestructRoot through to
// children
friend class nsFrame; // need to assign mParent
template <class Source>
friend class do_QueryFrameHelper; // to read mClass
virtual ~nsIFrame();
// Overridden to prevent the global delete from being called, since
// the memory came out of an arena instead of the heap.
//
// Ideally this would be private and undefined, like the normal
// operator new. Unfortunately, the C++ standard requires an
// overridden operator delete to be accessible to any subclass that
// defines a virtual destructor, so we can only make it protected;
// worse, some C++ compilers will synthesize calls to this function
// from the "deleting destructors" that they emit in case of
// delete-expressions, so it can't even be undefined.
void operator delete(void* aPtr, size_t sz);
private:
// Left undefined; nsFrame objects are never allocated from the heap.
void* operator new(size_t sz) noexcept(true);
// Returns true if this frame has any kind of CSS animations.
bool HasCSSAnimations();

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

@ -10,7 +10,7 @@
#define nsLeafFrame_h___
#include "mozilla/Attributes.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsDisplayList.h"
/**

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

@ -16,7 +16,7 @@
#include "mozilla/WritingModes.h"
#include "mozilla/ToString.h"
#include "nsBidiPresUtils.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsIFrameInlines.h"
#include "nsPresArena.h"
#include "nsPrintfCString.h"

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

@ -36,7 +36,7 @@
#define nsPlaceholderFrame_h___
#include "mozilla/Attributes.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsGkAtoms.h"
namespace mozilla {

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

@ -13,7 +13,7 @@
#include "mozilla/EventForwards.h"
#include "mozilla/UniquePtr.h"
#include "nsIObjectFrame.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsRegion.h"
#include "nsDisplayList.h"
#include "nsIReflowCallback.h"

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

@ -13,7 +13,7 @@
#define nsSplittableFrame_h___
#include "mozilla/Attributes.h"
#include "nsFrame.h"
#include "nsIFrame.h"
// Derived class that allows splitting
class nsSplittableFrame : public nsIFrame {

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

@ -50,7 +50,7 @@
#include "nsCSSColorUtils.h"
#include "nsLayoutUtils.h"
#include "nsDisplayList.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsIMathMLFrame.h"
#include "nsPlaceholderFrame.h"
#include "nsTextFrameUtils.h"

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

@ -12,7 +12,7 @@
#include "mozilla/gfx/2D.h"
#include "mozilla/UniquePtr.h"
#include "mozilla/dom/Text.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsFrameSelection.h"
#include "nsSplittableFrame.h"
#include "nsLineBox.h"

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

@ -9,7 +9,7 @@
#include "mozilla/dom/SVGFEImageElement.h"
#include "mozilla/dom/MutationEventBinding.h"
#include "nsContainerFrame.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsGkAtoms.h"
#include "nsLiteralString.h"
#include "SVGObserverUtils.h"

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

@ -8,7 +8,7 @@
#include "ComputedStyle.h"
#include "mozilla/PresShell.h"
#include "nsContainerFrame.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsGkAtoms.h"
#include "SVGObserverUtils.h"
#include "SVGFilters.h"

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

@ -7,7 +7,7 @@
// Keep in (case-insensitive) order:
#include "mozilla/PresShell.h"
#include "nsContainerFrame.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsGkAtoms.h"
#include "SVGObserverUtils.h"
#include "SVGFilters.h"

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

@ -8,7 +8,7 @@
#define __NS_SVGFILTERFRAME_H__
#include "mozilla/Attributes.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsQueryFrame.h"
#include "nsSVGContainerFrame.h"
#include "nsSVGUtils.h"

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

@ -9,7 +9,7 @@
#include "mozilla/Attributes.h"
#include "gfxMatrix.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsLiteralString.h"
#include "nsQueryFrame.h"
#include "nsSVGContainerFrame.h"

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

@ -11,7 +11,7 @@
#include "gfxMatrix.h"
#include "gfxRect.h"
#include "nsDisplayList.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsSVGDisplayableFrame.h"
#include "nsLiteralString.h"
#include "nsQueryFrame.h"

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

@ -10,7 +10,7 @@
#include "mozilla/Attributes.h"
#include "gfxMatrix.h"
#include "gfxRect.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsLiteralString.h"
#include "nsQueryFrame.h"
#include "nsSVGContainerFrame.h"

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

@ -8,7 +8,7 @@
#include "mozilla/PresShell.h"
#include "mozilla/dom/SVGSVGElement.h"
#include "mozilla/dom/SVGViewElement.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsGkAtoms.h"
#include "nsSVGOuterSVGFrame.h"

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

@ -10,7 +10,7 @@
#include "mozilla/Attributes.h"
#include "mozilla/UniquePtr.h"
#include "nsContainerFrame.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsIFrame.h"
#include "nsSVGDisplayableFrame.h"
#include "nsQueryFrame.h"

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

@ -11,7 +11,7 @@
#include "gfxMatrix.h"
#include "gfxRect.h"
#include "nsCOMPtr.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsLiteralString.h"
#include "nsSVGPaintServerFrame.h"

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

@ -10,7 +10,7 @@
#include "gfxRect.h"
#include "mozilla/Attributes.h"
#include "nsCOMPtr.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsIFrame.h"
#include "nsQueryFrame.h"
#include "nsSVGContainerFrame.h"

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

@ -6,7 +6,7 @@
// Keep in (case-insensitive) order:
#include "nsContainerFrame.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsGkAtoms.h"
#include "mozilla/ComputedStyle.h"
#include "mozilla/PresShell.h"

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

@ -18,7 +18,7 @@
#include "nsIContent.h"
#include "nsViewManager.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsLayoutCID.h"

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

@ -12,7 +12,7 @@
//
#include "nsGridCell.h"
#include "nsFrame.h"
#include "nsIFrame.h"
#include "nsGridLayout2.h"
nsGridCell::nsGridCell() : mBoxInColumn(nullptr), mBoxInRow(nullptr) {