Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(242)

Side by Side Diff: Source/core/dom/Element.cpp

Issue 1088473002: Refactor ScopedAXObjectCache to remove ref count (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: removed m_ownedCache init Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « Source/core/dom/Document.cpp ('k') | Source/modules/accessibility/AXObjectCacheImpl.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 Peter Kelly (pmk@post.com) 4 * (C) 2001 Peter Kelly (pmk@post.com)
5 * (C) 2001 Dirk Mueller (mueller@kde.org) 5 * (C) 2001 Dirk Mueller (mueller@kde.org)
6 * (C) 2007 David Smith (catfish.man@gmail.com) 6 * (C) 2007 David Smith (catfish.man@gmail.com)
7 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012, 2013 Apple Inc. All rights reserved. 7 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012, 2013 Apple Inc. All rights reserved.
8 * (C) 2007 Eric Seidel (eric@webkit.org) 8 * (C) 2007 Eric Seidel (eric@webkit.org)
9 * 9 *
10 * This library is free software; you can redistribute it and/or 10 * This library is free software; you can redistribute it and/or
(...skipping 987 matching lines...) Expand 10 before | Expand all | Expand 10 after
998 { 998 {
999 if (!layoutObject()) 999 if (!layoutObject())
1000 return IntRect(); 1000 return IntRect();
1001 // FIXME: this should probably respect transforms 1001 // FIXME: this should probably respect transforms
1002 return document().view()->contentsToScreen(layoutObject()->absoluteBoundingB oxRectIgnoringTransforms()); 1002 return document().view()->contentsToScreen(layoutObject()->absoluteBoundingB oxRectIgnoringTransforms());
1003 } 1003 }
1004 1004
1005 const AtomicString& Element::computedRole() 1005 const AtomicString& Element::computedRole()
1006 { 1006 {
1007 document().updateLayoutIgnorePendingStylesheets(); 1007 document().updateLayoutIgnorePendingStylesheets();
1008 RefPtr<ScopedAXObjectCache> cache(adoptRef(new ScopedAXObjectCache(document( )))); 1008 OwnPtr<ScopedAXObjectCache> cache = ScopedAXObjectCache::create(document());
1009 return (*cache)->computedRoleForNode(this); 1009 return cache->get()->computedRoleForNode(this);
1010 } 1010 }
1011 1011
1012 String Element::computedName() 1012 String Element::computedName()
1013 { 1013 {
1014 document().updateLayoutIgnorePendingStylesheets(); 1014 document().updateLayoutIgnorePendingStylesheets();
1015 RefPtr<ScopedAXObjectCache> cache(adoptRef(new ScopedAXObjectCache(document( )))); 1015 OwnPtr<ScopedAXObjectCache> cache = ScopedAXObjectCache::create(document());
1016 return (*cache)->computedNameForNode(this); 1016 return cache->get()->computedNameForNode(this);
1017 } 1017 }
1018 1018
1019 const AtomicString& Element::getAttribute(const AtomicString& localName) const 1019 const AtomicString& Element::getAttribute(const AtomicString& localName) const
1020 { 1020 {
1021 if (!elementData()) 1021 if (!elementData())
1022 return nullAtom; 1022 return nullAtom;
1023 synchronizeAttribute(localName); 1023 synchronizeAttribute(localName);
1024 if (const Attribute* attribute = elementData()->attributes().find(localName, shouldIgnoreAttributeCase())) 1024 if (const Attribute* attribute = elementData()->attributes().find(localName, shouldIgnoreAttributeCase()))
1025 return attribute->value(); 1025 return attribute->value();
1026 return nullAtom; 1026 return nullAtom;
(...skipping 2443 matching lines...) Expand 10 before | Expand all | Expand 10 after
3470 { 3470 {
3471 #if ENABLE(OILPAN) 3471 #if ENABLE(OILPAN)
3472 if (hasRareData()) 3472 if (hasRareData())
3473 visitor->trace(elementRareData()); 3473 visitor->trace(elementRareData());
3474 visitor->trace(m_elementData); 3474 visitor->trace(m_elementData);
3475 #endif 3475 #endif
3476 ContainerNode::trace(visitor); 3476 ContainerNode::trace(visitor);
3477 } 3477 }
3478 3478
3479 } // namespace blink 3479 } // namespace blink
OLDNEW
« no previous file with comments | « Source/core/dom/Document.cpp ('k') | Source/modules/accessibility/AXObjectCacheImpl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698