| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 #pragma once | 7 #pragma once |
| 8 | 8 |
| 9 #include <string> | 9 #include <string> |
| 10 | 10 |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 60 class SpeechInputManager; | 60 class SpeechInputManager; |
| 61 } | 61 } |
| 62 | 62 |
| 63 namespace ui { | 63 namespace ui { |
| 64 class Clipboard; | 64 class Clipboard; |
| 65 } | 65 } |
| 66 | 66 |
| 67 namespace content { | 67 namespace content { |
| 68 | 68 |
| 69 class BrowserContext; | 69 class BrowserContext; |
| 70 class BrowserMainParts; | |
| 71 class ResourceContext; | 70 class ResourceContext; |
| 72 class WebUIFactory; | 71 class WebUIFactory; |
| 73 | 72 |
| 74 // Embedder API (or SPI) for participating in browser logic, to be implemented | 73 // Embedder API (or SPI) for participating in browser logic, to be implemented |
| 75 // by the client of the content browser. See ChromeContentBrowserClient for the | 74 // by the client of the content browser. See ChromeContentBrowserClient for the |
| 76 // principal implementation. The methods are assumed to be called on the UI | 75 // principal implementation. The methods are assumed to be called on the UI |
| 77 // thread unless otherwise specified. Use this "escape hatch" sparingly, to | 76 // thread unless otherwise specified. Use this "escape hatch" sparingly, to |
| 78 // avoid the embedder interface ballooning and becoming very specific to Chrome. | 77 // 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 | 78 // (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 | 79 // that either already has a hook out to the embedder, or calls out to one of |
| 81 // the observer interfaces.) | 80 // the observer interfaces.) |
| 82 class ContentBrowserClient { | 81 class ContentBrowserClient { |
| 83 public: | 82 public: |
| 84 virtual ~ContentBrowserClient() {} | 83 virtual ~ContentBrowserClient() {} |
| 85 | 84 |
| 86 // Allows the embedder to return a customed BrowserMainParts implementation | 85 // Allows the embedder to set any number of custom BrowserMainParts |
| 87 // for the browser staratup code. Can return NULL, in which case the default | 86 // implementations for the browser startup code. See comments in |
| 88 // is used. | 87 // browser_main_parts.h. |
| 89 virtual BrowserMainParts* CreateBrowserMainParts( | 88 virtual void CreateBrowserMainParts( |
| 90 const MainFunctionParams& parameters) = 0; | 89 const MainFunctionParams& parameters, |
| 90 std::vector<BrowserMainParts*>* parts_list) = 0; |
| 91 | 91 |
| 92 // Platform-specific creator. Use this to construct new RenderWidgetHostViews | 92 // Platform-specific creator. Use this to construct new RenderWidgetHostViews |
| 93 // rather than using RenderWidgetHostViewWin & friends. | 93 // rather than using RenderWidgetHostViewWin & friends. |
| 94 // | 94 // |
| 95 // This function must NOT size it, because the RenderView in the renderer | 95 // This function must NOT size it, because the RenderView in the renderer |
| 96 // wouldn't have been created yet. The widget would set its "waiting for | 96 // wouldn't have been created yet. The widget would set its "waiting for |
| 97 // resize ack" flag, and the ack would never come becasue no RenderView | 97 // resize ack" flag, and the ack would never come becasue no RenderView |
| 98 // received it. | 98 // received it. |
| 99 // | 99 // |
| 100 // The RenderWidgetHost must already be created (because we can't know if it's | 100 // The RenderWidgetHost must already be created (because we can't know if it's |
| (...skipping 241 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 342 // This is called on a worker thread. | 342 // This is called on a worker thread. |
| 343 virtual | 343 virtual |
| 344 crypto::CryptoModuleBlockingPasswordDelegate* GetCryptoPasswordDelegate( | 344 crypto::CryptoModuleBlockingPasswordDelegate* GetCryptoPasswordDelegate( |
| 345 const GURL& url) = 0; | 345 const GURL& url) = 0; |
| 346 #endif | 346 #endif |
| 347 }; | 347 }; |
| 348 | 348 |
| 349 } // namespace content | 349 } // namespace content |
| 350 | 350 |
| 351 #endif // CONTENT_PUBLIC_BROWSER_CONTENT_BROWSER_CLIENT_H_ | 351 #endif // CONTENT_PUBLIC_BROWSER_CONTENT_BROWSER_CLIENT_H_ |
| OLD | NEW |