| OLD | NEW | 
|   1 <!DOCTYPE html> |   1 <!DOCTYPE html> | 
|   2 <html> |   2 <html> | 
|   3 <head> |   3 <head> | 
|   4 <script src="../../../resources/js-test.js"></script> |   4 <script src="../../../resources/js-test.js"></script> | 
|   5 <script src="resources/shadow-dom.js"></script> |   5 <script src="resources/shadow-dom.js"></script> | 
|   6 </head> |   6 </head> | 
|   7 <body> |   7 <body> | 
|   8 <p id="description"></p> |   8 <p id="description"></p> | 
|   9 <div id="sandbox"></div> |   9 <div id="sandbox"></div> | 
|  10 <pre id="console"></pre> |  10 <pre id="console"></pre> | 
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  54                                 createDOM('input', {'id': 'inputD'}), |  54                                 createDOM('input', {'id': 'inputD'}), | 
|  55                                 createDOM('input', {'id': 'inputE', 'accesskey':
     'a'}), |  55                                 createDOM('input', {'id': 'inputE', 'accesskey':
     'a'}), | 
|  56                                 createDOM('div', {'id': 'shadowF', 'tabindex': 0
    }, |  56                                 createDOM('div', {'id': 'shadowF', 'tabindex': 0
    }, | 
|  57                                           createShadowRoot( |  57                                           createShadowRoot( | 
|  58                                               createDOM('input', {'id': 'inputG'
    }))))))); |  58                                               createDOM('input', {'id': 'inputG'
    }))))))); | 
|  59  |  59  | 
|  60     var ids = ['inputB', |  60     var ids = ['inputB', | 
|  61                'shadowC/inputD', 'shadowC/inputE', |  61                'shadowC/inputD', 'shadowC/inputE', | 
|  62                'shadowC/shadowF/inputG']; |  62                'shadowC/shadowF/inputG']; | 
|  63     for (var i = 0; i < ids.length; ++i) { |  63     for (var i = 0; i < ids.length; ++i) { | 
|  64         var element = getNodeInTreeOfTrees(ids[i]); |  64         var element = getNodeInComposedTree(ids[i]); | 
|  65         element.addEventListener('focus', recordEvent, false); |  65         element.addEventListener('focus', recordEvent, false); | 
|  66     } |  66     } | 
|  67 } |  67 } | 
|  68  |  68  | 
|  69 function test() |  69 function test() | 
|  70 { |  70 { | 
|  71     prepareDOMTree(document.getElementById('sandbox')); |  71     prepareDOMTree(document.getElementById('sandbox')); | 
|  72  |  72  | 
|  73     // Please see the discussion of https://bugs.webkit.org/show_bug.cgi?id=6709
    6. |  73     // Please see the discussion of https://bugs.webkit.org/show_bug.cgi?id=6709
    6. | 
|  74     // We don't have a clear idea how accesskey should work in regard to shadow 
    DOM. |  74     // We don't have a clear idea how accesskey should work in regard to shadow 
    DOM. | 
|  75     // In current implementation, accesskeys defined inside of components are ex
    posed to an outer document. |  75     // In current implementation, accesskeys defined inside of components are ex
    posed to an outer document. | 
|  76     // Every accesskeys are flattened per each document. |  76     // Every accesskeys are flattened per each document. | 
|  77     document.getElementById('inputB').focus(); |  77     document.getElementById('inputB').focus(); | 
|  78     clearEventRecords(); |  78     clearEventRecords(); | 
|  79     pressAccessKey('a'); |  79     pressAccessKey('a'); | 
|  80     shouldBe('dispatchedEvent("focus")', '["inputE"]'); |  80     shouldBe('dispatchedEvent("focus")', '["inputE"]'); | 
|  81  |  81  | 
|  82     getNodeInTreeOfTrees('shadowC/inputD').focus(); |  82     getNodeInComposedTree('shadowC/inputD').focus(); | 
|  83     clearEventRecords(); |  83     clearEventRecords(); | 
|  84     pressAccessKey('a'); |  84     pressAccessKey('a'); | 
|  85     shouldBe('dispatchedEvent("focus")', '["inputE"]'); |  85     shouldBe('dispatchedEvent("focus")', '["inputE"]'); | 
|  86  |  86  | 
|  87     getNodeInTreeOfTrees('shadowC/shadowF/inputG').focus(); |  87     getNodeInComposedTree('shadowC/shadowF/inputG').focus(); | 
|  88     clearEventRecords(); |  88     clearEventRecords(); | 
|  89     pressAccessKey('a'); |  89     pressAccessKey('a'); | 
|  90     shouldBe('dispatchedEvent("focus")', '["inputE"]'); |  90     shouldBe('dispatchedEvent("focus")', '["inputE"]'); | 
|  91 } |  91 } | 
|  92  |  92  | 
|  93 test(); |  93 test(); | 
|  94 </script> |  94 </script> | 
|  95 </body> |  95 </body> | 
|  96 </html> |  96 </html> | 
| OLD | NEW |