#include "third_party/blink/renderer/core/display_lock/display_lock_document_state.h"
#include "base/trace_event/trace_event.h"
#include "third_party/blink/renderer/core/display_lock/display_lock_context.h"
#include "third_party/blink/renderer/core/dom/document.h"
#include "third_party/blink/renderer/core/dom/element.h"
#include "third_party/blink/renderer/core/dom/flat_tree_traversal.h"
#include "third_party/blink/renderer/core/dom/slot_assignment_engine.h"
#include "third_party/blink/renderer/core/frame/web_feature.h"
#include "third_party/blink/renderer/core/inspector/console_message.h"
#include "third_party/blink/renderer/core/intersection_observer/intersection_observer.h"
#include "third_party/blink/renderer/core/intersection_observer/intersection_observer_entry.h"
#include "third_party/blink/renderer/core/layout/layout_block.h"
#include "third_party/blink/renderer/core/style/computed_style.h"
#include "third_party/blink/renderer/core/view_transition/view_transition.h"
#include "third_party/blink/renderer/core/view_transition/view_transition_utils.h"
namespace {
const char kForcedRendering[] = …;
const char kForcedRenderingMax[] = …;
constexpr unsigned kMaxConsoleMessages = …;
}
namespace blink {
DisplayLockDocumentState::DisplayLockDocumentState(Document* document)
: … { … }
void DisplayLockDocumentState::Trace(Visitor* visitor) const { … }
void DisplayLockDocumentState::AddDisplayLockContext(
DisplayLockContext* context) { … }
void DisplayLockDocumentState::RemoveDisplayLockContext(
DisplayLockContext* context) { … }
int DisplayLockDocumentState::DisplayLockCount() const { … }
void DisplayLockDocumentState::AddLockedDisplayLock() { … }
void DisplayLockDocumentState::RemoveLockedDisplayLock() { … }
int DisplayLockDocumentState::LockedDisplayLockCount() const { … }
void DisplayLockDocumentState::IncrementDisplayLockBlockingAllActivation() { … }
void DisplayLockDocumentState::DecrementDisplayLockBlockingAllActivation() { … }
int DisplayLockDocumentState::DisplayLockBlockingAllActivationCount() const { … }
base::TimeTicks DisplayLockDocumentState::GetLockUpdateTimestamp() { … }
void DisplayLockDocumentState::RegisterDisplayLockActivationObservation(
Element* element) { … }
void DisplayLockDocumentState::UnregisterDisplayLockActivationObservation(
Element* element) { … }
IntersectionObserver& DisplayLockDocumentState::EnsureIntersectionObserver() { … }
void DisplayLockDocumentState::ProcessDisplayLockActivationObservation(
const HeapVector<Member<IntersectionObserverEntry>>& entries) { … }
void DisplayLockDocumentState::ScheduleAnimation() { … }
DisplayLockDocumentState::ScopedForceActivatableDisplayLocks
DisplayLockDocumentState::GetScopedForceActivatableLocks() { … }
bool DisplayLockDocumentState::HasActivatableLocks() const { … }
bool DisplayLockDocumentState::ActivatableDisplayLocksForced() const { … }
void DisplayLockDocumentState::ElementAddedToTopLayer(Element* element) { … }
void DisplayLockDocumentState::ElementRemovedFromTopLayer(Element*) { … }
bool DisplayLockDocumentState::MarkAncestorContextsHaveTopLayerElement(
Element* element) { … }
void DisplayLockDocumentState::NotifyViewTransitionPseudoTreeChanged() { … }
void DisplayLockDocumentState::UpdateViewTransitionElementAncestorLocks() { … }
void DisplayLockDocumentState::NotifySelectionRemoved() { … }
void DisplayLockDocumentState::BeginNodeForcedScope(
const Node* node,
bool self_was_forced,
DisplayLockUtilities::ScopedForcedUpdate::Impl* impl) { … }
void DisplayLockDocumentState::BeginRangeForcedScope(
const Range* range,
DisplayLockUtilities::ScopedForcedUpdate::Impl* impl) { … }
void DisplayLockDocumentState::EndForcedScope(
DisplayLockUtilities::ScopedForcedUpdate::Impl* impl) { … }
void DisplayLockDocumentState::EnsureMinimumForcedPhase(
DisplayLockContext::ForcedPhase phase) { … }
void DisplayLockDocumentState::ForceLockIfNeeded(Element* element) { … }
void DisplayLockDocumentState::ForcedNodeInfo::ForceLockIfNeeded(
Element* new_locked_element) { … }
void DisplayLockDocumentState::ForcedRangeInfo::ForceLockIfNeeded(
Element* new_locked_element) { … }
DisplayLockDocumentState::ScopedForceActivatableDisplayLocks::
ScopedForceActivatableDisplayLocks(DisplayLockDocumentState* state)
: … { … }
DisplayLockDocumentState::ScopedForceActivatableDisplayLocks::
ScopedForceActivatableDisplayLocks(
ScopedForceActivatableDisplayLocks&& other)
: … { … }
DisplayLockDocumentState::ScopedForceActivatableDisplayLocks&
DisplayLockDocumentState::ScopedForceActivatableDisplayLocks::operator=(
ScopedForceActivatableDisplayLocks&& other) { … }
DisplayLockDocumentState::ScopedForceActivatableDisplayLocks::
~ScopedForceActivatableDisplayLocks() { … }
void DisplayLockDocumentState::NotifyPrintingOrPreviewChanged() { … }
void DisplayLockDocumentState::IssueForcedRenderWarning(Element* element) { … }
}