// Copyright (c) 2015 The Chromium Embedded Framework Authors. All rights // reserved. Use of this source code is governed by a BSD-style license that // can be found in the LICENSE file. #ifndef CEF_TESTS_CEFCLIENT_BROWSER_WINDOW_STD_GTK_H_ #define CEF_TESTS_CEFCLIENT_BROWSER_WINDOW_STD_GTK_H_ #include "cefclient/browser_window.h" namespace client { // Represents a native child window hosting a single windowed browser instance. // The methods of this class must be called on the main thread unless otherwise // indicated. class BrowserWindowStdGtk : public BrowserWindow { public: // Constructor may be called on any thread. // |delegate| must outlive this object. BrowserWindowStdGtk(Delegate* delegate, const std::string& startup_url); // BrowserWindow methods. void CreateBrowser(ClientWindowHandle parent_handle, const CefRect& rect, const CefBrowserSettings& settings) OVERRIDE; void GetPopupConfig(CefWindowHandle temp_handle, CefWindowInfo& windowInfo, CefRefPtr& client, CefBrowserSettings& settings) OVERRIDE; void ShowPopup(ClientWindowHandle parent_handle, int x, int y, size_t width, size_t height) OVERRIDE; void Show() OVERRIDE; void Hide() OVERRIDE; void SetBounds(int x, int y, size_t width, size_t height) OVERRIDE; void SetFocus(bool focus) OVERRIDE; ClientWindowHandle GetWindowHandle() const OVERRIDE; private: DISALLOW_COPY_AND_ASSIGN(BrowserWindowStdGtk); }; } // namespace client #endif // CEF_TESTS_CEFCLIENT_BROWSER_WINDOW_STD_GTK_H_