Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
| 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
| 4 * (C) 2001 Dirk Mueller (mueller@kde.org) | 4 * (C) 2001 Dirk Mueller (mueller@kde.org) |
| 5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All | 5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All |
| 6 * rights reserved. | 6 * rights reserved. |
| 7 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) | 7 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) |
| 8 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. | 8 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. |
| 9 * (http://www.torchmobile.com/) | 9 * (http://www.torchmobile.com/) |
| 10 * | 10 * |
| (...skipping 810 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 821 Node* Node::FocusDelegate() { | 821 Node* Node::FocusDelegate() { |
| 822 return this; | 822 return this; |
| 823 } | 823 } |
| 824 | 824 |
| 825 bool Node::ShouldHaveFocusAppearance() const { | 825 bool Node::ShouldHaveFocusAppearance() const { |
| 826 DCHECK(IsFocused()); | 826 DCHECK(IsFocused()); |
| 827 return true; | 827 return true; |
| 828 } | 828 } |
| 829 | 829 |
| 830 bool Node::IsInert() const { | 830 bool Node::IsInert() const { |
| 831 if (!CanParticipateInFlatTree()) | |
| 832 return true; | |
| 833 | |
| 834 DCHECK(!ChildNeedsDistributionRecalc()); | |
| 835 | |
| 831 const HTMLDialogElement* dialog = GetDocument().ActiveModalDialog(); | 836 const HTMLDialogElement* dialog = GetDocument().ActiveModalDialog(); |
| 832 if (dialog && this != GetDocument() && | 837 if (dialog && this != GetDocument() && |
| 833 (!CanParticipateInFlatTree() || | 838 !FlatTreeTraversal::ContainsIncludingPseudoElement(*dialog, *this)) { |
| 834 !FlatTreeTraversal::ContainsIncludingPseudoElement(*dialog, *this))) | |
| 835 return true; | 839 return true; |
| 840 } | |
| 841 | |
| 842 if (RuntimeEnabledFeatures::inertAttributeEnabled()) { | |
| 843 const Element* element = this->IsElementNode() | |
| 844 ? ToElement(this) | |
| 845 : FlatTreeTraversal::ParentElement(*this); | |
| 846 while (element) { | |
| 847 if (element->hasAttribute(HTMLNames::inertAttr)) | |
| 848 return true; | |
| 849 element = FlatTreeTraversal::ParentElement(*element); | |
| 850 } | |
| 851 } | |
| 836 return GetDocument().LocalOwner() && GetDocument().LocalOwner()->IsInert(); | 852 return GetDocument().LocalOwner() && GetDocument().LocalOwner()->IsInert(); |
|
dmazzoni
2017/05/08 06:06:09
I just realized this only walks local frames, so i
| |
| 837 } | 853 } |
| 838 | 854 |
| 839 unsigned Node::NodeIndex() const { | 855 unsigned Node::NodeIndex() const { |
| 840 const Node* temp_node = previousSibling(); | 856 const Node* temp_node = previousSibling(); |
| 841 unsigned count = 0; | 857 unsigned count = 0; |
| 842 for (count = 0; temp_node; count++) | 858 for (count = 0; temp_node; count++) |
| 843 temp_node = temp_node->previousSibling(); | 859 temp_node = temp_node->previousSibling(); |
| 844 return count; | 860 return count; |
| 845 } | 861 } |
| 846 | 862 |
| (...skipping 1746 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2593 if (node) { | 2609 if (node) { |
| 2594 std::stringstream stream; | 2610 std::stringstream stream; |
| 2595 node->PrintNodePathTo(stream); | 2611 node->PrintNodePathTo(stream); |
| 2596 LOG(INFO) << stream.str(); | 2612 LOG(INFO) << stream.str(); |
| 2597 } else { | 2613 } else { |
| 2598 LOG(INFO) << "Cannot showNodePath for <null>"; | 2614 LOG(INFO) << "Cannot showNodePath for <null>"; |
| 2599 } | 2615 } |
| 2600 } | 2616 } |
| 2601 | 2617 |
| 2602 #endif | 2618 #endif |
| OLD | NEW |