OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CONTENT_PUBLIC_BROWSER_CONTENT_BROWSER_CLIENT_H_ | 5 #ifndef CONTENT_PUBLIC_BROWSER_CONTENT_BROWSER_CLIENT_H_ |
6 #define CONTENT_PUBLIC_BROWSER_CONTENT_BROWSER_CLIENT_H_ | 6 #define CONTENT_PUBLIC_BROWSER_CONTENT_BROWSER_CLIENT_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 #include <utility> | 9 #include <utility> |
10 #include <vector> | 10 #include <vector> |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
61 class QuotaPermissionContext; | 61 class QuotaPermissionContext; |
62 class RenderProcessHost; | 62 class RenderProcessHost; |
63 class RenderViewHost; | 63 class RenderViewHost; |
64 class RenderViewHostDelegateView; | 64 class RenderViewHostDelegateView; |
65 class ResourceContext; | 65 class ResourceContext; |
66 class SiteInstance; | 66 class SiteInstance; |
67 class SpeechRecognitionManagerDelegate; | 67 class SpeechRecognitionManagerDelegate; |
68 class WebContents; | 68 class WebContents; |
69 class WebContentsView; | 69 class WebContentsView; |
70 class WebContentsViewDelegate; | 70 class WebContentsViewDelegate; |
| 71 struct ClipboardWriteCallbackParams; |
71 struct MainFunctionParams; | 72 struct MainFunctionParams; |
72 struct ShowDesktopNotificationHostMsgParams; | 73 struct ShowDesktopNotificationHostMsgParams; |
73 | 74 |
74 // Embedder API (or SPI) for participating in browser logic, to be implemented | 75 // Embedder API (or SPI) for participating in browser logic, to be implemented |
75 // by the client of the content browser. See ChromeContentBrowserClient for the | 76 // by the client of the content browser. See ChromeContentBrowserClient for the |
76 // principal implementation. The methods are assumed to be called on the UI | 77 // principal implementation. The methods are assumed to be called on the UI |
77 // thread unless otherwise specified. Use this "escape hatch" sparingly, to | 78 // thread unless otherwise specified. Use this "escape hatch" sparingly, to |
78 // avoid the embedder interface ballooning and becoming very specific to Chrome. | 79 // avoid the embedder interface ballooning and becoming very specific to Chrome. |
79 // (Often, the call out to the client can happen in a different part of the code | 80 // (Often, the call out to the client can happen in a different part of the code |
80 // that either already has a hook out to the embedder, or calls out to one of | 81 // that either already has a hook out to the embedder, or calls out to one of |
(...skipping 356 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
437 | 438 |
438 // Returns true if renderer processes can use Pepper TCP/UDP sockets from | 439 // Returns true if renderer processes can use Pepper TCP/UDP sockets from |
439 // the given origin and connection type. | 440 // the given origin and connection type. |
440 virtual bool AllowPepperSocketAPI(BrowserContext* browser_context, | 441 virtual bool AllowPepperSocketAPI(BrowserContext* browser_context, |
441 const GURL& url, | 442 const GURL& url, |
442 const SocketPermissionRequest& params); | 443 const SocketPermissionRequest& params); |
443 | 444 |
444 // Returns the directory containing hyphenation dictionaries. | 445 // Returns the directory containing hyphenation dictionaries. |
445 virtual FilePath GetHyphenDictionaryDirectory(); | 446 virtual FilePath GetHyphenDictionaryDirectory(); |
446 | 447 |
| 448 // Called before writing clipboard content, thus allowing an embedder to |
| 449 // modify the contents of Clipboard::ObjectMap. |
| 450 virtual void BeforeWriteToClipboard( |
| 451 const ClipboardWriteCallbackParams& params) {} |
| 452 |
447 #if defined(OS_POSIX) && !defined(OS_MACOSX) | 453 #if defined(OS_POSIX) && !defined(OS_MACOSX) |
448 // Populates |mappings| with all files that need to be mapped before launching | 454 // Populates |mappings| with all files that need to be mapped before launching |
449 // a child process. | 455 // a child process. |
450 virtual void GetAdditionalMappedFilesForChildProcess( | 456 virtual void GetAdditionalMappedFilesForChildProcess( |
451 const CommandLine& command_line, | 457 const CommandLine& command_line, |
452 int child_process_id, | 458 int child_process_id, |
453 std::vector<FileDescriptorInfo>* mappings) {} | 459 std::vector<FileDescriptorInfo>* mappings) {} |
454 #endif | 460 #endif |
455 | 461 |
456 #if defined(OS_WIN) | 462 #if defined(OS_WIN) |
457 // Returns the name of the dll that contains cursors and other resources. | 463 // Returns the name of the dll that contains cursors and other resources. |
458 virtual const wchar_t* GetResourceDllName(); | 464 virtual const wchar_t* GetResourceDllName(); |
459 #endif | 465 #endif |
460 | 466 |
461 #if defined(USE_NSS) | 467 #if defined(USE_NSS) |
462 // Return a delegate to authenticate and unlock |module|. | 468 // Return a delegate to authenticate and unlock |module|. |
463 // This is called on a worker thread. | 469 // This is called on a worker thread. |
464 virtual | 470 virtual |
465 crypto::CryptoModuleBlockingPasswordDelegate* GetCryptoPasswordDelegate( | 471 crypto::CryptoModuleBlockingPasswordDelegate* GetCryptoPasswordDelegate( |
466 const GURL& url); | 472 const GURL& url); |
467 #endif | 473 #endif |
468 }; | 474 }; |
469 | 475 |
470 } // namespace content | 476 } // namespace content |
471 | 477 |
472 #endif // CONTENT_PUBLIC_BROWSER_CONTENT_BROWSER_CLIENT_H_ | 478 #endif // CONTENT_PUBLIC_BROWSER_CONTENT_BROWSER_CLIENT_H_ |
OLD | NEW |