Commit 00e329e0 authored by Xiaocheng Hu's avatar Xiaocheng Hu Committed by Commit Bot

Allow forward declaration of PositionTemplate

This patch changes inclusions of Position.h in header files
to forward declaration as much as possible to optimize compile time.

Bug: 706527
Change-Id: I3597b0a2862dae6a89a754513a2d8ca2a5ead4a1
Reviewed-on: https://chromium-review.googlesource.com/670580
Commit-Queue: Xiaocheng Hu <xiaochengh@chromium.org>
Reviewed-by: default avatarEmil A Eklund <eae@chromium.org>
Reviewed-by: default avatarKent Tamura <tkent@chromium.org>
Cr-Commit-Position: refs/heads/master@{#502770}
parent 9e7e3f5c
......@@ -57,6 +57,7 @@
#include "core/css/resolver/StyleResolver.h"
#include "core/dom/Element.h"
#include "core/dom/PseudoElement.h"
#include "core/dom/ShadowRoot.h"
#include "core/events/AnimationEvent.h"
#include "core/events/TransitionEvent.h"
#include "core/frame/UseCounter.h"
......
......@@ -4,10 +4,12 @@
#include "core/clipboard/DataTransfer.h"
#include "core/dom/Element.h"
#include "core/frame/LocalFrame.h"
#include "core/frame/LocalFrameView.h"
#include "core/frame/PerformanceMonitor.h"
#include "core/frame/Settings.h"
#include "core/html/HTMLElement.h"
#include "core/layout/LayoutObject.h"
#include "core/testing/DummyPageHolder.h"
#include "core/timing/Performance.h"
......
......@@ -32,6 +32,7 @@
#include <memory>
#include "bindings/core/v8/V8BindingForTesting.h"
#include "core/dom/DocumentFragment.h"
#include "core/dom/NodeWithIndex.h"
#include "core/dom/SynchronousMutationObserver.h"
#include "core/dom/Text.h"
......
......@@ -6,6 +6,7 @@
#include "bindings/core/v8/V8BindingForCore.h"
#include "core/css/resolver/StyleResolver.h"
#include "core/dom/FlatTreeTraversal.h"
#include "core/dom/ShadowRoot.h"
#include "core/dom/ShadowRootInit.h"
#include "core/editing/testing/EditingTestBase.h"
......
......@@ -5,6 +5,7 @@
#include "core/dom/WhitespaceAttacher.h"
#include "core/dom/Element.h"
#include "core/dom/LayoutTreeBuilderTraversal.h"
#include "core/dom/Text.h"
#include "core/layout/LayoutText.h"
#include "platform/ScriptForbiddenScope.h"
......
......@@ -39,6 +39,7 @@
#include "core/editing/EditingUtilities.h"
#include "core/editing/EphemeralRange.h"
#include "core/editing/FrameSelection.h"
#include "core/editing/Position.h"
#include "core/editing/SelectionModifier.h"
#include "core/editing/SelectionTemplate.h"
#include "core/editing/SetSelectionOptions.h"
......
......@@ -30,9 +30,9 @@
#ifndef DOMSelection_h
#define DOMSelection_h
#include "bindings/core/v8/ExceptionState.h"
#include "core/dom/ContextLifecycleObserver.h"
#include "core/editing/Forward.h"
#include "core/editing/Position.h"
#include "platform/bindings/ScriptWrappable.h"
#include "platform/heap/Handle.h"
#include "platform/wtf/Forward.h"
......
......@@ -36,7 +36,6 @@
#include "core/CSSValueKeywords.h"
#include "core/CoreExport.h"
#include "core/editing/Forward.h"
#include "core/editing/Position.h"
#include "core/editing/WritingDirection.h"
#include "platform/heap/Handle.h"
#include "platform/wtf/Forward.h"
......
......@@ -29,7 +29,6 @@
#include "core/CoreExport.h"
#include "core/editing/EditingBoundary.h"
#include "core/editing/Forward.h"
#include "core/editing/Position.h"
#include "core/editing/TextGranularity.h"
#include "core/events/InputEvent.h"
#include "platform/text/TextDirection.h"
......
......@@ -14,8 +14,10 @@ class EditingAlgorithm;
using EditingStrategy = EditingAlgorithm<NodeTraversal>;
using EditingInFlatTreeStrategy = EditingAlgorithm<FlatTreeTraversal>;
// TODO(editing-dev): Add forward declaration of
// - PositionTemplate
template <typename Strategy>
class PositionTemplate;
using Position = PositionTemplate<EditingStrategy>;
using PositionInFlatTree = PositionTemplate<EditingInFlatTreeStrategy>;
template <typename Strategy>
class EphemeralRangeTemplate;
......
......@@ -46,6 +46,7 @@
#include "core/editing/GranularityStrategy.h"
#include "core/editing/InputMethodController.h"
#include "core/editing/LayoutSelection.h"
#include "core/editing/Position.h"
#include "core/editing/SelectionController.h"
#include "core/editing/SelectionEditor.h"
#include "core/editing/SelectionModifier.h"
......
......@@ -31,7 +31,6 @@
#include "core/CoreExport.h"
#include "core/dom/SynchronousMutationObserver.h"
#include "core/editing/Forward.h"
#include "core/editing/Position.h"
#include "core/editing/SetSelectionOptions.h"
#include "core/layout/ScrollAlignment.h"
#include "platform/geometry/IntRect.h"
......@@ -42,6 +41,7 @@
namespace blink {
class DisplayItemClient;
class Element;
class LayoutBlock;
class LocalFrame;
class FrameCaret;
......
......@@ -22,12 +22,14 @@
#ifndef LayoutSelection_h
#define LayoutSelection_h
#include "core/CoreExport.h"
#include "core/editing/Forward.h"
#include "core/editing/Position.h"
#include "platform/heap/Handle.h"
namespace blink {
class IntRect;
class LayoutObject;
class FrameSelection;
// This class represents a selection range in layout tree for painting and
......
......@@ -26,6 +26,7 @@
#include "core/editing/PositionIterator.h"
#include "core/editing/EditingUtilities.h"
#include "core/editing/Position.h"
namespace blink {
......
......@@ -29,7 +29,7 @@
#include "core/CoreExport.h"
#include "core/dom/Node.h"
#include "core/editing/EditingStrategy.h"
#include "core/editing/Position.h"
#include "core/editing/Forward.h"
namespace blink {
......
......@@ -5,6 +5,7 @@
#include "core/editing/PositionIterator.h"
#include "core/dom/FlatTreeTraversal.h"
#include "core/editing/Position.h"
#include "core/editing/testing/EditingTestBase.h"
namespace blink {
......
......@@ -28,6 +28,7 @@
#include "core/editing/EditingUtilities.h"
#include "core/editing/EphemeralRange.h"
#include "core/editing/Position.h"
namespace blink {
......
......@@ -5,8 +5,8 @@
#ifndef SelectionAdjuster_h
#define SelectionAdjuster_h
#include "core/CoreExport.h"
#include "core/editing/Forward.h"
#include "core/editing/Position.h"
#include "platform/wtf/Allocator.h"
namespace blink {
......
......@@ -33,12 +33,13 @@
#include "core/CoreExport.h"
#include "core/editing/Forward.h"
#include "core/editing/Position.h"
#include "platform/heap/Handle.h"
#include "platform/wtf/text/WTFString.h"
namespace blink {
class Range;
class CORE_EXPORT SurroundingText {
USING_FAST_MALLOC(SurroundingText);
WTF_MAKE_NONCOPYABLE(SurroundingText);
......
......@@ -29,6 +29,7 @@
#include "core/CoreExport.h"
#include "core/editing/EditingStrategy.h"
#include "core/editing/Forward.h"
#include "core/editing/Position.h"
#include "core/editing/SelectionType.h"
#include "core/editing/TextAffinity.h"
#include "core/editing/TextGranularity.h"
......
......@@ -29,18 +29,20 @@
#include "core/CoreExport.h"
#include "core/editing/EditingBoundary.h"
#include "core/editing/Forward.h"
#include "core/editing/Position.h"
#include "platform/geometry/LayoutRect.h"
#include "platform/text/TextDirection.h"
#include "platform/wtf/text/icu/UnicodeIcu.h"
namespace blink {
class LayoutRect;
class LayoutUnit;
class LayoutObject;
class Node;
class IntPoint;
class InlineBox;
class IntRect;
class LocalFrame;
enum class TextAffinity;
enum EWordSide { kRightWordIfOnBoundary = false, kLeftWordIfOnBoundary = true };
......
......@@ -31,6 +31,7 @@
#include "core/dom/Range.h"
#include "core/editing/EditingUtilities.h"
#include "core/editing/EphemeralRange.h"
#include "core/editing/Position.h"
#include "core/editing/VisiblePosition.h"
#include "core/editing/VisibleUnits.h"
#include "core/html/HTMLBRElement.h"
......
......@@ -28,7 +28,6 @@
#include "core/dom/QualifiedName.h"
#include "core/editing/Forward.h"
#include "core/editing/Position.h"
#include "core/editing/commands/ApplyBlockElementCommand.h"
namespace blink {
......
......@@ -30,6 +30,7 @@
#include "core/dom/FirstLetterPseudoElement.h"
#include "core/editing/EditingUtilities.h"
#include "core/editing/EphemeralRange.h"
#include "core/editing/Position.h"
#include "core/editing/VisibleUnits.h"
#include "core/editing/iterators/TextIterator.h"
#include "core/html/HTMLFormControlElement.h"
......
......@@ -27,7 +27,6 @@
#define SimplifiedBackwardsTextIterator_h
#include "core/editing/Forward.h"
#include "core/editing/Position.h"
#include "core/editing/iterators/BackwardsTextBuffer.h"
#include "core/editing/iterators/FullyClippedStateStack.h"
#include "core/editing/iterators/TextIteratorBehavior.h"
......
......@@ -30,7 +30,6 @@
#include "core/CoreExport.h"
#include "core/dom/ParserContentPolicy.h"
#include "core/editing/Forward.h"
#include "core/editing/Position.h"
#include "core/editing/serializers/HTMLInterchange.h"
#include "platform/heap/Handle.h"
#include "platform/wtf/Forward.h"
......
......@@ -5,10 +5,12 @@
#ifndef HotModeSpellCheckRequester_h
#define HotModeSpellCheckRequester_h
#include "core/editing/Position.h"
#include "core/editing/Forward.h"
#include "platform/heap/Handle.h"
namespace blink {
class Element;
class SpellCheckRequester;
// This class is only supposed to be used by IdleSpellCheckCallback in hot mode
......
......@@ -8,7 +8,6 @@
#include "core/dom/ScriptedIdleTaskController.h"
#include "core/dom/SynchronousMutationObserver.h"
#include "core/editing/Forward.h"
#include "core/editing/Position.h"
#include "platform/Timer.h"
namespace blink {
......
......@@ -28,13 +28,14 @@
#include "core/CoreExport.h"
#include "core/editing/Forward.h"
#include "core/editing/Position.h"
#include "core/editing/markers/DocumentMarker.h"
#include "platform/heap/Handle.h"
#include "platform/text/TextChecking.h"
namespace blink {
class Document;
class Element;
class IdleSpellCheckCallback;
class LocalFrame;
class HTMLElement;
......
......@@ -22,7 +22,6 @@
#define TextCheckingParagraph_h
#include "core/editing/EphemeralRange.h"
#include "core/editing/Position.h"
#include "platform/wtf/text/WTFString.h"
namespace blink {
......
......@@ -8,7 +8,6 @@
#include "core/CoreExport.h"
#include "core/dom/DocumentShutdownObserver.h"
#include "core/editing/Forward.h"
#include "core/editing/Position.h"
#include "core/editing/markers/DocumentMarker.h"
#include "platform/heap/Handle.h"
#include "public/platform/input_host.mojom-blink.h"
......
......@@ -7,6 +7,7 @@
#include "core/dom/Document.h"
#include "core/dom/Range.h"
#include "core/dom/Text.h"
#include "core/editing/Position.h"
#include "core/editing/SelectionTemplate.h"
#include "core/editing/testing/SelectionSample.h"
#include "core/frame/LocalFrameView.h"
......
......@@ -9,7 +9,6 @@
#include <memory>
#include <string>
#include "core/editing/Forward.h"
#include "core/editing/Position.h"
#include "core/testing/DummyPageHolder.h"
#include "platform/wtf/Forward.h"
......
......@@ -42,6 +42,7 @@
#include "core/frame/EventHandlerRegistry.h"
#include "core/frame/FrameTestHelpers.h"
#include "core/frame/WebLocalFrameImpl.h"
#include "core/html/HTMLElement.h"
#include "core/layout/LayoutObject.h"
#include "core/page/Page.h"
#include "platform/KeyboardCodes.h"
......
......@@ -36,6 +36,7 @@
#include "core/editing/EditingUtilities.h"
#include "core/editing/Editor.h"
#include "core/editing/FrameSelection.h"
#include "core/editing/Position.h"
#include "core/editing/SelectionTemplate.h"
#include "core/editing/SetSelectionOptions.h"
#include "core/editing/VisiblePosition.h"
......
......@@ -29,7 +29,6 @@
#include "base/gtest_prod_util.h"
#include "core/CoreExport.h"
#include "core/editing/Forward.h"
#include "core/editing/Position.h"
#include "core/html/HTMLFormControlElementWithState.h"
#include "public/platform/WebFocusType.h"
......
......@@ -7,6 +7,7 @@
#include <memory>
#include "core/dom/Document.h"
#include "core/editing/FrameSelection.h"
#include "core/editing/Position.h"
#include "core/frame/LocalFrameView.h"
#include "core/html/HTMLInputElement.h"
#include "core/html/HTMLTextAreaElement.h"
......
......@@ -5,6 +5,7 @@
#ifndef GeneratedChildren_h
#define GeneratedChildren_h
#include "core/HTMLElementTypeHelpers.h"
#include "core/layout/LayoutObject.h"
namespace blink {
......
......@@ -28,10 +28,11 @@
#define LayoutObject_h
#include "core/CoreExport.h"
#include "core/HTMLNames.h"
#include "core/dom/Document.h"
#include "core/dom/DocumentLifecycle.h"
#include "core/dom/Element.h"
#include "core/editing/Forward.h"
#include "core/editing/Position.h"
#include "core/editing/TextAffinity.h"
#include "core/frame/LocalFrameView.h"
#include "core/layout/LayoutObjectChildList.h"
......
......@@ -30,6 +30,7 @@
#include "core/dom/MutationObserver.h"
#include "core/dom/MutationObserverInit.h"
#include "core/dom/MutationRecord.h"
#include "core/dom/ShadowRoot.h"
#include "core/dom/TaskRunnerHelper.h"
#include "core/events/KeyboardEvent.h"
#include "core/events/PointerEvent.h"
......
......@@ -6,6 +6,7 @@
#include "core/HTMLNames.h"
#include "core/InputTypeNames.h"
#include "core/dom/ShadowRoot.h"
#include "core/dom/events/Event.h"
#include "core/events/KeyboardEvent.h"
#include "core/events/PointerEvent.h"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment