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 reserv ed. | 5 * Copyright (C) 2003, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserv ed. |
6 * (C) 2006 Graham Dennis (graham.dennis@gmail.com) | 6 * (C) 2006 Graham Dennis (graham.dennis@gmail.com) |
7 * | 7 * |
8 * This library is free software; you can redistribute it and/or | 8 * This library is free software; you can redistribute it and/or |
9 * modify it under the terms of the GNU Library General Public | 9 * modify it under the terms of the GNU Library General Public |
10 * License as published by the Free Software Foundation; either | 10 * License as published by the Free Software Foundation; either |
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
140 int x = absolutePosition.x(); | 140 int x = absolutePosition.x(); |
141 int y = absolutePosition.y(); | 141 int y = absolutePosition.y(); |
142 url.append('?'); | 142 url.append('?'); |
143 url.appendNumber(x); | 143 url.appendNumber(x); |
144 url.append(','); | 144 url.append(','); |
145 url.appendNumber(y); | 145 url.appendNumber(y); |
146 } | 146 } |
147 | 147 |
148 void HTMLAnchorElement::defaultEventHandler(Event* event) | 148 void HTMLAnchorElement::defaultEventHandler(Event* event) |
149 { | 149 { |
150 if (isLink()) { | 150 if (isLiveLink()) { |
151 if (focused() && isEnterKeyKeydownEvent(event) && isLiveLink()) { | 151 ASSERT(event->target()); |
152 Node* target = event->target()->toNode(); | |
153 ASSERT(target); | |
154 if ((focused() || target->focused()) && isEnterKeyKeypressEvent(event)) { | |
robwu
2014/10/13 09:19:48
Don't forget to update similar code in src/third_p
Miyoung Shin(g)
2014/10/13 11:05:01
Sure, I remember it.
But I mentioned earlier, I ho
robwu
2014/10/13 11:29:33
There is some duplicate logic in the implementatio
| |
152 event->setDefaultHandled(); | 155 event->setDefaultHandled(); |
153 dispatchSimulatedClick(event); | 156 dispatchSimulatedClick(event); |
154 return; | 157 return; |
155 } | 158 } |
156 | 159 |
157 if (isLinkClick(event) && isLiveLink()) { | 160 if (isLinkClick(event) && isLiveLink()) { |
158 handleClick(event); | 161 handleClick(event); |
159 return; | 162 return; |
160 } | 163 } |
161 } | 164 } |
(...skipping 188 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
350 } else { | 353 } else { |
351 request.setRequestContext(blink::WebURLRequest::RequestContextHyperlink) ; | 354 request.setRequestContext(blink::WebURLRequest::RequestContextHyperlink) ; |
352 FrameLoadRequest frameRequest(&document(), request, getAttribute(targetA ttr)); | 355 FrameLoadRequest frameRequest(&document(), request, getAttribute(targetA ttr)); |
353 frameRequest.setTriggeringEvent(event); | 356 frameRequest.setTriggeringEvent(event); |
354 if (hasRel(RelationNoReferrer)) | 357 if (hasRel(RelationNoReferrer)) |
355 frameRequest.setShouldSendReferrer(NeverSendReferrer); | 358 frameRequest.setShouldSendReferrer(NeverSendReferrer); |
356 frame->loader().load(frameRequest); | 359 frame->loader().load(frameRequest); |
357 } | 360 } |
358 } | 361 } |
359 | 362 |
363 bool isEnterKeyKeypressEvent(Event* event) | |
364 { | |
365 return event->type() == EventTypeNames::keypress && event->isKeyboardEvent() && toKeyboardEvent(event)->keyIdentifier() == "Enter"; | |
366 } | |
367 | |
360 bool isEnterKeyKeydownEvent(Event* event) | 368 bool isEnterKeyKeydownEvent(Event* event) |
robwu
2014/10/13 09:19:48
And remove this method declaration (and its defeni
Miyoung Shin(g)
2014/10/13 11:05:01
Sure, I remember it as well.
After checking SVG is
| |
361 { | 369 { |
362 return event->type() == EventTypeNames::keydown && event->isKeyboardEvent() && toKeyboardEvent(event)->keyIdentifier() == "Enter"; | 370 return event->type() == EventTypeNames::keydown && event->isKeyboardEvent() && toKeyboardEvent(event)->keyIdentifier() == "Enter"; |
363 } | 371 } |
364 | 372 |
365 bool isLinkClick(Event* event) | 373 bool isLinkClick(Event* event) |
366 { | 374 { |
367 return event->type() == EventTypeNames::click && (!event->isMouseEvent() || toMouseEvent(event)->button() != RightButton); | 375 return event->type() == EventTypeNames::click && (!event->isMouseEvent() || toMouseEvent(event)->button() != RightButton); |
368 } | 376 } |
369 | 377 |
370 bool HTMLAnchorElement::willRespondToMouseClickEvents() | 378 bool HTMLAnchorElement::willRespondToMouseClickEvents() |
(...skipping 14 matching lines...) Expand all Loading... | |
385 Vector<String> argv; | 393 Vector<String> argv; |
386 argv.append("a"); | 394 argv.append("a"); |
387 argv.append(fastGetAttribute(hrefAttr)); | 395 argv.append(fastGetAttribute(hrefAttr)); |
388 activityLogger->logEvent("blinkAddElement", argv.size(), argv.data() ); | 396 activityLogger->logEvent("blinkAddElement", argv.size(), argv.data() ); |
389 } | 397 } |
390 } | 398 } |
391 return HTMLElement::insertedInto(insertionPoint); | 399 return HTMLElement::insertedInto(insertionPoint); |
392 } | 400 } |
393 | 401 |
394 } | 402 } |
OLD | NEW |