OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserv
ed. | 2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserv
ed. |
3 * Copyright (C) 2006 Alexey Proskuryakov (ap@webkit.org) | 3 * Copyright (C) 2006 Alexey Proskuryakov (ap@webkit.org) |
4 * Copyright (C) 2012 Digia Plc. and/or its subsidiary(-ies) | 4 * Copyright (C) 2012 Digia Plc. and/or its subsidiary(-ies) |
5 * | 5 * |
6 * Redistribution and use in source and binary forms, with or without | 6 * Redistribution and use in source and binary forms, with or without |
7 * modification, are permitted provided that the following conditions | 7 * modification, are permitted provided that the following conditions |
8 * are met: | 8 * are met: |
9 * 1. Redistributions of source code must retain the above copyright | 9 * 1. Redistributions of source code must retain the above copyright |
10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
(...skipping 2020 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2031 // The layout needs to be up to date to determine if an element is focus
able. | 2031 // The layout needs to be up to date to determine if an element is focus
able. |
2032 m_frame->document()->updateLayoutIgnorePendingStylesheets(); | 2032 m_frame->document()->updateLayoutIgnorePendingStylesheets(); |
2033 | 2033 |
2034 // Blur current focus node when a link/button is clicked; this | 2034 // Blur current focus node when a link/button is clicked; this |
2035 // is expected by some sites that rely on onChange handlers running | 2035 // is expected by some sites that rely on onChange handlers running |
2036 // from form fields before the button click is processed. | 2036 // from form fields before the button click is processed. |
2037 Node* node = m_nodeUnderMouse.get(); | 2037 Node* node = m_nodeUnderMouse.get(); |
2038 | 2038 |
2039 // Walk up the DOM tree to search for a node to focus. | 2039 // Walk up the DOM tree to search for a node to focus. |
2040 while (node) { | 2040 while (node) { |
2041 if (node->isMouseFocusable()) { | 2041 if (node->isFocusable()) { |
2042 // To fix <rdar://problem/4895428> Can't drag selected ToDo, we
don't focus a | 2042 // To fix <rdar://problem/4895428> Can't drag selected ToDo, we
don't focus a |
2043 // node on mouse down if it's selected and inside a focused node
. It will be | 2043 // node on mouse down if it's selected and inside a focused node
. It will be |
2044 // focused if the user does a mouseup over it, however, because
the mouseup | 2044 // focused if the user does a mouseup over it, however, because
the mouseup |
2045 // will set a selection inside it, which will call setFocuseNode
IfNeeded. | 2045 // will set a selection inside it, which will call setFocuseNode
IfNeeded. |
2046 Node* n = node->isShadowRoot() ? toShadowRoot(node)->host() : no
de; | 2046 Node* n = node->isShadowRoot() ? toShadowRoot(node)->host() : no
de; |
2047 if (m_frame->selection()->isRange() | 2047 if (m_frame->selection()->isRange() |
2048 && m_frame->selection()->toNormalizedRange()->compareNode(n,
IGNORE_EXCEPTION) == Range::NODE_INSIDE | 2048 && m_frame->selection()->toNormalizedRange()->compareNode(n,
IGNORE_EXCEPTION) == Range::NODE_INSIDE |
2049 && n->isDescendantOf(m_frame->document()->focusedElement())) | 2049 && n->isDescendantOf(m_frame->document()->focusedElement())) |
2050 return true; | 2050 return true; |
2051 | 2051 |
(...skipping 1786 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3838 unsigned EventHandler::accessKeyModifiers() | 3838 unsigned EventHandler::accessKeyModifiers() |
3839 { | 3839 { |
3840 #if OS(DARWIN) | 3840 #if OS(DARWIN) |
3841 return PlatformEvent::CtrlKey | PlatformEvent::AltKey; | 3841 return PlatformEvent::CtrlKey | PlatformEvent::AltKey; |
3842 #else | 3842 #else |
3843 return PlatformEvent::AltKey; | 3843 return PlatformEvent::AltKey; |
3844 #endif | 3844 #endif |
3845 } | 3845 } |
3846 | 3846 |
3847 } // namespace WebCore | 3847 } // namespace WebCore |
OLD | NEW |