OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
127 typedef HANDLE FileHandle; | 127 typedef HANDLE FileHandle; |
128 #else | 128 #else |
129 typedef int FileHandle; | 129 typedef int FileHandle; |
130 #endif | 130 #endif |
131 | 131 |
132 BLINK_PLATFORM_EXPORT static void initialize(Platform*); | 132 BLINK_PLATFORM_EXPORT static void initialize(Platform*); |
133 BLINK_PLATFORM_EXPORT static void shutdown(); | 133 BLINK_PLATFORM_EXPORT static void shutdown(); |
134 BLINK_PLATFORM_EXPORT static Platform* current(); | 134 BLINK_PLATFORM_EXPORT static Platform* current(); |
135 | 135 |
136 // May return null. | 136 // May return null. |
137 virtual WebCookieJar* cookieJar() { return 0; } | 137 virtual WebCookieJar* cookieJar() { return nullptr; } |
138 | 138 |
139 // Must return non-null. | 139 // Must return non-null. |
140 virtual WebClipboard* clipboard() { return 0; } | 140 virtual WebClipboard* clipboard() { return nullptr; } |
141 | 141 |
142 // Must return non-null. | 142 // Must return non-null. |
143 virtual WebFileUtilities* fileUtilities() { return 0; } | 143 virtual WebFileUtilities* fileUtilities() { return nullptr; } |
144 | 144 |
145 // Must return non-null. | 145 // Must return non-null. |
146 virtual WebMimeRegistry* mimeRegistry() { return 0; } | 146 virtual WebMimeRegistry* mimeRegistry() { return nullptr; } |
147 | 147 |
148 // May return null if sandbox support is not necessary | 148 // May return null if sandbox support is not necessary |
149 virtual WebSandboxSupport* sandboxSupport() { return 0; } | 149 virtual WebSandboxSupport* sandboxSupport() { return nullptr; } |
150 | 150 |
151 // May return null on some platforms. | 151 // May return null on some platforms. |
152 virtual WebThemeEngine* themeEngine() { return 0; } | 152 virtual WebThemeEngine* themeEngine() { return nullptr; } |
153 | 153 |
154 virtual WebFallbackThemeEngine* fallbackThemeEngine() { return 0; } | 154 virtual WebFallbackThemeEngine* fallbackThemeEngine() { return nullptr; } |
155 | 155 |
156 // May return null. | 156 // May return null. |
157 virtual WebSpeechSynthesizer* createSpeechSynthesizer(WebSpeechSynthesizerCl
ient*) { return 0; } | 157 virtual WebSpeechSynthesizer* createSpeechSynthesizer(WebSpeechSynthesizerCl
ient*) { return nullptr; } |
158 | 158 |
159 | 159 |
160 // Audio -------------------------------------------------------------- | 160 // Audio -------------------------------------------------------------- |
161 | 161 |
162 virtual double audioHardwareSampleRate() { return 0; } | 162 virtual double audioHardwareSampleRate() { return 0; } |
163 virtual size_t audioHardwareBufferSize() { return 0; } | 163 virtual size_t audioHardwareBufferSize() { return 0; } |
164 virtual unsigned audioHardwareOutputChannels() { return 0; } | 164 virtual unsigned audioHardwareOutputChannels() { return 0; } |
165 | 165 |
166 // Creates a device for audio I/O. | 166 // Creates a device for audio I/O. |
167 // Pass in (numberOfInputChannels > 0) if live/local audio input is desired. | 167 // Pass in (numberOfInputChannels > 0) if live/local audio input is desired. |
168 virtual WebAudioDevice* createAudioDevice(size_t bufferSize, unsigned number
OfInputChannels, unsigned numberOfChannels, double sampleRate, WebAudioDevice::R
enderCallback*, const WebString& deviceId) { return 0; } | 168 virtual WebAudioDevice* createAudioDevice(size_t bufferSize, unsigned number
OfInputChannels, unsigned numberOfChannels, double sampleRate, WebAudioDevice::R
enderCallback*, const WebString& deviceId) { return nullptr; } |
169 | 169 |
170 | 170 |
171 // MIDI ---------------------------------------------------------------- | 171 // MIDI ---------------------------------------------------------------- |
172 | 172 |
173 // Creates a platform dependent WebMIDIAccessor. MIDIAccessor under platform | 173 // Creates a platform dependent WebMIDIAccessor. MIDIAccessor under platform |
174 // creates and owns it. | 174 // creates and owns it. |
175 virtual WebMIDIAccessor* createMIDIAccessor(WebMIDIAccessorClient*) { return
0; } | 175 virtual WebMIDIAccessor* createMIDIAccessor(WebMIDIAccessorClient*) { return
nullptr; } |
176 | 176 |
177 | 177 |
178 // Blob ---------------------------------------------------------------- | 178 // Blob ---------------------------------------------------------------- |
179 | 179 |
180 // Must return non-null. | 180 // Must return non-null. |
181 virtual WebBlobRegistry* blobRegistry() { return 0; } | 181 virtual WebBlobRegistry* blobRegistry() { return nullptr; } |
182 | 182 |
183 // Database ------------------------------------------------------------ | 183 // Database ------------------------------------------------------------ |
184 | 184 |
185 // Opens a database file; dirHandle should be 0 if the caller does not need | 185 // Opens a database file; dirHandle should be 0 if the caller does not need |
186 // a handle to the directory containing this file | 186 // a handle to the directory containing this file |
187 virtual FileHandle databaseOpenFile(const WebString& vfsFileName, int desire
dFlags) { return FileHandle(); } | 187 virtual FileHandle databaseOpenFile(const WebString& vfsFileName, int desire
dFlags) { return FileHandle(); } |
188 | 188 |
189 // Deletes a database file and returns the error code | 189 // Deletes a database file and returns the error code |
190 virtual int databaseDeleteFile(const WebString& vfsFileName, bool syncDir) {
return 0; } | 190 virtual int databaseDeleteFile(const WebString& vfsFileName, bool syncDir) {
return 0; } |
191 | 191 |
192 // Returns the attributes of the given database file | 192 // Returns the attributes of the given database file |
193 virtual long databaseGetFileAttributes(const WebString& vfsFileName) { retur
n 0; } | 193 virtual long databaseGetFileAttributes(const WebString& vfsFileName) { retur
n 0; } |
194 | 194 |
195 // Returns the size of the given database file | 195 // Returns the size of the given database file |
196 virtual long long databaseGetFileSize(const WebString& vfsFileName) { return
0; } | 196 virtual long long databaseGetFileSize(const WebString& vfsFileName) { return
0; } |
197 | 197 |
198 // Returns the space available for the given origin | 198 // Returns the space available for the given origin |
199 virtual long long databaseGetSpaceAvailableForOrigin(const WebString& origin
Identifier) { return 0; } | 199 virtual long long databaseGetSpaceAvailableForOrigin(const WebString& origin
Identifier) { return 0; } |
200 | 200 |
201 // Set the size of the given database file | 201 // Set the size of the given database file |
202 virtual bool databaseSetFileSize(const WebString& vfsFileName, long long siz
e) { return false; } | 202 virtual bool databaseSetFileSize(const WebString& vfsFileName, long long siz
e) { return false; } |
203 | 203 |
204 | 204 |
205 // DOM Storage -------------------------------------------------- | 205 // DOM Storage -------------------------------------------------- |
206 | 206 |
207 // Return a LocalStorage namespace | 207 // Return a LocalStorage namespace |
208 virtual WebStorageNamespace* createLocalStorageNamespace() { return 0; } | 208 virtual WebStorageNamespace* createLocalStorageNamespace() { return nullptr;
} |
209 | 209 |
210 | 210 |
211 // FileSystem ---------------------------------------------------------- | 211 // FileSystem ---------------------------------------------------------- |
212 | 212 |
213 // Must return non-null. | 213 // Must return non-null. |
214 virtual WebFileSystem* fileSystem() { return 0; } | 214 virtual WebFileSystem* fileSystem() { return nullptr; } |
215 | 215 |
216 | 216 |
217 // IDN conversion ------------------------------------------------------ | 217 // IDN conversion ------------------------------------------------------ |
218 | 218 |
219 virtual WebString convertIDNToUnicode(const WebString& host, const WebString
& languages) { return host; } | 219 virtual WebString convertIDNToUnicode(const WebString& host, const WebString
& languages) { return host; } |
220 | 220 |
221 | 221 |
222 // IndexedDB ---------------------------------------------------------- | 222 // IndexedDB ---------------------------------------------------------- |
223 | 223 |
224 // Must return non-null. | 224 // Must return non-null. |
225 virtual WebIDBFactory* idbFactory() { return 0; } | 225 virtual WebIDBFactory* idbFactory() { return nullptr; } |
226 | 226 |
227 | 227 |
228 // Cache Storage ---------------------------------------------------------- | 228 // Cache Storage ---------------------------------------------------------- |
229 | 229 |
230 // The caller is responsible for deleting the returned object. | 230 // The caller is responsible for deleting the returned object. |
231 virtual WebServiceWorkerCacheStorage* cacheStorage(const WebString& originId
entifier) { return nullptr; } | 231 virtual WebServiceWorkerCacheStorage* cacheStorage(const WebString& originId
entifier) { return nullptr; } |
232 | 232 |
233 // Gamepad ------------------------------------------------------------- | 233 // Gamepad ------------------------------------------------------------- |
234 | 234 |
235 virtual void sampleGamepads(WebGamepads& into) { into.length = 0; } | 235 virtual void sampleGamepads(WebGamepads& into) { into.length = 0; } |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
278 | 278 |
279 // Returns private and shared usage, in bytes. Private bytes is the amount o
f | 279 // Returns private and shared usage, in bytes. Private bytes is the amount o
f |
280 // memory currently allocated to this process that cannot be shared. Returns | 280 // memory currently allocated to this process that cannot be shared. Returns |
281 // false on platform specific error conditions. | 281 // false on platform specific error conditions. |
282 virtual bool processMemorySizesInBytes(size_t* privateBytes, size_t* sharedB
ytes) { return false; } | 282 virtual bool processMemorySizesInBytes(size_t* privateBytes, size_t* sharedB
ytes) { return false; } |
283 | 283 |
284 // Reports number of bytes used by memory allocator for internal needs. | 284 // Reports number of bytes used by memory allocator for internal needs. |
285 // Returns true if the size has been reported, or false otherwise. | 285 // Returns true if the size has been reported, or false otherwise. |
286 virtual bool memoryAllocatorWasteInBytes(size_t*) { return false; } | 286 virtual bool memoryAllocatorWasteInBytes(size_t*) { return false; } |
287 | 287 |
288 // Allocates discardable memory. May return 0, even if the platform supports | 288 // Allocates discardable memory. May return nullptr, even if the platform su
pports |
289 // discardable memory. If nonzero, however, then the WebDiscardableMmeory is | 289 // discardable memory. If nonzero, however, then the WebDiscardableMmeory is |
290 // returned in an locked state. You may use its underlying data() member | 290 // returned in an locked state. You may use its underlying data() member |
291 // directly, taking care to unlock it when you are ready to let it become | 291 // directly, taking care to unlock it when you are ready to let it become |
292 // discardable. | 292 // discardable. |
293 virtual WebDiscardableMemory* allocateAndLockDiscardableMemory(size_t bytes)
{ return 0; } | 293 virtual WebDiscardableMemory* allocateAndLockDiscardableMemory(size_t bytes)
{ return nullptr; } |
294 | 294 |
295 static const size_t noDecodedImageByteLimit = static_cast<size_t>(-1); | 295 static const size_t noDecodedImageByteLimit = static_cast<size_t>(-1); |
296 | 296 |
297 // Returns the maximum amount of memory a decoded image should be allowed. | 297 // Returns the maximum amount of memory a decoded image should be allowed. |
298 // See comments on ImageDecoder::m_maxDecodedBytes. | 298 // See comments on ImageDecoder::m_maxDecodedBytes. |
299 virtual size_t maxDecodedImageBytes() { return noDecodedImageByteLimit; } | 299 virtual size_t maxDecodedImageBytes() { return noDecodedImageByteLimit; } |
300 | 300 |
301 | 301 |
302 // Message Ports ------------------------------------------------------- | 302 // Message Ports ------------------------------------------------------- |
303 | 303 |
304 // Creates a Message Port Channel pair. This can be called on any thread. | 304 // Creates a Message Port Channel pair. This can be called on any thread. |
305 // The returned objects should only be used on the thread they were created
on. | 305 // The returned objects should only be used on the thread they were created
on. |
306 virtual void createMessageChannel(WebMessagePortChannel** channel1, WebMessa
gePortChannel** channel2) { *channel1 = 0; *channel2 = 0; } | 306 virtual void createMessageChannel(WebMessagePortChannel** channel1, WebMessa
gePortChannel** channel2) { *channel1 = 0; *channel2 = 0; } |
307 | 307 |
308 | 308 |
309 // Network ------------------------------------------------------------- | 309 // Network ------------------------------------------------------------- |
310 | 310 |
311 // Returns a new WebURLLoader instance. | 311 // Returns a new WebURLLoader instance. |
312 virtual WebURLLoader* createURLLoader() { return 0; } | 312 virtual WebURLLoader* createURLLoader() { return nullptr; } |
313 | 313 |
314 // May return null. | 314 // May return null. |
315 virtual WebPrescientNetworking* prescientNetworking() { return 0; } | 315 virtual WebPrescientNetworking* prescientNetworking() { return nullptr; } |
316 | 316 |
317 // Returns a new WebSocketHandle instance. | 317 // Returns a new WebSocketHandle instance. |
318 virtual WebSocketHandle* createWebSocketHandle() { return 0; } | 318 virtual WebSocketHandle* createWebSocketHandle() { return nullptr; } |
319 | 319 |
320 // Returns the User-Agent string. | 320 // Returns the User-Agent string. |
321 virtual WebString userAgent() { return WebString(); } | 321 virtual WebString userAgent() { return WebString(); } |
322 | 322 |
323 // A suggestion to cache this metadata in association with this URL. | 323 // A suggestion to cache this metadata in association with this URL. |
324 virtual void cacheMetadata(const WebURL&, int64 responseTime, const char* da
ta, size_t dataSize) { } | 324 virtual void cacheMetadata(const WebURL&, int64 responseTime, const char* da
ta, size_t dataSize) { } |
325 | 325 |
326 // Returns the decoded data url if url had a supported mimetype and parsing
was successful. | 326 // Returns the decoded data url if url had a supported mimetype and parsing
was successful. |
327 virtual WebData parseDataURL(const WebURL&, WebString& mimetype, WebString&
charset) { return WebData(); } | 327 virtual WebData parseDataURL(const WebURL&, WebString& mimetype, WebString&
charset) { return WebData(); } |
328 | 328 |
329 virtual WebURLError cancelledError(const WebURL&) const { return WebURLError
(); } | 329 virtual WebURLError cancelledError(const WebURL&) const { return WebURLError
(); } |
330 | 330 |
331 virtual bool isReservedIPAddress(const WebString& host) const { return false
; } | 331 virtual bool isReservedIPAddress(const WebString& host) const { return false
; } |
332 | 332 |
333 virtual bool portAllowed(const WebURL&) const { return false; } | 333 virtual bool portAllowed(const WebURL&) const { return false; } |
334 | 334 |
335 // Plugins ------------------------------------------------------------- | 335 // Plugins ------------------------------------------------------------- |
336 | 336 |
337 // If refresh is true, then cached information should not be used to | 337 // If refresh is true, then cached information should not be used to |
338 // satisfy this call. | 338 // satisfy this call. |
339 virtual void getPluginList(bool refresh, WebPluginListBuilder*) { } | 339 virtual void getPluginList(bool refresh, WebPluginListBuilder*) { } |
340 | 340 |
341 | 341 |
342 // Public Suffix List -------------------------------------------------- | 342 // Public Suffix List -------------------------------------------------- |
343 | 343 |
344 // May return null on some platforms. | 344 // May return null on some platforms. |
345 virtual WebPublicSuffixList* publicSuffixList() { return 0; } | 345 virtual WebPublicSuffixList* publicSuffixList() { return nullptr; } |
346 | 346 |
347 | 347 |
348 // Resources ----------------------------------------------------------- | 348 // Resources ----------------------------------------------------------- |
349 | 349 |
350 // Returns a localized string resource (with substitution parameters). | 350 // Returns a localized string resource (with substitution parameters). |
351 virtual WebString queryLocalizedString(WebLocalizedString::Name) { return We
bString(); } | 351 virtual WebString queryLocalizedString(WebLocalizedString::Name) { return We
bString(); } |
352 virtual WebString queryLocalizedString(WebLocalizedString::Name, const WebSt
ring& parameter) { return WebString(); } | 352 virtual WebString queryLocalizedString(WebLocalizedString::Name, const WebSt
ring& parameter) { return WebString(); } |
353 virtual WebString queryLocalizedString(WebLocalizedString::Name, const WebSt
ring& parameter1, const WebString& parameter2) { return WebString(); } | 353 virtual WebString queryLocalizedString(WebLocalizedString::Name, const WebSt
ring& parameter1, const WebString& parameter2) { return WebString(); } |
354 | 354 |
355 | 355 |
356 // Threads ------------------------------------------------------- | 356 // Threads ------------------------------------------------------- |
357 | 357 |
358 // Creates an embedder-defined thread. | 358 // Creates an embedder-defined thread. |
359 virtual WebThread* createThread(const char* name) { return 0; } | 359 virtual WebThread* createThread(const char* name) { return nullptr; } |
360 | 360 |
361 // Returns an interface to the current thread. This is owned by the | 361 // Returns an interface to the current thread. This is owned by the |
362 // embedder. | 362 // embedder. |
363 virtual WebThread* currentThread() { return 0; } | 363 virtual WebThread* currentThread() { return nullptr; } |
364 | 364 |
365 // Yield the current thread so another thread can be scheduled. | 365 // Yield the current thread so another thread can be scheduled. |
366 virtual void yieldCurrentThread() { } | 366 virtual void yieldCurrentThread() { } |
367 | 367 |
368 // WaitableEvent ------------------------------------------------------- | 368 // WaitableEvent ------------------------------------------------------- |
369 | 369 |
370 // Creates an embedder-defined waitable event object. | 370 // Creates an embedder-defined waitable event object. |
371 virtual WebWaitableEvent* createWaitableEvent() { return 0; } | 371 virtual WebWaitableEvent* createWaitableEvent() { return nullptr; } |
372 | 372 |
373 // Waits on multiple events and returns the event object that has been | 373 // Waits on multiple events and returns the event object that has been |
374 // signaled. This may return 0 if it fails to wait events. | 374 // signaled. This may return nullptr if it fails to wait events. |
375 // Any event objects given to this method must not deleted while this | 375 // Any event objects given to this method must not deleted while this |
376 // wait is happening. | 376 // wait is happening. |
377 virtual WebWaitableEvent* waitMultipleEvents(const WebVector<WebWaitableEven
t*>& events) { return 0; } | 377 virtual WebWaitableEvent* waitMultipleEvents(const WebVector<WebWaitableEven
t*>& events) { return nullptr; } |
378 | 378 |
379 | 379 |
380 // Profiling ----------------------------------------------------------- | 380 // Profiling ----------------------------------------------------------- |
381 | 381 |
382 virtual void decrementStatsCounter(const char* name) { } | 382 virtual void decrementStatsCounter(const char* name) { } |
383 virtual void incrementStatsCounter(const char* name) { } | 383 virtual void incrementStatsCounter(const char* name) { } |
384 | 384 |
385 | 385 |
386 // Resources ----------------------------------------------------------- | 386 // Resources ----------------------------------------------------------- |
387 | 387 |
388 // Returns a blob of data corresponding to the named resource. | 388 // Returns a blob of data corresponding to the named resource. |
389 virtual WebData loadResource(const char* name) { return WebData(); } | 389 virtual WebData loadResource(const char* name) { return WebData(); } |
390 | 390 |
391 // Decodes the in-memory audio file data and returns the linear PCM audio da
ta in the destinationBus. | 391 // Decodes the in-memory audio file data and returns the linear PCM audio da
ta in the destinationBus. |
392 // A sample-rate conversion to sampleRate will occur if the file data is at
a different sample-rate. | 392 // A sample-rate conversion to sampleRate will occur if the file data is at
a different sample-rate. |
393 // Returns true on success. | 393 // Returns true on success. |
394 virtual bool loadAudioResource(WebAudioBus* destinationBus, const char* audi
oFileData, size_t dataSize) { return false; } | 394 virtual bool loadAudioResource(WebAudioBus* destinationBus, const char* audi
oFileData, size_t dataSize) { return false; } |
395 | 395 |
396 // Screen ------------------------------------------------------------- | 396 // Screen ------------------------------------------------------------- |
397 | 397 |
398 // Supplies the system monitor color profile. | 398 // Supplies the system monitor color profile. |
399 virtual void screenColorProfile(WebVector<char>* profile) { } | 399 virtual void screenColorProfile(WebVector<char>* profile) { } |
400 | 400 |
401 | 401 |
402 // Scrollbar ---------------------------------------------------------- | 402 // Scrollbar ---------------------------------------------------------- |
403 | 403 |
404 // Must return non-null. | 404 // Must return non-null. |
405 virtual WebScrollbarBehavior* scrollbarBehavior() { return 0; } | 405 virtual WebScrollbarBehavior* scrollbarBehavior() { return nullptr; } |
406 | 406 |
407 | 407 |
408 // Sudden Termination -------------------------------------------------- | 408 // Sudden Termination -------------------------------------------------- |
409 | 409 |
410 // Disable/Enable sudden termination on a process level. When possible, it | 410 // Disable/Enable sudden termination on a process level. When possible, it |
411 // is preferable to disable sudden termination on a per-frame level via | 411 // is preferable to disable sudden termination on a per-frame level via |
412 // WebFrameClient::suddenTerminationDisablerChanged. | 412 // WebFrameClient::suddenTerminationDisablerChanged. |
413 virtual void suddenTerminationChanged(bool enabled) { } | 413 virtual void suddenTerminationChanged(bool enabled) { } |
414 | 414 |
415 | 415 |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
448 // vibration it will be cancelled before the new one is started. | 448 // vibration it will be cancelled before the new one is started. |
449 virtual void vibrate(unsigned time) { } | 449 virtual void vibrate(unsigned time) { } |
450 | 450 |
451 // Cancels the current vibration, if there is one. | 451 // Cancels the current vibration, if there is one. |
452 virtual void cancelVibration() { } | 452 virtual void cancelVibration() { } |
453 | 453 |
454 | 454 |
455 // Testing ------------------------------------------------------------- | 455 // Testing ------------------------------------------------------------- |
456 | 456 |
457 // Get a pointer to testing support interfaces. Will not be available in pro
duction builds. | 457 // Get a pointer to testing support interfaces. Will not be available in pro
duction builds. |
458 virtual WebUnitTestSupport* unitTestSupport() { return 0; } | 458 virtual WebUnitTestSupport* unitTestSupport() { return nullptr; } |
459 | 459 |
460 | 460 |
461 // Tracing ------------------------------------------------------------- | 461 // Tracing ------------------------------------------------------------- |
462 | 462 |
463 // Get a pointer to the enabled state of the given trace category. The | 463 // Get a pointer to the enabled state of the given trace category. The |
464 // embedder can dynamically change the enabled state as trace event | 464 // embedder can dynamically change the enabled state as trace event |
465 // recording is started and stopped by the application. Only long-lived | 465 // recording is started and stopped by the application. Only long-lived |
466 // literal strings should be given as the category name. The implementation | 466 // literal strings should be given as the category name. The implementation |
467 // expects the returned pointer to be held permanently in a local static. If | 467 // expects the returned pointer to be held permanently in a local static. If |
468 // the unsigned char is non-zero, tracing is enabled. If tracing is enabled, | 468 // the unsigned char is non-zero, tracing is enabled. If tracing is enabled, |
469 // addTraceEvent is expected to be called by the trace event macros. | 469 // addTraceEvent is expected to be called by the trace event macros. |
470 virtual const unsigned char* getTraceCategoryEnabledFlag(const char* categor
yName) { return 0; } | 470 virtual const unsigned char* getTraceCategoryEnabledFlag(const char* categor
yName) { return nullptr; } |
471 | 471 |
472 typedef intptr_t TraceEventAPIAtomicWord; | 472 typedef intptr_t TraceEventAPIAtomicWord; |
473 | 473 |
474 // Get a pointer to a global state of the given thread. An embedder is | 474 // Get a pointer to a global state of the given thread. An embedder is |
475 // expected to update the global state as the state of the embedder changes. | 475 // expected to update the global state as the state of the embedder changes. |
476 // A sampling thread in the Chromium side reads the global state periodicall
y | 476 // A sampling thread in the Chromium side reads the global state periodicall
y |
477 // and reflects the sampling profiled results into about:tracing. | 477 // and reflects the sampling profiled results into about:tracing. |
478 virtual TraceEventAPIAtomicWord* getTraceSamplingState(const unsigned bucket
Name) { return 0; } | 478 virtual TraceEventAPIAtomicWord* getTraceSamplingState(const unsigned bucket
Name) { return nullptr; } |
479 | 479 |
480 typedef uint64_t TraceEventHandle; | 480 typedef uint64_t TraceEventHandle; |
481 | 481 |
482 // Add a trace event to the platform tracing system. Depending on the actual | 482 // Add a trace event to the platform tracing system. Depending on the actual |
483 // enabled state, this event may be recorded or dropped. | 483 // enabled state, this event may be recorded or dropped. |
484 // - phase specifies the type of event: | 484 // - phase specifies the type of event: |
485 // - BEGIN ('B'): Marks the beginning of a scoped event. | 485 // - BEGIN ('B'): Marks the beginning of a scoped event. |
486 // - END ('E'): Marks the end of a scoped event. | 486 // - END ('E'): Marks the end of a scoped event. |
487 // - COMPLETE ('X'): Marks the beginning of a scoped event, but doesn't | 487 // - COMPLETE ('X'): Marks the beginning of a scoped event, but doesn't |
488 // need a matching END event. Instead, at the end of the scope, | 488 // need a matching END event. Instead, at the end of the scope, |
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
577 virtual void registerMemoryDumpProvider(blink::WebMemoryDumpProvider*) { } | 577 virtual void registerMemoryDumpProvider(blink::WebMemoryDumpProvider*) { } |
578 | 578 |
579 // Must be called on the thread that called registerMemoryDumpProvider(). | 579 // Must be called on the thread that called registerMemoryDumpProvider(). |
580 virtual void unregisterMemoryDumpProvider(blink::WebMemoryDumpProvider*) { } | 580 virtual void unregisterMemoryDumpProvider(blink::WebMemoryDumpProvider*) { } |
581 | 581 |
582 // GPU ---------------------------------------------------------------- | 582 // GPU ---------------------------------------------------------------- |
583 // | 583 // |
584 // May return null if GPU is not supported. | 584 // May return null if GPU is not supported. |
585 // Returns newly allocated and initialized offscreen WebGraphicsContext3D in
stance. | 585 // Returns newly allocated and initialized offscreen WebGraphicsContext3D in
stance. |
586 // Passing an existing context to shareContext will create the new context i
n the same share group as the passed context. | 586 // Passing an existing context to shareContext will create the new context i
n the same share group as the passed context. |
587 virtual WebGraphicsContext3D* createOffscreenGraphicsContext3D(const WebGrap
hicsContext3D::Attributes&, WebGraphicsContext3D* shareContext) { return 0; } | 587 virtual WebGraphicsContext3D* createOffscreenGraphicsContext3D(const WebGrap
hicsContext3D::Attributes&, WebGraphicsContext3D* shareContext) { return nullptr
; } |
588 virtual WebGraphicsContext3D* createOffscreenGraphicsContext3D(const WebGrap
hicsContext3D::Attributes&, WebGraphicsContext3D* shareContext, WebGLInfo* glInf
o) { return 0; } | 588 virtual WebGraphicsContext3D* createOffscreenGraphicsContext3D(const WebGrap
hicsContext3D::Attributes&, WebGraphicsContext3D* shareContext, WebGLInfo* glInf
o) { return nullptr; } |
589 virtual WebGraphicsContext3D* createOffscreenGraphicsContext3D(const WebGrap
hicsContext3D::Attributes&) { return 0; } | 589 virtual WebGraphicsContext3D* createOffscreenGraphicsContext3D(const WebGrap
hicsContext3D::Attributes&) { return nullptr; } |
590 | 590 |
591 // Returns a newly allocated and initialized offscreen context provider. The
provider may return a null | 591 // Returns a newly allocated and initialized offscreen context provider. The
provider may return a null |
592 // graphics context if GPU is not supported. | 592 // graphics context if GPU is not supported. |
593 virtual WebGraphicsContext3DProvider* createSharedOffscreenGraphicsContext3D
Provider() { return 0; } | 593 virtual WebGraphicsContext3DProvider* createSharedOffscreenGraphicsContext3D
Provider() { return nullptr; } |
594 | 594 |
595 // Returns true if the platform is capable of producing an offscreen context
suitable for accelerating 2d canvas. | 595 // Returns true if the platform is capable of producing an offscreen context
suitable for accelerating 2d canvas. |
596 // This will return false if the platform cannot promise that contexts will
be preserved across operations like | 596 // This will return false if the platform cannot promise that contexts will
be preserved across operations like |
597 // locking the screen or if the platform cannot provide a context with suita
ble performance characteristics. | 597 // locking the screen or if the platform cannot provide a context with suita
ble performance characteristics. |
598 // | 598 // |
599 // This value must be checked again after a context loss event as the platfo
rm's capabilities may have changed. | 599 // This value must be checked again after a context loss event as the platfo
rm's capabilities may have changed. |
600 virtual bool canAccelerate2dCanvas() { return false; } | 600 virtual bool canAccelerate2dCanvas() { return false; } |
601 | 601 |
602 virtual bool isThreadedCompositingEnabled() { return false; } | 602 virtual bool isThreadedCompositingEnabled() { return false; } |
603 | 603 |
604 virtual WebCompositorSupport* compositorSupport() { return 0; } | 604 virtual WebCompositorSupport* compositorSupport() { return nullptr; } |
605 | 605 |
606 virtual WebFlingAnimator* createFlingAnimator() { return 0; } | 606 virtual WebFlingAnimator* createFlingAnimator() { return nullptr; } |
607 | 607 |
608 // Creates a new fling animation curve instance for device |deviceSource| | 608 // Creates a new fling animation curve instance for device |deviceSource| |
609 // with |velocity| and already scrolled |cumulativeScroll| pixels. | 609 // with |velocity| and already scrolled |cumulativeScroll| pixels. |
610 virtual WebGestureCurve* createFlingAnimationCurve(WebGestureDevice deviceSo
urce, const WebFloatPoint& velocity, const WebSize& cumulativeScroll) { return 0
; } | 610 virtual WebGestureCurve* createFlingAnimationCurve(WebGestureDevice deviceSo
urce, const WebFloatPoint& velocity, const WebSize& cumulativeScroll) { return n
ullptr; } |
611 | 611 |
612 // WebRTC ---------------------------------------------------------- | 612 // WebRTC ---------------------------------------------------------- |
613 | 613 |
614 // Creates an WebRTCPeerConnectionHandler for RTCPeerConnection. | 614 // Creates an WebRTCPeerConnectionHandler for RTCPeerConnection. |
615 // May return null if WebRTC functionality is not avaliable or out of resour
ces. | 615 // May return null if WebRTC functionality is not avaliable or out of resour
ces. |
616 virtual WebRTCPeerConnectionHandler* createRTCPeerConnectionHandler(WebRTCPe
erConnectionHandlerClient*) { return 0; } | 616 virtual WebRTCPeerConnectionHandler* createRTCPeerConnectionHandler(WebRTCPe
erConnectionHandlerClient*) { return nullptr; } |
617 | 617 |
618 // May return null if WebRTC functionality is not avaliable or out of resour
ces. | 618 // May return null if WebRTC functionality is not avaliable or out of resour
ces. |
619 virtual WebMediaStreamCenter* createMediaStreamCenter(WebMediaStreamCenterCl
ient*) { return 0; } | 619 virtual WebMediaStreamCenter* createMediaStreamCenter(WebMediaStreamCenterCl
ient*) { return nullptr; } |
620 | 620 |
621 | 621 |
622 // WebWorker ---------------------------------------------------------- | 622 // WebWorker ---------------------------------------------------------- |
623 | 623 |
624 virtual void didStartWorkerRunLoop() { } | 624 virtual void didStartWorkerRunLoop() { } |
625 virtual void didStopWorkerRunLoop() { } | 625 virtual void didStopWorkerRunLoop() { } |
626 | 626 |
627 // WebCrypto ---------------------------------------------------------- | 627 // WebCrypto ---------------------------------------------------------- |
628 | 628 |
629 virtual WebCrypto* crypto() { return 0; } | 629 virtual WebCrypto* crypto() { return nullptr; } |
630 | 630 |
631 | 631 |
632 // Platform events ----------------------------------------------------- | 632 // Platform events ----------------------------------------------------- |
633 // Device Orientation, Device Motion, Device Light, Battery, Gamepad. | 633 // Device Orientation, Device Motion, Device Light, Battery, Gamepad. |
634 | 634 |
635 // Request the platform to start listening to the events of the specified | 635 // Request the platform to start listening to the events of the specified |
636 // type and notify the given listener (if not null) when there is an update. | 636 // type and notify the given listener (if not null) when there is an update. |
637 virtual void startListening(WebPlatformEventType type, WebPlatformEventListe
ner* listener) { } | 637 virtual void startListening(WebPlatformEventType type, WebPlatformEventListe
ner* listener) { } |
638 | 638 |
639 // Request the platform to stop listening to the specified event and no | 639 // Request the platform to stop listening to the specified event and no |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
672 // an error occurs WebStorageQuotaCallbacks::didFail is called with an | 672 // an error occurs WebStorageQuotaCallbacks::didFail is called with an |
673 // error code. | 673 // error code. |
674 virtual void queryStorageUsageAndQuota( | 674 virtual void queryStorageUsageAndQuota( |
675 const WebURL& storagePartition, | 675 const WebURL& storagePartition, |
676 WebStorageQuotaType, | 676 WebStorageQuotaType, |
677 WebStorageQuotaCallbacks) { } | 677 WebStorageQuotaCallbacks) { } |
678 | 678 |
679 | 679 |
680 // WebDatabase -------------------------------------------------------- | 680 // WebDatabase -------------------------------------------------------- |
681 | 681 |
682 virtual WebDatabaseObserver* databaseObserver() { return 0; } | 682 virtual WebDatabaseObserver* databaseObserver() { return nullptr; } |
683 | 683 |
684 | 684 |
685 // Web Notifications -------------------------------------------------- | 685 // Web Notifications -------------------------------------------------- |
686 | 686 |
687 virtual WebNotificationManager* notificationManager() { return 0; } | 687 virtual WebNotificationManager* notificationManager() { return nullptr; } |
688 | 688 |
689 | 689 |
690 // Geofencing --------------------------------------------------------- | 690 // Geofencing --------------------------------------------------------- |
691 | 691 |
692 virtual WebGeofencingProvider* geofencingProvider() { return 0; } | 692 virtual WebGeofencingProvider* geofencingProvider() { return nullptr; } |
693 | 693 |
694 | 694 |
695 // Bluetooth ---------------------------------------------------------- | 695 // Bluetooth ---------------------------------------------------------- |
696 | 696 |
697 // Returns pointer to client owned WebBluetooth implementation. | 697 // Returns pointer to client owned WebBluetooth implementation. |
698 virtual WebBluetooth* bluetooth() { return 0; } | 698 virtual WebBluetooth* bluetooth() { return nullptr; } |
699 | 699 |
700 | 700 |
701 // Push API------------------------------------------------------------ | 701 // Push API------------------------------------------------------------ |
702 | 702 |
703 virtual WebPushProvider* pushProvider() { return 0; } | 703 virtual WebPushProvider* pushProvider() { return nullptr; } |
704 | 704 |
705 | 705 |
706 // navigator.connect -------------------------------------------------- | 706 // navigator.connect -------------------------------------------------- |
707 | 707 |
708 virtual WebNavigatorConnectProvider* navigatorConnectProvider() { return 0;
} | 708 virtual WebNavigatorConnectProvider* navigatorConnectProvider() { return nul
lptr; } |
709 | 709 |
710 // Permissions -------------------------------------------------------- | 710 // Permissions -------------------------------------------------------- |
711 | 711 |
712 virtual WebPermissionClient* permissionClient() { return 0; } | 712 virtual WebPermissionClient* permissionClient() { return nullptr; } |
713 | 713 |
714 | 714 |
715 // Background Sync API------------------------------------------------------
------ | 715 // Background Sync API------------------------------------------------------
------ |
716 | 716 |
717 virtual WebSyncProvider* backgroundSyncProvider() { return 0; } | 717 virtual WebSyncProvider* backgroundSyncProvider() { return nullptr; } |
718 | 718 |
719 protected: | 719 protected: |
720 BLINK_PLATFORM_EXPORT Platform(); | 720 BLINK_PLATFORM_EXPORT Platform(); |
721 virtual ~Platform() { } | 721 virtual ~Platform() { } |
722 | 722 |
723 WebThread* m_mainThread; | 723 WebThread* m_mainThread; |
724 }; | 724 }; |
725 | 725 |
726 } // namespace blink | 726 } // namespace blink |
727 | 727 |
728 #endif | 728 #endif |
OLD | NEW |