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

Side by Side Diff: native_client_sdk/src/doc/migration/public.html

Issue 2875303003: Add migration to WebAssembly information to PNaCl / NaCl docs. (Closed)
Patch Set: fix Created 3 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
(Empty)
1 <table>
2 </table>
3 <h3>PPB_Audio</h3>
4 <table>
5 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
6 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
7 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
8 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
9 <td style="font-size: 11px; padding: 5px;">Web API </td>
10 <td style="font-size: 11px; padding: 5px;">Limitations </td>
11 </tr>
12
13 <tr bgcolor="#fcfcfc">
14 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
15 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> x </td>
16 <td style="font-size: 11px; padding: 5px;">SDL (partial) </td>
17 <td bgcolor="#ffeecc" style="font-size: 11px; padding: 5px;">GAP (partial) - AudioWorkletNode ROUGHLY equivalent</td>
18 <td style="font-size: 11px; padding: 5px;">Still being standardized. </td>
19 </tr>
20
21 <tr bgcolor="#fcfcfc">
22 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetCurrentConf ig </td>
23 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
24 <td style="font-size: 11px; padding: 5px;">SDL </td>
25 <td style="font-size: 11px; padding: 5px;">AudioContext.* (gets back setting s passed in) </td>
26 <td style="font-size: 11px; padding: 5px;"> </td>
27 </tr>
28
29 <tr bgcolor="#fcfcfc">
30 <td style="font-weight: bold; font-size: 11px; padding: 5px;">StartPlayback </td>
31 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
32 <td style="font-size: 11px; padding: 5px;">SDL </td>
33 <td style="font-size: 11px; padding: 5px;">AudioBufferSourceNode.start </td>
34 <td style="font-size: 11px; padding: 5px;"> </td>
35 </tr>
36
37 <tr bgcolor="#fcfcfc">
38 <td style="font-weight: bold; font-size: 11px; padding: 5px;">StopPlayback < /td>
39 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
40 <td style="font-size: 11px; padding: 5px;">SDL </td>
41 <td style="font-size: 11px; padding: 5px;">AudioBufferSourceNode.stop </td>
42 <td style="font-size: 11px; padding: 5px;"> </td>
43 </tr>
44
45 </table>
46 <h3>PPB_AudioBuffer</h3>
47 <table>
48 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
49 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
50 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
51 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
52 <td style="font-size: 11px; padding: 5px;">Web API </td>
53 <td style="font-size: 11px; padding: 5px;">Limitations </td>
54 </tr>
55
56 <tr bgcolor="#fcfcfc">
57 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetTimestamp < /td>
58 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
59 <td style="font-size: 11px; padding: 5px;">SDL </td>
60 <td style="font-size: 11px; padding: 5px;">AudioBufferSourceNode.start (para meter) </td>
61 <td style="font-size: 11px; padding: 5px;">Passed in each time instead of at tached to the buffer. </td>
62 </tr>
63
64 <tr bgcolor="#fcfcfc">
65 <td style="font-weight: bold; font-size: 11px; padding: 5px;">SetTimestamp < /td>
66 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
67 <td style="font-size: 11px; padding: 5px;">SDL </td>
68 <td style="font-size: 11px; padding: 5px;">AudioBufferSourceNode.start (para meter) </td>
69 <td style="font-size: 11px; padding: 5px;"> </td>
70 </tr>
71
72 <tr bgcolor="#fcfcfc">
73 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetSampleRate </td>
74 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
75 <td style="font-size: 11px; padding: 5px;">SDL </td>
76 <td style="font-size: 11px; padding: 5px;">AudioBuffer.sampleRate </td>
77 <td style="font-size: 11px; padding: 5px;"> </td>
78 </tr>
79
80 <tr bgcolor="#fcfcfc">
81 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetSampleSize </td>
82 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
83 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
84 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - WebAudio only uses 32-bit float, PPAPI does 16-bit int.</td>
85 <td style="font-size: 11px; padding: 5px;">PPAPI theoretically supports mult iple sampling sizes. In practice, it only supports 16-bit samples. Unfortunately , developers have requested 16-bit sample sizes to save on memory use. </td>
86 </tr>
87
88 <tr bgcolor="#fcfcfc">
89 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetNumberOfCha nnels </td>
90 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
91 <td style="font-size: 11px; padding: 5px;">SDL </td>
92 <td style="font-size: 11px; padding: 5px;">AudioBuffer.numberOfChannels </td >
93 <td style="font-size: 11px; padding: 5px;"> </td>
94 </tr>
95
96 <tr bgcolor="#fcfcfc">
97 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetDataBuffer </td>
98 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
99 <td style="font-size: 11px; padding: 5px;">SDL </td>
100 <td style="font-size: 11px; padding: 5px;">AudioBuffer.getChannelData </td>
101 <td style="font-size: 11px; padding: 5px;"> </td>
102 </tr>
103
104 <tr bgcolor="#fcfcfc">
105 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetBufferSize </td>
106 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
107 <td style="font-size: 11px; padding: 5px;">SDL </td>
108 <td style="font-size: 11px; padding: 5px;">AudioBuffer.length </td>
109 <td style="font-size: 11px; padding: 5px;"> </td>
110 </tr>
111
112 </table>
113 <h3>PPB_AudioConfig</h3>
114 <table>
115 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
116 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
117 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
118 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
119 <td style="font-size: 11px; padding: 5px;">Web API </td>
120 <td style="font-size: 11px; padding: 5px;">Limitations </td>
121 </tr>
122
123 <tr bgcolor="#fcfcfc">
124 <td style="font-weight: bold; font-size: 11px; padding: 5px;">CreateStereo16 Bit </td>
125 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
126 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
127 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - Only 32-b it float samples supported</td>
128 <td style="font-size: 11px; padding: 5px;"> </td>
129 </tr>
130
131 <tr bgcolor="#fcfcfc">
132 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetSampleRate </td>
133 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
134 <td style="font-size: 11px; padding: 5px;">SDL </td>
135 <td style="font-size: 11px; padding: 5px;">AudioContext.sampleRate </td>
136 <td style="font-size: 11px; padding: 5px;"> </td>
137 </tr>
138
139 <tr bgcolor="#fcfcfc">
140 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetSampleFrame Count </td>
141 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
142 <td style="font-size: 11px; padding: 5px;">SDL </td>
143 <td style="font-size: 11px; padding: 5px;">AudioBuffer.length </td>
144 <td style="font-size: 11px; padding: 5px;"> </td>
145 </tr>
146
147 <tr bgcolor="#fcfcfc">
148 <td style="font-weight: bold; font-size: 11px; padding: 5px;">RecommendSampl eRate </td>
149 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
150 <td style="font-size: 11px; padding: 5px;">SDL </td>
151 <td style="font-size: 11px; padding: 5px;">AudioContext.sampleRate (from def ault construct) </td>
152 <td style="font-size: 11px; padding: 5px;">An AudioContext will have the pre ferred sampling rate by default. </td>
153 </tr>
154
155 <tr bgcolor="#fcfcfc">
156 <td style="font-weight: bold; font-size: 11px; padding: 5px;">RecommendSampl eFrameCount </td>
157 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
158 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
159 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No mechan ism to get a recomended buffer size.</td>
160 <td style="font-size: 11px; padding: 5px;"> </td>
161 </tr>
162
163 </table>
164 <h3>PPB_Console</h3>
165 <table>
166 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
167 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
168 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
169 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
170 <td style="font-size: 11px; padding: 5px;">Web API </td>
171 <td style="font-size: 11px; padding: 5px;">Limitations </td>
172 </tr>
173
174 <tr bgcolor="#fcfcfc">
175 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Log </td>
176 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
177 <td style="font-size: 11px; padding: 5px;">utime </td>
178 <td style="font-size: 11px; padding: 5px;">console.log/warn/error/... </td>
179 <td style="font-size: 11px; padding: 5px;"> </td>
180 </tr>
181
182 <tr bgcolor="#fcfcfc">
183 <td style="font-weight: bold; font-size: 11px; padding: 5px;">LogWithSource </td>
184 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
185 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
186 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
187 <td style="font-size: 11px; padding: 5px;">PPAPI provides a way to override the source filename and line number in a console message.
188 (Though JS API provides way to style text). </td>
189 </tr>
190
191 </table>
192 <h3>PPB_Core</h3>
193 <table>
194 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
195 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
196 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
197 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
198 <td style="font-size: 11px; padding: 5px;">Web API </td>
199 <td style="font-size: 11px; padding: 5px;">Limitations </td>
200 </tr>
201
202 <tr bgcolor="#fcfcfc">
203 <td style="font-weight: bold; font-size: 11px; padding: 5px;">getTime </td>
204 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
205 <td style="font-size: 11px; padding: 5px;">utime </td>
206 <td style="font-size: 11px; padding: 5px;">new Date().getTime() </td>
207 <td style="font-size: 11px; padding: 5px;"> </td>
208 </tr>
209
210 <tr bgcolor="#fcfcfc">
211 <td style="font-weight: bold; font-size: 11px; padding: 5px;">getTimeTicks < /td>
212 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
213 <td style="font-size: 11px; padding: 5px;">utime </td>
214 <td style="font-size: 11px; padding: 5px;">new Date().getTime() </td>
215 <td style="font-size: 11px; padding: 5px;"> </td>
216 </tr>
217
218 <tr bgcolor="#fcfcfc">
219 <td style="font-weight: bold; font-size: 11px; padding: 5px;">IsMainThread < /td>
220 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
221 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
222 <td style="font-size: 11px; padding: 5px;">window.document !== undefined </t d>
223 <td style="font-size: 11px; padding: 5px;"> </td>
224 </tr>
225
226 <tr bgcolor="#fcfcfc">
227 <td style="font-weight: bold; font-size: 11px; padding: 5px;">CallOnMainThre ad </td>
228 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
229 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
230 <td style="font-size: 11px; padding: 5px;">Worker.postMessage + Atomics.wait </td>
231 <td style="font-size: 11px; padding: 5px;">Equivalent synchronization can be built. </td>
232 </tr>
233
234 </table>
235 <h3>PPB_FileIO</h3>
236 <table>
237 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
238 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
239 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
240 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
241 <td style="font-size: 11px; padding: 5px;">Web API </td>
242 <td style="font-size: 11px; padding: 5px;">Limitations </td>
243 </tr>
244
245 <tr bgcolor="#fcfcfc">
246 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
247 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
248 <td style="font-size: 11px; padding: 5px;">FS (partial) </td>
249 <td style="font-size: 11px; padding: 5px;">FileReader / FileWrite (Entry.cre ateReader / Entry.createWriter) </td>
250 <td style="font-size: 11px; padding: 5px;">Create and open are used differen tly, but the pieces are of equal power. </td>
251 </tr>
252
253 <tr bgcolor="#fcfcfc">
254 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Open </td>
255 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
256 <td style="font-size: 11px; padding: 5px;">FS (partial) </td>
257 <td style="font-size: 11px; padding: 5px;">FileReader / FileWrite (Entry.cre ateReader / Entry.createWriter) </td>
258 <td style="font-size: 11px; padding: 5px;"> </td>
259 </tr>
260
261 <tr bgcolor="#fcfcfc">
262 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Query </td>
263 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
264 <td style="font-size: 11px; padding: 5px;">FS (partial) </td>
265 <td style="font-size: 11px; padding: 5px;">Entry.getMetadata </td>
266 <td style="font-size: 11px; padding: 5px;"> </td>
267 </tr>
268
269 <tr bgcolor="#fcfcfc">
270 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Touch </td>
271 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
272 <td style="font-size: 11px; padding: 5px;">FS (partial) </td>
273 <td bgcolor="#ffeecc" style="font-size: 11px; padding: 5px;">GAP (partial) - No direct equivalent, but no access time either.</td>
274 <td style="font-size: 11px; padding: 5px;">Modify time can be bumped by writ ing. </td>
275 </tr>
276
277 <tr bgcolor="#fcfcfc">
278 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Read </td>
279 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
280 <td style="font-size: 11px; padding: 5px;">FS (partial) </td>
281 <td style="font-size: 11px; padding: 5px;">Entry.getFile + Blob.slice + File Reader.getBinaryData </td>
282 <td style="font-size: 11px; padding: 5px;">Note, this API requires an extra copy to get a read into linear memory, and may be worse than that if Blob slices are not optimizes to use mmap. </td>
283 </tr>
284
285 <tr bgcolor="#fcfcfc">
286 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Write </td>
287 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
288 <td style="font-size: 11px; padding: 5px;">FS (partial) </td>
289 <td style="font-size: 11px; padding: 5px;">FileWriter.seek + FileWriter.writ e 'write*' Events </td>
290 <td style="font-size: 11px; padding: 5px;"> </td>
291 </tr>
292
293 <tr bgcolor="#fcfcfc">
294 <td style="font-weight: bold; font-size: 11px; padding: 5px;">SetLength </td >
295 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
296 <td style="font-size: 11px; padding: 5px;">FS (partial) </td>
297 <td style="font-size: 11px; padding: 5px;">FileWriter.truncate + 'write*' Ev ents </td>
298 <td style="font-size: 11px; padding: 5px;"> </td>
299 </tr>
300
301 <tr bgcolor="#fcfcfc">
302 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Flush </td>
303 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
304 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
305 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent, no way to flush.</td>
306 <td style="font-size: 11px; padding: 5px;"> </td>
307 </tr>
308
309 <tr bgcolor="#fcfcfc">
310 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Close </td>
311 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
312 <td style="font-size: 11px; padding: 5px;">FS (partial) </td>
313 <td style="font-size: 11px; padding: 5px;">No equivalent, open files and dir ectories are implicitly closed. </td>
314 <td style="font-size: 11px; padding: 5px;"> </td>
315 </tr>
316
317 <tr bgcolor="#fcfcfc">
318 <td style="font-weight: bold; font-size: 11px; padding: 5px;">ReadToArray </ td>
319 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
320 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
321 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent.</td>
322 <td style="font-size: 11px; padding: 5px;">Allows multiple subrange reads in parallel. </td>
323 </tr>
324
325 </table>
326 <h3>PPB_FileRef</h3>
327 <table>
328 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
329 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
330 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
331 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
332 <td style="font-size: 11px; padding: 5px;">Web API </td>
333 <td style="font-size: 11px; padding: 5px;">Limitations </td>
334 </tr>
335
336 <tr bgcolor="#fcfcfc">
337 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
338 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
339 <td style="font-size: 11px; padding: 5px;">FS (partial) </td>
340 <td style="font-size: 11px; padding: 5px;">Entry.getFile(..., {create:true}) </td>
341 <td style="font-size: 11px; padding: 5px;"> </td>
342 </tr>
343
344 <tr bgcolor="#fcfcfc">
345 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetFileSystemT ype </td>
346 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
347 <td style="font-size: 11px; padding: 5px;">FS (partial) </td>
348 <td style="font-size: 11px; padding: 5px;">FileSystem.type </td>
349 <td style="font-size: 11px; padding: 5px;"> </td>
350 </tr>
351
352 <tr bgcolor="#fcfcfc">
353 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetName </td>
354 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
355 <td style="font-size: 11px; padding: 5px;">FS (partial) </td>
356 <td style="font-size: 11px; padding: 5px;">Entry.name </td>
357 <td style="font-size: 11px; padding: 5px;"> </td>
358 </tr>
359
360 <tr bgcolor="#fcfcfc">
361 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetPath </td>
362 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
363 <td style="font-size: 11px; padding: 5px;">FS (partial) </td>
364 <td style="font-size: 11px; padding: 5px;">Entry.fullPath </td>
365 <td style="font-size: 11px; padding: 5px;"> </td>
366 </tr>
367
368 <tr bgcolor="#fcfcfc">
369 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetParent </td >
370 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
371 <td style="font-size: 11px; padding: 5px;">FS (partial) </td>
372 <td style="font-size: 11px; padding: 5px;">Entry.getParent </td>
373 <td style="font-size: 11px; padding: 5px;"> </td>
374 </tr>
375
376 <tr bgcolor="#fcfcfc">
377 <td style="font-weight: bold; font-size: 11px; padding: 5px;">MakeDirectory </td>
378 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
379 <td style="font-size: 11px; padding: 5px;">FS (partial) </td>
380 <td style="font-size: 11px; padding: 5px;">Entry.getDirectory(..., {create:t rue}) </td>
381 <td style="font-size: 11px; padding: 5px;"> </td>
382 </tr>
383
384 <tr bgcolor="#fcfcfc">
385 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Touch </td>
386 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
387 <td style="font-size: 11px; padding: 5px;">FS (partial) </td>
388 <td bgcolor="#ffeecc" style="font-size: 11px; padding: 5px;">GAP (partial) - No direct equivalent, but no access time either.</td>
389 <td style="font-size: 11px; padding: 5px;">Modify time can be bumped by writ ing. </td>
390 </tr>
391
392 <tr bgcolor="#fcfcfc">
393 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Delete </td>
394 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
395 <td style="font-size: 11px; padding: 5px;">FS (partial) </td>
396 <td style="font-size: 11px; padding: 5px;">Entry.remove </td>
397 <td style="font-size: 11px; padding: 5px;"> </td>
398 </tr>
399
400 <tr bgcolor="#fcfcfc">
401 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Rename </td>
402 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
403 <td style="font-size: 11px; padding: 5px;">FS (partial) </td>
404 <td style="font-size: 11px; padding: 5px;">Entry.moveTo </td>
405 <td style="font-size: 11px; padding: 5px;"> </td>
406 </tr>
407
408 <tr bgcolor="#fcfcfc">
409 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Query </td>
410 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
411 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
412 <td style="font-size: 11px; padding: 5px;">Entry.getMetadata </td>
413 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - JS API ha s file size and last modified date, but doesn't have creation date and last acce ssed date.</td>
414 </tr>
415
416 <tr bgcolor="#fcfcfc">
417 <td style="font-weight: bold; font-size: 11px; padding: 5px;">ReadDirectoryE ntries </td>
418 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
419 <td style="font-size: 11px; padding: 5px;">FS (partial) </td>
420 <td style="font-size: 11px; padding: 5px;">Directory.readEntries </td>
421 <td style="font-size: 11px; padding: 5px;"> </td>
422 </tr>
423
424 </table>
425 <h3>PPB_FileSystem</h3>
426 <table>
427 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
428 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
429 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
430 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
431 <td style="font-size: 11px; padding: 5px;">Web API </td>
432 <td style="font-size: 11px; padding: 5px;">Limitations </td>
433 </tr>
434
435 <tr bgcolor="#fcfcfc">
436 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
437 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
438 <td style="font-size: 11px; padding: 5px;">FS (partial) </td>
439 <td style="font-size: 11px; padding: 5px;">window.requestFileSystem </td>
440 <td style="font-size: 11px; padding: 5px;">JS API does both in one step </td >
441 </tr>
442
443 <tr bgcolor="#fcfcfc">
444 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Open </td>
445 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
446 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
447 <td style="font-size: 11px; padding: 5px;">window.requestFileSystem </td>
448 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - Filesyste ms API is chrome only. IndexedDB has additional performance limitations around s ubrange writes.</td>
449 </tr>
450
451 <tr bgcolor="#fcfcfc">
452 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetType </td>
453 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
454 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
455 <td style="font-size: 11px; padding: 5px;">FileSystem.type </td>
456 <td style="font-size: 11px; padding: 5px;"> </td>
457 </tr>
458
459 </table>
460 <h3>PPB_Fullscreen</h3>
461 <table>
462 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
463 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
464 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
465 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
466 <td style="font-size: 11px; padding: 5px;">Web API </td>
467 <td style="font-size: 11px; padding: 5px;">Limitations </td>
468 </tr>
469
470 <tr bgcolor="#fcfcfc">
471 <td style="font-weight: bold; font-size: 11px; padding: 5px;">IsFullScreen < /td>
472 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
473 <td style="font-size: 11px; padding: 5px;">html5.h </td>
474 <td style="font-size: 11px; padding: 5px;">Document.fullscreenEnabled </td>
475 <td style="font-size: 11px; padding: 5px;"> </td>
476 </tr>
477
478 <tr bgcolor="#fcfcfc">
479 <td style="font-weight: bold; font-size: 11px; padding: 5px;">SetFullscreen </td>
480 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
481 <td style="font-size: 11px; padding: 5px;">html5.h </td>
482 <td style="font-size: 11px; padding: 5px;">Document.requestFullscreen </td>
483 <td style="font-size: 11px; padding: 5px;"> </td>
484 </tr>
485
486 <tr bgcolor="#fcfcfc">
487 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetScreenSize </td>
488 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
489 <td style="font-size: 11px; padding: 5px;">html5.h </td>
490 <td style="font-size: 11px; padding: 5px;">Document.exitFullscreen </td>
491 <td style="font-size: 11px; padding: 5px;"> </td>
492 </tr>
493
494 </table>
495 <h3>PPB_Gamepad</h3>
496 <table>
497 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
498 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
499 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
500 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
501 <td style="font-size: 11px; padding: 5px;">Web API </td>
502 <td style="font-size: 11px; padding: 5px;">Limitations </td>
503 </tr>
504
505 <tr bgcolor="#fcfcfc">
506 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Sample </td>
507 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
508 <td style="font-size: 11px; padding: 5px;">SDL </td>
509 <td style="font-size: 11px; padding: 5px;">Gamepad.* </td>
510 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - PPAPI exp oses a timestamp value, but the JS API doesn't provide this (though it is spec'd ).</td>
511 </tr>
512
513 </table>
514 <h3>PPB_Graphics2D</h3>
515 <table>
516 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
517 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
518 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
519 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
520 <td style="font-size: 11px; padding: 5px;">Web API </td>
521 <td style="font-size: 11px; padding: 5px;">Limitations </td>
522 </tr>
523
524 <tr bgcolor="#fcfcfc">
525 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
526 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
527 <td style="font-size: 11px; padding: 5px;">SDL </td>
528 <td style="font-size: 11px; padding: 5px;">Canvas.getContext('2d') </td>
529 <td style="font-size: 11px; padding: 5px;"> </td>
530 </tr>
531
532 <tr bgcolor="#fcfcfc">
533 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Describe </td>
534 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
535 <td style="font-size: 11px; padding: 5px;">SDL </td>
536 <td style="font-size: 11px; padding: 5px;">Canvas.clientWidth + Canvas.clien tHeight </td>
537 <td style="font-size: 11px; padding: 5px;"> </td>
538 </tr>
539
540 <tr bgcolor="#fcfcfc">
541 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PaintImageData </td>
542 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
543 <td style="font-size: 11px; padding: 5px;">SDL </td>
544 <td style="font-size: 11px; padding: 5px;">CanvasRenderingContext2d.putImage Data </td>
545 <td style="font-size: 11px; padding: 5px;"> </td>
546 </tr>
547
548 <tr bgcolor="#fcfcfc">
549 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Scroll </td>
550 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
551 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
552 <td style="font-size: 11px; padding: 5px;">CanvasRenderingContext2d.scrollIn toView </td>
553 <td bgcolor="#ffeecc" style="font-size: 11px; padding: 5px;">GAP (partial) - Not an exact match (might have to resort to getImageData + putImageData which w ill be slow). Not a cross-browser standard.</td>
554 </tr>
555
556 <tr bgcolor="#fcfcfc">
557 <td style="font-weight: bold; font-size: 11px; padding: 5px;">ReplaceContent s </td>
558 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
559 <td style="font-size: 11px; padding: 5px;">SDL </td>
560 <td style="font-size: 11px; padding: 5px;">CanvasRenderingContext2d.drawImag e </td>
561 <td style="font-size: 11px; padding: 5px;"> </td>
562 </tr>
563
564 <tr bgcolor="#fcfcfc">
565 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Flush </td>
566 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
567 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
568 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - Only retu rning to the event loop triggers the flush.</td>
569 <td style="font-size: 11px; padding: 5px;"> </td>
570 </tr>
571
572 <tr bgcolor="#fcfcfc">
573 <td style="font-weight: bold; font-size: 11px; padding: 5px;">SetScale </td>
574 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
575 <td style="font-size: 11px; padding: 5px;">SDL </td>
576 <td style="font-size: 11px; padding: 5px;">CanvasRenderingContext2d.scale </ td>
577 <td style="font-size: 11px; padding: 5px;"> </td>
578 </tr>
579
580 <tr bgcolor="#fcfcfc">
581 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetScale </td>
582 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
583 <td style="font-size: 11px; padding: 5px;">SDL </td>
584 <td style="font-size: 11px; padding: 5px;">CanvasRenderingContext2d.currentT ransform </td>
585 <td style="font-size: 11px; padding: 5px;"> </td>
586 </tr>
587
588 <tr bgcolor="#fcfcfc">
589 <td style="font-weight: bold; font-size: 11px; padding: 5px;">SetLayerTransf orm </td>
590 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
591 <td style="font-size: 11px; padding: 5px;">SDL </td>
592 <td style="font-size: 11px; padding: 5px;">CanvasRenderingContext2d.setTrans form
593 CanvasRenderingContext2d.scale
594 CanvasRenderingContext2d.translate </td>
595 <td style="font-size: 11px; padding: 5px;"> </td>
596 </tr>
597
598 </table>
599 <h3>PPB_Graphics3D</h3>
600 <table>
601 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
602 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
603 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
604 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
605 <td style="font-size: 11px; padding: 5px;">Web API </td>
606 <td style="font-size: 11px; padding: 5px;">Limitations </td>
607 </tr>
608
609 <tr bgcolor="#fcfcfc">
610 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetAttribMaxVa lue </td>
611 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
612 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
613 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - Canvas.ge tContext lets you set booleans requesting depth / stencil buffers of certain siz es, but does not have a way to query what's possible (or get anything other than on or off for each)</td>
614 <td style="font-size: 11px; padding: 5px;"> </td>
615 </tr>
616
617 <tr bgcolor="#fcfcfc">
618 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
619 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
620 <td style="font-size: 11px; padding: 5px;">SDL </td>
621 <td style="font-size: 11px; padding: 5px;">Canvas.getContext </td>
622 <td style="font-size: 11px; padding: 5px;"> </td>
623 </tr>
624
625 <tr bgcolor="#fcfcfc">
626 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetAttribs </t d>
627 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
628 <td style="font-size: 11px; padding: 5px;">SDL </td>
629 <td style="font-size: 11px; padding: 5px;">WebGLRenderingContext.getContextA ttributes </td>
630 <td style="font-size: 11px; padding: 5px;"> </td>
631 </tr>
632
633 <tr bgcolor="#fcfcfc">
634 <td style="font-weight: bold; font-size: 11px; padding: 5px;">SetAttribs </t d>
635 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
636 <td style="font-size: 11px; padding: 5px;">SDL </td>
637 <td style="font-size: 11px; padding: 5px;">Canvas.getContext(.., OPTIONS) </ td>
638 <td style="font-size: 11px; padding: 5px;"> </td>
639 </tr>
640
641 <tr bgcolor="#fcfcfc">
642 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetError </td>
643 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
644 <td style="font-size: 11px; padding: 5px;">SDL </td>
645 <td style="font-size: 11px; padding: 5px;">WebGLRenderingContext.getError </ td>
646 <td style="font-size: 11px; padding: 5px;"> </td>
647 </tr>
648
649 <tr bgcolor="#fcfcfc">
650 <td style="font-weight: bold; font-size: 11px; padding: 5px;">ResizeBuffers </td>
651 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
652 <td style="font-size: 11px; padding: 5px;">SDL </td>
653 <td style="font-size: 11px; padding: 5px;">Canvas.width = w; Canvas.height = h; </td>
654 <td style="font-size: 11px; padding: 5px;"> </td>
655 </tr>
656
657 <tr bgcolor="#fcfcfc">
658 <td style="font-weight: bold; font-size: 11px; padding: 5px;">SwapBuffers </ td>
659 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
660 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
661 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No way to explicitly flip a frame, must return to the event loop.</td>
662 <td style="font-size: 11px; padding: 5px;"> </td>
663 </tr>
664
665 </table>
666 <h3>PPB_ImageData</h3>
667 <table>
668 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
669 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
670 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
671 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
672 <td style="font-size: 11px; padding: 5px;">Web API </td>
673 <td style="font-size: 11px; padding: 5px;">Limitations </td>
674 </tr>
675
676 <tr bgcolor="#fcfcfc">
677 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetNativeImage DataFormat </td>
678 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
679 <td style="font-size: 11px; padding: 5px;">SDL </td>
680 <td style="font-size: 11px; padding: 5px;">ImageData mandates RGBA order </t d>
681 <td style="font-size: 11px; padding: 5px;"> </td>
682 </tr>
683
684 <tr bgcolor="#fcfcfc">
685 <td style="font-weight: bold; font-size: 11px; padding: 5px;">IsImageDataFor matSupported </td>
686 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
687 <td style="font-size: 11px; padding: 5px;">SDL </td>
688 <td style="font-size: 11px; padding: 5px;">ImageData mandates RGBA order </t d>
689 <td style="font-size: 11px; padding: 5px;"> </td>
690 </tr>
691
692 <tr bgcolor="#fcfcfc">
693 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
694 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
695 <td style="font-size: 11px; padding: 5px;">SDL </td>
696 <td style="font-size: 11px; padding: 5px;">CanvasRenderingContext2d.createIm ageData </td>
697 <td style="font-size: 11px; padding: 5px;"> </td>
698 </tr>
699
700 <tr bgcolor="#fcfcfc">
701 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Describe </td>
702 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
703 <td style="font-size: 11px; padding: 5px;">SDL </td>
704 <td style="font-size: 11px; padding: 5px;">ImageData never has a stride </td >
705 <td style="font-size: 11px; padding: 5px;"> </td>
706 </tr>
707
708 <tr bgcolor="#fcfcfc">
709 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Map </td>
710 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
711 <td style="font-size: 11px; padding: 5px;">SDL </td>
712 <td style="font-size: 11px; padding: 5px;">ImageData.data </td>
713 <td style="font-size: 11px; padding: 5px;"> </td>
714 </tr>
715
716 <tr bgcolor="#fcfcfc">
717 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Unmap </td>
718 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
719 <td style="font-size: 11px; padding: 5px;">SDL </td>
720 <td style="font-size: 11px; padding: 5px;">ImageData.data </td>
721 <td style="font-size: 11px; padding: 5px;"> </td>
722 </tr>
723
724 </table>
725 <h3>PPB_InputEvent</h3>
726 <table>
727 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
728 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
729 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
730 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
731 <td style="font-size: 11px; padding: 5px;">Web API </td>
732 <td style="font-size: 11px; padding: 5px;">Limitations </td>
733 </tr>
734
735 <tr bgcolor="#fcfcfc">
736 <td style="font-weight: bold; font-size: 11px; padding: 5px;">RequestInputEv ents </td>
737 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
738 <td style="font-size: 11px; padding: 5px;">SDL </td>
739 <td style="font-size: 11px; padding: 5px;">No direct equivalent </td>
740 <td style="font-size: 11px; padding: 5px;">The lack of this feature is proba bly less relevant as JS / Wasm runs on the main thread and can more cheaply filt er events without incurring a cross process round-trip. </td>
741 </tr>
742
743 <tr bgcolor="#fcfcfc">
744 <td style="font-weight: bold; font-size: 11px; padding: 5px;">RequestFilteri ngInputEvents </td>
745 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
746 <td style="font-size: 11px; padding: 5px;">SDL </td>
747 <td style="font-size: 11px; padding: 5px;">mouse* key* wheel* touch* composi tion* Events </td>
748 <td style="font-size: 11px; padding: 5px;"> </td>
749 </tr>
750
751 <tr bgcolor="#fcfcfc">
752 <td style="font-weight: bold; font-size: 11px; padding: 5px;"> </td>
753 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
754 <td style="font-size: 11px; padding: 5px;">SDL </td>
755 <td style="font-size: 11px; padding: 5px;">Element.addEventListener </td>
756 <td style="font-size: 11px; padding: 5px;"> </td>
757 </tr>
758
759 <tr bgcolor="#fcfcfc">
760 <td style="font-weight: bold; font-size: 11px; padding: 5px;">ClearInputEven tRequest </td>
761 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
762 <td style="font-size: 11px; padding: 5px;">SDL </td>
763 <td style="font-size: 11px; padding: 5px;">Element.removeEventListener </td>
764 <td style="font-size: 11px; padding: 5px;"> </td>
765 </tr>
766
767 <tr bgcolor="#fcfcfc">
768 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetType </td>
769 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
770 <td style="font-size: 11px; padding: 5px;">SDL </td>
771 <td style="font-size: 11px; padding: 5px;">Event class descendants </td>
772 <td style="font-size: 11px; padding: 5px;"> </td>
773 </tr>
774
775 <tr bgcolor="#fcfcfc">
776 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetTimeStamp < /td>
777 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
778 <td style="font-size: 11px; padding: 5px;">SDL </td>
779 <td style="font-size: 11px; padding: 5px;">Event.timeStamp </td>
780 <td style="font-size: 11px; padding: 5px;"> </td>
781 </tr>
782
783 <tr bgcolor="#fcfcfc">
784 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetModifiers < /td>
785 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
786 <td style="font-size: 11px; padding: 5px;">SDL </td>
787 <td style="font-size: 11px; padding: 5px;">*Event.altKey/shiftKey/metaKey/ct rlKey </td>
788 <td style="font-size: 11px; padding: 5px;"> </td>
789 </tr>
790
791 </table>
792 <h3>PPB_MouseInputEvent</h3>
793 <table>
794 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
795 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
796 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
797 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
798 <td style="font-size: 11px; padding: 5px;">Web API </td>
799 <td style="font-size: 11px; padding: 5px;">Limitations </td>
800 </tr>
801
802 <tr bgcolor="#fcfcfc">
803 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
804 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
805 <td style="font-size: 11px; padding: 5px;">SDL </td>
806 <td style="font-size: 11px; padding: 5px;">MouseEvent </td>
807 <td style="font-size: 11px; padding: 5px;"> </td>
808 </tr>
809
810 <tr bgcolor="#fcfcfc">
811 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetButton </td >
812 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
813 <td style="font-size: 11px; padding: 5px;">SDL </td>
814 <td style="font-size: 11px; padding: 5px;">MouseEvent.button </td>
815 <td style="font-size: 11px; padding: 5px;"> </td>
816 </tr>
817
818 <tr bgcolor="#fcfcfc">
819 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetPosition </ td>
820 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
821 <td style="font-size: 11px; padding: 5px;">SDL </td>
822 <td style="font-size: 11px; padding: 5px;">MouseEvent.client*/page*/offset* </td>
823 <td style="font-size: 11px; padding: 5px;"> </td>
824 </tr>
825
826 <tr bgcolor="#fcfcfc">
827 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetClickCount </td>
828 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
829 <td style="font-size: 11px; padding: 5px;">SDL </td>
830 <td style="font-size: 11px; padding: 5px;">dblclick' vs 'mousedown' Events < /td>
831 <td style="font-size: 11px; padding: 5px;"> </td>
832 </tr>
833
834 <tr bgcolor="#fcfcfc">
835 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetMovement </ td>
836 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
837 <td style="font-size: 11px; padding: 5px;">SDL </td>
838 <td style="font-size: 11px; padding: 5px;">MouseEvent.movement* </td>
839 <td style="font-size: 11px; padding: 5px;"> </td>
840 </tr>
841
842 </table>
843 <h3>PPB_WheelInputEvent</h3>
844 <table>
845 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
846 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
847 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
848 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
849 <td style="font-size: 11px; padding: 5px;">Web API </td>
850 <td style="font-size: 11px; padding: 5px;">Limitations </td>
851 </tr>
852
853 <tr bgcolor="#fcfcfc">
854 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
855 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
856 <td style="font-size: 11px; padding: 5px;">SDL </td>
857 <td style="font-size: 11px; padding: 5px;">WheelEvent </td>
858 <td style="font-size: 11px; padding: 5px;"> </td>
859 </tr>
860
861 <tr bgcolor="#fcfcfc">
862 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetDelta </td>
863 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
864 <td style="font-size: 11px; padding: 5px;">SDL </td>
865 <td style="font-size: 11px; padding: 5px;">WheelEvent.delta* </td>
866 <td style="font-size: 11px; padding: 5px;"> </td>
867 </tr>
868
869 <tr bgcolor="#fcfcfc">
870 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetTicks </td>
871 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
872 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
873 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - deltaMode kinda of contains this info, but incompletely.</td>
874 <td style="font-size: 11px; padding: 5px;"> </td>
875 </tr>
876
877 <tr bgcolor="#fcfcfc">
878 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetScrollByPag e </td>
879 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
880 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
881 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - deltaMode kinda of contains this info, but incompletely.</td>
882 <td style="font-size: 11px; padding: 5px;"> </td>
883 </tr>
884
885 </table>
886 <h3>PPB_KeyboardInputEvent</h3>
887 <table>
888 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
889 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
890 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
891 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
892 <td style="font-size: 11px; padding: 5px;">Web API </td>
893 <td style="font-size: 11px; padding: 5px;">Limitations </td>
894 </tr>
895
896 <tr bgcolor="#fcfcfc">
897 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
898 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
899 <td style="font-size: 11px; padding: 5px;">SDL </td>
900 <td style="font-size: 11px; padding: 5px;">KeyboardEvent </td>
901 <td style="font-size: 11px; padding: 5px;"> </td>
902 </tr>
903
904 <tr bgcolor="#fcfcfc">
905 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetKeyCode </t d>
906 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
907 <td style="font-size: 11px; padding: 5px;">SDL </td>
908 <td style="font-size: 11px; padding: 5px;">KeyboardEvent.keyCode </td>
909 <td style="font-size: 11px; padding: 5px;"> </td>
910 </tr>
911
912 <tr bgcolor="#fcfcfc">
913 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetCharacterTe xt </td>
914 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
915 <td style="font-size: 11px; padding: 5px;">SDL </td>
916 <td style="font-size: 11px; padding: 5px;">KeyboardEvent.key </td>
917 <td style="font-size: 11px; padding: 5px;"> </td>
918 </tr>
919
920 <tr bgcolor="#fcfcfc">
921 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetCode </td>
922 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
923 <td style="font-size: 11px; padding: 5px;">SDL </td>
924 <td style="font-size: 11px; padding: 5px;">KeyboardEvent.code </td>
925 <td style="font-size: 11px; padding: 5px;"> </td>
926 </tr>
927
928 </table>
929 <h3>PPB_TouchInputEvent</h3>
930 <table>
931 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
932 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
933 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
934 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
935 <td style="font-size: 11px; padding: 5px;">Web API </td>
936 <td style="font-size: 11px; padding: 5px;">Limitations </td>
937 </tr>
938
939 <tr bgcolor="#fcfcfc">
940 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
941 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
942 <td style="font-size: 11px; padding: 5px;">SDL </td>
943 <td style="font-size: 11px; padding: 5px;">TouchEvent </td>
944 <td style="font-size: 11px; padding: 5px;"> </td>
945 </tr>
946
947 <tr bgcolor="#fcfcfc">
948 <td style="font-weight: bold; font-size: 11px; padding: 5px;">AddTouchPoint </td>
949 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
950 <td style="font-size: 11px; padding: 5px;">SDL </td>
951 <td style="font-size: 11px; padding: 5px;">TouchEvent.touches.push </td>
952 <td style="font-size: 11px; padding: 5px;"> </td>
953 </tr>
954
955 <tr bgcolor="#fcfcfc">
956 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetTouchCount </td>
957 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
958 <td style="font-size: 11px; padding: 5px;">SDL </td>
959 <td style="font-size: 11px; padding: 5px;">TouchEvent.touches.length </td>
960 <td style="font-size: 11px; padding: 5px;"> </td>
961 </tr>
962
963 <tr bgcolor="#fcfcfc">
964 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetTouchByInde x </td>
965 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
966 <td style="font-size: 11px; padding: 5px;">SDL </td>
967 <td style="font-size: 11px; padding: 5px;">TouchEvent.touches[i] </td>
968 <td style="font-size: 11px; padding: 5px;"> </td>
969 </tr>
970
971 <tr bgcolor="#fcfcfc">
972 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetTouchById < /td>
973 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
974 <td style="font-size: 11px; padding: 5px;">SDL </td>
975 <td style="font-size: 11px; padding: 5px;">Touch.indentifer (to figure this out yourself) </td>
976 <td style="font-size: 11px; padding: 5px;"> </td>
977 </tr>
978
979 </table>
980 <h3>PPB_IMEInputEvent</h3>
981 <table>
982 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
983 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
984 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
985 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
986 <td style="font-size: 11px; padding: 5px;">Web API </td>
987 <td style="font-size: 11px; padding: 5px;">Limitations </td>
988 </tr>
989
990 <tr bgcolor="#fcfcfc">
991 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
992 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
993 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
994 <td style="font-size: 11px; padding: 5px;">CompositionEvent </td>
995 <td style="font-size: 11px; padding: 5px;"> </td>
996 </tr>
997
998 <tr bgcolor="#fcfcfc">
999 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetText </td>
1000 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1001 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1002 <td style="font-size: 11px; padding: 5px;">CompositionEvent.data </td>
1003 <td style="font-size: 11px; padding: 5px;"> </td>
1004 </tr>
1005
1006 <tr bgcolor="#fcfcfc">
1007 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetSegmentNumb er </td>
1008 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1009 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1010 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No direct equivalent</td>
1011 <td style="font-size: 11px; padding: 5px;"> </td>
1012 </tr>
1013
1014 <tr bgcolor="#fcfcfc">
1015 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetSegmentOffs et </td>
1016 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1017 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1018 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No direct equivalent</td>
1019 <td style="font-size: 11px; padding: 5px;"> </td>
1020 </tr>
1021
1022 <tr bgcolor="#fcfcfc">
1023 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetTargetSegme nt </td>
1024 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1025 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1026 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No direct equivalent</td>
1027 <td style="font-size: 11px; padding: 5px;"> </td>
1028 </tr>
1029
1030 <tr bgcolor="#fcfcfc">
1031 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetSelection < /td>
1032 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1033 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1034 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No direct equivalent</td>
1035 <td style="font-size: 11px; padding: 5px;"> </td>
1036 </tr>
1037
1038 </table>
1039 <h3>PPB_Instance</h3>
1040 <table>
1041 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
1042 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
1043 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
1044 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
1045 <td style="font-size: 11px; padding: 5px;">Web API </td>
1046 <td style="font-size: 11px; padding: 5px;">Limitations </td>
1047 </tr>
1048
1049 <tr bgcolor="#fcfcfc">
1050 <td style="font-weight: bold; font-size: 11px; padding: 5px;">BindGraphics < /td>
1051 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1052 <td style="font-size: 11px; padding: 5px;">SDL </td>
1053 <td style="font-size: 11px; padding: 5px;">Canvas.getContext (moot as bindin g is automatic). </td>
1054 <td style="font-size: 11px; padding: 5px;"> </td>
1055 </tr>
1056
1057 <tr bgcolor="#fcfcfc">
1058 <td style="font-weight: bold; font-size: 11px; padding: 5px;">IsFullFrame </ td>
1059 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1060 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1061 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent to mime type handlers.</td>
1062 <td style="font-size: 11px; padding: 5px;">NaCl apps can be registered to ha ndle a particular mime type and own the whole document. </td>
1063 </tr>
1064
1065 </table>
1066 <h3>PPB_MediaStreamAudioTrack</h3>
1067 <table>
1068 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
1069 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
1070 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
1071 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
1072 <td style="font-size: 11px; padding: 5px;">Web API </td>
1073 <td style="font-size: 11px; padding: 5px;">Limitations </td>
1074 </tr>
1075
1076 <tr bgcolor="#fcfcfc">
1077 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Configure </td >
1078 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1079 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1080 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
1081 <td style="font-size: 11px; padding: 5px;"> </td>
1082 </tr>
1083
1084 <tr bgcolor="#fcfcfc">
1085 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetAttrib </td >
1086 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1087 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1088 <td style="font-size: 11px; padding: 5px;">MediaStreamSettings.channelCount </td>
1089 <td style="font-size: 11px; padding: 5px;"> </td>
1090 </tr>
1091
1092 <tr bgcolor="#fcfcfc">
1093 <td style="font-weight: bold; font-size: 11px; padding: 5px;"> </td>
1094 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1095 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1096 <td style="font-size: 11px; padding: 5px;">MediaStreamSettings.sampleSize </ td>
1097 <td style="font-size: 11px; padding: 5px;"> </td>
1098 </tr>
1099
1100 <tr bgcolor="#fcfcfc">
1101 <td style="font-weight: bold; font-size: 11px; padding: 5px;"> </td>
1102 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1103 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1104 <td style="font-size: 11px; padding: 5px;">MediaStreamSettings.sampleRate </ td>
1105 <td style="font-size: 11px; padding: 5px;"> </td>
1106 </tr>
1107
1108 <tr bgcolor="#fcfcfc">
1109 <td style="font-weight: bold; font-size: 11px; padding: 5px;"> </td>
1110 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1111 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1112 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - no equiva lent to PP_MEDIASTREAMAUDIOTRACK_ATTRIB_BUFFERS</td>
1113 <td style="font-size: 11px; padding: 5px;"> </td>
1114 </tr>
1115
1116 <tr bgcolor="#fcfcfc">
1117 <td style="font-weight: bold; font-size: 11px; padding: 5px;"> </td>
1118 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1119 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1120 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - no equiva lent to PP_MEDIASTREAMAUDIOTRACK_ATTRIB_DURATION</td>
1121 <td style="font-size: 11px; padding: 5px;"> </td>
1122 </tr>
1123
1124 <tr bgcolor="#fcfcfc">
1125 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetId </td>
1126 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1127 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1128 <td style="font-size: 11px; padding: 5px;">MediaStream.id </td>
1129 <td style="font-size: 11px; padding: 5px;"> </td>
1130 </tr>
1131
1132 <tr bgcolor="#fcfcfc">
1133 <td style="font-weight: bold; font-size: 11px; padding: 5px;">HasEnded </td>
1134 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1135 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1136 <td style="font-size: 11px; padding: 5px;">MediaStream.ended </td>
1137 <td style="font-size: 11px; padding: 5px;"> </td>
1138 </tr>
1139
1140 <tr bgcolor="#fcfcfc">
1141 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetBuffer </td >
1142 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1143 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1144 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
1145 <td style="font-size: 11px; padding: 5px;"> </td>
1146 </tr>
1147
1148 <tr bgcolor="#fcfcfc">
1149 <td style="font-weight: bold; font-size: 11px; padding: 5px;">RecycleBuffer </td>
1150 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1151 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1152 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
1153 <td style="font-size: 11px; padding: 5px;"> </td>
1154 </tr>
1155
1156 <tr bgcolor="#fcfcfc">
1157 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Close </td>
1158 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1159 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1160 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
1161 <td style="font-size: 11px; padding: 5px;"> </td>
1162 </tr>
1163
1164 </table>
1165 <h3>PPB_MediaStreamVideoTrack</h3>
1166 <table>
1167 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
1168 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
1169 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
1170 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
1171 <td style="font-size: 11px; padding: 5px;">Web API </td>
1172 <td style="font-size: 11px; padding: 5px;">Limitations </td>
1173 </tr>
1174
1175 <tr bgcolor="#fcfcfc">
1176 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
1177 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1178 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1179 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
1180 <td style="font-size: 11px; padding: 5px;">Ability to create synthetic strea m. </td>
1181 </tr>
1182
1183 <tr bgcolor="#fcfcfc">
1184 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Configure </td >
1185 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1186 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1187 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
1188 <td style="font-size: 11px; padding: 5px;"> </td>
1189 </tr>
1190
1191 <tr bgcolor="#fcfcfc">
1192 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetAttrib </td >
1193 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1194 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1195 <td style="font-size: 11px; padding: 5px;">MediaStreamSettings.width </td>
1196 <td style="font-size: 11px; padding: 5px;"> </td>
1197 </tr>
1198
1199 <tr bgcolor="#fcfcfc">
1200 <td style="font-weight: bold; font-size: 11px; padding: 5px;"> </td>
1201 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1202 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1203 <td style="font-size: 11px; padding: 5px;">MediaStreamSettings.height </td>
1204 <td style="font-size: 11px; padding: 5px;"> </td>
1205 </tr>
1206
1207 <tr bgcolor="#fcfcfc">
1208 <td style="font-weight: bold; font-size: 11px; padding: 5px;"> </td>
1209 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1210 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1211 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - no equiva lent to PP_MEDIASTREAMVIDEOTRACK_ATTRIB_BUFFERED_FRAMES</td>
1212 <td style="font-size: 11px; padding: 5px;"> </td>
1213 </tr>
1214
1215 <tr bgcolor="#fcfcfc">
1216 <td style="font-weight: bold; font-size: 11px; padding: 5px;"> </td>
1217 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1218 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1219 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - no equiva lent to PP_MEDIASTREAMVIDEOTRACK_ATTRIB_FORMAT</td>
1220 <td style="font-size: 11px; padding: 5px;"> </td>
1221 </tr>
1222
1223 <tr bgcolor="#fcfcfc">
1224 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetId </td>
1225 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1226 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1227 <td style="font-size: 11px; padding: 5px;">MediaStream.id </td>
1228 <td style="font-size: 11px; padding: 5px;"> </td>
1229 </tr>
1230
1231 <tr bgcolor="#fcfcfc">
1232 <td style="font-weight: bold; font-size: 11px; padding: 5px;">HasEnded </td>
1233 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1234 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1235 <td style="font-size: 11px; padding: 5px;">MediaStream.ended </td>
1236 <td style="font-size: 11px; padding: 5px;"> </td>
1237 </tr>
1238
1239 <tr bgcolor="#fcfcfc">
1240 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetFrame </td>
1241 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1242 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1243 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
1244 <td style="font-size: 11px; padding: 5px;"> </td>
1245 </tr>
1246
1247 <tr bgcolor="#fcfcfc">
1248 <td style="font-weight: bold; font-size: 11px; padding: 5px;">RecycleFrame < /td>
1249 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1250 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1251 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
1252 <td style="font-size: 11px; padding: 5px;"> </td>
1253 </tr>
1254
1255 <tr bgcolor="#fcfcfc">
1256 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Close </td>
1257 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1258 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1259 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
1260 <td style="font-size: 11px; padding: 5px;"> </td>
1261 </tr>
1262
1263 <tr bgcolor="#fcfcfc">
1264 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetEmptyFrame </td>
1265 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1266 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1267 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
1268 <td style="font-size: 11px; padding: 5px;"> </td>
1269 </tr>
1270
1271 <tr bgcolor="#fcfcfc">
1272 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PutFrame </td>
1273 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1274 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1275 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
1276 <td style="font-size: 11px; padding: 5px;"> </td>
1277 </tr>
1278
1279 </table>
1280 <h3>PPB_MessageLoop</h3>
1281 <table>
1282 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
1283 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
1284 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
1285 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
1286 <td style="font-size: 11px; padding: 5px;">Web API </td>
1287 <td style="font-size: 11px; padding: 5px;">Limitations </td>
1288 </tr>
1289
1290 <tr bgcolor="#fcfcfc">
1291 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
1292 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1293 <td style="font-size: 11px; padding: 5px;">N/A </td>
1294 <td style="font-size: 11px; padding: 5px;">Mostly moot, workers get an impli cit event loop. </td>
1295 <td style="font-size: 11px; padding: 5px;"> </td>
1296 </tr>
1297
1298 <tr bgcolor="#fcfcfc">
1299 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetForMainThre ad </td>
1300 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1301 <td style="font-size: 11px; padding: 5px;">N/A </td>
1302 <td style="font-size: 11px; padding: 5px;">Mostly moot, workers get an impli cit event loop. </td>
1303 <td style="font-size: 11px; padding: 5px;"> </td>
1304 </tr>
1305
1306 <tr bgcolor="#fcfcfc">
1307 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetCurrent </t d>
1308 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1309 <td style="font-size: 11px; padding: 5px;">N/A </td>
1310 <td style="font-size: 11px; padding: 5px;">Mostly moot, workers get an impli cit event loop. </td>
1311 <td style="font-size: 11px; padding: 5px;"> </td>
1312 </tr>
1313
1314 <tr bgcolor="#fcfcfc">
1315 <td style="font-weight: bold; font-size: 11px; padding: 5px;">AttachToCurren tThread </td>
1316 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1317 <td style="font-size: 11px; padding: 5px;">N/A </td>
1318 <td style="font-size: 11px; padding: 5px;">Mostly moot, workers get an impli cit event loop. </td>
1319 <td style="font-size: 11px; padding: 5px;"> </td>
1320 </tr>
1321
1322 <tr bgcolor="#fcfcfc">
1323 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Run </td>
1324 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1325 <td style="font-size: 11px; padding: 5px;">N/A </td>
1326 <td style="font-size: 11px; padding: 5px;">Mostly moot, workers get an impli cit event loop. </td>
1327 <td style="font-size: 11px; padding: 5px;"> </td>
1328 </tr>
1329
1330 <tr bgcolor="#fcfcfc">
1331 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PostWork </td>
1332 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1333 <td style="font-size: 11px; padding: 5px;">N/A </td>
1334 <td style="font-size: 11px; padding: 5px;">Mostly moot, workers get an impli cit event loop. </td>
1335 <td style="font-size: 11px; padding: 5px;"> </td>
1336 </tr>
1337
1338 <tr bgcolor="#fcfcfc">
1339 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PostQuit </td>
1340 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1341 <td style="font-size: 11px; padding: 5px;">N/A </td>
1342 <td style="font-size: 11px; padding: 5px;">Mostly moot, workers get an impli cit event loop. </td>
1343 <td style="font-size: 11px; padding: 5px;"> </td>
1344 </tr>
1345
1346 </table>
1347 <h3>PPB_Messaging</h3>
1348 <table>
1349 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
1350 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
1351 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
1352 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
1353 <td style="font-size: 11px; padding: 5px;">Web API </td>
1354 <td style="font-size: 11px; padding: 5px;">Limitations </td>
1355 </tr>
1356
1357 <tr bgcolor="#fcfcfc">
1358 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PostMessage </ td>
1359 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1360 <td style="font-size: 11px; padding: 5px;">N/A </td>
1361 <td style="font-size: 11px; padding: 5px;">Window.postMessage </td>
1362 <td style="font-size: 11px; padding: 5px;"> </td>
1363 </tr>
1364
1365 <tr bgcolor="#fcfcfc">
1366 <td style="font-weight: bold; font-size: 11px; padding: 5px;">RegisterMessag eHandler </td>
1367 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1368 <td style="font-size: 11px; padding: 5px;">N/A </td>
1369 <td style="font-size: 11px; padding: 5px;">Window.addEventListener </td>
1370 <td style="font-size: 11px; padding: 5px;"> </td>
1371 </tr>
1372
1373 <tr bgcolor="#fcfcfc">
1374 <td style="font-weight: bold; font-size: 11px; padding: 5px;">UnregisterMess ageHandler </td>
1375 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1376 <td style="font-size: 11px; padding: 5px;">N/A </td>
1377 <td style="font-size: 11px; padding: 5px;">Window.removeEventListener </td>
1378 <td style="font-size: 11px; padding: 5px;"> </td>
1379 </tr>
1380
1381 </table>
1382 <h3>PPB_MouseCursor</h3>
1383 <table>
1384 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
1385 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
1386 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
1387 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
1388 <td style="font-size: 11px; padding: 5px;">Web API </td>
1389 <td style="font-size: 11px; padding: 5px;">Limitations </td>
1390 </tr>
1391
1392 <tr bgcolor="#fcfcfc">
1393 <td style="font-weight: bold; font-size: 11px; padding: 5px;">SetCursor </td >
1394 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1395 <td style="font-size: 11px; padding: 5px;">SDL </td>
1396 <td style="font-size: 11px; padding: 5px;">Element.style.cursor </td>
1397 <td style="font-size: 11px; padding: 5px;">Same set of stock cursors are sup ported.
1398 Custom cursors can be done with url(..).
1399 Dynamic custom cursors can be done with data URIs.
1400 CSS3 supports specifying the hotspot. </td>
1401 </tr>
1402
1403 </table>
1404 <h3>PPB_MouseLock</h3>
1405 <table>
1406 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
1407 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
1408 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
1409 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
1410 <td style="font-size: 11px; padding: 5px;">Web API </td>
1411 <td style="font-size: 11px; padding: 5px;">Limitations </td>
1412 </tr>
1413
1414 <tr bgcolor="#fcfcfc">
1415 <td style="font-weight: bold; font-size: 11px; padding: 5px;">LockMouse </td >
1416 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1417 <td style="font-size: 11px; padding: 5px;">SDL </td>
1418 <td style="font-size: 11px; padding: 5px;">Element.requestPointerLock </td>
1419 <td style="font-size: 11px; padding: 5px;"> </td>
1420 </tr>
1421
1422 <tr bgcolor="#fcfcfc">
1423 <td style="font-weight: bold; font-size: 11px; padding: 5px;">UnlockMouse </ td>
1424 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1425 <td style="font-size: 11px; padding: 5px;">SDL </td>
1426 <td style="font-size: 11px; padding: 5px;">Element.exitPointerLock </td>
1427 <td style="font-size: 11px; padding: 5px;"> </td>
1428 </tr>
1429
1430 </table>
1431 <h3>PPB_OpenGLES2</h3>
1432 <table>
1433 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
1434 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
1435 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
1436 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
1437 <td style="font-size: 11px; padding: 5px;">Web API </td>
1438 <td style="font-size: 11px; padding: 5px;">Limitations </td>
1439 </tr>
1440
1441 <tr bgcolor="#fcfcfc">
1442 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Several Method s </td>
1443 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1444 <td style="font-size: 11px; padding: 5px;">OpenGLES </td>
1445 <td style="font-size: 11px; padding: 5px;">Close to WebGL 1.0 in functionali ty. </td>
1446 <td style="font-size: 11px; padding: 5px;"> </td>
1447 </tr>
1448
1449 <tr bgcolor="#fcfcfc">
1450 <td style="font-weight: bold; font-size: 11px; padding: 5px;"> </td>
1451 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> x </td>
1452 <td style="font-size: 11px; padding: 5px;"> </td>
1453 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - Without o ffscreen canvas, rendering must be done on the main thread.</td>
1454 <td style="font-size: 11px; padding: 5px;"> </td>
1455 </tr>
1456
1457 </table>
1458 <h3>PPB_TextInputController</h3>
1459 <table>
1460 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
1461 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
1462 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
1463 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
1464 <td style="font-size: 11px; padding: 5px;">Web API </td>
1465 <td style="font-size: 11px; padding: 5px;">Limitations </td>
1466 </tr>
1467
1468 <tr bgcolor="#fcfcfc">
1469 <td style="font-weight: bold; font-size: 11px; padding: 5px;">SetTextInputTy pe </td>
1470 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1471 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1472 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent hints to browser about canvas containing input.</td>
1473 <td style="font-size: 11px; padding: 5px;">Some developers would like to eit her be able to hint in this fashion, or preferrably the ability to intercept and display IME events / output inline inside a canvas. </td>
1474 </tr>
1475
1476 <tr bgcolor="#fcfcfc">
1477 <td style="font-weight: bold; font-size: 11px; padding: 5px;">UpdateCaretPos ition </td>
1478 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1479 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1480 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent hints to browser about canvas containing input.</td>
1481 <td style="font-size: 11px; padding: 5px;"> </td>
1482 </tr>
1483
1484 <tr bgcolor="#fcfcfc">
1485 <td style="font-weight: bold; font-size: 11px; padding: 5px;">CancelComposit ionText </td>
1486 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1487 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1488 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent hints to browser about canvas containing input.</td>
1489 <td style="font-size: 11px; padding: 5px;"> </td>
1490 </tr>
1491
1492 <tr bgcolor="#fcfcfc">
1493 <td style="font-weight: bold; font-size: 11px; padding: 5px;">UpdateSurround ingText </td>
1494 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1495 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1496 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent hints to browser about canvas containing input.</td>
1497 <td style="font-size: 11px; padding: 5px;"> </td>
1498 </tr>
1499
1500 </table>
1501 <h3>PPB_URLLoader</h3>
1502 <table>
1503 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
1504 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
1505 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
1506 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
1507 <td style="font-size: 11px; padding: 5px;">Web API </td>
1508 <td style="font-size: 11px; padding: 5px;">Limitations </td>
1509 </tr>
1510
1511 <tr bgcolor="#fcfcfc">
1512 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
1513 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1514 <td style="font-size: 11px; padding: 5px;">embind </td>
1515 <td style="font-size: 11px; padding: 5px;">new XMLHttpRequest(); </td>
1516 <td style="font-size: 11px; padding: 5px;"> </td>
1517 </tr>
1518
1519 <tr bgcolor="#fcfcfc">
1520 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Open </td>
1521 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1522 <td style="font-size: 11px; padding: 5px;">embind </td>
1523 <td style="font-size: 11px; padding: 5px;">XMLHttpRequest.open </td>
1524 <td style="font-size: 11px; padding: 5px;"> </td>
1525 </tr>
1526
1527 <tr bgcolor="#fcfcfc">
1528 <td style="font-weight: bold; font-size: 11px; padding: 5px;">FollowRedirect </td>
1529 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1530 <td style="font-size: 11px; padding: 5px;">embind </td>
1531 <td style="font-size: 11px; padding: 5px;">Request.redirect </td>
1532 <td style="font-size: 11px; padding: 5px;"> </td>
1533 </tr>
1534
1535 <tr bgcolor="#fcfcfc">
1536 <td style="font-weight: bold; font-size: 11px; padding: 5px;"> </td>
1537 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1538 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1539 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No XMLHTT PRequest equivalent</td>
1540 <td style="font-size: 11px; padding: 5px;"> </td>
1541 </tr>
1542
1543 <tr bgcolor="#fcfcfc">
1544 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetUploadProgr ess </td>
1545 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1546 <td style="font-size: 11px; padding: 5px;">embind </td>
1547 <td style="font-size: 11px; padding: 5px;">XMLHttpRequest 'progress' Event < /td>
1548 <td style="font-size: 11px; padding: 5px;"> </td>
1549 </tr>
1550
1551 <tr bgcolor="#fcfcfc">
1552 <td style="font-weight: bold; font-size: 11px; padding: 5px;"> </td>
1553 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1554 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1555 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No Fetch API equivalent</td>
1556 <td style="font-size: 11px; padding: 5px;"> </td>
1557 </tr>
1558
1559 <tr bgcolor="#fcfcfc">
1560 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetDownloadPro gress </td>
1561 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1562 <td style="font-size: 11px; padding: 5px;">embind </td>
1563 <td style="font-size: 11px; padding: 5px;">XMLHttpRequest 'progress' Event < /td>
1564 <td style="font-size: 11px; padding: 5px;"> </td>
1565 </tr>
1566
1567 <tr bgcolor="#fcfcfc">
1568 <td style="font-weight: bold; font-size: 11px; padding: 5px;"> </td>
1569 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1570 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1571 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No Fetch API equivalent</td>
1572 <td style="font-size: 11px; padding: 5px;"> </td>
1573 </tr>
1574
1575 <tr bgcolor="#fcfcfc">
1576 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetResponseInf o </td>
1577 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1578 <td style="font-size: 11px; padding: 5px;">embind </td>
1579 <td style="font-size: 11px; padding: 5px;">XMLHttpRequest.getAllResponseHead ers </td>
1580 <td style="font-size: 11px; padding: 5px;"> </td>
1581 </tr>
1582
1583 <tr bgcolor="#fcfcfc">
1584 <td style="font-weight: bold; font-size: 11px; padding: 5px;"> </td>
1585 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1586 <td style="font-size: 11px; padding: 5px;">embind </td>
1587 <td style="font-size: 11px; padding: 5px;">Fetch Response.* </td>
1588 <td style="font-size: 11px; padding: 5px;"> </td>
1589 </tr>
1590
1591 <tr bgcolor="#fcfcfc">
1592 <td style="font-weight: bold; font-size: 11px; padding: 5px;">ReadResponseBo dy </td>
1593 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1594 <td style="font-size: 11px; padding: 5px;">embind </td>
1595 <td style="font-size: 11px; padding: 5px;">XMLHttpRequest.response </td>
1596 <td style="font-size: 11px; padding: 5px;"> </td>
1597 </tr>
1598
1599 <tr bgcolor="#fcfcfc">
1600 <td style="font-weight: bold; font-size: 11px; padding: 5px;"> </td>
1601 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1602 <td style="font-size: 11px; padding: 5px;">embind </td>
1603 <td style="font-size: 11px; padding: 5px;">Body.* (Response is a Body) </td>
1604 <td style="font-size: 11px; padding: 5px;"> </td>
1605 </tr>
1606
1607 <tr bgcolor="#fcfcfc">
1608 <td style="font-weight: bold; font-size: 11px; padding: 5px;">FinishStreamin gToFile </td>
1609 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1610 <td style="font-size: 11px; padding: 5px;">embind </td>
1611 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No direct equivalent</td>
1612 <td style="font-size: 11px; padding: 5px;">XMLHttpRequest and Fetch both ass ume streaming to memory, rather than directly to a storage. </td>
1613 </tr>
1614
1615 <tr bgcolor="#fcfcfc">
1616 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Close </td>
1617 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1618 <td style="font-size: 11px; padding: 5px;">embind </td>
1619 <td style="font-size: 11px; padding: 5px;">XMLHttpRequest.abort </td>
1620 <td style="font-size: 11px; padding: 5px;"> </td>
1621 </tr>
1622
1623 <tr bgcolor="#fcfcfc">
1624 <td style="font-weight: bold; font-size: 11px; padding: 5px;"> </td>
1625 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1626 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1627 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No Fetch API equivalent</td>
1628 <td style="font-size: 11px; padding: 5px;"> </td>
1629 </tr>
1630
1631 </table>
1632 <h3>PPB_URLRequestInfo</h3>
1633 <table>
1634 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
1635 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
1636 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
1637 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
1638 <td style="font-size: 11px; padding: 5px;">Web API </td>
1639 <td style="font-size: 11px; padding: 5px;">Limitations </td>
1640 </tr>
1641
1642 <tr bgcolor="#fcfcfc">
1643 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
1644 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1645 <td style="font-size: 11px; padding: 5px;">embind </td>
1646 <td style="font-size: 11px; padding: 5px;">XMLHttpRequest </td>
1647 <td style="font-size: 11px; padding: 5px;"> </td>
1648 </tr>
1649
1650 <tr bgcolor="#fcfcfc">
1651 <td style="font-weight: bold; font-size: 11px; padding: 5px;"> </td>
1652 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1653 <td style="font-size: 11px; padding: 5px;">embind </td>
1654 <td style="font-size: 11px; padding: 5px;">Fetch Request </td>
1655 <td style="font-size: 11px; padding: 5px;">No way to stream to a file. </td>
1656 </tr>
1657
1658 <tr bgcolor="#fcfcfc">
1659 <td style="font-weight: bold; font-size: 11px; padding: 5px;">SetProperty </ td>
1660 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1661 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1662 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No direct equivalent for XMLHttpRequest</td>
1663 <td style="font-size: 11px; padding: 5px;">XMLHttpRequest doesn't provide di rect ways to per-request limit following redirects, stream to a file, set referr er or credentials policy. </td>
1664 </tr>
1665
1666 <tr bgcolor="#fcfcfc">
1667 <td style="font-weight: bold; font-size: 11px; padding: 5px;"> </td>
1668 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1669 <td style="font-size: 11px; padding: 5px;">embind </td>
1670 <td style="font-size: 11px; padding: 5px;">Request.* </td>
1671 <td style="font-size: 11px; padding: 5px;"> </td>
1672 </tr>
1673
1674 <tr bgcolor="#fcfcfc">
1675 <td style="font-weight: bold; font-size: 11px; padding: 5px;">AppendDataToBo dy </td>
1676 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1677 <td style="font-size: 11px; padding: 5px;">embind </td>
1678 <td style="font-size: 11px; padding: 5px;">XMLHttpRequest.send </td>
1679 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - Both must have the whole body, rather than a chunk.</td>
1680 </tr>
1681
1682 <tr bgcolor="#fcfcfc">
1683 <td style="font-weight: bold; font-size: 11px; padding: 5px;"> </td>
1684 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1685 <td style="font-size: 11px; padding: 5px;">embind </td>
1686 <td style="font-size: 11px; padding: 5px;">fetch(.., options:body) </td>
1687 <td style="font-size: 11px; padding: 5px;"> </td>
1688 </tr>
1689
1690 <tr bgcolor="#fcfcfc">
1691 <td style="font-weight: bold; font-size: 11px; padding: 5px;">AppendFileToBo dy </td>
1692 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1693 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1694 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No direct equivalent</td>
1695 <td style="font-size: 11px; padding: 5px;"> </td>
1696 </tr>
1697
1698 <tr bgcolor="#fcfcfc">
1699 <td style="font-weight: bold; font-size: 11px; padding: 5px;"> </td>
1700 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1701 <td style="font-size: 11px; padding: 5px;">N/A </td>
1702 <td style="font-size: 11px; padding: 5px;">&lt;form&gt; </td>
1703 <td style="font-size: 11px; padding: 5px;">You can also read with FileReader and upload, but that's more like AppendDataToBody </td>
1704 </tr>
1705
1706 </table>
1707 <h3>PPB_URLResponseInfo</h3>
1708 <table>
1709 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
1710 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
1711 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
1712 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
1713 <td style="font-size: 11px; padding: 5px;">Web API </td>
1714 <td style="font-size: 11px; padding: 5px;">Limitations </td>
1715 </tr>
1716
1717 <tr bgcolor="#fcfcfc">
1718 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetProperty </ td>
1719 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1720 <td style="font-size: 11px; padding: 5px;">embind </td>
1721 <td style="font-size: 11px; padding: 5px;">XMLHttpRequest.getAllResponseHead ers + others </td>
1722 <td style="font-size: 11px; padding: 5px;"> </td>
1723 </tr>
1724
1725 <tr bgcolor="#fcfcfc">
1726 <td style="font-weight: bold; font-size: 11px; padding: 5px;"> </td>
1727 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1728 <td style="font-size: 11px; padding: 5px;">embind </td>
1729 <td style="font-size: 11px; padding: 5px;">Fetch Response.* </td>
1730 <td style="font-size: 11px; padding: 5px;"> </td>
1731 </tr>
1732
1733 <tr bgcolor="#fcfcfc">
1734 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetBodyAsFileR ef </td>
1735 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1736 <td style="font-size: 11px; padding: 5px;">embind </td>
1737 <td style="font-size: 11px; padding: 5px;">Fetch Response (Body) .blob() </t d>
1738 <td style="font-size: 11px; padding: 5px;">Assumes storage layer optimizes t ransfer. </td>
1739 </tr>
1740
1741 </table>
1742 <h3>PPB_Var</h3>
1743 <table>
1744 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
1745 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
1746 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
1747 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
1748 <td style="font-size: 11px; padding: 5px;">Web API </td>
1749 <td style="font-size: 11px; padding: 5px;">Limitations </td>
1750 </tr>
1751
1752 <tr bgcolor="#fcfcfc">
1753 <td style="font-weight: bold; font-size: 11px; padding: 5px;">VarFromUtf8 </ td>
1754 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1755 <td style="font-size: 11px; padding: 5px;">embind </td>
1756 <td style="font-size: 11px; padding: 5px;">TextDecoder.decode </td>
1757 <td style="font-size: 11px; padding: 5px;"> </td>
1758 </tr>
1759
1760 <tr bgcolor="#fcfcfc">
1761 <td style="font-weight: bold; font-size: 11px; padding: 5px;">VarToUtf8 </td >
1762 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1763 <td style="font-size: 11px; padding: 5px;">embind </td>
1764 <td style="font-size: 11px; padding: 5px;">TextEncoder.encode </td>
1765 <td style="font-size: 11px; padding: 5px;"> </td>
1766 </tr>
1767
1768 <tr bgcolor="#fcfcfc">
1769 <td style="font-weight: bold; font-size: 11px; padding: 5px;">VarFromResourc e </td>
1770 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1771 <td style="font-size: 11px; padding: 5px;">N/A </td>
1772 <td style="font-size: 11px; padding: 5px;">N/A </td>
1773 <td style="font-size: 11px; padding: 5px;"> </td>
1774 </tr>
1775
1776 <tr bgcolor="#fcfcfc">
1777 <td style="font-weight: bold; font-size: 11px; padding: 5px;">VarToResource </td>
1778 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1779 <td style="font-size: 11px; padding: 5px;">N/A </td>
1780 <td style="font-size: 11px; padding: 5px;">N/A </td>
1781 <td style="font-size: 11px; padding: 5px;"> </td>
1782 </tr>
1783
1784 </table>
1785 <h3>PPB_VarArray</h3>
1786 <table>
1787 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
1788 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
1789 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
1790 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
1791 <td style="font-size: 11px; padding: 5px;">Web API </td>
1792 <td style="font-size: 11px; padding: 5px;">Limitations </td>
1793 </tr>
1794
1795 <tr bgcolor="#fcfcfc">
1796 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Get </td>
1797 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1798 <td style="font-size: 11px; padding: 5px;">embind </td>
1799 <td style="font-size: 11px; padding: 5px;">Array[i] </td>
1800 <td style="font-size: 11px; padding: 5px;"> </td>
1801 </tr>
1802
1803 <tr bgcolor="#fcfcfc">
1804 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Set </td>
1805 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1806 <td style="font-size: 11px; padding: 5px;">embind </td>
1807 <td style="font-size: 11px; padding: 5px;">Array[i] = x </td>
1808 <td style="font-size: 11px; padding: 5px;"> </td>
1809 </tr>
1810
1811 <tr bgcolor="#fcfcfc">
1812 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetLength </td >
1813 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1814 <td style="font-size: 11px; padding: 5px;">embind </td>
1815 <td style="font-size: 11px; padding: 5px;">Array.length </td>
1816 <td style="font-size: 11px; padding: 5px;"> </td>
1817 </tr>
1818
1819 <tr bgcolor="#fcfcfc">
1820 <td style="font-weight: bold; font-size: 11px; padding: 5px;">SetLength </td >
1821 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1822 <td style="font-size: 11px; padding: 5px;">embind </td>
1823 <td style="font-size: 11px; padding: 5px;">Array.length = n </td>
1824 <td style="font-size: 11px; padding: 5px;"> </td>
1825 </tr>
1826
1827 </table>
1828 <h3>PPB_VarArrayBuffer</h3>
1829 <table>
1830 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
1831 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
1832 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
1833 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
1834 <td style="font-size: 11px; padding: 5px;">Web API </td>
1835 <td style="font-size: 11px; padding: 5px;">Limitations </td>
1836 </tr>
1837
1838 <tr bgcolor="#fcfcfc">
1839 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
1840 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1841 <td style="font-size: 11px; padding: 5px;">embind </td>
1842 <td style="font-size: 11px; padding: 5px;">new ArrayBuffer(n) </td>
1843 <td style="font-size: 11px; padding: 5px;"> </td>
1844 </tr>
1845
1846 <tr bgcolor="#fcfcfc">
1847 <td style="font-weight: bold; font-size: 11px; padding: 5px;">ByteLength </t d>
1848 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1849 <td style="font-size: 11px; padding: 5px;">embind </td>
1850 <td style="font-size: 11px; padding: 5px;">ArrayBuffer.byteLength </td>
1851 <td style="font-size: 11px; padding: 5px;"> </td>
1852 </tr>
1853
1854 <tr bgcolor="#fcfcfc">
1855 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Map </td>
1856 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1857 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1858 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No direct equivalent</td>
1859 <td style="font-size: 11px; padding: 5px;">Asm.js / Wasm modules are unable to map regions of an ArrayBuffer other than their single linear memory heap.
1860 Future multiple memories or memory mapping might improve this. </td>
1861 </tr>
1862
1863 <tr bgcolor="#fcfcfc">
1864 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Unmap </td>
1865 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1866 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1867 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No direct equivalent</td>
1868 <td style="font-size: 11px; padding: 5px;"> </td>
1869 </tr>
1870
1871 </table>
1872 <h3>PPB_VarDictionary</h3>
1873 <table>
1874 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
1875 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
1876 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
1877 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
1878 <td style="font-size: 11px; padding: 5px;">Web API </td>
1879 <td style="font-size: 11px; padding: 5px;">Limitations </td>
1880 </tr>
1881
1882 <tr bgcolor="#fcfcfc">
1883 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
1884 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1885 <td style="font-size: 11px; padding: 5px;">embind </td>
1886 <td style="font-size: 11px; padding: 5px;">{} </td>
1887 <td style="font-size: 11px; padding: 5px;"> </td>
1888 </tr>
1889
1890 <tr bgcolor="#fcfcfc">
1891 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Get </td>
1892 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1893 <td style="font-size: 11px; padding: 5px;">embind </td>
1894 <td style="font-size: 11px; padding: 5px;">&lt;Object&gt;[i] </td>
1895 <td style="font-size: 11px; padding: 5px;"> </td>
1896 </tr>
1897
1898 <tr bgcolor="#fcfcfc">
1899 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Set </td>
1900 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1901 <td style="font-size: 11px; padding: 5px;">embind </td>
1902 <td style="font-size: 11px; padding: 5px;">&lt;Object&gt;[i] = x </td>
1903 <td style="font-size: 11px; padding: 5px;"> </td>
1904 </tr>
1905
1906 <tr bgcolor="#fcfcfc">
1907 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Delete </td>
1908 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1909 <td style="font-size: 11px; padding: 5px;">embind </td>
1910 <td style="font-size: 11px; padding: 5px;">delete &lt;Object&gt;[i] </td>
1911 <td style="font-size: 11px; padding: 5px;"> </td>
1912 </tr>
1913
1914 <tr bgcolor="#fcfcfc">
1915 <td style="font-weight: bold; font-size: 11px; padding: 5px;">HasKey </td>
1916 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1917 <td style="font-size: 11px; padding: 5px;">embind </td>
1918 <td style="font-size: 11px; padding: 5px;">x in &lt;Object&gt; </td>
1919 <td style="font-size: 11px; padding: 5px;"> </td>
1920 </tr>
1921
1922 <tr bgcolor="#fcfcfc">
1923 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetKeys </td>
1924 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1925 <td style="font-size: 11px; padding: 5px;">embind </td>
1926 <td style="font-size: 11px; padding: 5px;">for (k in &lt;Object&gt;) {} </td >
1927 <td style="font-size: 11px; padding: 5px;">No literal equivalent, but it can be built. </td>
1928 </tr>
1929
1930 </table>
1931 <h3>PPB_VideoDecoder</h3>
1932 <table>
1933 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
1934 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
1935 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
1936 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
1937 <td style="font-size: 11px; padding: 5px;">Web API </td>
1938 <td style="font-size: 11px; padding: 5px;">Limitations </td>
1939 </tr>
1940
1941 <tr bgcolor="#fcfcfc">
1942 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
1943 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1944 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1945 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
1946 <td style="font-size: 11px; padding: 5px;"> </td>
1947 </tr>
1948
1949 <tr bgcolor="#fcfcfc">
1950 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Initialize </t d>
1951 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1952 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1953 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
1954 <td style="font-size: 11px; padding: 5px;"> </td>
1955 </tr>
1956
1957 <tr bgcolor="#fcfcfc">
1958 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Decode </td>
1959 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1960 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1961 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
1962 <td style="font-size: 11px; padding: 5px;"> </td>
1963 </tr>
1964
1965 <tr bgcolor="#fcfcfc">
1966 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetPicture </t d>
1967 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1968 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1969 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
1970 <td style="font-size: 11px; padding: 5px;"> </td>
1971 </tr>
1972
1973 <tr bgcolor="#fcfcfc">
1974 <td style="font-weight: bold; font-size: 11px; padding: 5px;">RecyclePicture </td>
1975 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1976 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1977 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
1978 <td style="font-size: 11px; padding: 5px;"> </td>
1979 </tr>
1980
1981 <tr bgcolor="#fcfcfc">
1982 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Flush </td>
1983 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1984 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1985 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
1986 <td style="font-size: 11px; padding: 5px;"> </td>
1987 </tr>
1988
1989 <tr bgcolor="#fcfcfc">
1990 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Reset </td>
1991 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
1992 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
1993 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
1994 <td style="font-size: 11px; padding: 5px;"> </td>
1995 </tr>
1996
1997 </table>
1998 <h3>PPB_VideoEncoder</h3>
1999 <table>
2000 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
2001 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
2002 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
2003 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
2004 <td style="font-size: 11px; padding: 5px;">Web API </td>
2005 <td style="font-size: 11px; padding: 5px;">Limitations </td>
2006 </tr>
2007
2008 <tr bgcolor="#fcfcfc">
2009 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
2010 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2011 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2012 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
2013 <td style="font-size: 11px; padding: 5px;">Overlap with MediaRecorder API, b ut not exact. </td>
2014 </tr>
2015
2016 <tr bgcolor="#fcfcfc">
2017 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetSupportedPr ofiles </td>
2018 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2019 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2020 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
2021 <td style="font-size: 11px; padding: 5px;"> </td>
2022 </tr>
2023
2024 <tr bgcolor="#fcfcfc">
2025 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Initialize </t d>
2026 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2027 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2028 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
2029 <td style="font-size: 11px; padding: 5px;"> </td>
2030 </tr>
2031
2032 <tr bgcolor="#fcfcfc">
2033 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetFramesRequi red </td>
2034 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2035 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2036 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
2037 <td style="font-size: 11px; padding: 5px;"> </td>
2038 </tr>
2039
2040 <tr bgcolor="#fcfcfc">
2041 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetFrameCodedS ize </td>
2042 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2043 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2044 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
2045 <td style="font-size: 11px; padding: 5px;"> </td>
2046 </tr>
2047
2048 <tr bgcolor="#fcfcfc">
2049 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetVideoFrame </td>
2050 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2051 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2052 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
2053 <td style="font-size: 11px; padding: 5px;"> </td>
2054 </tr>
2055
2056 <tr bgcolor="#fcfcfc">
2057 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Encode </td>
2058 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2059 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2060 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
2061 <td style="font-size: 11px; padding: 5px;"> </td>
2062 </tr>
2063
2064 <tr bgcolor="#fcfcfc">
2065 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetBitstreamBu ffer </td>
2066 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2067 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2068 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
2069 <td style="font-size: 11px; padding: 5px;"> </td>
2070 </tr>
2071
2072 <tr bgcolor="#fcfcfc">
2073 <td style="font-weight: bold; font-size: 11px; padding: 5px;">RecycleBitstre amBuffer </td>
2074 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2075 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2076 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
2077 <td style="font-size: 11px; padding: 5px;"> </td>
2078 </tr>
2079
2080 <tr bgcolor="#fcfcfc">
2081 <td style="font-weight: bold; font-size: 11px; padding: 5px;">RequestEncodin gParametersChange </td>
2082 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2083 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2084 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
2085 <td style="font-size: 11px; padding: 5px;"> </td>
2086 </tr>
2087
2088 <tr bgcolor="#fcfcfc">
2089 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Close </td>
2090 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2091 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2092 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
2093 <td style="font-size: 11px; padding: 5px;"> </td>
2094 </tr>
2095
2096 </table>
2097 <h3>PPB_VideoFrame</h3>
2098 <table>
2099 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
2100 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
2101 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
2102 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
2103 <td style="font-size: 11px; padding: 5px;">Web API </td>
2104 <td style="font-size: 11px; padding: 5px;">Limitations </td>
2105 </tr>
2106
2107 <tr bgcolor="#fcfcfc">
2108 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetTimestamp < /td>
2109 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2110 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2111 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
2112 <td style="font-size: 11px; padding: 5px;"> </td>
2113 </tr>
2114
2115 <tr bgcolor="#fcfcfc">
2116 <td style="font-weight: bold; font-size: 11px; padding: 5px;">SetTimestamp < /td>
2117 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2118 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2119 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
2120 <td style="font-size: 11px; padding: 5px;"> </td>
2121 </tr>
2122
2123 <tr bgcolor="#fcfcfc">
2124 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetFormat </td >
2125 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2126 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2127 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
2128 <td style="font-size: 11px; padding: 5px;"> </td>
2129 </tr>
2130
2131 <tr bgcolor="#fcfcfc">
2132 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetSize </td>
2133 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2134 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2135 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
2136 <td style="font-size: 11px; padding: 5px;"> </td>
2137 </tr>
2138
2139 <tr bgcolor="#fcfcfc">
2140 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetDataBuffer </td>
2141 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2142 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2143 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
2144 <td style="font-size: 11px; padding: 5px;"> </td>
2145 </tr>
2146
2147 <tr bgcolor="#fcfcfc">
2148 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetDataBufferS ize </td>
2149 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2150 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2151 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No equiva lent</td>
2152 <td style="font-size: 11px; padding: 5px;"> </td>
2153 </tr>
2154
2155 </table>
2156 <h3>PPB_View</h3>
2157 <table>
2158 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
2159 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
2160 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
2161 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
2162 <td style="font-size: 11px; padding: 5px;">Web API </td>
2163 <td style="font-size: 11px; padding: 5px;">Limitations </td>
2164 </tr>
2165
2166 <tr bgcolor="#fcfcfc">
2167 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetRect </td>
2168 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2169 <td style="font-size: 11px; padding: 5px;">embind </td>
2170 <td style="font-size: 11px; padding: 5px;">Element.getBoundingClientRect </t d>
2171 <td style="font-size: 11px; padding: 5px;"> </td>
2172 </tr>
2173
2174 <tr bgcolor="#fcfcfc">
2175 <td style="font-weight: bold; font-size: 11px; padding: 5px;">IsFullscreen < /td>
2176 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2177 <td style="font-size: 11px; padding: 5px;">embind </td>
2178 <td style="font-size: 11px; padding: 5px;">Document.fullScreenEnabled </td>
2179 <td style="font-size: 11px; padding: 5px;">Pertains to document instead of j ust single element. </td>
2180 </tr>
2181
2182 <tr bgcolor="#fcfcfc">
2183 <td style="font-weight: bold; font-size: 11px; padding: 5px;">IsVisible </td >
2184 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2185 <td style="font-size: 11px; padding: 5px;">embind </td>
2186 <td style="font-size: 11px; padding: 5px;">IntersectionObserver </td>
2187 <td style="font-size: 11px; padding: 5px;"> </td>
2188 </tr>
2189
2190 <tr bgcolor="#fcfcfc">
2191 <td style="font-weight: bold; font-size: 11px; padding: 5px;">IsPageVisible </td>
2192 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2193 <td style="font-size: 11px; padding: 5px;">embind </td>
2194 <td style="font-size: 11px; padding: 5px;">document.visibilityState </td>
2195 <td style="font-size: 11px; padding: 5px;"> </td>
2196 </tr>
2197
2198 <tr bgcolor="#fcfcfc">
2199 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetClipRect </ td>
2200 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2201 <td style="font-size: 11px; padding: 5px;">embind </td>
2202 <td style="font-size: 11px; padding: 5px;">IntersectionObserver </td>
2203 <td style="font-size: 11px; padding: 5px;"> </td>
2204 </tr>
2205
2206 <tr bgcolor="#fcfcfc">
2207 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetDeviceScale </td>
2208 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2209 <td style="font-size: 11px; padding: 5px;">embind </td>
2210 <td style="font-size: 11px; padding: 5px;">window.devicePixelRatio </td>
2211 <td style="font-size: 11px; padding: 5px;"> </td>
2212 </tr>
2213
2214 <tr bgcolor="#fcfcfc">
2215 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetCSSScale </ td>
2216 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2217 <td style="font-size: 11px; padding: 5px;">embind </td>
2218 <td style="font-size: 11px; padding: 5px;">&lt;Element&gt;.getBoundingClient Rect().width / &lt;Element&gt;.offsetWidth </td>
2219 <td style="font-size: 11px; padding: 5px;"> </td>
2220 </tr>
2221
2222 <tr bgcolor="#fcfcfc">
2223 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetScrollOffse t </td>
2224 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2225 <td style="font-size: 11px; padding: 5px;">embind </td>
2226 <td style="font-size: 11px; padding: 5px;">&lt;Element&gt;.scrollTop / &lt;E lement&gt;.scrollLeft </td>
2227 <td style="font-size: 11px; padding: 5px;"> </td>
2228 </tr>
2229
2230 </table>
2231 <h3>PPB_WebSocket</h3>
2232 <table>
2233 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
2234 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
2235 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
2236 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
2237 <td style="font-size: 11px; padding: 5px;">Web API </td>
2238 <td style="font-size: 11px; padding: 5px;">Limitations </td>
2239 </tr>
2240
2241 <tr bgcolor="#fcfcfc">
2242 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td>
2243 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2244 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2245 <td style="font-size: 11px; padding: 5px;">WebSocket.WebSocket </td>
2246 <td style="font-size: 11px; padding: 5px;"> </td>
2247 </tr>
2248
2249 <tr bgcolor="#fcfcfc">
2250 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Connect </td>
2251 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2252 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2253 <td style="font-size: 11px; padding: 5px;">WebSocket.WebSocket(url, ...)
2254 WebSocket 'open' Event </td>
2255 <td style="font-size: 11px; padding: 5px;"> </td>
2256 </tr>
2257
2258 <tr bgcolor="#fcfcfc">
2259 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Close </td>
2260 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2261 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2262 <td style="font-size: 11px; padding: 5px;">WebSocket.close </td>
2263 <td style="font-size: 11px; padding: 5px;"> </td>
2264 </tr>
2265
2266 <tr bgcolor="#fcfcfc">
2267 <td style="font-weight: bold; font-size: 11px; padding: 5px;">ReceiveMessage </td>
2268 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2269 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2270 <td style="font-size: 11px; padding: 5px;">WebSocket 'message' Event
2271 WebSocket 'error' Event
2272 WebSocket 'close' Event </td>
2273 <td style="font-size: 11px; padding: 5px;"> </td>
2274 </tr>
2275
2276 <tr bgcolor="#fcfcfc">
2277 <td style="font-weight: bold; font-size: 11px; padding: 5px;">SendMessage </ td>
2278 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2279 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2280 <td style="font-size: 11px; padding: 5px;">WebSocket.send </td>
2281 <td style="font-size: 11px; padding: 5px;"> </td>
2282 </tr>
2283
2284 <tr bgcolor="#fcfcfc">
2285 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetBufferedAmo unt </td>
2286 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2287 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2288 <td style="font-size: 11px; padding: 5px;">WebSocket.bufferedAmount </td>
2289 <td style="font-size: 11px; padding: 5px;"> </td>
2290 </tr>
2291
2292 <tr bgcolor="#fcfcfc">
2293 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetCloseCode < /td>
2294 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2295 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2296 <td style="font-size: 11px; padding: 5px;">CloseEvent.code </td>
2297 <td style="font-size: 11px; padding: 5px;"> </td>
2298 </tr>
2299
2300 <tr bgcolor="#fcfcfc">
2301 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetCloseReason </td>
2302 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2303 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2304 <td style="font-size: 11px; padding: 5px;">CloseEvent.reason </td>
2305 <td style="font-size: 11px; padding: 5px;"> </td>
2306 </tr>
2307
2308 <tr bgcolor="#fcfcfc">
2309 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetCloseWasCle an </td>
2310 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2311 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2312 <td style="font-size: 11px; padding: 5px;">CloseEvent.wasClean </td>
2313 <td style="font-size: 11px; padding: 5px;"> </td>
2314 </tr>
2315
2316 <tr bgcolor="#fcfcfc">
2317 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetExtensions </td>
2318 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2319 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2320 <td style="font-size: 11px; padding: 5px;">WebSocket.extensions </td>
2321 <td style="font-size: 11px; padding: 5px;"> </td>
2322 </tr>
2323
2324 <tr bgcolor="#fcfcfc">
2325 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetProtocol </ td>
2326 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2327 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2328 <td style="font-size: 11px; padding: 5px;">WebSocket.protocol </td>
2329 <td style="font-size: 11px; padding: 5px;"> </td>
2330 </tr>
2331
2332 <tr bgcolor="#fcfcfc">
2333 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetReadyState </td>
2334 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2335 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2336 <td style="font-size: 11px; padding: 5px;">WebSocket.readyState </td>
2337 <td style="font-size: 11px; padding: 5px;"> </td>
2338 </tr>
2339
2340 <tr bgcolor="#fcfcfc">
2341 <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetURL </td>
2342 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2343 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td>
2344 <td style="font-size: 11px; padding: 5px;">WebSocket.url </td>
2345 <td style="font-size: 11px; padding: 5px;"> </td>
2346 </tr>
2347
2348 </table>
2349 <h3>PPP_Graphics3D</h3>
2350 <table>
2351 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
2352 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
2353 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
2354 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
2355 <td style="font-size: 11px; padding: 5px;">Web API </td>
2356 <td style="font-size: 11px; padding: 5px;">Limitations </td>
2357 </tr>
2358
2359 <tr bgcolor="#fcfcfc">
2360 <td style="font-weight: bold; font-size: 11px; padding: 5px;">Graphics3DCont extLost </td>
2361 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2362 <td style="font-size: 11px; padding: 5px;">SDL </td>
2363 <td style="font-size: 11px; padding: 5px;">Canvas 'webglcontextlost' Event < /td>
2364 <td style="font-size: 11px; padding: 5px;"> </td>
2365 </tr>
2366
2367 </table>
2368 <h3>PPP_InputEvent</h3>
2369 <table>
2370 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
2371 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
2372 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
2373 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
2374 <td style="font-size: 11px; padding: 5px;">Web API </td>
2375 <td style="font-size: 11px; padding: 5px;">Limitations </td>
2376 </tr>
2377
2378 <tr bgcolor="#fcfcfc">
2379 <td style="font-weight: bold; font-size: 11px; padding: 5px;">HandleInputEve nt </td>
2380 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2381 <td style="font-size: 11px; padding: 5px;">SDL </td>
2382 <td style="font-size: 11px; padding: 5px;">Element.addEventListener </td>
2383 <td style="font-size: 11px; padding: 5px;"> </td>
2384 </tr>
2385
2386 </table>
2387 <h3>PPP_Instance</h3>
2388 <table>
2389 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
2390 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
2391 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
2392 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
2393 <td style="font-size: 11px; padding: 5px;">Web API </td>
2394 <td style="font-size: 11px; padding: 5px;">Limitations </td>
2395 </tr>
2396
2397 <tr bgcolor="#fcfcfc">
2398 <td style="font-weight: bold; font-size: 11px; padding: 5px;">DidCreate </td >
2399 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2400 <td style="font-size: 11px; padding: 5px;">N/A </td>
2401 <td style="font-size: 11px; padding: 5px;">&lt;Element&gt;[key] </td>
2402 <td style="font-size: 11px; padding: 5px;">General DOM access lets you fish out tag attributes </td>
2403 </tr>
2404
2405 <tr bgcolor="#fcfcfc">
2406 <td style="font-weight: bold; font-size: 11px; padding: 5px;">DidDestroy </t d>
2407 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2408 <td style="font-size: 11px; padding: 5px;">N/A </td>
2409 <td style="font-size: 11px; padding: 5px;">N/A </td>
2410 <td style="font-size: 11px; padding: 5px;">Not triggered for NaCl </td>
2411 </tr>
2412
2413 <tr bgcolor="#fcfcfc">
2414 <td style="font-weight: bold; font-size: 11px; padding: 5px;">DidChangeView </td>
2415 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2416 <td style="font-size: 11px; padding: 5px;">N/A </td>
2417 <td style="font-size: 11px; padding: 5px;">Element 'resize' Event </td>
2418 <td style="font-size: 11px; padding: 5px;"> </td>
2419 </tr>
2420
2421 <tr bgcolor="#fcfcfc">
2422 <td style="font-weight: bold; font-size: 11px; padding: 5px;">DidChangeFocus </td>
2423 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2424 <td style="font-size: 11px; padding: 5px;">N/A </td>
2425 <td style="font-size: 11px; padding: 5px;">Element 'focus', 'focusin', 'focu sout' Events </td>
2426 <td style="font-size: 11px; padding: 5px;"> </td>
2427 </tr>
2428
2429 <tr bgcolor="#fcfcfc">
2430 <td style="font-weight: bold; font-size: 11px; padding: 5px;">HandleDocument Load </td>
2431 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2432 <td style="font-size: 11px; padding: 5px;">N/A </td>
2433 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No way to register as a mime type handler</td>
2434 <td style="font-size: 11px; padding: 5px;">NaCl modules via apps + a manifes t entry can be set up to handle particular mime types. </td>
2435 </tr>
2436
2437 </table>
2438 <h3>PPP_MessageHandler</h3>
2439 <table>
2440 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
2441 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
2442 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
2443 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
2444 <td style="font-size: 11px; padding: 5px;">Web API </td>
2445 <td style="font-size: 11px; padding: 5px;">Limitations </td>
2446 </tr>
2447
2448 <tr bgcolor="#fcfcfc">
2449 <td style="font-weight: bold; font-size: 11px; padding: 5px;">HandleMessage </td>
2450 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2451 <td style="font-size: 11px; padding: 5px;">embind </td>
2452 <td style="font-size: 11px; padding: 5px;">MessagePort 'message' Event
2453 Window 'message' Event </td>
2454 <td style="font-size: 11px; padding: 5px;"> </td>
2455 </tr>
2456
2457 <tr bgcolor="#fcfcfc">
2458 <td style="font-weight: bold; font-size: 11px; padding: 5px;">HandleBlocking Message </td>
2459 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2460 <td style="font-size: 11px; padding: 5px;">N/A </td>
2461 <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No direct equivalent</td>
2462 <td style="font-size: 11px; padding: 5px;">Similar synchronization can be do ne off main thread with Atomics.wait. This was added to support emulation of syn chronous plugin APIs. </td>
2463 </tr>
2464
2465 </table>
2466 <h3>PPP_Messaging</h3>
2467 <table>
2468 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
2469 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
2470 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
2471 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
2472 <td style="font-size: 11px; padding: 5px;">Web API </td>
2473 <td style="font-size: 11px; padding: 5px;">Limitations </td>
2474 </tr>
2475
2476 <tr bgcolor="#fcfcfc">
2477 <td style="font-weight: bold; font-size: 11px; padding: 5px;">HandleMessage </td>
2478 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2479 <td style="font-size: 11px; padding: 5px;">embind </td>
2480 <td style="font-size: 11px; padding: 5px;">MessagePort 'message' Event
2481 Window 'message' Event </td>
2482 <td style="font-size: 11px; padding: 5px;"> </td>
2483 </tr>
2484
2485 </table>
2486 <h3>PPP_MouseLock</h3>
2487 <table>
2488 <tr bgcolor="#77ccff" style="color:white; font-weight: bold;">
2489 <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method < /td>
2490 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> Assumes Threads </td>
2491 <td style="font-size: 11px; padding: 5px;">Emscripten </td>
2492 <td style="font-size: 11px; padding: 5px;">Web API </td>
2493 <td style="font-size: 11px; padding: 5px;">Limitations </td>
2494 </tr>
2495
2496 <tr bgcolor="#fcfcfc">
2497 <td style="font-weight: bold; font-size: 11px; padding: 5px;">MouseLockLost </td>
2498 <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;"> </td>
2499 <td style="font-size: 11px; padding: 5px;">SDL </td>
2500 <td style="font-size: 11px; padding: 5px;">Element 'pointerlockchange', 'poi nterlockerror' Events </td>
2501 <td style="font-size: 11px; padding: 5px;"> </td>
2502 </tr>
2503
2504 </table>
OLDNEW
« no previous file with comments | « native_client_sdk/src/doc/migration/irt.html ('k') | native_client_sdk/src/doc/nacl-and-pnacl.rst » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698