OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2012, Google Inc. All rights reserved. | 2 * Copyright (C) 2012, Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * | 7 * |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 1991 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2002 case TabRole: | 2002 case TabRole: |
2003 case MenuItemRole: | 2003 case MenuItemRole: |
2004 case MenuItemCheckBoxRole: | 2004 case MenuItemCheckBoxRole: |
2005 case MenuItemRadioRole: | 2005 case MenuItemRadioRole: |
2006 case ListItemRole: | 2006 case ListItemRole: |
2007 return toElement(node); | 2007 return toElement(node); |
2008 default: | 2008 default: |
2009 break; | 2009 break; |
2010 } | 2010 } |
2011 | 2011 |
2012 Element* elt = anchorElement(); | 2012 Element* anchor = anchorElement(); |
2013 if (!elt) | 2013 Element* clickElement = mouseButtonListener(); |
2014 elt = mouseButtonListener(); | 2014 if (!anchor || (clickElement && clickElement->isDescendantOf(anchor))) |
2015 return elt; | 2015 return clickElement; |
| 2016 return anchor; |
2016 } | 2017 } |
2017 | 2018 |
2018 Element* AXNodeObject::anchorElement() const | 2019 Element* AXNodeObject::anchorElement() const |
2019 { | 2020 { |
2020 Node* node = this->getNode(); | 2021 Node* node = this->getNode(); |
2021 if (!node) | 2022 if (!node) |
2022 return 0; | 2023 return 0; |
2023 | 2024 |
2024 AXObjectCacheImpl& cache = axObjectCache(); | 2025 AXObjectCacheImpl& cache = axObjectCache(); |
2025 | 2026 |
(...skipping 821 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2847 return placeholder; | 2848 return placeholder; |
2848 } | 2849 } |
2849 | 2850 |
2850 DEFINE_TRACE(AXNodeObject) | 2851 DEFINE_TRACE(AXNodeObject) |
2851 { | 2852 { |
2852 visitor->trace(m_node); | 2853 visitor->trace(m_node); |
2853 AXObject::trace(visitor); | 2854 AXObject::trace(visitor); |
2854 } | 2855 } |
2855 | 2856 |
2856 } // namespace blink | 2857 } // namespace blink |
OLD | NEW |