Commit 7e0346a1 authored by Chris Hall's avatar Chris Hall Committed by Commit Bot

Migrate IsLoaded and EstimatedLoadingProgress to AXNodeObject.

AX-Relnotes: N/A
Bug: 1093651
Change-Id: I0dfa723fb6bdfe2033fd21a51406dac63be70f03
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2240831
Commit-Queue: Chris Hall <chrishall@chromium.org>
Reviewed-by: default avatarAlice Boxhall <aboxhall@chromium.org>
Reviewed-by: default avatarMeredith Lane <meredithl@chromium.org>
Reviewed-by: default avatarDominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#781750}
parent 35d167b5
......@@ -419,10 +419,6 @@ bool AXLayoutObject::IsLinked() const {
return false;
}
bool AXLayoutObject::IsLoaded() const {
return !layout_object_->GetDocument().Parser();
}
bool AXLayoutObject::IsOffScreen() const {
DCHECK(layout_object_);
IntRect content_rect =
......@@ -1818,22 +1814,6 @@ bool AXLayoutObject::CanHaveChildren() const {
return AXNodeObject::CanHaveChildren();
}
//
// Properties of the object's owning document or page.
//
double AXLayoutObject::EstimatedLoadingProgress() const {
if (!layout_object_)
return 0;
if (IsLoaded())
return 1.0;
if (LocalFrame* frame = layout_object_->GetDocument().GetFrame())
return frame->Loader().Progress().EstimatedProgress();
return 0;
}
//
// DOM and layout tree access.
//
......
......@@ -87,7 +87,6 @@ class MODULES_EXPORT AXLayoutObject : public AXNodeObject {
bool IsRichlyEditable() const override;
bool IsLineBreakingObject() const override;
bool IsLinked() const override;
bool IsLoaded() const override;
bool IsOffScreen() const override;
bool IsVisited() const override;
......@@ -147,9 +146,6 @@ class MODULES_EXPORT AXLayoutObject : public AXNodeObject {
AXObject* RawNextSibling() const override;
bool CanHaveChildren() const override;
// Properties of the object's owning document or page.
double EstimatedLoadingProgress() const override;
// Notifications that this object may have changed.
void HandleActiveDescendantChanged() override;
void HandleAriaExpandedChanged() override;
......
......@@ -85,6 +85,7 @@
#include "third_party/blink/renderer/core/layout/layout_object.h"
#include "third_party/blink/renderer/core/layout/layout_table.h"
#include "third_party/blink/renderer/core/layout/layout_view.h"
#include "third_party/blink/renderer/core/loader/progress_tracker.h"
#include "third_party/blink/renderer/core/mathml_names.h"
#include "third_party/blink/renderer/core/page/focus_controller.h"
#include "third_party/blink/renderer/core/page/page.h"
......@@ -1214,6 +1215,12 @@ bool AXNodeObject::IsInPageLinkTarget() const {
return false;
}
bool AXNodeObject::IsLoaded() const {
if (!GetDocument())
return false;
return !GetDocument()->Parser();
}
bool AXNodeObject::IsMultiSelectable() const {
switch (RoleValue()) {
case ax::mojom::blink::Role::kGrid:
......@@ -3357,6 +3364,26 @@ bool AXNodeObject::CanHaveChildren() const {
return true;
}
//
// Properties of the object's owning document or page.
//
double AXNodeObject::EstimatedLoadingProgress() const {
if (!GetDocument())
return 0;
if (IsLoaded())
return 1.0;
if (LocalFrame* frame = GetDocument()->GetFrame())
return frame->Loader().Progress().EstimatedProgress();
return 0;
}
//
// DOM and Render tree access.
//
Element* AXNodeObject::ActionElement() const {
Node* node = this->GetNode();
if (!node)
......
......@@ -104,6 +104,7 @@ class MODULES_EXPORT AXNodeObject : public AXObject {
bool IsImageButton() const;
bool IsInputImage() const final;
bool IsInPageLinkTarget() const override;
bool IsLoaded() const override;
bool IsMultiSelectable() const override;
bool IsNativeImage() const final;
bool IsNativeTextControl() const final;
......@@ -224,6 +225,9 @@ class MODULES_EXPORT AXNodeObject : public AXObject {
void UpdateChildrenIfNecessary() override;
void SelectedOptions(AXObjectVector&) const override;
// Properties of the object's owning document or page.
double EstimatedLoadingProgress() const override;
// DOM and Render tree access.
Element* ActionElement() const override;
Element* AnchorElement() const override;
......
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