| 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) 2000 Simon Hausmann <hausmann@kde.org> | 4 * (C) 2000 Simon Hausmann <hausmann@kde.org> |
| 5 * Copyright (C) 2003, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights | 5 * Copyright (C) 2003, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights |
| 6 * reserved. | 6 * reserved. |
| 7 * (C) 2006 Graham Dennis (graham.dennis@gmail.com) | 7 * (C) 2006 Graham Dennis (graham.dennis@gmail.com) |
| 8 * | 8 * |
| 9 * This library is free software; you can redistribute it and/or | 9 * This library is free software; you can redistribute it and/or |
| 10 * modify it under the terms of the GNU Library General Public | 10 * modify it under the terms of the GNU Library General Public |
| (...skipping 238 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 249 return; | 249 return; |
| 250 | 250 |
| 251 ContainerNode::setActive(down); | 251 ContainerNode::setActive(down); |
| 252 } | 252 } |
| 253 | 253 |
| 254 void HTMLAnchorElement::attributeChanged( | 254 void HTMLAnchorElement::attributeChanged( |
| 255 const AttributeModificationParams& params) { | 255 const AttributeModificationParams& params) { |
| 256 HTMLElement::attributeChanged(params); | 256 HTMLElement::attributeChanged(params); |
| 257 if (params.reason != AttributeModificationReason::kDirectly) | 257 if (params.reason != AttributeModificationReason::kDirectly) |
| 258 return; | 258 return; |
| 259 if (params.name != hrefAttr && isLink()) | 259 if (params.name != hrefAttr) |
| 260 return; | 260 return; |
| 261 if (adjustedFocusedElementInTreeScope() != this) | 261 if (!isLink() && adjustedFocusedElementInTreeScope() == this) |
| 262 return; | 262 blur(); |
| 263 blur(); | |
| 264 } | 263 } |
| 265 | 264 |
| 266 void HTMLAnchorElement::parseAttribute( | 265 void HTMLAnchorElement::parseAttribute( |
| 267 const AttributeModificationParams& params) { | 266 const AttributeModificationParams& params) { |
| 268 if (params.name == hrefAttr) { | 267 if (params.name == hrefAttr) { |
| 269 bool wasLink = isLink(); | 268 bool wasLink = isLink(); |
| 270 setIsLink(!params.newValue.isNull()); | 269 setIsLink(!params.newValue.isNull()); |
| 271 if (wasLink || isLink()) { | 270 if (wasLink || isLink()) { |
| 272 pseudoStateChanged(CSSSelector::PseudoLink); | 271 pseudoStateChanged(CSSSelector::PseudoLink); |
| 273 pseudoStateChanged(CSSSelector::PseudoVisited); | 272 pseudoStateChanged(CSSSelector::PseudoVisited); |
| (...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 481 } | 480 } |
| 482 | 481 |
| 483 HTMLAnchorElement::NavigationHintSender* | 482 HTMLAnchorElement::NavigationHintSender* |
| 484 HTMLAnchorElement::ensureNavigationHintSender() { | 483 HTMLAnchorElement::ensureNavigationHintSender() { |
| 485 if (!m_navigationHintSender) | 484 if (!m_navigationHintSender) |
| 486 m_navigationHintSender = NavigationHintSender::create(this); | 485 m_navigationHintSender = NavigationHintSender::create(this); |
| 487 return m_navigationHintSender; | 486 return m_navigationHintSender; |
| 488 } | 487 } |
| 489 | 488 |
| 490 } // namespace blink | 489 } // namespace blink |
| OLD | NEW |