Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(452)

Side by Side Diff: content/test/data/android/input/input_forms.html

Issue 2010803005: Add events tests for inputText in IME test (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 <html> 1 <html>
2 <head> 2 <head>
3 <meta name="viewport" content="width=device-width" /> 3 <meta name="viewport" content="width=device-width" />
4 </head> 4 </head>
5 <body> 5 <body>
6 <form action="about:blank"> 6 <form action="about:blank">
7 <input id="input_text" type="text" /> 7 <input id="input_text" type="text" />
8 <br/> 8 <br/>
9 </form> 9 </form>
10 <form> 10 <form>
(...skipping 13 matching lines...) Expand all
24 <div id="contenteditable_event" contenteditable><b>ab</b>cd<i>ef<b>gh</b></i ></div> 24 <div id="contenteditable_event" contenteditable><b>ab</b>cd<i>ef<b>gh</b></i ></div>
25 25
26 <script> 26 <script>
27 var log = ""; 27 var log = "";
28 var mutationObserver = new MutationObserver(function(mutations) { 28 var mutationObserver = new MutationObserver(function(mutations) {
29 mutations.forEach(function(mutation) { 29 mutations.forEach(function(mutation) {
30 addEventLog(mutation.type, mutation.detail); 30 addEventLog(mutation.type, mutation.detail);
31 }); 31 });
32 }) 32 })
33 33
34 var mutationConfig = { attributes: false, childList: false, chracterData: true } ; 34 // If |childList| is false, only the first observed element will be observed. I. E., the events we
35 // get are only from |inputText|, not from |contenteditableEvent|. This should b e investigated
36 // in the future.
Changwan Ryu 2016/05/26 07:38:09 I don't understand this part. Do we ever get any m
37 var mutationConfig = { attributes: false, childList: true, chracterData: true };
Changwan Ryu 2016/05/26 07:38:09 did you try different combinations for input and c
35 38
36 function addEventLog(type, detail) { 39 function addEventLog(type, detail) {
37 if (log.length > 0) { 40 if (log.length > 0) {
38 log += ','; 41 log += ',';
39 } 42 }
40 if (detail == null) { 43 if (detail == null) {
41 log += type; 44 log += type;
42 } else { 45 } else {
43 log += type + '(' + detail + ')'; 46 log += type + '(' + detail + ')';
44 } 47 }
45 } 48 }
46 49
47 function getEventLogs() { 50 function getEventLogs() {
48 return log; 51 return log;
49 } 52 }
50 53
51 function addEventListener(element, event_name) { 54 function addEventListener(element, event_name) {
52 element.addEventListener(event_name, function (e) { addEventLog(event_name, e. data); }); 55 element.addEventListener(event_name, function (e) { addEventLog(event_name, e. data); });
53 } 56 }
54 57
55 function addKeyEventListener(element, event_name) { 58 function addKeyEventListener(element, event_name) {
56 element.addEventListener(event_name, function (e) { addEventLog(event_name, e. keyCode); }); 59 element.addEventListener(event_name, function (e) { addEventLog(event_name, e. keyCode); });
57 } 60 }
58 61
59 function addSelectionEventListener(element, event_name) { 62 function addSelectionEventListener(event_name) {
60 // Note that listeners added to the element are not effective for now. 63 // Note that listeners added to the element are not effective for now.
61 document.addEventListener(event_name, function (e) { addEventLog(event_name, e .data); }); 64 document.addEventListener(event_name, function (e) { addEventLog(event_name, e .data); });
62 } 65 }
63 66
64 function registerListenersAndObserver(element) { 67 function registerListenersAndObserver(element) {
65 addKeyEventListener(element, "keydown"); 68 addKeyEventListener(element, "keydown");
66 addKeyEventListener(element, "keypress"); 69 addKeyEventListener(element, "keypress");
67 addKeyEventListener(element, "keyup"); 70 addKeyEventListener(element, "keyup");
68 addEventListener(element, "compositionstart"); 71 addEventListener(element, "compositionstart");
69 addEventListener(element, "compositionupdate"); 72 addEventListener(element, "compositionupdate");
70 addEventListener(element, "compositionend"); 73 addEventListener(element, "compositionend");
71 addEventListener(element, "beforeedit"); 74 addEventListener(element, "beforeedit");
72 addEventListener(element, "edit"); 75 addEventListener(element, "edit");
73 addEventListener(element, "select"); 76 addEventListener(element, "select");
74 addEventListener(element, "change"); 77 addEventListener(element, "change");
75 addEventListener(element, "input"); 78 addEventListener(element, "input");
76 addSelectionEventListener(element, "selectionchange");
77 mutationObserver.observe(element, mutationConfig); 79 mutationObserver.observe(element, mutationConfig);
78 } 80 }
79 81
82 var inputText = document.getElementById("input_text");
80 var contenteditableEvent = document.getElementById("contenteditable_event"); 83 var contenteditableEvent = document.getElementById("contenteditable_event");
81 84
85 // SelectionEventListener should be outside registerListenersAndObserver() to av oid duplication.
86 addSelectionEventListener("selectionchange");
87
88 registerListenersAndObserver(inputText);
82 registerListenersAndObserver(contenteditableEvent); 89 registerListenersAndObserver(contenteditableEvent);
83 </script> 90 </script>
84 91
85 </body> 92 </body>
86 </html> 93 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698