| Index: content/browser/frame_host/frame_tree_node.cc
|
| diff --git a/content/browser/frame_host/frame_tree_node.cc b/content/browser/frame_host/frame_tree_node.cc
|
| index 845aecea62afc5945311f283f029c8d8b6504682..e3048ac8fa9405900f2f0286029e35dadf442e7a 100644
|
| --- a/content/browser/frame_host/frame_tree_node.cc
|
| +++ b/content/browser/frame_host/frame_tree_node.cc
|
| @@ -34,8 +34,7 @@ FrameTreeNode::FrameTreeNode(FrameTree* frame_tree,
|
| manager_delegate),
|
| frame_tree_node_id_(next_frame_tree_node_id_++),
|
| parent_(NULL),
|
| - replication_state_(name),
|
| - is_loading_(false) {
|
| + replication_state_(name) {
|
| }
|
|
|
| FrameTreeNode::~FrameTreeNode() {
|
| @@ -115,4 +114,26 @@ bool FrameTreeNode::IsDescendantOf(FrameTreeNode* other) const {
|
| return false;
|
| }
|
|
|
| +bool FrameTreeNode::IsLoading() const {
|
| + RenderFrameHostImpl* current_frame_host =
|
| + render_manager_.current_frame_host();
|
| + RenderFrameHostImpl* pending_frame_host =
|
| + render_manager_.pending_frame_host();
|
| +
|
| + DCHECK(current_frame_host);
|
| + // TODO(fdegans): Change the implementation logic for PlzNavigate once
|
| + // DidStartLoading and DidStopLoading are properly called.
|
| + if (pending_frame_host && pending_frame_host->is_loading())
|
| + return true;
|
| + return current_frame_host->is_loading();
|
| +}
|
| +
|
| +double FrameTreeNode::GetLoadingProgress() const {
|
| + RenderFrameHostImpl* current_frame_host =
|
| + render_manager_.current_frame_host();
|
| +
|
| + DCHECK(current_frame_host);
|
| + return current_frame_host->loading_progress();
|
| +}
|
| +
|
| } // namespace content
|
|
|