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_DEVTOOLS_HTTP_HANDLER_DELEGATE_H_ | 5 #ifndef CONTENT_PUBLIC_BROWSER_DEVTOOLS_HTTP_HANDLER_DELEGATE_H_ |
6 #define CONTENT_PUBLIC_BROWSER_DEVTOOLS_HTTP_HANDLER_DELEGATE_H_ | 6 #define CONTENT_PUBLIC_BROWSER_DEVTOOLS_HTTP_HANDLER_DELEGATE_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
11 #include "base/files/file_path.h" | 11 #include "base/files/file_path.h" |
12 #include "base/memory/scoped_ptr.h" | 12 #include "base/memory/scoped_ptr.h" |
13 #include "content/public/browser/devtools_target.h" | |
jam
2013/10/01 17:20:51
do you need this or can you just forward declare D
Vladislav Kaznacheev
2013/10/02 10:28:29
Used forward declaration.
| |
13 #include "net/socket/stream_listen_socket.h" | 14 #include "net/socket/stream_listen_socket.h" |
14 | 15 |
15 class GURL; | 16 class GURL; |
16 | 17 |
17 namespace content { | 18 namespace content { |
18 | 19 |
19 class RenderViewHost; | |
20 | |
21 class DevToolsHttpHandlerDelegate { | 20 class DevToolsHttpHandlerDelegate { |
22 public: | 21 public: |
23 enum TargetType { | 22 virtual ~DevToolsHttpHandlerDelegate() {} |
24 kTargetTypeTab = 0, | |
25 kTargetTypeOther, | |
26 }; | |
27 | 23 |
28 virtual ~DevToolsHttpHandlerDelegate() {} | 24 typedef std::vector<scoped_refptr<DevToolsTarget> > TargetList; |
25 typedef base::Callback<void(const TargetList&)> TargetCallback; | |
jam
2013/10/01 17:20:51
nit: the convention for the content api is to list
Vladislav Kaznacheev
2013/10/02 10:28:29
Done.
| |
29 | 26 |
30 // Should return discovery page HTML that should list available tabs | 27 // Should return discovery page HTML that should list available tabs |
31 // and provide attach links. | 28 // and provide attach links. |
32 virtual std::string GetDiscoveryPageHTML() = 0; | 29 virtual std::string GetDiscoveryPageHTML() = 0; |
33 | 30 |
34 // Returns true if and only if frontend resources are bundled. | 31 // Returns true if and only if frontend resources are bundled. |
35 virtual bool BundlesFrontendResources() = 0; | 32 virtual bool BundlesFrontendResources() = 0; |
36 | 33 |
37 // Returns path to the front-end files on the local filesystem for debugging. | 34 // Returns path to the front-end files on the local filesystem for debugging. |
38 virtual base::FilePath GetDebugFrontendDir() = 0; | 35 virtual base::FilePath GetDebugFrontendDir() = 0; |
39 | 36 |
40 // Get a thumbnail for a given page. Returns non-empty string iff we have the | 37 // Get a thumbnail for a given page. Returns non-empty string iff we have the |
41 // thumbnail. | 38 // thumbnail. |
42 virtual std::string GetPageThumbnailData(const GURL& url) = 0; | 39 virtual std::string GetPageThumbnailData(const GURL& url) = 0; |
43 | 40 |
44 // Creates new inspectable target and returns its render view host. | 41 // Creates new inspectable target. |
45 virtual RenderViewHost* CreateNewTarget() = 0; | 42 virtual scoped_refptr<DevToolsTarget> CreateNewTarget() = 0; |
46 | 43 |
47 // Returns the type of the target. | 44 // Requests the list of all inspectable targets. |
48 virtual TargetType GetTargetType(RenderViewHost*) = 0; | 45 virtual void EnumerateTargets(TargetCallback callback) = 0; |
49 | |
50 // Provides the delegate with an ability to supply a description for views. | |
51 virtual std::string GetViewDescription(content::RenderViewHost*) = 0; | |
52 | 46 |
53 // Creates named socket for reversed tethering implementation (used with | 47 // Creates named socket for reversed tethering implementation (used with |
54 // remote debugging, primarily for mobile). | 48 // remote debugging, primarily for mobile). |
55 virtual scoped_ptr<net::StreamListenSocket> CreateSocketForTethering( | 49 virtual scoped_ptr<net::StreamListenSocket> CreateSocketForTethering( |
56 net::StreamListenSocket::Delegate* delegate, | 50 net::StreamListenSocket::Delegate* delegate, |
57 std::string* name) = 0; | 51 std::string* name) = 0; |
58 }; | 52 }; |
59 | 53 |
60 } // namespace content | 54 } // namespace content |
61 | 55 |
62 #endif // CONTENT_PUBLIC_BROWSER_DEVTOOLS_HTTP_HANDLER_DELEGATE_H_ | 56 #endif // CONTENT_PUBLIC_BROWSER_DEVTOOLS_HTTP_HANDLER_DELEGATE_H_ |
OLD | NEW |