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 3 // found in the LICENSE file. 4 5 #ifndef CONTENT_PUBLIC_BROWSER_DEVTOOLS_FRONTEND_HOST_DELEGATE_H_ 6 #define CONTENT_PUBLIC_BROWSER_DEVTOOLS_FRONTEND_HOST_DELEGATE_H_ 7 8 #include <string> 9 10 namespace content { 11 12 // Clients that want to use default DevTools front-end implementation should 13 // implement this interface to provide access to the embedding browser from 14 // the front-end. 15 class DevToolsFrontendHostDelegate { 16 public: 17 virtual ~DevToolsFrontendHostDelegate() {} 18 19 // Should bring DevTools window to front. 20 virtual void ActivateWindow() = 0; 21 22 // Changes the height of attached DevTools window. 23 virtual void ChangeAttachedWindowHeight(unsigned height) = 0; 24 25 // Closes DevTools front-end window. 26 virtual void CloseWindow() = 0; 27 28 // Moves DevTools front-end window. 29 virtual void MoveWindow(int x, int y) = 0; 30 31 // Specifies side for devtools to dock to. 32 virtual void SetDockSide(const std::string& side) = 0; 33 34 // Opens given |url| in a new contents. 35 virtual void OpenInNewTab(const std::string& url) = 0; 36 37 // Saves given |content| associated with the given |url|. Optionally showing 38 // Save As dialog. 39 virtual void SaveToFile(const std::string& url, 40 const std::string& content, 41 bool save_as) = 0; 42 43 // Appends given |content| to the file that has been associated with the 44 // given |url| by SaveToFile method. 45 virtual void AppendToFile(const std::string& url, 46 const std::string& content) = 0; 47 48 // Requests the list of filesystems previously added for devtools. 49 virtual void RequestFileSystems() = 0; 50 51 // Shows a dialog to select a folder to which an isolated filesystem is added. 52 virtual void AddFileSystem() = 0; 53 54 // Removes a previously added devtools filesystem given by |file_system_path|. 55 virtual void RemoveFileSystem(const std::string& file_system_path) = 0; 56 57 // Performs file system indexing for given |file_system_path| and sends 58 // progress callbacks. 59 virtual void IndexPath(int request_id, 60 const std::string& file_system_path) = 0; 61 62 // Stops file system indexing. 63 virtual void StopIndexing(int request_id) = 0; 64 65 // Performs trigram search for given |query| in |file_system_path|. 66 virtual void SearchInPath(int request_id, 67 const std::string& file_system_path, 68 const std::string& query) = 0; 69 70 // This method is called when the contents inspected by this devtools frontend 71 // is closing. 72 virtual void InspectedContentsClosing() = 0; 73 }; 74 75 } // namespace content 76 77 #endif // CONTENT_PUBLIC_BROWSER_DEVTOOLS_FRONTEND_HOST_DELEGATE_H_ 78